OSDN Git Service

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