OSDN Git Service

* configure.in: Indent the # of #include_next one space.
[pf3gnuchains/gcc-fork.git] / libio / ChangeLog
1 2000-04-02  Zack Weinberg  <zack@wolery.cumb.org>
2
3         * configure.in: Indent the # of #include_next one space.
4
5 2000-03-29  Jason Merrill  <jason@casey.cygnus.com>
6
7         * configure.in: -linux-gnu*, not -linux-gnu.
8
9 2000-01-28  Martin v. Löwis  <loewis@informatik.hu-berlin.de>
10
11         * fstream.h (ifstream::ifstream): Add ios::in to mode.
12         (ifstream::open): Likewise.
13         (ofstream::ofstream): Add ios::out to mode.
14         (ofstream::open): Likewise.
15
16 2000-01-27  Zack Weinberg  <zack@wolery.cumb.org>
17
18         * dbz/dbz.c, dbz/dbzmain.c: Include stdlib.h.  Don't declare
19         malloc, calloc, free, atol, atoi, or errno.  (errno.h was
20         already being included.)
21
22 2000-01-12  Fred Fish <fnf@be.com>
23
24         * configure.in (*-*-beos*): Recognize.
25         * config/beos.mt: New file.
26
27 1999-12-22  Jakub Jelinek  <jakub@redhat.com>
28
29         * libio.h (_IO_cookie_io_functions_t): Use _IO_off_t instead of
30         _IO_fpos_t.
31         (_IO_seekoff, _IO_seekpos): Likewise. Use _IO_off64_t instead of
32         _IO_fpos64_t.
33         * libioP.h (_IO_seekoff_t, _IO_seekpos_t, _IO_seek_t): Likewise.
34         (_IO_seekoff, _IO_seekpos): Likewise.
35         (_IO_default_seekoff, _IO_default_seekpos): Likewise.
36         (_IO_default_seek): Likewise.
37         (_IO_file_seekoff, _IO_file_seek, _IO_str_seekoff): Likewise.
38         * streambuf.h (streampos): Typedef to _IO_off_t resp. _IO_off64_t.
39         * parsestream.h (class parsebuf::pos_at_line_start): Change type
40         to _IO_off_t.
41
42 1999-12-21  Martin v. Löwis  <loewis@informatik.hu-berlin.de>
43
44         * filebuf.cc (open): Support ios::ate if _G_HAVE_IO_FILE_OPEN.
45         Remove seek for ios::app if not.
46
47 1999-12-15  Jason Merrill  <jason@casey.cygnus.com>
48
49         * filedoalloc.c, floatio.h, iovfprintf.c, iovfscanf.c: Remove
50         advertising clause from BSD license, pursuant with
51
52           ftp://ftp.cs.berkeley.edu/pub/4bsd/README.Impt.License.Change
53
54 1999-12-14  Martin v. Löwis  <loewis@informatik.hu-berlin.de>
55
56         * strstream.h (strstreambuf::streambuf): Rename parameters to
57         avoid shadow warning.
58         * stream.h (WS): Likewise.
59
60 Thu Sep 30 01:08:04 1999  Jeffrey A Law  (law@cygnus.com)
61
62         * editbuf.cc, parsestream.cc, pfstream.cc: Include string.h.
63
64 Mon Sep 13 06:30:14 1999  Mark Klein <mklein@dis.com> 
65
66         * config/mpeix.mt: New for MPEiX port.
67
68 Sat Sep  4 18:00:00 PDT 1999 Mark Klein (mklein@dis.com)
69
70         * configure.in: Add mpeix.mt make fragment.
71
72 1999-08-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
73
74         * streambuf.h (ios::streamsize): Declare as _IO_ssize_t, as in the 
75         global scope.
76
77 1999-08-07  Andreas Schwab  <schwab@suse.de>
78
79         * iostream.cc: Add missing calls to isfx and setup a cleanup
80         region for the locked stream.
81         * iostream.h: Likewise.
82         * isgetline.cc: Likewise.
83         * isgetsb.cc: Likewise.
84         * isscan.cc: Likewise.
85
86 Mon Jun 28 09:25:23 1999  Hans-Peter Nilsson  <hp@bitrange.com>
87
88         * configure.in (post-target): Use "$(topsrcdir)", not "$(srcdir)/..".
89
90 Wed Jun  2 00:19:53 1999  Eric Raskin (ehr@listworks.com)
91
92         * configure.in: Added DG/UX target fragment
93
94 Sun May 30 14:25:02 1999  Eric Raskin (ehr@listworks.com)
95
96         * config/dgux.mt: New file for DG/UX configuration of libio
97
98 1999-05-20  Angela Marie Thomas <angela@cygnus.com>
99
100         * configure.in: Test for ${compiler_name}.exe as well.
101
102 1999-05-17  Mark Kettenis  <kettenis@gnu.org>
103
104         * libioP.h: Only include libc-lock.h if _IO_MTSAFE_IO is defined.
105
106 1999-05-14  Ulrich Drepper  <drepper@cygnus.com>
107
108         * configure.in: Recognize target *vxworks* and add fragment vxworks.mt.
109         * config/vxworks.mt: New file.
110         * gen-params: Let configure override HAVE_PRINTF_FP.
111
112 1999-05-12  Jason Merrill  <jason@yorick.cygnus.com>
113
114         * configure.in (compiler_name): Don't do the skip-this-dir thing
115         if we're reconfiguring.
116
117 1999-04-29  Nathan Sidwell  <nathan@acm.org>
118
119         * streambuf.h (ios::~ios): Use operator delete[] to remove _arrays.
120
121 Mon Apr 12 19:22:44 1999  Mumit Khan  <khan@xraylith.wisc.edu>
122
123         * filedoalloc.c (_POSIX_SOURCE): Remove definition.
124         * fileops.c (_POSIX_SOURCE): Likewise.
125         * iopopen.c (_POSIX_SOURCE): Likewise.
126         * procbuf.cc (_POSIX_SOURCE): Likewise.
127         * libioP.h (_POSIX_SOURCE): And define it here.
128         * stdiostream.cc: Include libioP.h before others.
129
130 Fri Apr  2 15:11:58 1999  H.J. Lu  (hjl@gnu.org)
131
132         * libio/configure.in (gxx_include_dir): Handle it.
133         * libio/Makefile.in: Likewise.
134
135 Wed Mar 24 22:36:45 1999  Mumit Khan  <khan@xraylith.wisc.edu>
136
137         * configure.in (EXEEXT): Define.
138         (compiler_name): Use.
139
140 1999-03-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
141
142         * gen-params (CONFIG_NM): `test ... -o ...' is not portable.
143
144 Thu Mar 11 01:07:55 1999  Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
145
146         * configure.in: Cleanup and add mh-*pic handling for arm, powerpc
147
148 Fri Mar  5 01:15:15 1999  H.J. Lu  (hjl@gnu.org)
149
150         * config/linuxlibc1.mt (MT_CFLAGS): Add -D_G_STDIO_USES_LIBIO
151         -D_G_HAVE_WEAK_SYMBOL.
152
153         * genops.c: Add the proper weak alias if _G_STDIO_USES_LIBIO
154         and _G_HAVE_WEAK_SYMBOL are defined.
155         * iofclose.c: Likewise.
156         * iofeof.c: Likewise.
157         * ioferror.c: Likewise.
158         * iogetc.c: Likewise.
159         * ioputc.c: Likewise.
160         * iovsprintf.c: Likewise.
161         * iovsscanf.c: Likewise.
162
163 Sun Feb 28 22:39:17 1999  Geoffrey Noer  <noer@cygnus.com>
164
165         * configure.in: Check cygwin*, not cygwin32*.
166
167 Wed Feb 10 09:25:48 1999  Mumit Khan  <khan@xraylith.wisc.edu>
168
169         * gen-params (VTABLE_LABEL_PREFIX): Handle windows32. 
170
171 Wed Feb  3 22:05:41 1999  H.J. Lu  (hjl@gnu.org)
172                           Jeffrey A Law  (law@cygnus.com)
173
174         * Makefile.in (iostream.list): Remove dependency on
175         stamp-picdir.
176         ($(LIBIOSTREAM_DEP)): Depend on stamp-picdir.
177         ($(LIBIO_FILES)): Similarly.
178
179         * config.shared (all): Make $(PICDIR) concurrent.
180
181 1998-11-26  Manfred Hollstein  <manfred@s-direktnet.de>
182
183         * configure.in (compiler_name): Add check to detect if this
184         language's compiler has been built.
185
186 1998-10-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
187
188         * config.shared (depend.new): Delete libc-lock.h from
189         dependencies, and fix _G_config.h -> $(_G_CONFIG_H) rule.
190         * depend: Rebuilt.
191         
192 Sun Oct 11 01:51:42 1998  Jeffrey A Law  (law@cygnus.com)
193
194         * config.shared (depend.new): Fix typo.
195         * depend: Rebuilt.
196
197 1998-09-09  Manfred Hollstein  <manfred@s-direktnet.de>
198
199         * configure.in (INSTALLDIR): Fix comment about changing INSTALLDIR's
200         value; don't change its value if --enable-version-specific-runtime-libs
201         has been specified.
202
203 Wed Sep  2 21:05:39 1998  H.J. Lu  (hjl@gnu.org)
204
205         * configure.in: Fix INSTALLDIR replacement for cross-compile.
206
207 Sun Aug 30 22:27:02 1998  Lutz Wohlrab <lutz.wohlrab@informatik.tu-chemnitz.de>
208
209         * dbz/Makefile.in: Avoid assumptions about "tr" behaves when
210         LANG is set to something other than English.
211
212 Sun Aug 30 22:17:00 1998  H.J. Lu  (hjl@gnu.org)
213
214         * config.shared: Set libsubdir.
215
216 1998-08-25 14:34  Ulrich Drepper  <drepper@cygnus.com>
217
218         * libio/iogetline.c (_IO_getline_info): Don't read anything for
219         N == 0.  Patch by HJ Lu.
220
221 1998-08-23  Mark Mitchell  <mark@markmitchell.com>
222
223         * iomanip.h: Use __extension__ for `extern' explicit template
224         instantiations.
225
226 1998-08-17  Ulrich Drepper  <drepper@cygnus.com>
227
228         * strfile.h: Define __PMT if not already defined.
229
230 1998-08-03  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
231
232         * libioP.h: Use __PMT in typedefs.
233         * strfile.h: Likewise.
234
235 1998-06-29  Ulrich Drepper  <drepper@cygnus.com>
236
237         * libio.h: Rewrite __PMT change so that it works with platforms
238         defining __P but not __PMT.
239
240         * libio.h (__PMT): New macro.  Defined like __P.  Use is for
241         function pointers.
242
243 1998-06-27  Manfred Hollstein  <manfred@s-direktnet.de>
244
245         * Makefile.in (install): Remove superfluous /include.
246
247 1998-06-26  Manfred Hollstein  <manfred@s-direktnet.de>
248
249         * config.shared (FLAGS_TO_PASS): Add gcc_version_trigger.
250         (Makefile): Add dependency upon $(gcc_version_trigger).
251
252 1998-06-24  Manfred Hollstein  <manfred@s-direktnet.de>
253
254         * Makefile.in (install): Install _G_config.h depending on new flag
255         --enable-version-specific-runtime-libs.
256         * config/linux.mt (gxx_include_dir): Remove definition here as we use
257         gcc's default anyway.
258
259 1998-06-24  Manfred Hollstein  <manfred@s-direktnet.de>
260
261         * config.shared (FLAGS_TO_PASS): Add gcc_version.
262
263 1998-06-19  Manfred Hollstein  <manfred@s-direktnet.de>
264
265         * config.shared (FLAGS_TO_PASS): Add libsubdir.
266
267 1998-06-07  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
268
269         * genops.c (__underflow): Read character from read pointer as unsigned.
270         (__uflow): Likewise.
271
272 1998-05-22  Ulrich Drepper  <drepper@cygnus.com>
273
274         * strops.c (_IO_str_underflow): Read newly available character
275         from buffer as unsigned.
276
277 Sun Apr 19 22:13:36 1998  H.J. Lu  (hjl@gnu.org)
278
279         * isgetline.cc (istream::get): Fix a typo.
280
281 Thu Mar  5 09:23:28 1998  Manfred Hollstein  <manfred@s-direktnet.de>
282
283         * configure.in: Make locating frag files failsafe even for the
284         special case if configuring and building in srcdir.
285
286 1998-02-24  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
287
288         Changes for _G_IO_IO_FILE_VERSION == 0x20001:
289         * libioP.h (_IO_showmanyc_t, _IO_SHOWMANYC, _IO_imbue_t,
290         _IO_IMBUE): New definitions.
291         (struct _IO_jump_t): Add __showmanyc and __imbue fields.
292         (_IO_file_fopen): Add new fourth argument.
293         * filebuf.cc (filebuf::open): Pass new fourth argument to
294         _IO_file_fopen.
295         * iolibio.h (_IO_freopen): Likewise.
296         * streambuf.cc (streambuf::showmanyc, streambuf::imbue): New
297         functions.
298         * streambuf.h (_IO_wchar_t): Define to _G_wchar_t.
299         (ios::fill): Remove casts.
300         (struct streambuf): Add showmanyc and imbue members.
301
302         * iostream.cc (ostream::operator<<(double n)) [__GLIBC_MINOR__ >=
303         1]: Initialize new fields is_char of struct printf_info.
304         (ostream::operator<<(long double n)) [__GLIBC_MINOR__ >= 1]:
305         Likewise.
306
307 Sun Feb 22 17:24:53 1998  Jeffrey A Law  (law@cygnus.com)
308
309         * config.shared: Bring back changes from Ian and Fred that were
310         accidentally clobbered.  Should eliminate the need for Dave's
311         recent change.
312
313 Tue Feb 17 21:56:25 1998  H.J. Lu  (hjl@gnu.org)
314
315         * config/linux.mt (IO_OBJECTS): Add iogetline.o.
316         * config/linuxlibc1.mt: Ditto.
317
318         * iogetline.c (_IO_getline_info): Renamed from _IO_getline.
319         (_IO_getline): Just call _IO_getline_info.
320
321         * isgetline.cc (istream::getline, istream::get, _sb_readline):
322         Call _IO_getline_info instead of _IO_getline and get the EOF
323         information.
324         * sbgetline.cc (streambuf::sgetline): Ditto.
325
326         * libioP.h (_IO_getline_info): New declaration.
327
328         * iogetline.c (_IO_getline): Handle the case when there is no
329         buffer.
330
331 Fri Feb 13 00:57:20 1998  Krister Walfridsson (cato@df.lth.se)
332
333         * fileops.c: #include <unistd.h>.
334         * ioprims.c: Likewise.
335
336 1998-02-10  Mark Mitchell  <mmitchell@usa.net>
337
338         * iostream.cc (ostream::operator<<(long double)): Don't use
339         labeled initializers.
340
341 Fri Feb  6 01:35:56 1998  Manfred Hollstein  <manfred@s-direktnet.de>
342
343         * config.shared (FLAGS_TO_PASS): Don't emit PICFLAG.
344         (.c.o): Check value of enable_shared, not PICFLAG.
345         (.C.o): Dito.
346         (.cc.o): Dito.
347         (stamp-picdir): Dito.
348
349 Thu Feb  5 17:41:26 1998  Dave Brolley  <brolley@cygnus.com>
350
351         * config.shared (LIBS): Change to -L../../libstdc++ (was -L../libstdc++)
352         if ${DOING_GPERF} is true.
353
354 1998-01-20  Andreas Schwab  (schwab@issan.informatik.uni-dortmund.de)
355
356         * iostream.cc (istream::operator>>(long double&))
357         [!_G_HAVE_LONG_DOUBLE_IO]: Scan value into separate variable, in
358         case long double is bigger than double.
359         (ostream::operator<<(double)) [_G_HAVE_PRINTF_FP]: Fix order of
360         initializers of struct printf_info to match declaration order,
361         to work around g++ bug.
362         (ostream::operator<<(long double)) [_G_HAVE_PRINTF_FP]: Likewise.
363
364         * gen-params: Add missing quotes.  Avoid useless use of command
365         substitution.
366
367 Sun Feb  1 13:29:47 1998  H.J. Lu  (hjl@gnu.org)
368
369         * filebuf.cc (filebuf::open): Call _IO_file_open if
370         _G_HAVE_IO_FILE_OPEN is 1.
371
372         * libio.h (_IO_fpos64_t, _IO_off64_t): Defined if
373         _G_IO_IO_FILE_VERSION == 0x20001.
374
375         * libioP.h (_IO_file_open): New declaration.
376
377         * libio.h (_IO_FILE, _IO_stdin_, _IO_stdout_, _IO_stderr_,
378         _IO_seekoff, _IO_seekpos): Add support for libio in glibc 2.1.
379         * libioP.h (_IO_seekoff_t, _IO_seekpos_t, _IO_seek_t,
380         _IO_seekoff, _IO_seekpos, _IO_default_seekoff,
381         _IO_default_seekpos, _IO_default_seek, _IO_file_seekoff,
382         _IO_file_seek, _IO_str_seekoff, _IO_pos_BAD, _IO_pos_as_off,
383         _IO_pos_0): Ditto.
384         * streambuf.h (streamoff, streampos): Ditto.
385
386         * gen-params (__extension__): Use only if gcc version >= 2.8.
387
388 Sun Feb  1 13:08:18 1998  Krister Walfridsson (cato@df.lth.se)
389
390         * dbz/dbz.c (putconf): Handle systems which use "long long" as type
391         for "off_t".
392         * dbz/dbzmain.c (mkfiles): Likewise.
393
394 Wed Jan 28 10:27:11 1998  Manfred Hollstein  <manfred@s-direktnet.de>
395
396         * config.shared (FLAGS_TO_PASS): Add gxx_include_dir.
397
398         * stdio/configure.in, tests/configure.in: Update with yesterday's
399         toplevel configure.in changes.
400         * testsuite/configure.in: Likewise.
401
402         * config.shared: Fix typo in yesterday's changes.
403
404 Tue Jan 27 23:26:07 1998  Manfred Hollstein  <manfred@s-direktnet.de>
405
406         * config.shared: Emit everything which needs to be re-definable
407         via file descriptor 1; the generic stuff is emitted using redirection
408         onto fd 2.
409
410         * configure.in (package_makefile_rules_frag): New variable
411         which is used in the call to config.shared; redirect file descriptor 2
412         to ${package_makefile_rules_frag}.
413
414 Tue Jan 27 10:35:22 1998  H.J. Lu  (hjl@gnu.org)
415
416         * configure.in (topsrcdir): New.
417         (CHECK_SUBDIRS, configdirs): Check ${topsrcdir}/gcc instead.
418         (config-ml.in): Use ${topsrcdir}/config-ml.in.
419
420         * tests/configure.in (topsrcdir): New.
421         (CHECK): Check ${topsrcdir}/gcc instead.
422
423 Fri Jan 16 00:48:03 1998  Manfred Hollstein  <manfred@lts.sel.alcatel.de>
424
425         * config.shared (FLAGS_TO_PASS): Add SHELL.
426
427 Thu Jan 15 00:21:58 1998  Ian Lance Taylor  <ian@cygnus.com>
428
429         * configure.in: For *-*-cygwin32*, add a -I for winsup to both
430         XCINCLUDES and XCXXINCLUDES.
431         * config.shared: Use ${host_includes} when setting CXXINCLUDES in
432         the DOING_LIBGXX case.
433         * Makefile.in (_G_config.h): Pass $(CINCLUDES) in CC and
434         $(CXXINCLUDES) in CXX when running gen-params.
435
436 Tue Jan 13 21:32:08 1998  H.J. Lu  (hjl@gnu.org)
437
438         * configure.in (CHECK_SUBDIRS): Set to testsuite only if
439         ${srcdir}/../gcc exists.
440         (configdirs): Include testsuite only if ${srcdir}/../gcc exists.
441
442         * tests/Makefile.in (check): Depend on $(CHECK).
443
444         * tests/configure.in (CHECK): Set to "check-iostream
445         check-stdio" if ${srcdir}/../../gcc doesn't exists.
446
447 Thu Jan  8 18:09:03 1998  Fred Fish  <fnf@cygnus.com>
448
449         * config.shared (THIS_FILE): Really found via TOLIBIO instead
450         of TOLIBCXX, which is empty when configuring gperf.
451         (LIBS): When linking gperf, find libstdc++ relative to TO_TOPDIR
452         instead of hardcoded "../".
453
454 1997-12-12  Brendan Kehoe  <brendan@lisa.cygnus.com>
455
456         Don't make gperf depend upon libg++.
457         * config.shared (TOLIBGCXX) [DOING_GPERF]: Delete.
458         (LIBS) [DOING_GPERF]: Make it just `-L../libstdc++ -lstdc++'.
459
460 Thu Dec 11 11:20:59 1997  H.J. Lu  (hjl@gnu.org)
461
462         * configure.in (target frags): Add *-linux-gnu.
463
464 Fri Dec  5 16:22:15 1997  H.J. Lu  (hjl@gnu.org)
465
466         * streambuf.cc (streambuf::~streambuf): Don't delete _lock
467         for _IO_stdin/_IO_stdout/_IO_stderr.
468
469 Thu Nov 27 01:32:43 1997  Jeffrey A Law  (law@cygnus.com)
470
471         * Makefile.in (install): Change gxx_includedir to gcc_include_dir.
472         * config.shared (gxx_includedir): Remove default definition.
473         * config/linux.mt: Change gxx_includedir to gxx_include_dir.
474         * config/linuxaxp1.mt: Likewise.
475
476 Wed Nov 26 16:08:50 1997  Richard Henderson  (rth@cygnus.com)
477
478         * configure.in (target frags): Add powerpc*-linux-gnulibc1.
479         (stdio-lock): Similarly.
480
481         * configure.in (target frags): Add alpha*-linux-gnulibc1.
482         (pic frags): Its alpha*- not alpha-.
483         (stdio-lock): Kill everything.  Add alpha*-linux-gnulibc1.
484         * libio.h: Check __GLIBC_MINOR__ to find stdio-lock.h.  If not
485         _IO_MTSAFE_IO & GLIBC, make sure the lock pointer is still there.
486         * libioP.h: Check __GLIBC_MINOR__ to find libc-lock.h.
487
488         * config/linuxaxp1-libc-lock.h: New file.
489         * config/linuxaxp1-stdio-lock.h: New file.
490         * config/linuxaxp1.mt: New file.
491
492         * gen-params (va_list): Check for and use __gnuc_va_list.
493         (NULL): Work around some linux kernel headers and redefine NULL.
494
495 Mon Nov 24 17:04:18 1997  Michael Meissner  <meissner@cygnus.com>
496
497         * stdiostream.cc (sys_read): Declare ch with int type, rather than
498         without a type.
499
500 Tue Nov 18 09:53:58 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)
501
502         * stdstrbufs.cc (DEF_STDFILE): Use STD_VTABLE.
503
504 Tue Nov 11 01:40:17 1997  Oleg Krivosheev <kriol@fnal.gov>
505
506         * iomanip.h: Fix guiding decls.
507
508 1997-11-05  Brendan Kehoe  <brendan@lisa.cygnus.com>
509
510         * libio.h (__P): Name its arg `p' instead of `params'.
511         Avoids problems with an unchanged Solaris math.h header.
512
513 Wed Oct 29 23:01:47 1997  Jason Merrill  <jason@yorick.cygnus.com>
514
515         * gen-params: Override NULL.
516
517 1997-10-27 03:53  Ulrich Drepper  <drepper@cygnus.com>
518
519         * stdio-lock.h: Removed.  Was never needed.
520
521 Wed Oct 22 19:19:32 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)
522
523         * libio.h (_IO_LOCK_T): Handle glibc 2 when _IO_MTSAFE_IO is
524         not defined.
525
526         * iovsscanf.c (vsscanf): Make it weak alias of _IO_vsscanf if
527         __linux__ is defined instead of __ELF__
528
529         * config/linuxlibc1.mt (USER_INCLUDES): Add libio.h.
530
531 1997-10-15  Ulrich Drepper  <drepper@cygnus.com>
532
533         * configure.in: Create compatibility code in bits/libc-lock.h file.
534
535 Thu Oct  9 07:08:41 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)
536
537         * libio.h (_IO_LOCK_T): Handle glibc 2 when _IO_MTSAFE_IO is
538         not defined.
539
540         * filedoalloc.c (_IO_file_doallocate): Don't call
541         _IO_cleanup_registration_needed if __linux__ is defined.
542
543         * iofclose.c (fclose): Make it weak alias of _IO_fclose if
544         __ELF__ is defined.
545
546         * iovsprintf.c (vsprintf): Make it weak alias of _IO_vsprintf
547         if __ELF__ is defined.
548
549         * iovsscanf.c (vsscanf): Make it weak alias of _IO_vsscanf if
550         __ELF__ is defined.
551
552         * config/linuxlibc1.mt (MT_CFLAGS): Defined as -D_G_HAVE_MMAP.
553         (IO_OBJECTS): Add filedoalloc.o fileops.o genops.o iofclose.o
554         iovsprintf.o iovsscanf.o strops.o.
555
556 Fri Oct  3 10:13:13 1997  Jason Merrill  <jason@yorick.cygnus.com>
557
558         * iostream.cc, libio.h: Convert other uses of #ifdef
559         _G_HAVE_PRINTF_FP to #if.
560
561 1997-10-02  Brendan Kehoe  <brendan@lisa.cygnus.com>
562
563         * iostream.cc (operator<<): Use `#if _G_HAVE_PRINTF_FP', not ifdef.
564
565 Thu Oct  2 10:36:49 1997  Jason Merrill  <jason@yorick.cygnus.com>
566
567         * gen-params: Fix __printf_fp test.
568         * config/linuxlibc1.mt (gxx_includedir): Don't define.
569
570 Thu Oct  2 10:36:26 1997  Ulrich Drepper  <drepper@rtl.cygnus.com>
571
572         * config/linuxlibc1.mt (_G_CONFIG_H): Don't define.
573         * gen-params: Add test for __printf_fp.
574
575 Sun Sep 28 12:09:04 1997  Mark Mitchell  <mmitchell@usa.net>
576
577         * iomanip.h: Use new friend <> syntax.
578
579 Sun Sep 28 12:04:21 1997  Jason Merrill  <jason@yorick.cygnus.com>
580
581         * libio.h: Don't use _IO_LOCK_T if it's not defined.
582
583 Fri Sep 26 20:56:41 1997
584
585         Based on a patch by H.J. Lu  (hjl@gnu.ai.mit.edu).
586
587         * Makefile.in (STDIO_OBJECTS): New. Defined as stdfiles.o.
588         (LIBIO_OBJECTS): Add $(STDIO_OBJECTS).
589         (PICFLAG): New, empty.  moved to here from config.shared.
590
591         * config.shared (DISTCLEAN): Add target-mkfrag.
592         (PICFLAG): Removed.
593
594         * configure.in (*-linux-gnulibc1): Remove warning.
595         (*-linux-gnu): Use linux.mt mtsafe.mt.
596         (alpha-*-linux*): Use mh-elfalphapic.
597
598         * gen-params (_G_ullong): Also check unsigned long long int.
599         (_G_llong): Also check long long int.
600
601         * libio.h (_IO_lock_t): Add support for the Linux libc 5.
602         (_IO_peekc): Defined as _IO_peekc_unlocked if _IO_MTSAFE_IO
603         is not defined.
604
605         * iostream.cc (__cvt_double): Fix a typo in declaration.
606         (info): Use expr != 0 to initialize the bit fields. Don't
607         initialize "extra" for the Linux libc 5.
608
609         * streambuf.h (_G_NEED_STDARG_H): Changed from _IO_NEED_STDARG_H.
610
611         * config/linux.mt (STDIO_OBJECTS): New, empty.
612         (MT_CFLAGS): Removed.
613
614         * config/linuxlibc1.mt: Rewrite.  it's identical to linux.mt but
615         IO_OBJECTS mentions files not in early libc5 versions.
616
617         * config/mtsafe.mt: New.
618
619         * dbz/Makefile.in (check): Support make -j.
620
621         * tests/tFile.cc (tempfile): Fix a typo.
622
623 1997-09-19 11:52  Jim Wilson  <wilson@cygnus.com>
624
625         * Makefile.in (LIBIO_OBJECTS): Depend on _G_CONFIG_H.
626
627 1997-09-17 04:08  Ulrich Drepper  <drepper@cygnus.com>
628
629         * iostream.cc: Add forward declaration for __cvt_double.
630         * libio.h: Define _IO_USE_DTOA is _G_HAVE_PRINTF_FP is not defined.
631         * strops.c (_IO_str_count): Correct last change.
632
633 1997-09-17 02:50  Ulrich Drepper  <drepper@cygnus.com>
634
635         * libioP.h: Define __set_errno if not already defined.
636
637 1997-09-15 02:37  Ulrich Drepper  <drepper@cygnus.com>
638
639         * config/linux.mt: Rewrite for use with glibc 2.
640         * config/linuxlibc1.mt: Old content of linux.mt, fir libc4 and
641         libc5.
642
643         * config.shared (COMPILE.c): Allow new flags in MT_CFLAGS be
644         passed.
645         (COMPILE.cc): Likewise.
646
647         * configure.in (*-linux*): Remove goal.  We now have...
648         (*-linux-gnulibc1): For libc4 and libc5.  Emit warning.
649         (*-linux-gnu)): For glibc 2.
650         Create links to find headers for multi-threading if necessary.
651
652         * fileops.c: Make thread-safe by using _IO_cleanup_region_start
653         etc to handle cancelation.  Acquire locks in functions which are
654         called directly.
655         (_IO_file_read, _IO_file_write): Remove dead code.
656
657         * include/empty.h: Define stub macros for locking.
658
659         * iolibio.h: Add prototypes for obstack printing functions.
660
661         * ioseekoff.c (_IO_seekoff): Lock stream before working.
662         * ioseekpos.c (_IO_seekpos): Likewise.
663
664         * iostream.cc: Add support for long double I/O.
665         Use __printf_fp from glibc is available.
666         Use _IO_cleanup_region_start to handle cancelation correctly.
667         * iostream.h (class ostream): Change opfx and osfx to lock/unlock
668         stream
669         (class istream): Likewise for ipfx, ipfx0, ipfx1, and isfx.
670         Declare new function lock and unlock for ostream and istream.
671         * osform.cc: Use _IO_cleanup_region_start to handle cancelation
672         correctly.
673
674         * libio.h: Update from glibc version.  Pretty printing.
675         * libioP.h: Likewise.
676
677         * outfloat.c: Only compile if _IO_USE_DTOA is defined.
678
679         * stdio/feof.c: Make thread safe.
680         * stdio/ferror.c: Likewise.
681         * stdio/getc.c : Likewise.
682         * stdio/putc.c : Likewise.
683         * stdio/stdio.h: Declare function of thread-safe API.
684
685         * stdio/obprintf.c: New file.
686         * stdio/vasprintf.c: New file.
687
688         * stdio-lock.h: Removed.
689
690         * stdstrbufs.c: Add definitions for thread-safe streams.
691
692         * streambuf.cc: Initialize lock.
693
694         * strops.c (_IO_str_count): Undo last change.
695
696         * tests/tFile.cc: Support parallel builds by avoiding fixed
697         name for test file.
698
699 Thu Sep 11 18:43:56 1997  Jason Merrill  <jason@yorick.cygnus.com>
700
701         * Makefile.in (iostream.list): Remove STDIO_WRAP_OBJECTS.
702
703 Mon Sep  8 01:30:27 1997  Weiwen Liu    <liu@hepunix.physics.yale.edu>
704
705         * libio.h: Fix typo.
706
707 Sun Sep  7 23:00:18 1997  Jim Wilson  (wilson@cygnus.com)
708
709         * linux.mt (LIBIOSTREAM_DEP): Change stdio.list to stmp-stdio.
710
711 Fri Sep  5 09:58:43 1997  Brendan Kehoe  <brendan@lisa.cygnus.com>
712
713         * Makefile.in (iostream.list): Instead of adding stdio.list, add
714         STDIO_WRAP_OBJECTS.
715         (iostream.list): Lose dependency on stmp-stdio, not necessary for
716         our stuff.  The stdio stuff is present here just for uniformity
717         with glibc.
718
719 Thu Sep  4 17:26:22 1997  Brendan Kehoe  <brendan@lisa.cygnus.com>
720
721         * parsestream.cc (general_parsebuf): Cast return of malloc to char*.
722
723 1997-09-04 16:11  Ulrich Drepper  <drepper@cygnus.com>
724
725         Change compared to version initially intended to in:
726         * strops.c (_IO_str_count): Still use _IO_write_ptr, not
727         _IO_write_end, for now.
728
729         * iofeof.c, ioferror.c, iofflush_u.c, iogetc.c, ioputc.c, peekc.c,
730         stdio-lock.h: New files.
731
732         * include: New dir.
733         * include/empty.h: New header.
734
735         * filedoalloc.c: Update and reformat copyright.
736         Don't use DEFUN.
737         Use __set_errno throughout the code to support multi-threaded
738         programs.
739         Correct layout to follow the Coding Standard.
740         Add casts to prevent warnings.
741         * fileops.c: Likewise.
742         * genops.c: Likewise.
743         * iofclose.c: Likewise.
744         * iofdopen.c: Likewise.
745         * iofflush.c: Likewise.
746         * iofgetpos.c: Likewise.
747         * iofgets.c: Likewise.
748         * iofopen.c: Likewise.
749         * iofprintf.c: Likewise.
750         * iofputs.c: Likewise.
751         * iofread.c: Likewise.
752         * iofsetpos.c: Likewise.
753         * ioftell.c: Likewise.
754         * iofwrite.c: Likewise.
755         * iogetdelim.c: Likewise.
756         * iogetline.c: Likewise.
757         * iogets.c: Likewise.
758         * iopadn.c: Likewise.
759         * iopopen.c: Likewise.
760         * ioputs.c: Likewise.
761         * ioseekoff.c: Likewise.
762         * iosetbuffer.c: Likewise.
763         * iosetvbuf.c: Likewise.
764         * iosprintf.c: Likewise.
765         * ioungetc.c: Likewise.
766         * iovsprintf.c: Likewise.
767         * iovsscanf.c: Likewise.
768         * libio.h: Likewise.
769         * libioP.h: Likewise.
770         * stdfiles.c: Likewise.
771         * strfile.h: Likewise.
772         * strops.c: Likewise.
773
774         * Makefile.in (IO_OBJECTS): Add peekc.o, iogetc.o, ioputc.o,
775         iofeof.o, and ioferror.o.
776         (iostream.list): Depend upon stmp-stdio.  Add the entries
777         from stdio.list to iostream.list.
778         (stmp-stdio): New name for what was the stdio/stdio.list rule.
779         All it now does is cd down into stdio and build stdio.list.
780
781         * configure.in (ALL): Add libiostream.a.
782
783         * libio.h [_IO_MTSFE_IO]: Include header declaring locking code.
784         Otherwise define opaque _IO_lock_t.
785         Define _IO_cookie_file.
786         Rename _IO_getc to _IO_getc_unlocked, _IO_peekc to _IO_peekc_unlocked,
787         _IO_putc to _IO_putc_unlocked, _IO_feof to _IO_feof_unclocked, and
788         _IO_ferror to _IO_ferror_unlocked.
789         Add prototypes for _IO_getc, _IO_putc, _IO_feof, _IO_ferror,
790         and _IO_peekc_locked.
791         Add declarations for _IO_flockfile, _IO_funlockfile, and
792         _IO_ftrylockfile.  If !_IO_MTSAFE_IO define _IO_flockfile,
793         _IO_funlockfile, _IO_ftrylockfile, _IO_cleanup_region_start, and
794         _IO_cleanup_region_end as empty macros.
795
796         * libioP.h: Change type of finish function to take an additional int
797         argument and change declaration of finish functions.
798         Add prototypes for _IO_seekoff and _IO_seekpos.
799         If _G_HAVE_MMAP is defined use stream buffers allocated with mmap.
800         Redefine FREE_BUF and ALLOC_BUF macros to help in both situations.
801         (FILEBUF_LITERAL): If we compile for a thread-safe library also
802         initialize lock member.
803
804         * filedoalloc.c: Take care for systems already defining _POSIX_SOURCE.
805         Keep name space clean on systems which require this.
806         (_IO_file_doallocate): Adopt ALLOC_BUF call for changed semantic.
807
808         * fileops.c: Keep name space clean on systems which require this.
809         (_IO_file_attach): Don't fail if seek failed because it's used on a
810         pipe.
811         (_IO_file_underflow): Update buffer pointers before calling `read'
812         since the `read' might not return anymore.
813         (_IO_file_overflow): If stream allows no writes set error flag.
814         (_IO_seekoff): Make sure that after flushing the file pointer in
815         the underlying file is exact.
816         (_IO_file_read): Don't restart `read' syscall if it return EINTR.
817         This violates POSIX.
818         (_IO_file_write): Likewise for `write'.
819         (_IO_cleanup): Install as exit handler in glibc.
820
821         * genops.c (_IO_setb): Correctly use FREE_BUF.
822         (_IO_default_doallocate): Correctly use ALLOC_BUF.
823         (_IO_init): Initialize lock in stream structure.
824         (_IO_default_finish): Destroy lock.
825         (_IO_get_column): Don't compile since it's not needed.
826         (_IO_nobackup_default): Likewise.
827
828         * iopopen.c: Take care for systems already defining _POSIX_SOURCE.
829         Correct _IO_fork and _IO_dup2 prototypes.
830
831         * iofclose.c: Acquire lock before starting the work.
832         * iofflush.c: Likewise.
833         * iofgetpos.c: Likewise.
834         * iofgets.c: Likewise.
835         * iofputs.c: Likewise.
836         * iofread.c: Likewise.
837         * iofsetpos.c: Likewise.
838         * ioftell.c: Likewise.
839         * iofwrite.c: Likewise.
840         * iogetdelim.c: Likewise.
841         * iogets.c: Likewise.
842         * ioputs.c: Likewise.
843         * iosetbuffer.c: Likewise.
844         * iosetvbuf.c: Likewise.
845         * ioungetc.c: Likewise.
846
847         * iofdopen.c: Create and initialize lock for new stream.
848         * iofopen.c: Likewise.
849         * iopopen.c (_IO_popen): Likewise.
850         * iovsprintf.c: Likewise.
851         * iovsscanf.c: Likewise.
852
853         * genops.c: Make weak aliases for various functions.
854         * iofclose.c: Likewise.
855         * iofdopen.c: Likewise.
856         * iofflush.c: Likewise.
857         * iofgetpos.c: Likewise.
858         * iofgets.c: Likewise.
859         * iofopen.c: Likewise.
860         * iofputs.c: Likewise.
861         * iofread.c: Likewise.
862         * iofsetpos.c: Likewise.
863         * ioftell.c: Likewise.
864         * iofwrite.c: Likewise.
865         * iogetdelim.c: Likewise.
866         * iogets.c: Likewise.
867         * ioputs.c: Likewise.
868         * iosetbuffer.c: Likewise.
869         * iosetvbuf.c: Likewise.
870         * ioungetc.c: Likewise.
871         * iovsprintf.c: Likewise.
872         * iovsscanf.c: Likewise.
873
874         * iofflush_u.c: New file.  fflush_unlocked implementation.
875
876         * iostream.h [_G_HAVE_LONG_DOUBLE_IO]: Declare real long double
877         output operator.
878
879         * peekc.c: New file.  Implement _IO_peekc_locked function.
880
881         * stdfiles.c: If we compile for a thread-safe library also define
882         lock variable.
883
884 Tue Aug 26 12:24:01 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)
885
886         * testsuite/Makefile.in (check): Don't depend on site.exp.
887         (just-check): Depend on site.exp.
888
889 Wed Aug 20 02:01:34 1997  Jason Merrill  <jason@yorick.cygnus.com>
890
891         * iostream.h: Add copy assignment ops for _IO_?stream_withassign.
892
893 Tue Jul 22 10:31:41 1997  Brendan Kehoe  <brendan@lisa.cygnus.com>
894
895         * config.shared (CHECK_SUBDIRS): Use install-sh, not install.sh.
896
897 Wed Jun 25 12:20:55 1997  Brendan Kehoe  <brendan@lisa.cygnus.com>
898
899         * config.shared (DOING_GPERF): Look for this, defining TOLIBGXX
900         and LIBS for it.
901
902 Wed Jun 18 11:03:34 1997  Bob Manson  <manson@charmed.cygnus.com>
903
904         * config.shared (FLAGS_TO_PASS): Don't include RUNTEST.
905
906 Tue Jun 17 22:23:48 1997  Bob Manson  <manson@charmed.cygnus.com>
907
908         * config.shared (FLAGS_TO_PASS): Pass RUNTEST and RUNTESTFLAGS.
909
910 Fri May 16 21:08:53 1997  Bob Manson  <manson@charmed.cygnus.com>
911
912         * iovfprintf.c: Declare __cvt_double before use.
913
914         * floatconv.c (d2b): Use _G_int32_t instead of int for the
915         e and bits parameters.
916         (_IO_strtod): Use _G_int32_t.
917
918         * gen-params: Look for NO_USE_DTOA and USE_INT32_FLAGS.
919
920         * strops.c (_IO_str_init_static): use _G_int32_t appropriately.
921
922         * libio.h: If _G_NO_USE_DTOA is set, then don't define
923         _IO_USE_DTOA.
924
925         * config/mn10200.mt: Don't use dtoa, it only works
926         for "real" doubles.
927
928 Thu May 15 17:44:12 1997  Bob Manson  <manson@charmed.cygnus.com>
929
930         * configure.in: Set CHECK_SUBDIRS to testsuite if we're doing
931         a cross compile.
932
933         * config.shared(check): Only run make check in the directories
934         specified by CHECK_SUBDIRS. Set CHECK_SUBDIRS to SUBDIRS
935         if it has no previous value.
936
937 Thu May  1 17:35:19 1997  Jason Merrill  <jason@yorick.cygnus.com>
938
939         * Makefile.in (test, tpipe): Add $(CFLAGS).
940
941 Wed Apr 30 12:16:29 1997  Jason Merrill  <jason@yorick.cygnus.com>
942
943         * configure.in: Don't turn on multilib here.
944
945 Sat Apr 26 13:38:21 1997  Bob Manson  <manson@charmed.cygnus.com>
946
947         * configure.in (configdirs): Add testsuite directory.
948
949         * testsuite/ChangeLog:
950         * testsuite/Makefile.in:
951         * testsuite/libio.tests/tiomanip.exp:
952         * testsuite/libio.tests/tstdiomisc.exp:
953         * testsuite/libio.tests/tiomisc.exp:
954         * testsuite/libio.tests/tFile.exp:
955         * testsuite/libio.tests/tfformat.exp:
956         * testsuite/libio.tests/tiformat.exp:
957         * testsuite/libio.tests/hounddog.exp:
958         * testsuite/libio.tests/putbackdog.exp:
959         * testsuite/configure.in:
960         * testsuite/lib/libio.exp:
961         * testsuite/config/default.exp:
962         New files for DejaGnu-style testsuite.
963
964 Fri Apr  4 03:16:44 1997  Ulrich Drepper  <drepepr@cygnus.com>
965
966         * configure.in: Enable multilibing by default.
967         Update multilib template to read config-ml.in.
968
969         * floatconv.c: Enable use in cross targets which use the
970         newlib ieeefp.h header.
971
972 Thu Jan 23 09:16:16 1997  Brendan Kehoe  <brendan@lisa.cygnus.com>
973
974         * libioP.h (_IO_file_attach): Delete redundant decl.
975
976 Tue Jan 21 22:13:45 1997  Brendan Kehoe  <brendan@lisa.cygnus.com>
977
978         * streambuf.h (class ios): Take out STREAMSIZE member, since we
979         only need (and should only have) the global one.
980
981 Tue Jan  7 14:02:40 1997  Jason Merrill  <jason@yorick.cygnus.com>
982
983         * iostream.h (long long fns): Use __extension__.
984
985         * gen-params: Use _G_llong and _G_ullong instead of long long for
986         deduced types.
987
988 Fri Dec  6 13:13:30 1996  Jason Merrill  <jason@yorick.cygnus.com>
989
990         * dbz/dbz.c: Use off_t.
991
992 Sat Nov 23 15:44:37 1996  Jason Merrill  <jason@yorick.cygnus.com>
993
994         * Makefile.in (install): Don't install _G_config.h with other headers.
995
996 Mon Nov 18 17:12:41 1996  Jason Merrill  <jason@yorick.cygnus.com>
997
998         * config.shared (SUBDIRS): Use -O instead of -O3 for debugging.
999
1000 Sun Nov  3 12:43:34 1996  Jason Merrill  <jason@yorick.cygnus.com>
1001
1002         * iostream.cc (write_int): Treat string literals as const.
1003
1004 Thu Sep 26 10:09:18 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
1005
1006         * depend: Regenerate.
1007
1008 Wed Sep 25 22:54:45 1996  Jason Merrill  <jason@yorick.cygnus.com>
1009
1010         * config.shared (depend.new): Deal with headers that don't end in .h.
1011
1012 Thu Aug 29 17:05:53 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
1013
1014         * configure.in (i[345]86-*-*): Recognize i686 for pentium pro.
1015
1016 Mon Aug  5 01:26:32 1996  Jason Merrill  <jason@yorick.cygnus.com>
1017
1018         * config{ure.in,.shared} (DISTCLEAN): Add multilib.out.
1019
1020 Fri Aug  2 17:39:35 1996  Jason Merrill  <jason@yorick.cygnus.com>
1021
1022         * libio.h (NULL): Use __null.
1023         * libioP.h (NULL): Ditto.
1024         * streambuf.h (NULL): Ditto.
1025         * ioextend.cc (get_array_element): Use NULL instead of (void*)0.
1026
1027 Fri Jul  5 18:26:41 1996  Jim Wilson  <wilson@cygnus.com>
1028
1029         * strfile.h (struct _IO_streambuf): New struct type.
1030         (struct _IO_strfile): Use it.
1031
1032 Tue Jun 18 18:24:21 1996  Jason Merrill  <jason@yorick.cygnus.com>
1033
1034         * fstream.h (fstreambase): Make __my_fb mutable.
1035         From Joe Buck.
1036
1037 Tue Jun 18 11:03:53 1996  Brendan Kehoe  <brendan@lisa.cygnus.com>
1038
1039         * dbz/fake.c (main): Set return type to int.
1040         * dbz/dbzmain.c (main): Likewise.
1041         * dbz/byteflip.c (main): Likewise.
1042
1043 Mon Jun 17 14:05:36 1996  Jason Merrill  <jason@yorick.cygnus.com>
1044
1045         * gen-params: Check if clog conflicts with system libraries.
1046         * stdstreams.cc: If it does, use __IO_clog.
1047         * iostream.h: Likewise.
1048
1049 Tue Jun 11 13:39:31 1996  Brendan Kehoe  <brendan@lisa.cygnus.com>
1050
1051         * stdiostream.h (istdiostream (FILE*)): Put istream base
1052         initializer before init for __f.
1053         (ostdiostream (FILE*)): Likewise for ostream base init.
1054
1055 Tue May 14 11:47:21 1996  Per Bothner  <bothner@andros.cygnus.com>
1056
1057         * strfile.h (_IO_str_fields):  Removed _len field.
1058         (_IO_STR_DYNAMIC, _IO_STR_FROZEN):  new macros.
1059         * strstream.h (strstreambuf::is_static):  Removed.
1060         (strstreambuf::frozen):  Use _IO_STR_DYNAMIC instead of is_static.
1061         * strstream.h, strstream.cc:  Remove support for !_IO_NEW_STREAMS.
1062         * strstream.cc (strstreambuf::init_dynamic):  Don't set _s._len.
1063         * strops.c (_IO_str_init_static):  Better handling of the
1064         negative (== unbounded) size case.
1065         (_IO_str_overflow, _IO_str_underflow, _IO_str_count):  Re-write
1066         to not use _s._len, and otherwise cleanup/fix.
1067         * strstream.h, strstream.cc (strstreambase::strstreambase()):  Call
1068         ios::init here.
1069         (other constructors):  Simplify - init already called.
1070
1071 Tue May 14 10:55:21 1996  Per Bothner  <bothner@deneb.cygnus.com>
1072
1073         Change so that strstreambuf default constructor does no allocation.
1074         * strstream.h (strstreambuf::init_dynamic):  Default initial size = 0.
1075         * strstream.cc (strstreambuf::init_dynamic):  Don't allocate a
1076         buffer (yet) if initial_size is 0.
1077         * strops.c (_IO_str_overflow):  Add 100 to size of re-allocated
1078         buffer, to handle case when initial size is 0.
1079
1080         * iostdio.h (remove, rename, tmpfile, tempnam):  Comment out.
1081
1082 Mon May 13 23:19:39 1996  Per Bothner  <bothner@deneb.cygnus.com>
1083
1084         * fileops.c (_IO_file_close_it):  Just call _IO_do_flush rather
1085         than _IO_file_sync, to avoid useless lseek.
1086
1087 Tue May 14 10:48:48 1996  Jason Merrill  <jason@yorick.cygnus.com>
1088
1089         * floatconv.c (_IO_strtod): Force rv into the stack.
1090
1091         * config.shared (gxx_includedir): Now $(includedir)/g++.
1092
1093 Sat Apr 27 02:37:49 1996  Jason Merrill  <jason@yorick.cygnus.com>
1094
1095         * libioP.h (JUMP*): Implement for thunks.
1096         (_IO_jump_t): Add second dummy field for thunks.
1097
1098 Thu Apr 25 13:20:00 1996  Jason Merrill  <jason@yorick.cygnus.com>
1099
1100         * config.shared (CXX): Use gcc, not g++.
1101
1102 Wed Apr 24 10:29:50 1996  Doug Evans  <dje@blues.cygnus.com>
1103
1104         * config.shared (depend.new): Delete $(srcdir)/ from foo.{c,cc}
1105         for SunOS VPATH.
1106         * depend: Regenerated.
1107
1108 Fri Apr 19 17:24:51 1996  Jason Merrill  <jason@yorick.cygnus.com>
1109
1110         * Version 2.8.0b3.
1111
1112 Wed Apr 10 17:16:01 1996  Jason Merrill  <jason@yorick.cygnus.com>
1113
1114         * configure.in (ALL): Don't build iostream.a.
1115
1116 Mon Apr  8 14:44:11 1996  Per Bothner  <bothner@kalessin.cygnus.com>
1117
1118         * iosetvbuf.c (_IO_setvbuf):  Clear _IO_UNBUFFERED unless _IONBF.
1119
1120 Mon Apr  8 15:08:23 1996  Ian Lance Taylor  <ian@cygnus.com>
1121
1122         * configure.in: Permit --enable-shared to specify a list of
1123         directories.
1124
1125 Fri Apr  5 17:48:56 1996  Per Bothner  <bothner@kalessin.cygnus.com>
1126
1127         * config.shared (MOSTLYCLEAN):  Also remove ${EXTRA_MOSTLYCLEAN}.
1128
1129 Fri Mar 22 23:25:00 1996 Ulrich Drepper  <drepepr@gnu.ai.mit.edu>
1130
1131         * genops.c (_IO_sputbackc, _IO_sungetc): Clear EOF flag if putsh
1132         back was successful.
1133
1134 Wed Mar 27 11:54:08 1996  Jason Merrill  <jason@yorick.cygnus.com>
1135
1136         * Version 2.8.0b2.
1137
1138 Fri Mar 22 15:39:36 1996  Per Bothner  <bothner@kalessin.cygnus.com>
1139
1140         * fileops.c (_IO_do_write):  Revert previous fix.  (It fails to
1141         handle the case that fp->_IO_read_end != fp->_IO_write_base.)
1142         (_IO_file_overflow):  Instead, if _IO_read_ptr is at the end of
1143         the buffer, reset all the read pointers to _IO_buf_base.
1144
1145 Tue Mar 12 12:03:17 1996  Per Bothner  <bothner@kalessin.cygnus.com>
1146
1147         * fileops.c (_IO_do_write):  Even if to_do==0, must re-set buffer
1148         pointers.  Bug and solution from Luke Blanshard <luke@cs.wisc.edu>.
1149
1150 Wed Feb 28 10:00:24 1996  Jason Merrill  <jason@yorick.cygnus.com>
1151
1152         * Version 2.8.0b1.
1153
1154 Tue Feb 27 18:08:16 1996  Per Bothner  <bothner@kalessin.cygnus.com>
1155
1156         * iopopen.c (_IO_proc_open):  Use (char*)0 rather than imprecise NULL.
1157
1158         * streambuf.h (ios):  Add ios::binary;  deprecate ios::bin.
1159         * filebuf.cc (filebuf::open):  Handle ios::binary.
1160
1161 Fri Feb  9 12:40:19 1996  Brendan Kehoe  <brendan@lisa.cygnus.com>
1162
1163         * cleanup.c (_IO_cleanup_registration_needed) [!_G_HAVE_ATEXIT]: Init
1164         to NULL.
1165         * filedoalloc.c (_IO_cleanup_registration_needed): Remove decl.
1166
1167 Thu Feb  8 08:12:50 1996  Brendan Kehoe  <brendan@cygnus.com>
1168
1169         * filedoalloc.c (_IO_cleanup_registration_needed): Revert previous
1170         change, since cleanup.c only defines it if _G_HAVE_ATEXIT.
1171
1172 Wed Feb  7 15:10:17 1996  Brendan Kehoe  <brendan@lisa.cygnus.com>
1173
1174         * filedoalloc.c (_IO_cleanup_registration_needed): Declare as extern.
1175
1176 Tue Dec 12 17:21:13 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1177
1178         * indstream.h, instream.cc (indirectbuf::uflow):  New method.
1179         * indstream.cc (indirectbuf::underflow):  Fix to use sgetc, not sbumpc.
1180         Fixes bug reported by Kevin Beyer <beyer@cs.wisc.edu>.
1181
1182         * indstream.cc (indirectbuf::seekpos):  Add paranoia test.
1183
1184 Fri Dec  8 14:55:34 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1185
1186         * stream.h:  Add warning to not use these functions.
1187         * stream.cc (str, chr):  Re-implement here (from libg++).
1188
1189 Tue Nov 28 15:07:01 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1190
1191         * config.shared:  Use test instead of [ to avoid DEC Unix lossage.
1192
1193 Thu Nov 23 14:51:43 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1194
1195         * iopopen.c: Move #include <sys/types.h> ahead of #include <signal.h>
1196         to deal with BSDI's literal implementation of Posix.
1197
1198 Sat Nov 25 11:21:55 1995  Doug Evans  <dje@canuck.cygnus.com>
1199
1200         * Makefile.in (install): Set rootme.
1201         * config.shared (TOPDIR): Set with ${foo-...} rather than ${foo=...}.
1202         (INSTALL): Handle absolute, dot, relative-not-dot values of srcdir.
1203         (TEXIDIR): Likewise.
1204
1205 Tue Nov 21 14:12:05 1995  Ian Lance Taylor  <ian@cygnus.com>
1206
1207         * configure.in: Check ${with_cross_host} rather than comparing
1208         ${host} and ${target}.
1209
1210 Mon Nov 20 13:55:29 1995  Brendan Kehoe  <brendan@lisa.cygnus.com>
1211
1212         * configure.in: Match *-sco3.2v[45]*.
1213
1214 Wed Nov 15 20:19:31 1995  Brendan Kehoe  <brendan@lisa.cygnus.com>
1215
1216         * config.shared (FLAGS_TO_PASS): Also pass SHLIB and SHCURSES.
1217
1218 Tue Nov 14 01:41:08 1995  Doug Evans  <dje@canuck.cygnus.com>
1219
1220         * config.shared (TO_REAL_TOPDIR): Define.
1221         (MULTITOP): Deleted.
1222         (MULTISRCTOP, MULTIBUILDTOP): New.
1223         (TOPDIR): Change MULTITOP to MULTIBUILDTOP, and use TO_REAL_TOPDIR.
1224         (INSTALL): Add with_multisrctop, TO_REAL_TOPDIR.
1225         (TEXIDIR): Use TO_REAL_TOPDIR.
1226         (LIBS): Delete MULTITOP.
1227         (FLAGS_TO_PASS): Add NM.
1228         (CXXINCLUDES): Delete MULTITOP.
1229         (depend.new): Delete adding MULTITOP to ../ build tree references.
1230         Add MULTISRCTOP to ../ source tree references.
1231         * configure.in: Delete call to cfg-ml-com.in.  Call config-ml.in
1232         instead of cfg-ml-pos.in.
1233
1234 Sun Nov 12 16:30:48 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1235
1236         * Makefile.in (VERSION):  Set to 2.7.1.
1237         * configure.in:  Add warning for Linux.
1238         * config.shared (DISTCLEAN):  Add EXTRA_DISTCLEAN.
1239
1240         * editbuf.h (edit_mark::index_in_buffer):  Avoid unused param warning.
1241
1242         * iostream.cc (istream::operator>> (char*)):  Improve ANSI compliance.
1243
1244 Fri Nov 10 08:41:37 1995  Brendan Kehoe  <brendan@lisa.cygnus.com>
1245
1246         * config.shared (check): Add missing semicolon.
1247
1248 Thu Nov  9 17:27:22 1995  Jason Merrill  <jason@yorick.cygnus.com>
1249
1250         * configure.in (ALL): Remove $(OSPRIM_OBJECTS).
1251         * config.shared (check): Set LD_LIBRARY_PATH.
1252         * NEWS: Fix typo.
1253         * iogetdelim.c (_IO_getdelim): Index *lineptr, rather than lineptr.
1254         From alan@spri.levels.unisa.edu.au (Alan Modra).
1255
1256 Mon Nov  6 15:03:33 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1257
1258         * streambuf.cc, editbuf.cc, isgetline.cc, parsestream.cc:
1259         Fixes to avoid -Wall warnings.
1260
1261 Fri Nov  3 16:41:41 1995  Brendan Kehoe  <brendan@lisa.cygnus.com>
1262
1263         * gen-params [!__STDC__]: Include varargs.h instead of stdarg.h.
1264
1265 Thu Nov  2 15:04:03 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1266
1267         * config.shared:  Re-write if X then Y else true fi to (not X) || Y.
1268
1269 Wed Nov  1 13:26:44 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1270
1271         * iostream.h (istream::ipfx):  Add default argument value.
1272         Reported by Yotam Medini <yotam_medini@tmai.com>.
1273
1274         * libioP.h (_IO_blen):  Fix typo.
1275         Reported by Bryan T. Vold <btv@ldl.healthpartners.com>.
1276
1277 Fri Oct 27 19:26:20 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1278
1279         * Makefile.in (_G_config.h):  Set CC to $(CC) rather than to $(CXX),
1280         now that CXX defaults to g++ and CC default to gcc (when found).
1281         * config.shared:  Simplify CXX and CC, since they get overridden
1282         by ../configure anyway.
1283
1284 Wed Oct 25 19:45:50 1995  Brendan Kehoe  <brendan@lisa.cygnus.com>
1285
1286         * iostdio.h: Wrap including the file with #ifndef _IOSTDIO_H.
1287
1288 Wed Oct 25 11:14:25 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1289
1290         * libio.h (_IO_seekoff, _IO_seekpos):  New declarations.
1291         * libioP.h (_IO_seekoff, _IO_seekpos):  Remove declarations.
1292         * libioP.h:  Cleanup;  remove old !_IO_UNIFIED_JUMPTABLES stuff.
1293
1294         * filebuf.cc (filebuf::~filebuf):  Only call SYSYCLOSE if currently
1295         open.  Bug found by Martin Gerbershagen <ger@ezis-ulm.de>.
1296
1297         * streambuf.h (streambuf::pubseekoff, streambuf::pubseekpos):
1298         Added, from ANSI draft.
1299         * filebuf.cc (filebuf::open), iostream.cc (variables places), SFile.cc:
1300         Use pubseekoff/pubseekpos rather than sseekoff/sseekpos.
1301
1302         * Makefile.in (install):  Don't install libiostream.a.
1303
1304         * filedoalloc.c:  Also #include <unistd.h>.
1305
1306 Mon Oct  9 18:09:54 1995  Jason Molenda  <crash@phydeaux.cygnus.com>
1307
1308         * config.shared (SUFFIXES): add .c.
1309
1310 Tue Sep 26 16:08:01 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1311
1312         * procbuf.cc:  Move #pragma implementation to beginning.
1313
1314 Wed Sep 20 17:53:33 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1315
1316         * procbuf.h, procbuf.cc:  Add #pragma interface/implementation stuff.
1317
1318 Wed Sep 20 18:59:00 1995  John Eaton  <jwe@bevo.che.wisc.edu>
1319
1320         * procbuf.h: Protect from being included multiple times.
1321
1322 Wed Sep 20 15:47:14 1995  John Eaton <jwe@bevo.che.wisc.edu>
1323
1324         * procbuf.h (procbuf):  Add '_next' pointer field for compatibility
1325         with _IO_proc_file.
1326
1327 Wed Sep 20 13:54:02 1995  Ian Lance Taylor  <ian@cygnus.com>
1328
1329         * config.shared: Add support for maintainer-clean target as a
1330         synonym for realclean.
1331         * dbz/Makefile.in: Likewise.
1332
1333 Mon Sep 11 12:11:19 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1334
1335         * iopopen.c:  #include <sys/types.h> before <sys/wait.h>.
1336         This is in accordance with Posix, and needed for ISC.
1337
1338 Fri Sep  8 00:11:55 1995  Brendan Kehoe  <brendan@lisa.cygnus.com>
1339
1340         * gen-params: Use double quotes in the eval setting $TYPE to
1341         $VALUE, to preserve any single quotes in $VALUE.
1342
1343 Mon Aug 21 11:39:09 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
1344
1345         * gen-params: Test for an appropriate version of gcc before using
1346         mode attributes.
1347
1348         * config.shared: Add $(PICDIR) to $ALL.
1349
1350 Mon Aug  7 17:51:40 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1351
1352         * gen-params:  Generate new macro _G_HAVE_SYS_CDEFS.
1353         * libio.h:  If _G_HAVE_SYS_CDEFS, get __P from <sys/cdefs.h>.
1354
1355 Fri Aug  4 23:21:17 1995  Paul Eggert  <eggert@twinsun.com>
1356
1357         * gen-params: When following typedef changes, allow typedefs
1358         that do not have a space before the defined type name,
1359         e.g. `typedef void *__gnuc_va_list;' as in Linux.  Also,
1360         not require a space in the definiens, e.g. `typedef void*foo;'.
1361
1362 Thu Aug  3 17:54:15 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1363
1364         * iostream.h, iostream.cc (istream::sync):  Added missing method.
1365
1366 Thu Aug  3 17:49:34 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1367
1368         * configure.in:  Remove netbsd special case.
1369         * config/netbsd.mt:  Removed;  no longer used.
1370
1371 Tue Jun 20 16:07:12 1995  Paul Eggert  <eggert@twinsun.com>
1372
1373         * gen-params: Take transitive closure of `typedef' relation.
1374         This is needed for BSD/OS 2.0, which has
1375         fpos_t -> off_t -> quad_t -> long long.
1376
1377 Mon Jul 24 18:28:10 1995  Doug Evans  <dje@canuck.cygnus.com>
1378
1379         * config.shared (TOPDIR): Delete extra '/', $rootme may be empty.
1380
1381 Sat Jul 22 13:27:45 1995  Doug Evans  <dje@canuck.cygnus.com>
1382
1383         * config.shared (depend.new): Fix quoting in DO NOT EDIT line.
1384
1385         * Makefile.in (_G_config.h): Add multilib support.
1386         (install): Likewise.
1387         * config.shared: Likewise.
1388         * configure.in: Likewise.
1389
1390 Wed Jun 28 17:40:25 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
1391
1392         * PlotFile.h, SFile.h, builtinbuf.h, editbuf.h, fstream.h,
1393         indstream.h, iomanip.h, iostream.h, parsestream.h, pfstream.h,
1394         procbuf.h, stdiostream.h, stream.h, streambuf.h, strstream.h: Wrap
1395         with extern "C++".
1396
1397 Thu Jun 22 04:34:01 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
1398
1399         * gen-params: Surround attributes with __.
1400
1401 Mon Jun 19 00:33:22 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
1402
1403         * config.shared (SUBDIRS): Massage broken shells that require
1404         'else true'.
1405
1406 Sat Jun 17 11:25:38 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
1407
1408         * streambuf.h: Declare inline members inline in class.
1409
1410 Thu Jun 15 20:45:13 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1411
1412         * Makefile.in (VERSION):  Update to version 2.7.0.
1413
1414 Wed Jun 14 21:41:11 1995  Jason Merrill  <jason@python.cygnus.com>
1415
1416         * Makefile.in (STDIO_WRAP_OBJECTS): Remove stdfiles.o.
1417         (LIBIO_OBJECTS): Add stdfiles.o.
1418
1419 Wed Jun  7 16:11:36 1995  Jason Merrill  <jason@python.cygnus.com>
1420
1421         * config.shared (all): Appease bash.
1422
1423 Wed Jun  7 11:16:38 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
1424
1425         * configure.in (MOSTLYCLEAN): Remove stamp-picdir.
1426
1427         * config.shared (MOSTLYCLEAN): Ditto.
1428         (CLEAN): Don't.
1429
1430 Mon Jun  5 18:29:39 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
1431
1432         * config/mh-*pic: Removed.
1433
1434         * configure.in (MOSTLYCLEAN): Remove pic objects.
1435         (frags): Use toplevel pic fragments.
1436
1437         * config.shared (CXXFLAGS): Use -O3.
1438         (PICFLAG, PICDIR): New macros.
1439         (all): Depend on $(PICDIR).
1440         (FLAGS_TO_PASS): Pass PICFLAG.
1441         (.x.o): Also build pic object.
1442         (stamp-picdir): Create directory for pic objects.
1443         (MOSTLYCLEAN): Remove pic objects.
1444         (CLEAN): Remove stamp-picdir.
1445
1446         * Makefile.in (iostream.list): Depend on stamp-picdir.
1447         (c++clean): Don't remove _G_config.h.
1448
1449 Mon Jun  5 15:03:47 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1450
1451         * strstream.h, strstream.cc (strstream::strstream()):  Re-implement to
1452         be like ostrstream::ostrestream(), and not leak memory.
1453
1454         * streambuf.h:  Use #if !_IO_UNIFIED_JUMPTABLES instead of #ifndef.
1455
1456         * iolibio.h (_IO_rewind):  Add missing flags when calling _IO_seekoff.
1457
1458 Thu May 25 22:30:21 1995  J.T. Conklin  <jtc@rtl.cygnus.com>
1459
1460         * config/netbsd.mt (G_CONFIG_ARGS): Add defn for off_t.  Another
1461           layer of typedefs has been added and the gen-params script can
1462           not handle it.
1463
1464 Wed May 10 03:02:58 1995  Jason Merrill  <jason@python.cygnus.com>
1465
1466         * iolibio.h (_IO_rewind): Add new argument to _IO_seekoff.
1467
1468         * config/linux.mt (LIBIOSTREAM_OBJECTS): Include $(STDIO_WRAP_OBJECTS).
1469         (LIBIOSTREAM_DEP): Include stdio.list.
1470         (LIBIOSTREAM_USE): Include `cat stdio.list`.
1471
1472         * Makefile.in (LIBIOSTREAM_DEP): New variable.
1473         (LIBIOSTREAM_USE): Ditto.
1474         (libiostream.a): Use them.
1475         (iostream.list): Ditto.
1476         (stdio.list): New rule.
1477         (stdio/stdio.list): Ditto.
1478
1479 Tue May  9 18:29:38 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
1480
1481         * libioP.h (_IO_jump_t): Change TYPE for __dummy from int to
1482         _G_size_t.
1483
1484 Sat May  6 13:50:37 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1485
1486         * libio.h (_IO_UNIFIED_JUMPTABLES):  #define as true.
1487         (_IO_FILE):  Remove _jumps field (#if _IO_UNIFIED_JUMPTABLES).
1488
1489         * libioP.h (enum _IO_seekflags_):  Removed.
1490
1491         * libioP.h (_IO_setbuf_t):  Change return value of setpos jumptable
1492         function to match C++ streambuf::setpos.  (Return NULL on failure.)
1493         * fileops.c (_IO_file_setbuf), genops.c (_IO_default_setbuf),
1494         filebuf.cc, iosetvbuf.c:  Update to use new setbuf conventions.
1495
1496         * streambuf.h (streambuf):  Re-order virtual functions more logically.
1497         * streambuf.cc (streambuf::uflow), streambuf.h:  New virtual.
1498         * libioP.h (struct _IO_jump_t):  Define using new JUMP_FIELD macro.
1499         And re-order in more logical order consistent with streambuf vtable.
1500         * fileops.c (_IO_file_jumps), iopopen.c (_IO_proc_jumps), iovfprintf.c
1501         (_IO_helper_jumps), streambuf.cc (_IO_streambuf_jumps), strops.c
1502         (_IO_str_jumps):  Update accordingly, using JUMP_INIT macro.
1503         * stdfiles.c:  Set vtable to point to _IO_file_jumps.
1504         * filebuf.cc, iopopen.c, iovfprintf.c (helper_vfprintf), iovsprintf.c,
1505         iovsscanf.c:  Use macros and #if to set jumptables.
1506
1507         * streambuf.c:  _IO_streambuf_jumps and the _IO_sb_* methods are not
1508         needed #if _IO_UNIFIED_JUMPTABLES.
1509         * filebuf.cc (filebuf::__new):  Also no longer needed.
1510         * fstream.cc (fstreambase::__fb_init, fstreambase::fstreambase):  Fix.
1511         * stdstrbufs.c:  Use filebuf vtable instead of builtinbuf's.
1512         * builtinbuf.h, builtinbuf.cc (builtinbuf):  Commented out #if
1513         _IO_UNIFIED_JUMPTABLES - no longer needed.
1514         * strstream.cc (SET_STR_JUMPS):  Does nothing now.
1515
1516         * builtinbuf.cc, fileops.c, genops.c, iofgetpos.c, iofsetpos.c,
1517         ioftell.c, iopopen.c, ioseekoff.c, ioseekpos.c, iosetvbuf.c,
1518         iovfprintf.c, iovfscanf.c, strops.c:  Use DEFUN and DEFUN_VOID.
1519         * filebuf.cc, fileops.c, genops.c, iopopen.c, ioseekoff.c, ioseekpos.c,
1520         iosetvbuf.c, iovfscanf.c:  Use new JUMP_* and IO_OVERFLOW/... macros.
1521
1522         * libioP.h (_IO_seekpos_t):  Third arg is now an int (using _IOS_INPUT
1523         and _IOS_OUTPUT), not an enum _IO_seekflags_.  Flags values are
1524         changed, and their sense inverted (to match streambuf::seekpos).
1525         * libioP.h (_IO_seekoff_t):  Similarly match streambuf::seekoff.
1526         * filebuf.cc, fileops.c (_IO_file_fopen, _IO_file_seekoff), genops.c
1527         (_IO_default_seekpos, _IO_default_seekpos), iofgetpos.c, iofsetpos.c,
1528         iolibio.h (_IO_fseek), ioftell.c, ioseekoff.c, ioseekpos.c,
1529         iostream.cc, streambuf.cc, strops.c (_IO_str_seekoff), strstream.cc:
1530         New seekpos/seekoff conventions.
1531         * iostreamP.h (convert_to_seekflags):  Removed - no longer needed.
1532
1533         * iolibio.h (_IO_fread):  New declaration.
1534
1535         * dbz/Makefile.in:  Re-arrange for cleaner dependencies.
1536
1537 Fri May  5 15:55:22 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1538
1539         * libioP.h (_IO_JUMPS. JUMP_FIELD, JUMP0, JUMP1, JUMP2, JUMP3,
1540         JUMP_INIT, _IO_FINISH, _IO_OVERFLOW, ... _IO_SYSSTAT):  New macros
1541         in preparation for new unified jumptable/vtable implementation.
1542         * cleanup.c, filedoalloc.c, iofclose.c, iofflush.c, iofiledoalloc.c,
1543         ioprims.c, iosetbuffer.c, iostrerror.c, ioungetc.c:  Use DEFUN.
1544         * filedoalloc.c, iofclose, iofflush, iosetbuffer.c:  Use new macros.
1545
1546         * iofopen.c, iofdopen.c:  Use macros and #if for new jumptables.
1547
1548         * gen-params:  Do not #include <sys/types.h>.
1549         Add missing quote in 'eval'.
1550         Do add #include <sys/types.h> in test for <sys/resource.h>.
1551         * config/netbsd.mt:  New file, defining _G_CONFIG_ARGS (for fpos_t).
1552         * configure.in:  Use netbsd.mt for NetBSD.
1553
1554 Wed May  3 15:03:47 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1555
1556         * libioP.h (DEFUN, DEFUN_VOID, AND):  New macros, from ansidecl.h.
1557         * iofdopen.c, iofgets.c, iofopen.c, iofputs.c, iofread.c, iofwrite.c,
1558         iogetdelim.c, iogetline.c, iogets.c, ioignore.c, iopadn.c, ioperror.c,
1559         ioputs.c, iovsprintf.c, iovsscanf.c, outfloat.c:  Use DEFUN.
1560
1561 Mon May  1 16:22:30 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
1562
1563         * gen-params: #include <sys/types.h>.  Don't use __WCHAR_TYPE__ in
1564         definition of _G_wchar_t.  Use __attribute__ ((mode)) to get
1565         specific-sized ints under gcc, don't worry about int8 or int64
1566         otherwise.  Provide defaults if deduction fails.
1567
1568 Thu Apr 27 18:27:53 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1569
1570         * streambuf.h (ios::~ios):  Delete _arrays.
1571         (_IO_NEW_STREAMS):  Turn on.
1572         * libio.h (__adjust_column):  Remove bogus declaration.
1573         * genops.c (_IO_set_column):  Fix typo (in commented-out code).
1574
1575 Tue Apr 25 17:14:29 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
1576
1577         * config.shared (CXXINCLUDES): Use a shell variable with a
1578         different name from the make variable.
1579         * configure.in: Update accordingly.
1580
1581 Mon Apr 17 17:19:40 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1582
1583         * streambuf.h (__adjust_column):  Remove redundant declaration.
1584
1585 Sat Apr 15 11:39:25 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1586
1587         * config.shared (do-clean-dvi):  Also remove *.cps.
1588
1589         * gen-params:  Use ${SED} instead of sed.
1590
1591         * libio.h:  Remove #if'd out stuff (confuses makedepend).
1592
1593         * stdstreams.cc (STD_STR):  Standard streams start with ios::dec set.
1594
1595 Fri Apr 14 23:46:31 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1596
1597         * iostream.h, iostream.cc (istream::read, ostream::write):
1598         Use streamsize for the length parameter.
1599
1600         * streambuf.h:  Removed redundant __overflow and __underflow.
1601
1602         * fstream.h, fstream.cc: Add void fstreambase::attach(int).
1603
1604         * iosscanf.c (_IO_sscanf):  Fix non-__STDC__ missing declaration.
1605
1606 Mon Apr  3 15:40:55 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
1607
1608         * indstream.*: Fix prototypes of xsputn and xsgetn.
1609
1610         * fileops.c: Avoid ??? trigraph.
1611
1612 Mon Mar 27 16:16:38 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
1613
1614         * iomanip.h (operator<< (ostream&, const omanip<TP>&): Define
1615         separately.
1616         (operator>> (istream&, const imanip<TP>&): Ditto.
1617
1618 Mon Mar 27 08:56:00 1995  Brendan Kehoe  (brendan@lisa.cygnus.com)
1619
1620         * builtinbuf.cc (builtinbuf::setbuf): Cast NULL to streambuf*, to
1621         avoid warning/error about conversion from void*.
1622         * indstream.cc (indirectbuf::seekoff): Likewise.
1623         (indirectbuf::seekpos): Likewise.
1624         * filebuf.cc (filebuf::setbuf): Likewise.
1625         (filebuf::close): Cast NULL to filebuf*.
1626
1627 Wed Mar  1 14:23:18 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1628
1629         * configure.in (DISTCLEAN):  Add, with target-mkfrag.
1630
1631 Fri Feb 24 01:01:08 1995  Jason Merrill  <jason@python.cygnus.com>
1632
1633         * configure.in (frags): Don't require so many dashes in the
1634         canonical target name.
1635
1636 Sat Feb 18 13:18:30 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1637
1638         * streambuf.cc (streambuf::sync):  Always return 0, even for
1639         non-flushed output.  This is required by the ANSI/ISO draft.
1640         * genops.c (_IO_sync):  Likewise always return 0.
1641
1642 Fri Feb 17 16:33:28 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1643
1644         * fileops.c (_IO_file_close_it):  Call _IO_file_sync, rather
1645         than _IO_do_flush, because we want to adjust the file pointer
1646         if reading and not at end (as in SVR4, and as in fflush).
1647         Also, make sure to return error indication if sync fails.
1648         (_IO_file_sync):  Ignore seek error if it is ESPIPE.
1649         (_IO_file_seekoff):  If not readable, do dumb lseek.
1650         * iofclose.c (_IO_fclose):  If closing a non-filebuf, return -1
1651         if _IO_ERR_SEEN.
1652
1653 Fri Feb 17 19:31:00 1995  Ian Lance Taylor  <ian@cygnus.com>
1654
1655         * gen-params: Check for struct tms in <sys/times.h>, defining
1656         HAVE_SYS_TIMES accordingly.
1657
1658 Wed Feb 15 21:05:11 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1659
1660         * strops.c (_IO_str_count):  Use LEN macro.
1661         (_IO_str_seekoff):  Update _len field.
1662
1663 Mon Feb  6 19:29:00 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
1664
1665         * gen-params: Default to short, long and long long for 16, 32 and
1666         64 bit types, in case detection fails.
1667
1668 Wed Jan 25 18:07:30 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
1669
1670         * gen-params (_G_wint_t): Allow for broken promotions.
1671
1672 Tue Jan 24 16:15:40 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1673
1674         * stdstrbufs.cc (_IO_fake_stdiobufs):  Add an extra layer of struct,
1675         to force correct alignment on i960s.
1676         (DEF_STDIOBUF, _IO_{stdin,stdout,stderr}_buf):  Update accordingly.
1677
1678 Thu Jan 19 18:30:53 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
1679
1680         * config.shared (CXXINCLUDES): Add libstdc++ to includes for
1681         building libg++.
1682         (LIBS): Also link with libstdc++ when building libg++ toys.
1683         Don't set EXPORT_ALL_VARIABLES; users will have to set
1684         LD_LIBRARY_PATH themselves.
1685
1686 Fri Dec 30 16:38:13 1994  Mike Stump  <mrs@cygnus.com>
1687
1688         * config/linux.mt: Fix build problem on linux 1.0.8.
1689
1690 Thu Dec 22 11:49:45 1994  J.T. Conklin  (jtc@phishhead.cygnus.com)
1691
1692         * config/netware.mt: Use gcc to pre-link iostream.nlm's objects
1693           instead of using nlmconv, so that references to functions in
1694           libgcc.a are resolved.
1695
1696         * configure.in: Append .mt to target makefile fragment file names.
1697
1698         * floatconv.c (tens, tinytens, bigtens): Added const qualifier.
1699
1700 Tue Dec 20 09:59:50 1994  Mike Stump  <mrs@cygnus.com>
1701
1702         * gen-params (VTABLE_LABEL_PREFIX): Since some systems have GNU nm
1703         as nm, and they demangle by default, we have to notice this, and
1704         try --no-cplus (linux) or --no-demangle when running nm.
1705
1706 Wed Dec 14 18:13:58 1994  Per Bothner  <bothner@kalessin.cygnus.com>
1707
1708         * gen-params:  To determine vt-name-mangling using dummy.C add
1709         #include and #prama interface/implementation to avoid problem with
1710         assemblers that don't emit local symbols.  Reported under HPUX 8
1711         by Thomas Arend <arend@blasius.Chemietechnik.Uni-Dortmund.DE>.
1712
1713         * streambuf.h (ios::ios):  Move inline definition after
1714         that of ios::init (which ios::ios calls).
1715
1716 Sun Dec  4 19:50:32 1994  Per Bothner  <bothner@kalessin.cygnus.com>
1717
1718         * fileops.c (_IO_file_init, _IO_file_close_it, _IO_file_sync):
1719         Set _offset to _IO_pos_BAD, to support applications that follow
1720         POSIX.1 rules on mixing file handles.
1721
1722         * fileops.c (_IO_file_overflow):  Handle case that buffer was
1723         allocated (perhaps by setvbuf) but _IO_write_base is still 0.
1724
1725         * iostdio.h (setbuffer):  #define as _IO_setbuffer.
1726         * streambuf.h, filebuf.cc:  Removed filebuf::do_write.
1727
1728 Tue Nov 29 23:38:57 1994  Per Bothner  (bothner@rtl.cygnus.com)
1729
1730         * floatconv.c (setword0, setword1):  Fix typo.
1731
1732 Tue Nov 29 15:37:29 1994  Per Bothner  <bothner@kalessin.cygnus.com>
1733
1734         * config.shared:  Move -fno-implicit-template from CXXFLAGS
1735         to LIBCXXFLAGS.  Tests are better run without it.
1736
1737         * floatconv.c (word0, word1):  Re-place/re-implement using unions
1738         instead of casts to avoid optimizer problems.
1739
1740         * dbz/dbzmain.c:  Renamed dirname -> dir_name to avoid OSF
1741         header file braindamage.
1742
1743 Sat Nov  5 19:44:00 1994  Jason Merrill  (jason@phydeaux.cygnus.com)
1744
1745         * config.shared (LIBCFLAGS): Define.
1746         (LIBCXXFLAGS): Define.
1747         (DOING_LIBGXX): Define TOLIBGXX.  Change LIBS to use -lg++.  Add
1748         LD_LIBRARY_PATH and .EXPORT_ALL_VARIABLES:.
1749         (FLAGS_TO_PASS): Add LIBC{,XX}FLAGS.
1750         (XC{,XX}FLAGS): Set to LIBCFLAGS or CFLAGS depending on $LIBDIR.
1751         (COMPILE.c): Define, use in .c.o rule.
1752         (COMPILE.cc): Define, use in .cc.o rule.
1753
1754 Sat Nov  5 15:12:12 1994  Per Bothner  <bothner@kalessin.cygnus.com>
1755
1756         * Makefile.in (VERSION):  Update to 0.67.
1757
1758         * streambuf.h (ios::dont_close):  Is now set by default.
1759         * fstream.h, fstream.cc (__fb_init):  New function.  Clears
1760         ios::dont_close.  Change fstreambase constructors to call it.
1761         * strstream.cc:  *strstream constructors must clear ios::dont_close.
1762         * iostream.cc:  Simplify - don't need to set ios::dont_close.
1763         * ioassign.cc:  Simplify - assume ios::dont_close is always set.
1764
1765         * fstream.h, fstream.cc:  If _IO_NEW_STREAMS, put the
1766         filebuf as a member __my_fb.
1767         * strstream.{h,cc}:  Likewile use a strstreambuf member __my_sb.
1768         * streambuf.h, stdstreams.cc, ioextend.cc:
1769         Fix if _IO_NEW_STREAMS to not use ios::dont_close.
1770
1771         * streambuf.h (class ios):  Move rdbuf later, to avoid
1772         inability of g++ to inline.
1773         * filebuf.cc (filebuf::~filebuf):  Call _IO_do_flush.
1774
1775         * config.shared:  Emit rules to make depend.
1776         * depend:  New file.
1777
1778 Fri Nov  4 17:19:11 1994  Per Bothner  <bothner@kalessin.cygnus.com>
1779
1780         * README:  Fix typos.
1781         * libio.h:  Add comment.  Update Copyright notice.
1782
1783 Fri Nov  4 21:46:30 1994  Paul Eggert  <eggert@twinsun.com>
1784
1785         * libio.h (__P): Change argument name spelling from
1786         `paramlist' to `protos' for compatibility with BSDI 1.1.
1787
1788 Thu Nov  3 00:45:16 1994  Jason Merrill  (jason@phydeaux.cygnus.com)
1789
1790         * config.shared (CXXFLAGS): Add -fno-implicit-templates.
1791
1792 Mon Oct 24 15:57:35 1994  Per Bothner  <bothner@kalessin.cygnus.com>
1793
1794         * config.shared:  Define NOSTDIC and use it for libio too.
1795
1796 Thu Oct 20 19:45:35 1994  Jason Merrill  (jason@phydeaux.cygnus.com)
1797
1798         * iogetdelim.c: #include <stdlib.h>.
1799
1800 Thu Oct 20 17:09:52 1994  Per Bothner  <bothner@kalessin.cygnus.com>
1801
1802         * iostream.h:  Add classes _IO_istream_withassign and
1803         _IO_ostream_withassign.  Re-type cin, cout, cerr, clog.
1804         (class iostream):  Don't add extra _gcount field.
1805         * ioassign.cc:  New file.  Implement operator= for cin etc.
1806         * streambuf.h (class ios):  Change return type of operator=.
1807         * Makefile.in (IOSTREAM_OBJECTS):  Add ioassign.o.
1808
1809         * Makefile.in:  Re-arrange, so linux.mt overrides can work.
1810
1811         * fileops.c (_IO_file_seekoff):  Optimize seeks within buffer.
1812
1813 Wed Oct 19 14:25:47 1994  Jason Merrill  (jason@phydeaux.cygnus.com)
1814
1815         * gen-params (wint_t): Return to using __WCHAR_TYPE__ for
1816         compatibility with gcc versions prior to 2.6.1.
1817
1818 Tue Oct 18 17:08:18 1994  Per Bothner  <bothner@kalessin.cygnus.com>
1819
1820         * Makefile.in:  Define _G_CONFOG_H as _G_config.h for Linux.  Use it.
1821         (IO_OBJECTS):  Add iogetdelim.o.
1822         * config/linux.mt:  New file.
1823         * configure.in:  Select config/linux.mt if Linux.
1824         * iogetdelim.c:  Verious cleanups, many from
1825         Ulrich Drepper <drepper@ipd.info.uni-karlsruhe.de>.
1826         * libioP.h: Add _IO_getdelim.  Use (void) for no-parameter functions.
1827
1828 Thu Oct 13 16:30:56 1994  Per Bothner  (bothner@kalessin.cygnus.com)
1829
1830         * libio.h:  Rename USE_DTOA to _IO_USE_DTOA for namespace reasons.
1831         * iostream.cc, iovfscanf.c, iovfprintf, floatconv.c:
1832         Update USE_DTOA -> _IO_USE_DTOA.
1833
1834         * libio.h (_IO_feof, _IO_ferror):  Move to here ...
1835         * iolibio:  ... from here
1836
1837         * iostream.cc (istream::get, istream::ignore, istream::read):
1838         Set _gcount to 0 if ipfx0 failed.
1839
1840         * iostream.cc (flush):  Do virtual function call, rather than
1841         going through jumptable.  (To get correct method in derived class.)
1842         Bug and fix from John Wiegley <jw@cis.ohio-state.edu>.
1843
1844         * iofdopen.c (O_ACCMODE):  Define using O_RDWR, not O_RDWRITE.
1845
1846         * streambuf.h (ios::rdbuf(streambuf*)):  New.
1847         * streambuf.h (ios::operator=):  Make private (i.e. dis-allow).
1848
1849 Wed Oct 12 19:09:20 1994  Jason Merrill  (jason@phydeaux.cygnus.com)
1850
1851         * gen-params: Define _G_NO_NRV and _G_NO_EXTERN_TEMPLATES if not
1852         compiling with g++.
1853
1854 Thu Oct  6 16:03:43 1994  Per Bothner  (bothner@kalessin.cygnus.com)
1855
1856         * iostream.texi (ostrstream::str):  Note that NUL is not written
1857         automatically.
1858
1859 Wed Oct  5 17:28:29 1994  Per Bothner  (bothner@kalessin.cygnus.com)
1860
1861         * iogetdelim.c (_IO_getdelim):  New function.
1862
1863 Wed Oct  5 15:40:22 1994  J.T. Conklin  (jtc@phishhead.cygnus.com)
1864
1865         * config/netware.mt: New file, first cut at Netware NLM support.
1866         * configure.in (*-*-netware*): Use config/netware.mt.
1867
1868         * config.shared (NLMCONV, LD): New definition.
1869
1870         * gen-params: check for nm in ${binutils}/nm.new.
1871         * config.shared: Likewise.
1872
1873 Tue Oct  4 12:20:01 1994  Per Bothner  (bothner@kalessin.cygnus.com)
1874
1875         * iomanip.h (omanip::operator<<):  Make 2nd arg be const.
1876         Bug and fix reported by Greg McGary <gkm@magilla.cichlid.com>.
1877
1878         * strstream.cc (strstreambuf::pcount):  Simplify, to match
1879         ANSI/ISO specification.
1880
1881 Mon Sep 26 15:19:52 1994  Jason Merrill  (jason@deneb.cygnus.com)
1882
1883         * gen-params: Include <wchar.h> and <wctype.h> if they exist.
1884
1885 Thu Sep  8 14:41:41 1994  Jason Merrill  (jason@deneb.cygnus.com)
1886
1887         * iostream.h (class istream): Declare operator>>(long double&).
1888         (class ostream): Define operator<<(long double).
1889
1890         * iostream.cc (istream::operator>>(long double&)): Define.
1891
1892 Wed Sep  7 14:42:29 1994  Per Bothner  (bothner@kalessin.cygnus.com)
1893
1894         * iostream.texi (Overflow):  Fix bugs in example.
1895
1896 Fri Sep  2 17:45:57 1994  Per Bothner  (bothner@kalessin.cygnus.com)
1897
1898         * iostream.tex:  Document a little on how to write your
1899         own streambuf-derived class, with an example.
1900
1901 Tue Aug 30 13:03:57 1994  Brendan Kehoe  (brendan@lisa.cygnus.com)
1902
1903         * floatconv.c (s2b): Declare X and Y to be _G_int32_t.
1904         (diff, quorem): Declare BORROW, Y, and Z likewise.
1905         (ulp): Declare L likewise.
1906         (_IO_strtod): Declare L and AADJ likewise.
1907         (_IO_dtoa): Declare L and D likewise.  Cast division of D by DS to
1908         _G_int32_t.
1909
1910 Mon Aug 29 16:01:54 1994  Per Bothner  (bothner@kalessin.cygnus.com)
1911
1912         * iosetvbuf.c (_IO_setvbuf):  If setting _IOFBF and no
1913         buffer was specified, call __doallocate.
1914
1915         * fileops.c, floatconv.c:  Add a bunch of parentheses to
1916         shut up gcc warnings.  Patch from H.J.Lu.
1917
1918         * stdiostream.cc (stdiobuf::sys_read):  Inline call to getc
1919         for the normal case (size==1).
1920
1921 Sat Aug 20 12:14:52 1994  Per Bothner  (bothner@kalessin.cygnus.com)
1922
1923         * Makefile.in (VERSION):  Increase to 0.66.
1924
1925 Fri Aug 19 17:28:41 1994  Per Bothner  (bothner@kalessin.cygnus.com)
1926
1927         * iolibio.h:  Added _IO_printf prototype.
1928         Added extern "C" { ... } wrappers #ifdef __cplusplus.
1929         Bugs reported by Neal Becker <neal@ctd.comsat.com>.
1930
1931 Wed Aug 17 18:17:15 1994  Per Bothner  (bothner@kalessin.cygnus.com)
1932
1933         * fileops.c (_IO_file_seekoff):  For _IO_seek_cur, adjust for
1934         read-ahead before jumping to label dumb.
1935
1936 Wed Aug  3 13:15:01 1994  H.J. Lu  (hjl@nynexst.com)
1937
1938         * libioP.h (CHECK_FILE(FILE,RET)): new, which checks for
1939           FILE == NULL and _IO_MAGIC_MASK.
1940           (COERCE_FILE(FILE)): merged into CHECK_FILE(FILE,RET)
1941           with typo fixes.
1942
1943         * iofread.c, iofwrite.c: add CHECK_FILE(fp, 0);
1944         * iofclose.c: add CHECK_FILE(fp, EOF); remove _IO_MAGIC_MASK check.
1945
1946         * iofflush.c, iofgetpos.c, iofputs.c, iofscanf.c,
1947         iofsetpos.c, iofvbuf.c, ioungetc.c:
1948         Add CHECK_FILE(fp, EOF) and remove COERCE_FILE(fp).
1949
1950         * iofgets.c: add CHECK_FILE(fp, NULL) and remove COERCE_FILE(fp).
1951         * iofprintf.c: add CHECK_FILE(fp, -1) and remove COERCE_FILE(fp).
1952         * ioftell.c: add CHECK_FILE(fp, -1L) and remove COERCE_FILE(fp).
1953         * iosetbuffer.c: add CHECK_FILE(fp, ) and remove COERCE_FILE(fp).
1954
1955 Fri Aug 12 15:35:39 1994  Per Bothner  (bothner@kalessin.cygnus.com)
1956
1957         * iofdopen.c (_IO_fdopen):  #define O_ACCMODE if it isn't.
1958         Still set O_APPEND if "a" is given, but don't unset it
1959         if it isn't.  Added comment.
1960
1961 Mon Aug  8 13:11:00 1994  Per Bothner  (bothner@kalessin.cygnus.com)
1962
1963         * gen-params (VTABLE_LABEL_PREFIX):  Changes in the implementation.
1964         For look for _*vt[$_.]7*filebuf in the nm output, because that
1965         matches what g++ produces and has produced.  Thus it should be
1966         somewhat more robust.
1967
1968 Sun Aug  7 22:52:49 1994  Per Bothner  (bothner@kalessin.cygnus.com)
1969
1970         * gen-params (CC):  Remove no-longer-needed -I options
1971         passed to xgcc (now they are implied by the -B options).
1972
1973 Wed Jul 20 16:41:13 1994  Per Bothner  (bothner@kalessin.cygnus.com)
1974
1975         * Makefile.in (tooldir):  Added definition, so we can do
1976         'make install' in this directory.
1977         Bug reported by Klamer Schutte <schutte@tpd.tno.nl>.
1978
1979 Mon Jul 18 18:02:34 1994  Per Bothner  (bothner@kalessin.cygnus.com)
1980
1981         * gen-params (VTABLE_LABEL_PREFIX):  Remove filename sppearing
1982         by itself.  Add comment explaining what is going on.
1983
1984 Tue Dec 21 13:02:48 1993  H.J. Lu  (hjl@jalod)
1985
1986         * libio.h: define _IO_uid_t and _IO_HAVE_ST_BLKSIZE
1987           as _G_xxxxxxxx.
1988
1989 Tue Dec 21 13:02:48 1993  H.J. Lu  (hjl@jalod)
1990
1991         * iopopen.c:  Don't include <errno.h>. It is included in "libioP.h".
1992
1993         * iopopen.c (_IO_proc_close) : check if fp is on the list
1994           before close it.
1995
1996 Thu Jul 14 16:38:47 1994  Per Bothner  (bothner@kalessin.cygnus.com)
1997
1998         * gen-params (CONFIG_NM):  Make sed scripts to find vtable name
1999         mangling more robost for different forms of nm output.
2000
2001 Tue Dec 21 13:02:48 1993  H.J. Lu  (hjl@jalod)
2002
2003         * iofopen.c (_IO_fopen): don't check [redundantly] fp == NULL after
2004           IO_file_init(&fp->_file).
2005
2006         * iomanip.h (template<class TP> class iapp):
2007           change ostream to istream.
2008
2009 Tue Jul 12 14:09:02 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2010
2011         * Makefile.in (VERSION):  Increase to 0.65.
2012         * libioP.h (builtinbuf_vtable):  Only define #ifdef __cplusplus.
2013
2014         * gen-params (_G_int8_t):  Only define if defined(__STDC__),
2015         because K&R C compilers don't have signed char.
2016         (_G_int64_t, _G_uint64_t):  Only define if defined(__GNUC__)
2017         because other compilers may not have long long.
2018
2019 Sun Mar 06 13:10:21 1994  H.J. Lu  (hjl@nynexst.com)
2020
2021         * floatconv.c (_IO_dtoa ()): fix a small memory leak, set the
2022           "on_stack" field to be 0 if "result" is not NULL.
2023
2024 Sat Mar 05 13:18:20 1994  H.J. Lu  (hjl@nynexst.com)
2025
2026         * floatconv.c (_IO_dtoa ()): if the number of digits of the
2027           floating point number is more than the previous one, free the
2028           old string and allocate a new one.
2029           [Minor optimization to avoid Bcopy. -PB]
2030
2031 Mon Jul 11 10:53:41 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2032
2033         * fileops.c (_IO_file_underflow):  'count' should be unsigned,
2034         since it contains the return value of read.  Reported by
2035         Teemu Torma <tot@trema.fi>.
2036
2037 Tue Dec 21 13:02:48 1993  H.J. Lu  (hjl@nynexst.com)
2038
2039         * floatconv.c (_IO_strtod ()): make "+" and "-" as error.
2040
2041 Sat Jul  9 15:09:21 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2042
2043         Make sure _IO_FILE::_flags is always initialized correctly, for the
2044         C functions (fopen, fdopen, popen), and not just the C++ functions.
2045         * fileops.c (_IO_file_init):  Set _flags to CLOSED_FILEBUF_FLAGS.
2046         * fileops.c (_IO_file_fopen):  Remove bogus assignment.
2047         * filebuf.cc (filebuf constructors):  Don't pass CLOSED_FILEBUF_FLAGS
2048         to streambuf constructor - _IO_file_init does it instead.
2049         * filebuf.cc (CLOSED_FILEBUF_FLAGS):  Removed.
2050         * iopopen.c (_IO_proc_open):  Use _IO_mask_flags.
2051
2052 Thu Jun 30 08:49:53 1994  Jason Merrill  (jason@deneb.cygnus.com)
2053
2054         * dbz/Makefile.in (mostlyclean): Add target.
2055
2056 Wed Jun 29 09:30:12 1994  Jason Merrill  (jason@deneb.cygnus.com)
2057
2058         * gen-params: Woops, can't run a C program to determine target
2059         characteristics.  Sigh.
2060
2061 Tue Jun 28 03:11:33 1994  Jason Merrill  (jason@deneb.cygnus.com)
2062
2063         * gen-params: Add _G_{,u}int{8,16,64}_t, use a short C program to
2064         determine what all these should be rather than trying to compare
2065         the MAX numbers in the shell.
2066
2067 Sun Jun 26 21:04:24 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2068
2069         * stdiostream.h, stdiostream.cc (stdiobuf::xsgetn):  Removed.
2070         Too hairy.  If we want to optimize it, we should do so in
2071         filebuf::xsgetn (or rather _IO_file_xsgetn).
2072
2073         * stdiostream.h (class stdiobuf), stdiostream.cc:  Fix parameter
2074         and return types of virtual function to matcher base types (Oops!).
2075         * streamstream.cc (stdiobuf::xsgetn, stdiobuf::xsputn):
2076         Optimize to call fread.fwrite directly if !buffered.
2077         * fileops.c:  Fix comment.
2078
2079 Fri Jun 24 11:28:18 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2080
2081         * stdiostream.h (istdiostream, ostdiostream):  New classes.
2082
2083         More robust final cleanup.
2084         * cleanup.c (_IO_register_cleanup):  Register _IO_cleanup,
2085         rather than _IO_flush_all.
2086         * filedoalloc.c: Update comment.
2087         * genops.c (_IO_unbuffer_all):  New.  Makes all files unbuffered.
2088         * genops.c (_IO_cleanup), libioP.h:  New function.  Call
2089         _IO_flush_all, and then _IO_unbuffer_all.  This is in case C++
2090         destructors try to do output *after* _IO_cleanup is called.
2091
2092         Construct standard stdiobufs statically (using type punning).
2093         * stdstrbufs.c;  Unless _STDIO_USES_IOSTREAM declare standard
2094         stdiobufs (for stdin, stdout, and stderr), using type punning
2095         (struct _IO_fake_stdiobuf).  This avoids constructor-time problems.
2096         * stdstreams.cc:  Remove the declarations of the stdiobufs.
2097         Instead use the new (fake) ones in stdstrbufs.cc.  We no longer
2098         have to call ios::sync_with_stdio at constructor time.
2099
2100         Preliminary support for new ANSI streambuf::uflow virtual.
2101         * libioP.h (struct _IO_jump_t):  Add __uflow field.
2102         * genops.c (_IO_default_uflow), libioP.h:  New function.
2103         * fileops.c (_IO_file_jumps), iopopen.c (IO_proc_jumps),
2104         iovfprintf.c (_IO_helper_jumps), strops.c (_IO_str_jumps),
2105         streambuf.cc (_IO_streambuf_jumps):  Add _IO_default_uflow.
2106         * genops.c (__uflow):  New function.
2107         (save_for_backup):  New function.  Some code shared by
2108         __underflow and __uflow, moved out from the former.
2109         (_IO_default_uflow):  New function.
2110         * libio.h (_IO_getc):  Call __uflow, not __underflow.
2111
2112 Wed Jun 22 20:22:49 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2113
2114         Make sure that the vtable of a streambuf is always valid,
2115         which makes ios::rdbuf simpler and faster.
2116         * gen-params:  Add code to determine _G_VTABLE_LABEL_HAS_LENGTH,
2117         _G_VTABLE_LABEL_PREFIX, _G_VTABLE_LABEL_PREFIX_ID, and
2118         _G_USING_THUNKS, which describe how virtual function tables are named.
2119         * stdfiles.c (FILEBUF_LITERAL):  Moved to libioP.h.
2120         * libioP.h (builtinbuf_vtable):  New (complicated) declaration.
2121         * filebuf.cc (filebuf::__new), strstream.cc (SET_STR_JUMPS):
2122         Initialize vtable to builtinbuf_vtable, not NULL.
2123         * stdstrbufs.cc:  New file.  Same as stdfiles.c, except that
2124         vtable is initialized to builtinbuf_vtable, not NULL.
2125         * streambuf.h (ios::rdbuf):  Can now simplify/optimize, due to
2126         above changes.  Always, just return _strbuf.
2127         * builtinbuf.h, builtinbuf.cc (builtinbuf::vtable,
2128         builtinbuf::get_builtin_vtable):  Removed.  No longer needed.
2129         * streambuf.h, builtinbuf.cc (ios::_IO_fix_vtable):  No longer needed.
2130         Only defined #ifdef _STREAM_COMPAT, for binary compatibility.
2131         * Makefile.in:  Move stdfiles.o from IO_OBJECTS to STDIO_WRAP_OBJECTS.
2132         (IOSTREAM_OBJECT):  Add stdstrbufs.o.
2133         * Makefile.in (_G_config.h):  Pass $(CXXFLAGS) as part of $(CXX).
2134
2135 Fri Feb 11 11:08:01 1994  SBPM Marc GINGOLD (marc@david.saclay.cea.fr)
2136
2137         * iovfprintf.c (helper_vfprintf): add
2138           hp->_IO_file_flags = _IO_MAGIC|(_IO_IS_FILEBUF+_IO_NO_READS);
2139         [This is needed because _IO_vfprintf checks for _IO_UNBUFFERED. -PB]
2140         [Actually:  don't set _IO_IS_FILEBUF. -PB]
2141
2142 Wed Jun 22 13:49:22 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2143
2144         * stdiostream.cc, stdiostream.h (stdiobuf::buffered):  New methods.
2145
2146         * iofdopen.c (_IO_fdopen):  Various minor improvements.
2147
2148         * iovfscanf.c:  Don't return EOF on control_failure.
2149
2150 Tue Dec 21 13:02:48 1993  H.J. Lu  (hjl@nynexst.com)
2151
2152         * iovfscanf.c:  Enforce the sequence of the conversion specifications.
2153
2154 Fri Jun 17 20:57:22 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2155
2156         * iofdopen.c:  Use fcntl to check that requested access mode is
2157         compatible with existing access mode, and to change the
2158         O_APPEND file status flag if need be.
2159
2160 Thu Jun 16 17:33:50 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2161
2162         * streambuf.h (ios::init):  Initialize all the fields.
2163         This may be overkill, but the current ANSI working paper requires it.
2164         * streambuf.h (ios::ios):  Reimplement in terms of ios::init.
2165         * iostream.cc (Non-default constructors istream::istream,
2166         ostream::ostream, iostream::iostream):  Cannot use a mem-initializer,
2167         because it is ignored if initializing a derived class.  Instead,
2168         call ios::init.
2169
2170 Wed Jun 15 13:35:37 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2171
2172         * stdstreams.cc (ISTREAM_DEF):  Fix typo (it's a _fake_istream, not
2173         a _fake_ostream).  Reported by Jason Shirk <jshirk@gomez.intel.com>.
2174
2175         * stdiostream.h, stdiostream.cc (stdiobuf::~stdiobuf):  New.
2176         Call _IO_do_flush.
2177         * stdiostream.cc (stdiobuf::sync):  Call _IO_do_flush rather
2178         than filebuf::sync (to avoid bad seeks).
2179
2180         * libioP.h (_IO_do_flush):  Add missing parentheses.
2181
2182 Fri Jun  3 19:16:57 1994  Jason Merrill  (jason@deneb.cygnus.com)
2183
2184         * config.shared (CXXFLAGS): Remove -fno-implicit-templates.
2185
2186         * iomanip.h: Add explicit external instantiations.
2187
2188 Wed Jun  1 14:14:44 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2189
2190         * libio.h (struct _IO_FILE_plus):  Move definition from here ...
2191         * libioP.h (struct _IO_FILE_plus):  ... to here.  Since this
2192         file is private to the implementation, we can rename the fields
2193         from the implementor's to the user's name anme space.
2194         (This avoids a lossage on SCO, whose stdio.h has a #define _file.)
2195         * iofdopen.c, iofopen.c, stdfiles.c:  Fix field references accordingly.
2196         * iopopen.c (struct_IO_proc_file):  Rename fields from
2197         implementor's name space to user's, and update usages.
2198         * streambuf.h (streambuf::_vtable):  Re-implement to not need
2199         struct _IO_FILE_plus.
2200         * strfile.h (struct _IO_strfile_): Likewise.
2201
2202 Wed Jun  1 13:57:48 1994  Jason Merrill  (jason@deneb.cygnus.com)
2203
2204         * config.shared (CXXFLAGS): Use -fno-implicit-templates instead of
2205         -fexternal-templates.
2206
2207 Tue May 31 08:49:28 1994  Mike Stump  (mrs@cygnus.com)
2208
2209         * genops.c, iofclose.c, iofdopen.c, iofopen.c, iopopen.c: Be
2210         consistent about protecting #include <stdlib.h>.
2211
2212         * ioputs.c: Add #include <string.h>, to avoid warning on alpha.
2213
2214         * iofdopen.c: Add #include <stdlib.h>, so that malloc works on
2215         machines where sizeof(int) != sizeof(void *).
2216
2217 Mon May 30 17:26:49 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2218
2219         * pfstream.cc (ipfstream::ipfstream, opfstream::opfstream):
2220         Reverse sense of test of return value of procbuf::open.
2221         (It returns NULL on failure.)
2222
2223         * filedoalloc.c (_IO_file_doallocate):  Remove dead code for
2224         USE_MALLOC_BUF.  Add code to return EOF if ALLOC_BUF fails.
2225
2226 Sat May 28 13:47:47 1994  Jason Merrill  (jason@deneb.cygnus.com)
2227
2228         * iomanip.cc: Explicitly instantiate smanip<int> and
2229         smanip<ios::fmtflags>.
2230
2231 Wed May 25 16:04:12 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2232
2233         * strfile.h:  Use __P instead of _PARAMS.
2234
2235 Fri May 20 11:42:17 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2236
2237         * libio.h: Rename _PARAMS macro to __P for better glibc and BSD
2238         compatibility.  (Also define _PARAMS for backwards compatibility.)
2239         * cleanup.c, iolibio.h, ioperror.c, iovfprintf.c, iovfscanf.c,
2240         libioP.h: Use __P instead of _PARAMS.
2241         * iostdio.h: Use __P instead of _ARGS.
2242
2243         * fileops.c (_IO_file_read):  Minor stylistic tweak.  (It is
2244         preferable to test errno *after* the error return.)
2245
2246 Fri May 13 15:25:36 1994  Jason Merrill  (jason@deneb.cygnus.com)
2247
2248         * iostream.*: Add insertor and extractor for bool (just pretend
2249         it's an int).
2250
2251 Fri May 13 14:12:03 1994  Mike Stump  (mrs@cygnus.com)
2252
2253         * gen-params: Check for builtin bool support.
2254
2255 Wed May 11 00:48:35 1994  Jason Merrill  (jason@deneb.cygnus.com)
2256
2257         Make libg++ build with gcc -ansi -pedantic-errors
2258         * gen-params: #ifdef __STRICT_ANSI__, #define _G_NO_NRV.
2259         * pfstream.cc (ipfstream::ipfstream): Wrap use of variable-size
2260         array in #ifndef __STRICT_ANSI__.
2261
2262 Fri May  6 12:42:21 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2263
2264         * Makefile.in (VERSION):  Increase to 0.64.
2265
2266         * isgetline.cc (istream::getline):  The delimiter should *not*
2267         be included in the gcount().
2268
2269         * filedoalloc.c:  #include <stdlib.h> (If __STDC__) to get malloc.
2270         * iostream.h (ostream::put):  Remove overloaded versions, to match
2271         new working paper.  (Actually just put inside _STREAM_COMPAT, for now.)
2272
2273 Tue May  3 14:14:57 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2274
2275         * genops.c (_IO_default_finish):  Make robust when called
2276         multiple times on the same _IO_FILE*.  (One way this can
2277         happen is by the builtinbuf destructor being followed by the
2278         streambuf destructor.)
2279
2280 Mon May  2 13:55:26 1994  Jason Merrill  (jason@deneb.cygnus.com)
2281
2282         * gen-params: Actually determine wint_t rather than depending on
2283         cpp to provide it or defaulting to the underlying type for
2284         wchar_t.
2285
2286 Sat Apr 30 14:47:30 1994  Jason Merrill  (jason@deneb.cygnus.com)
2287
2288         * gen-params: Add _G_wint_t, allow __*_TYPE__ to override values
2289         at compile time, fix definition of _G_ARGS.
2290
2291 Fri Apr 29 16:55:37 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2292
2293         * libio.h: Remove #pragma interface.  (There is no implementation.)
2294
2295 Mon Mar 28 14:22:26 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2296
2297         * iostream.cc (ostream::operator<<(double)):  Add/fix support
2298         for printing '+' when ios::showpos is set.
2299         (Fixes bug reported by Doug Moore <dougm@cs.rice.edu>.)
2300         * iostream.cc (istream::read):  Set eofbit as well as failbit on eof.
2301         * iostream.cc (ostream::operator<<(int)):  Fix conversion
2302         to unsigned (used to lose on INT_MIN).
2303         * iostream.cc (ostream::operator<<(long)):  Use (unsigned long),
2304         rather than (unsigned) for temporary.
2305
2306         * config.shared, Makefile.in:  Remove definitions and uses
2307         of XTRAFLAGS.  It is no longer needed, since it is
2308         now implied by the -B flag.
2309
2310 Fri Mar 25 00:31:22 1994  Jason Merrill  (jason@deneb.cygnus.com)
2311
2312         * builtinbuf.h: Add put /**/ around comment on trailing #endif.
2313
2314         * Makefile.in (c++clean): Make clean in tests subdir, too.
2315
2316 Wed Mar 23 16:42:09 1994  Doug Evans  (dje@canuck.cygnus.com)
2317
2318         * configure.in: Remove Makefile.tem before creating it.
2319         Needed when configuring from read-only source trees.
2320
2321 Wed Mar 16 14:06:42 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2322
2323         * stdstreams.cc:  Fix so that stdiobuf are used for cin/cout/cerr,
2324         unless _STDIO_USES_IOSTREAM is defined.
2325         * filebuf.cc (filebuf::setbuf):  Fix confusion about return
2326         value from _IO_file_setbuf.
2327
2328 Sun Mar 13 00:54:12 1994  Paul Eggert  (eggert@twinsun.com)
2329
2330         * config.shared: Ensure that `all' precedes `.PHONY';
2331         BSDI 1.1 needs this.
2332
2333 Sat Mar 12 03:58:00 1994  Paul Eggert  (eggert@twinsun.com)
2334
2335         * config.shared: Output a definition of INSTALL that uses
2336         $${rootme}, not ${rootme}.  Most `make's don't care, but BSDI
2337         1.1 `make' does.
2338
2339 Fri Mar  4 17:33:01 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2340
2341         * iopopen.c:  #define _POSIX_SOURCE.
2342         * isgetline.c (istream::getline):  Various fixes.
2343
2344 Thu Mar  3 17:58:20 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2345
2346         * iostream.cc (write_int):  Fix test for when to add initial '0'
2347         when ios::oct and ios::showbase are set.
2348         For hex, showbase adds initial 0x (or 0X) regardless of val==0.
2349         Bugs reported by Phil Roth <proth@cs.uiuc.edu>.
2350
2351 Mon Feb 21 13:18:20 1994  H.J. Lu  (hjl@nynexst.com)
2352
2353         * libio.h (_IO_PENDING_OUTPUT_COUNT(_fp)): return the
2354         pending output count in _fp.
2355
2356 Fri Feb 25 09:26:57 1994  Ian Lance Taylor  (ian@cygnus.com)
2357
2358         * gen-params: For HAVE_SYS_WAIT, compile dummy.c, not dummy.C.
2359
2360 Tue Feb 22 11:19:09 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2361
2362         * streambuf.h, genops.c, libioP.h:  Rename references to
2363         _IO_FILE fields other_gbase => _IO_save_base,
2364         _aux_limit => _IO_backup_base, and _other_egptr => _IO_save_end.
2365         * libio.h:  Remove no-longer needed macros _other_gbase,
2366         _aux_limit, and _other_egptr.
2367         * genops.c (__underflow, _IO_default_finishh, _IO_unsave_markers):
2368         Check _IO_save_base for NULL before FREEing it or calling
2369         _IO_free_backup_area.
2370
2371 Thu Feb 17 15:26:59 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2372
2373         * gen-params:  Improve deduction of _G_uint32 and _G_int32.
2374         Should now work for 16-bit, 32-bit, or 64-bit targets.
2375         * gen-params:  Check for sys/wait.h using ${CC}, since it's
2376         now used in a C file, not a C++ file.
2377         * floatconv.c:  Typedef _G_uint32_t as unsigned32, and use
2378         unsigned32 in place of unsigned long.  (Needed for Alpha.)
2379
2380 Tue Feb  8 13:40:15 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2381
2382         * fileops.c (_IO_file_close_it):  Simplify by using _IO_do_flush.
2383         * fileops.c (_IO_file_finish):  Don't call _IO_file_close_it -
2384         do it inline.  Call _IO_do_flush even if _IO_DELETE_DONT_CLOSE.
2385         * fileops.c (_IO_file_attach):  Set _IO_DELETE_DONT_CLOSE.
2386         * genops.c (_IO_flush_all):  Only call overflow if there is
2387         something to write.
2388         * iofclose.c (_IO_fclose):  Check that magic number is correct,
2389         and clear it when done.  Avoids crashing some buggy applications.
2390         * iogetline.c (_IO_getline):  Don't gratuitously increment old_len.
2391         * iogets.c (_IO_gets):  Take care to get required ANSi semantics.
2392
2393 Sun Feb  6 19:50:39 1994  Jason Merrill  (jason@deneb.cygnus.com)
2394
2395         * iomanip.cc: Explicitly instantiate operator<< and >>.
2396
2397 Fri Feb  4 12:28:22 1994  Jason Merrill  (jason@deneb.cygnus.com)
2398
2399         * config.shared (CXXFLAGS): Use -fexternal-templates.
2400
2401         * iomanip.h: Uncomment #pragma interface.
2402
2403 Thu Jan 20 13:48:40 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2404
2405         If no characters are read by fgets, ANSI C doesn't allow '\0' to
2406         be written to the buffer, but it is required by ANSI C++
2407         for istream::get and istream::getline.  Both use _IO_getline ...
2408         * iogetline.c (_IO_getline):  Don't write a '\0' at the end
2409         of the read data.  The input buffer length does not include
2410         space for a '\0'.
2411         * iofgets.c, iogets.c:  Change appropriately.
2412         Also check for _IO_ERR_SEEN, as required by ANSI.
2413         * isgetline.cc:  Update accordingly.
2414
2415 Mon Jan 17 13:24:26 1994  Jason Merrill  (jason@deneb.cygnus.com)
2416
2417         * Makefile.in (c++clean): Added target for compiler testing
2418         (i.e. make c++clean all).
2419
2420 Mon Jan 10 11:20:42 1994  Per Bothner  (bothner@kalessin.cygnus.com)
2421
2422         * libio.h (_IO_putc):  Add parentheses.
2423         Patch from Rik Faith <faith@cs.unc.edu>.
2424
2425 Tue Jan  4 01:32:28 1993  Hongjiu Lu (hjl@nynexst.com)
2426
2427         * genops.c (_IO_default_xsputn):
2428           (_IO_default_xsgetn):
2429         * ioignore.c: change "_IO_size_t count" to
2430           "_IO_ssize_t count".
2431         * iogetline.c: change "_IO_size_t len" to
2432           "_IO_ssize_t len".
2433
2434 Mon Dec 20 00:31:21 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2435
2436         * config.shared (CXXINCLUDES):  Fix quoting of $(NOSTDINC).
2437
2438 Sun Dec 19 21:03:45 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2439
2440         * Makefile.in (VERSION):  Increase to 0.63.
2441
2442 Fri Dec 17 13:02:44 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2443
2444         * iofread.c (_IO_fread):  Return 0 if either size or count is 0.
2445         * iofwrite.c (_IO_fwrite):  Return 0 if either size or count is 0.
2446         (This is consistent with fread, and most implementations, but not
2447         with a literal reading of the ANSI spec.)
2448         * iovfscanf.c (_IO_vfscanf):  If got EOF while skipping spaces,
2449         set seen_eof and break (instead of returning).
2450         * sbscan.cc (streambuf::vscan):  Set error state before returning.
2451         * streambuf.h:  Add a forward declarations for class istream
2452         to work around a g++ vtable name mangling bug.  (Patch from
2453         harry@pdsrc.hilco.com via Jeffrey A Law <law@snake.cs.utah.edu>.)
2454         * NEWS:  New file.
2455
2456 Sat Dec 11 16:21:08 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2457
2458         * iovfprintf.c (struct helper_file, _IO_helper_overflow,
2459         helper_vfprintf, _IO_helper_jumps):  New structs and functions.
2460         (_IO_vfprintf):  Use helper_vfprintf to make printing to
2461         unbuffered files more efficient.
2462         * genops.c (_IO_default_underflow), libioP.h:  New function.
2463
2464         * iovsscanf.c (_IO_vsscanf):  The input string's length marks
2465         its logical end-of-file.
2466
2467 Wed Dec  8 13:20:46 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2468
2469         * indstream.cc (indirectbuf::sync()):  Don't crash if get_stream()
2470         or put_stream() are NULL;  sync() both streams even if error.
2471
2472 Sun Dec  5 19:24:29 1993  Brendan Kehoe  (brendan@lisa.cygnus.com)
2473
2474         * iostreamP.h (convert_to_seekflags): Use _IO_seek_set instead of
2475         0 inside the conditial expressions.
2476
2477         * iofsetpos.c (_IO_fsetpos): Delete unused var `pos'.
2478
2479 Sat Dec  4 15:57:26 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2480
2481         * filedoalloc.c (_IO_file_doallocate):  Change type of couldbetty
2482         to int, and type of size to _IO_size_t, instead of size_t.
2483         (Change needed for Ultrix, which incorrectly deliberately doesn't
2484         define size_t in <sys/types.h> if _POSIX_SOURCE is defined.)
2485
2486 Thu Dec  2 22:43:03 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2487
2488         * fileops.c (_IO_file_finish):  Remove redundant call to _IO_un_link.
2489         * iofclose.c (_IO_fclose):  Don't call fp->_jumps->__close;  it's
2490         too low-level.  Instead call _IO_file_close_it.
2491         * dbz/Makefile.in (rclean, distclean):  Add some missing files.
2492
2493 Wed Dec  1 13:19:14 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2494
2495         * config/hpux.mt (MATH_H_INLINES): No longer define.
2496         Patch from Jeffrey A Law <law@snake.cs.utah.edu>.
2497
2498 Fri Nov 26 13:28:36 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2499
2500         * config.shared (CINCLUDES):  Define default if libg++.
2501         * iofread.c:  Use _IO_sgetn.c.
2502         * iolibio.h (_IO_clearerr):  Fix typo.
2503         * genops.c (_IO_seekmark):  Return 0 on success.
2504         * floactconv.c (Binit):  Change to static.
2505         * iofclose.c (_IO_fclose):  Check if file is _IO_stdin, _IO_stdout,
2506         or _IO_stderr;  if so don't try to free it.  Fix from hjl@nynexst.com.
2507
2508         * genops.c (_IO_default_sync), libioP.h:  New function.
2509         * libioP.h (_IO_default_close):  Use _IO_default_sync -same interface.
2510
2511         * Makefile.in:  Increase version to 0.62.
2512         * iopopen.c (_IO_proc_close):  Use waitpid (available in libibarty,
2513         if needed), rather than wait.  Don't block/ignore SIGINT etc,
2514         as this is counter to Posix.2.
2515         * iopopen.c:  Chain open proc_files, and have the child close
2516         the ones that are open (as required by Posix.2).
2517
2518         * fstream.h (fstreambase::rdbuf), strstream.h (strstreambase
2519         ::rdbuf):  Call ios::rdbuf() instead of getting _strbuf directly.
2520
2521         * sbscan.cc (streambuf::vscan):  Comment out duplicate default arg.
2522         * floatconv.c:  Recognize Alpha and i860 as little-endian.
2523         * streambuf.cc:  Return two bogus value returns from void functions.
2524         * iolibio.h, iofwrite.c:  Fix buffer type to (const void*).
2525         * libio.h:  Predefine of struct _IO_FILE to help non-g++-compilers.
2526         * libioP.h, pfstream.cc, stdfiles.c, iovfscanf.c: Cleanup syntax junk.
2527         * stdstreams.cc:  Minor simplification.
2528         * streambuf.h, builtinbuf.cc:  Add non-const ios::_IO_fix_vtable()
2529         for temporary binary compatibility.
2530
2531         * filedoalloc.c, fileops.c:  Add _POSIX_SOURCE.
2532         * fileops.c, iofopen.c, iofputs.c, iostream.cc, strops.c,
2533         strstream.cc, genops.c:  Add some missing #includes.
2534         * iofopen.c, iofdopen.c:  Return NULL if malloc fails.
2535         * iovfscanf.c:  Fix return type in strtol prototype.
2536         * fwrite.c:  Remove bogus file.
2537
2538 Wed Nov 17 14:09:42 1993  Per Bothner  (bothner@cygnus.com)
2539
2540         * builtinbuf.cc (ios::_IO_fix_vtable), streambuf.h:  Make method
2541         const, to reduce problems with -Wcast-qual.
2542
2543 Tue Nov 16 19:30:42 1993  david d `zoo' zuhn  (zoo@rtl.cygnus.com)
2544
2545         * config.shared (CXXINCLUDE): use ${} instead of $() for NOSTDINC
2546
2547 Tue Nov 16 14:15:45 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2548
2549         * iopopen.c (_IO_proc_close):  Re-structure to avoid
2550         declarations after statements.
2551         * floatconv.c:  If not __STDC__, #define DBL_MANT_DIG.
2552         * config/isc.mt (G_CONFIG_ARGS): Remove bogus spaces.
2553         Patch from David A. Avery <daa@nic.cerf.net>.
2554
2555 Tue Nov 16 15:58:31 1993  Mark Eichin  (eichin@cygnus.com)
2556
2557         * Makefile.in (_G_config.h): explicitly use $(SHELL) to run
2558         gen-params, since we know it is a script (we're explicitly looking
2559         in ${srcdir} for it) and /bin/sh might not be good enough.
2560
2561 Mon Nov 15 13:26:22 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2562
2563         * builtinbuf.cc:  Don't depend on initialization of static
2564         variable builtinbuf::vtable, since that might happen after
2565         we need it (for a static constructor).  Instead, initialize
2566         it when needed by inlining the code from get_builtin_vtable
2567         into ios::_IO_fix_vtable().
2568
2569         * floatconv.c:  Avoid using #elif, which some C compilers lack.
2570         * iogetline.c, libioP.h:  Make char parameter be int, to avoid
2571         some default promotion anomalies.
2572
2573 Fri Nov  5 11:49:46 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2574
2575         * config.shared (do-clean-dvi):  Remove TeX work files.
2576         * iopopen.c (extern _IO_fork):  Don't use parameter type void.
2577         * strops.c (_IO_str_init_static):  Clear the allocate_buffer
2578         function pointer, to mark the strfile as being static.
2579         Bug fix from Mike Raisbeck <mike@pudding.rtr.COM>.
2580
2581 Thu Nov  4 10:44:24 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2582
2583         * filebuf.cc (filebuf:): Use sseekoff rather than seekoff
2584         (which loses if vtable pointer is NULL).
2585
2586         * iostream.cc (ostream::operator<<(long long n)):  Fix thinko.
2587
2588         * Makefile.in (VERSION):  Increase to 0.60.
2589         * Makefile.in (IO_OBJECTS):  Added iopopen.o.
2590         * config.shared (DISTCLEAN):  Also remove Make.pack.
2591         * config.shared (CXXINCLUDES):  Add $(NOSTDINC).
2592
2593         * config.shared (INSTALL):  Fix so it ues the correct install.sh
2594         whether $srcdir is absolute or relative.
2595
2596         * floatconv.c (DBL_MAX_10_EXP): Fix default value.
2597
2598 Wed Nov  3 10:20:49 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2599
2600         * gen-params:  Make more robust to allow random junk (NeXT
2601         has spaces) before typedefs.
2602
2603         * fileops.c (_IO_file_overflow):  Reduce code duplication.
2604         * Makefile.in (IO_OBJECTS):  Remove ioputs.o.
2605
2606         * iovfscanf.c, libio.h:  Extra parameter to _IO_vfscanf,
2607         for optionally setting an error indication..
2608         * iofscanf.c, ioscanf.c, iofscanf.c, iovsscanf.c:  Fix calls to
2609         _IO_vfscanf to pass an extra NULL.
2610         * sbscan.cc (streambuf::vscan):  If passed an extra stream,
2611         set its error state (using new _IO_vfscanf parameter.
2612
2613         * filedoalloc.c, fileops.c, genops.c, iogetline.c, ioignore.c,
2614         libio.h, libioP.h, streambuf.cc streambuf.h, strfile.h, strops.c,
2615         strstream.cc:  Replace macros (_base, _ebuf, _eback, _gptr, _egptr,
2616         _pbase, _pptr, _epptr) by field names (_IO_buf_base, _IO_buf_end,
2617         _IO_read_base, _IO_read_pre, IO_read_end, _IO_write_base,
2618         _IO_write_ptr, _IO_write_end).
2619         * libio.h:  Remove the old macros (which fixes a conflict.
2620
2621 Mon Nov  1 15:22:12 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2622
2623         * iostream.cc:  Use _IO_sputn instead of sputn.  _IO_sputn does
2624         not require a vtable pointer, and is also slightly faster.
2625
2626         * builtinbuf.{h,cc} (builtinbuf::setbuf):  Fix return and
2627         parameter types.
2628
2629 Mon Oct 25 12:56:33 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2630
2631         Kludge to make sure _IO_FILE buffers get flushed before exit.
2632         * dbz/dbzmain.c, dbz/fake.c, dbz/byteflip.c:
2633         Invoke DBZ_FINISH macro (if defined) before (normal) exits.
2634         * dbz/Makefile.in (CFLAGS):  Define DBZ_FINISH to call _IO_flush_all.
2635
2636 Sat Oct 23 22:10:53 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2637
2638         * Makefile.in (VERSION):  Set to 0.60 for libg++ release.
2639         * fileops.c (_IO_file_attach):  Set _offset to _IO_pos_BAD.
2640         * iostream.cc (ostream::flush):  Fix thinkp.
2641         * editbuf.cc, isgetsb.cc, isscan.cc, osform.cc, parsestream.cc,
2642         pfstream.cc, sbform.cc, sbscan.cc, stdstreams.cc, stream.cc:
2643         Replace #include "ioprivate.h" by #include "libioP.h" (and
2644         sometimes stdarg.h, stdlib.h and/or string.h).
2645         * ioprivate.h:  Removed.
2646
2647
2648 Thu Oct 21 19:24:02 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2649
2650         * PlotFile.h, SFile.h, editbuf.cc, editbuf.h, filebuf.cc,
2651         fstream.cc, fstream.h, indstream.cc, indstream.h, iomanip.cc,
2652         iomanip.h, ioprivate.h, iostream.cc, iostream.h, isgetline.cc,
2653         isgetsb.cc, parsestream.cc, parsestream.h, pfstream.cc,
2654         pfstream.h, procbuf.cc, procbuf.h, stdiostream.cc, stdiostream.h,
2655         stdstreams.cc, streambuf.cc, streambuf.h, strstream.cc,
2656         strstream.h:  Remove old (duplicate) copyright notices.
2657
2658         * iostream.cc:  Fix calls to sync() to be safe in the presence
2659         of vtable-less streambufs.
2660
2661 Wed Oct 20 15:22:04 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2662
2663         * streambuf.h (streambuf::underflow, streambuf::overflow):
2664         Don't make virtual functions pure.
2665         * streambuf.cc (streambuf::underflow, streambuf::overflow):
2666         Default definitions (return EOF).
2667         * fstream.h:  Add new (int fd, char* buf, int len) constructors.
2668         These are deprecated, but added for AT&T compatibility.
2669         * fstream.cc fstreambase::fstreambase(int fd, char *p, int l): New.
2670
2671 Thu Oct 14 14:57:01 1993  david d `zoo' zuhn  (zoo@rtl.cygnus.com)
2672
2673         * configure.in: use 'mv -f' instead of 'mv'
2674
2675 Tue Oct 12 05:01:44 1993  Mike Stump  (mrs@cygnus.com)
2676
2677         * floatconv.c: Fix typo, change __STDC to __STDC__.
2678
2679 Mon Oct 11 17:03:12 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2680
2681         * cleanup.c:  It should be #if _G_HAVE_ATEXIT, not #ifdef.
2682
2683         * floatconv.c, iostrerror.c, iovfprintf.c, iovfscanf.c, libioP.h:
2684         Bunch of fixes to allow use of non-ANSI (K&R) C compilers.
2685
2686         * Makefile.in (iostream.list):  Use CC=$(CXX) to force use of gcc.
2687         * README:  New file.
2688
2689 Fri Oct  8 16:19:58 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2690
2691         * Makefile.in:  Move ioungetc.o from STDIO_WRAP_OBJECTS to
2692         IO_OBJECTS (since it is needed for iovfscanf.c).
2693         * iostrerror.c:  Add declaration of strerror.
2694
2695 Thu Oct  7 12:02:28 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2696
2697         * cleanup.c:  New file, to cause flushing at exit.
2698         * filedoalloc.c:  Cause flushing on exit.
2699         * Makefile.in (OSPRIM_OBJECTS):  Add cleanup.o.
2700         * gen-params:  Check for atexit.
2701
2702 Tue Oct  5 19:11:14 1993  Mike Stump  (mrs@cygnus.com)
2703
2704         * ioperror.c (_IO_strerror): Add missing ()s in _PARAMS usage.
2705
2706 Tue Oct  5 10:33:37 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2707
2708         * iofprintf.c, iofscanf.c, ioprintf.c, ioscanf.c, iosprintf.c,
2709         iosscanf.c:  Remove bogus semi-colon after va_dcl.
2710         * ioperror.c:  Fix typos in declaration.
2711
2712 Mon Oct  4 17:12:22 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2713
2714         * configure.in (CLEAN):  Define (as _G_config.h *.a).
2715
2716         * fileops.c (_IO_file_read):  Don't assume EINTR is defined.
2717         * iosetbuf.c:  Replace by generalized ...
2718         * iosetbuffer.c:  ... variant, derived from BSD.
2719         * Makefile.in (STDIO_WRAP_OBJECTS):  Change correspondingly.
2720         * iosetvbuf.c (iosetvbuf):  Minor ANSI tweak.
2721         * iostdio.h (setbuf, setlinebuf):  New #defines.
2722         * iolibio.h (_IO_setbuf, _IO_setlinebuf):  (Re-)define as macros.
2723         * Makefile.in (LIBIO_OBJECTS):  New macro.
2724
2725 Tue Sep 28 14:15:52 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2726
2727         * libioP.h (_IO_proc_open, _IO_proc_close): Add missing return types.
2728         * procbuf.cc:  Belated fixes.
2729
2730 Mon Sep 27 14:04:47 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2731
2732         * Makefile.in: List new files.  Add STDIO_WRAP_OBJECTS macro.
2733         * floatconv.c (d2b):  Use Exp_msk11 instead of Exp_msk1.
2734         * iofgetpos.c (_IO_fgetpos), iofsetpos.c (_IO_fsetpos):  Clean up.
2735         * iolibio.h:  New file.  Declarations of _IO_foo, for most foo
2736         where foo is a stdio function.  (Remove these from libio.h.)
2737         * iostream.h (istream::istreambuf, ostream::ostreambuf):  Move
2738         obsolete functions inside #ifdef _STREAM_COMPAT.
2739         * libio.h, libioP.h, streambuf.h, parsestream.h, stdiostream.h:
2740         Use _IO_fpos_t rather than _IO_pos_t.
2741         * iopopen.c:  New file type, for pipe (popen-like) streams.
2742         * procbuf.cc:  Now just a C++ wrapper for the files in iopopen.c.
2743         * streambuf.h (ios::unsetf):  Return complete old value of flags.
2744         * iogets.c (_IO_gets(), ioungetc.c (_IO_ungetc), ioperror.c
2745         (_IO_perror), iostrerror.c (_IO_strerror):  New files and
2746         functions, for stdio implementation.
2747         * iostdio.h:  Add declarations for various recently-added functions.
2748
2749 Sun Sep 12 14:24:55 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2750
2751         * streambuf.h (ios::showpos):: Fix typo.
2752
2753 Fri Aug 27 12:05:47 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2754
2755         * iopadn.c (_IO_padn):  Change to return count of chars written.
2756         * outfloat.c, iovfprintf.c:  Change for new _IO_padn interface.
2757         * iostream.cc (ostream::operator<<):  Make sure to set badbit
2758         on a failure (many places).  Use _IO_padn more.
2759         * iostream.cc (ostream& ostream::operator<<(const void *p):  Move to
2760         * osform.cc:  ... here, to reduce linking-in-the-world syndrome.
2761         * osform.cc: Use rdbuf(), instead of _strbuf directly.
2762
2763         * genops.c (_IO_sgetn), libio.h:  New function.
2764         * streambuf.h (streambuf.h::sgetn):  Use _IO_sgetn.
2765         * SFile.cc (SFile::operator[]):  Use sseekoff, not seekoff.
2766
2767 Thu Aug 26 10:16:31 1993  david d `zoo' zuhn  (zoo@rtl.cygnus.com)
2768
2769         * config.shared (SUBDIRS): only recurse if the directory is configured
2770
2771 Wed Aug 25 12:56:12 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2772
2773         * config/{hpux.mt, isc.mt, sco4.mt}:
2774         Moved from ../libg++/config (since they affect _G_config.h).
2775         * configure.in:  Set target_make_frag to one of the above files.
2776
2777 Fri Aug 20 00:53:14 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2778
2779         * iofopen.c (iofopen):  Fix type passed to _IO_un_link().
2780         * Makefile.in (_G_config.h):  Pass $CC (not $CXX) as CC.
2781
2782         * configure.in (configdirs):  Add dbz and stdio.
2783         * fileops.c (_IO_file_seekoff):  Convert more old functionality.
2784         * iofdopen.c:  Use mode parameter to set _flags.
2785         * iofscanf.c, ioputs.c, ioscanf.c, iosprintf.c:  New files.
2786         * Makefile.in (IO_OBJECTS):  Added new objects.
2787         * iostdio.h:  Add feof. fscanf, puts, sprintf, vsprintf.
2788         * libio.h:  Add _IO_vprintf macro.
2789         * iofopen.c:  Invoke _IO_un_link if failure.
2790         * iovsprintf.c:  Write terminating NUL.
2791
2792         * libioP.h:  Add COERCE_FILE macro (by default does nothing).
2793         * iofclose.c, iofflush.c, iofgets.c, iofprintf.c, iofputs.c,
2794         iofread.c, ioftell.c, iofwrite.c, iosetbuf.c, iosetvbuf.c:
2795         Invoke COERCE_FILE macro.
2796         * ioftell.c:  Use _IO_seekoff.
2797
2798 Wed Aug 18 22:49:56 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2799
2800         * sbform.cc (streambuf::form), sbscan.cc (streambuf::scan):
2801         Remove cast to _IO_va_list.  (Loses if array type.)
2802
2803         * libio.h:  Handle _IO_va_list for systems that need <stdarg.h>.
2804         * floatconv.h:  Fix typo (reported by H.J.Lu).
2805
2806 Wed Aug 18 19:34:04 1993  david d `zoo' zuhn  (zoo@rtl.cygnus.com)
2807
2808         * configure.in (INSTALLDIR): handle native vs. cross case
2809
2810         * Makefile.in (install): don't use $TARGETLIB, set INSTALLDIR to
2811         $(libdir)
2812
2813 Wed Aug 18 12:10:03 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2814
2815         * Makefile.in:  Rename iostream-files to iostream.list.
2816         * configure.in:  Add iostream.list to MOSTLYCLEAN.
2817
2818 Tue Aug 17 18:56:59 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2819
2820         * Makefile.in:  Depend on _G_config.h where appropriate.
2821         * config.shared (CXXINCLUDES):  If doing libg++, search ../libio.
2822
2823 Tue Aug 17 17:34:24 1993  Per Bothner  (bothner@kalessin.cygnus.com)
2824
2825         New directory.  Based on old libg++/iostream code,
2826         but extensively re-written.