OSDN Git Service

From Phil Edwards:
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2000-12-08  Phil Edwards  <pme@sources.redhat.com>
2
3         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO):  New conditional,
4           GLIBCPP_BUILD_LIBIO, true iff building libio.
5         * libio/Makefile.am:  Use; set noinst_LTLIBRARIES empty if false.
6         * aclocal.m4:  Regenerated.
7         * config.h.in:  Regenerated.
8         * configure:  Regenerated.
9         * libio/Makefile.in:  Regenerated.
10         * libmath/Makefile.in:  Regenerated.
11
12 2000-12-08  Gabriel Dos Reis  <gdr@codesourcery.com>
13
14         * libmath/Makefile.am (EXTRA_LONG_DOUBLE_yes): Remove ccosl,
15         cexpl, clog10l, csinhl, ctanhl, ctanl.
16         (EXTRA_DIST): Remove ccos, ccosf, csin, csinf, ccosh, ccoshf,
17         csing, csinhf, clog10, clog10f, ctan, ctanf, ctanh, ctanhf.
18         * libmath/Makefile.in: Regenarate.
19         * libmath/ccos.c: Remove.
20         * libmath/ccosf.c: Likewise.
21         * libmath/ccosl.c: Likewise.
22         * libmath/csin.c: Likewise.
23         * libmath/csinf.c: Likewise.
24         * libmath/csinl.c: Likewise.
25         * libmath/ctan.c: Likewise.
26         * libmath/ctanf.c: Likewise.
27         * libmath/ctanl.c: Likewise.
28         * libmath/ccosh.c: Likewise.
29         * libmath/ccoshf.c: Likewise.
30         * libmath/ccoshl.c: Likewise.
31         * libmath/csinh.c: Likewise.
32         * libmath/csinhf.c: Likewise.
33         * libmath/csinhl.c: Likewise.
34         * libmath/ctanh.c: Likewise.
35         * libmath/ctanhf.c: Likewise.
36         * libmath/ctanhl.c: Likewise.
37         * libmath/cexp.c: Likewise.
38         * libmath/cexpf.c: Likewise.
39         * libmath/cexpl.c: Likewise.
40         * libmath/clog10.c: Likewise.
41         * libmath/clog10f.c: Likewise.
42         * libmath/clog10l.c: Likewise.
43         * libmath/complex-stub.h: Remove forward declaration of functions
44         mentioned above.
45
46         * include/bits/std_complex.h(tan, tanh): Define primary templates. 
47         (complex<>): Remove friend declarations for tan<> and tanh<>.
48         * src/complex.cc(tan, tanh): Remove specializations.
49
50         * acinclude.m4: Remove check for ccos, ccosf, ccosl, ccosh,
51         ccoshf, ccoshl, csin, csinf, csinl, csinh, csinhf, csinhl, cexp,
52         cexpf, cexpl, ctan, ctanf, ctanl, ctanh, ctanhf, ctanhl.
53         * aclocal.m4: Regenarate.
54         * configure: Regenarate.
55
56 2000-12-08  Gabriel Dos Reis  <gdr@codesourcery.com>
57
58         * acinclude.m4: Don't forget to remove check for cpowl as it is no
59         longer needed, nor is the corresponding stub existent.
60         * aclocal.m4: Regenarate.
61         * configure: Regenarate.
62
63 2000-12-07  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
64
65         * config/os/generic/bits/ctype_base.h (ctype_base): Change space mask.
66
67         * config/os/generic/bits/ctype_noninline.h (ctype): Remove default
68         arguments in definition.
69         * config/os/solaris/solaris2.7/bits/ctype_noninline.h (ctype): Same.
70         * config/os/solaris/solaris2.6/bits/ctype_noninline.h (ctype): Same.
71         * config/os/solaris/solaris2.5/bits/ctype_noninline.h (ctype): Same.
72         * config/os/newlib/bits/ctype_noninline.h (ctype): Same.
73         * config/os/irix/bits/ctype_noninline.h (ctype): Same.
74         * config/os/hpux/bits/ctype_noninline.h (ctype): Same.
75         * config/os/bsd/netbsd/bits/ctype_noninline.h (ctype): Same.
76         * config/os/bsd/freebsd/bits/ctype_noninline.h (ctype): Same.
77         * config/os/aix/bits/ctype_noninline.h (ctype): Same.
78
79         * include/bits/locale_facets.h: Tweak.
80         
81 2000-12-06  Benjamin Kosnik  <bkoz@kredhat.com>
82
83         * include/bits/locale_facets.h (ctype): Remove _Ctype_nois and
84         _Ctype and replace with common __ctype_abstract_base.
85         (ctype<wchar_t>::_M_convert_to_wmask): Move to locale.cc.
86         * config/os/gnu-linux/bits/ctype_noninline.h (ctype<char>::ctype):
87         And here.
88         * config/os/solaris/solaris2.7/bits/ctype_noninline.h (ctype): Same.
89         * config/os/solaris/solaris2.6/bits/ctype_noninline.h (ctype): Same.
90         * config/os/solaris/solaris2.5/bits/ctype_noninline.h (ctype): Same.
91         * config/os/newlib/bits/ctype_noninline.h (ctype): Same.
92         * config/os/irix/bits/ctype_noninline.h (ctype): Same.
93         * config/os/hpux/bits/ctype_noninline.h (ctype): Same.
94         * config/os/generic/bits/ctype_noninline.h (ctype): Same.
95         * config/os/aix/bits/ctype_noninline.h (ctype): Same.
96         * config/os/bsd/netbsd/bits/ctype_noninline.h (ctype): Same.
97         * config/os/bsd/freebsd/bits/ctype_noninline.h (ctype): Same.
98         * src/locale-inst.cc: Clean instantiations.
99         * src/locale.cc (ctype<char>): Add definitions here. 
100         (ctype<wchar_t>::_M_wmask): Move definitions here.
101         
102         * config/os/generic/bits/ctype_inline.h (ctype<char>::is):
103         Implement in a generic way, with only "C" functionality and no
104         knowlege of the target os.
105         * config/os/generic/bits/os_defines.h: Change comments to C++ style.
106         * testsuite/22_locale/ctype_char_members.cc (test01): Add tests.
107         
108         * include/bits/codecvt.h (ctype_byname): Remove specializations,
109         as not required.
110         * include/bits/localefwd.h (codecvt_byname): And here.
111         * src/codecvt.cc: Remove codecvt_byname specializations.
112         
113         * include/c/bits/std_cstdio.h: Include c++config.h.
114
115 2000-12-06  Phil Edwards  <pme@sources.redhat.com>
116
117         * acinclude.m4 (GLIBCPP_CHECK_*_DECL_AND_LINKAGE_*):  Pre-test
118           whether the cached result is present.
119         * aclocal.m4:  Regenerate.
120         * configure:  Regenerate.
121         * Makefile.in:  Regenerate.
122         * libio/Makefile.in:  Regenerate.
123         * libmath/Makefile.in:  Regenerate.
124         * libsupc++/Makefile.in:  Regenerate.
125         * src/Makefile.in:  Regenerate.
126
127 2000-12-06  Richard Earnshaw  <rearnsha@arm.com>
128
129         * configure.target (*-*-freebsd, *-*-netbsd): Correct paths to 
130         os_include_dir.
131
132 2000-12-05  Jeffrey A Law  <law@cygnus.com>
133
134         * configure.target (hpux): Set os_include_dir.
135         * config/os/hpux/bits/ctype_base.h: New file
136         * config/os/hpux/bits/ctype_inline.h: New file
137         * config/os/hpux/bits/ctype_noinline.h: New file
138         * config/os/hpux/bits/os_defines.h: New file
139
140 2000-12-05  Alexandre Petit-Bianco  <apbianco@redhat.com>
141
142         * src/Makefile.am (libstdc++.INC): Revert for libjava builds.
143         * src/Makefile.in: Regenerate.
144         
145 2000-12-05  Benjamin Kosnik  <bkoz@haight.redhat.com>
146
147         * acinclude.m4 (EXTRA_CXX_FLAGS): And here.
148         * include/c/bits/std_cstdlib.h (std ): Change macro to
149         _GLIBCPP_NEED_LLDIV_T.
150         * acconfig.h: Remove unused MBSTATE_T bits.
151         * configure.in: Same.
152         * aclocal.m4: Regenerate.
153         * configure: Regenerate.
154         * config.h.in: Regenerate.
155         
156 2000-12-05  Benjamin Kosnik  <bkoz@fillmore.redhat.com>
157
158         * acinclude.m4: Change up to reflect new directory organization.
159         Add in bits for NetBSD.
160         * aclocal.m4: Regenerate.
161         * configure: Regenerate.
162         * config/os/bsd: New directory.
163         * config/os/netbsd: Move to...
164         * config/os/bsd/netbsd: ...here.
165         * config/os/freebsd: Move to...
166         * config/os/bsd/freebsd: ...here.
167
168 2000-12-05  Benjamin Kosnik  <bkoz@haight.redhat.com>
169
170         * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Check for
171         lldiv_t. Allow the use of os-specific defines while checking for
172         long-long functions by the inclusion of os_defines.h.
173         * aclocal.m4: Regenerate.
174         * configure.in: Add comments.
175         * configure: Regenerate.
176         * acconfig.h: Add _GLIBCPP_HAVE_LLDIV_T.
177         * config.h.in: Regenerate.
178         * config/os/gnu-linux/bits/os_defines.h: Fix typos and
179         duplications in comments.
180
181 2000-12-05  Richard Earnshaw  <rearnsha@arm.com>
182
183         * config/os/freebsd/bits/ctype_base.h: Update comments about other
184         BSD variants.
185
186 2000-12-05  Richard Earnshaw  <rearnsha@arm.com>
187
188         * config/os/freebsd/bits/*.h: Move here from config/os/bsd/bits.
189         * aclocal.m4: Adjust accordingly.
190         * configure.target: Likewise.
191         * configure: Regenerate.
192
193 2000-12-05  Richard Earnshaw  <rearnsha@arm.com>
194
195         * config/cpu/arm/bits/atomicity.h: Add support for compiling Thumb
196         code.
197
198 2000-12-05  Richard Earnshaw  <rearnsha@arm.com>
199
200         Support for NetBSD.
201         * aclocal.m4: Add test for NetBSD's ctype support.
202         * configure: Regenerate.
203         * configure.target: Support NetBSD.
204         * config/os/netbsd/bits/ctype_base.h: New file.
205         * config/os/netbsd/bits/ctype_inline.h: New file.
206         * config/os/netbsd/bits/ctype_noinline.h: New file.
207         * config/os/netbsd/bits/os_defines.h: New file.
208
209 2000-12-05  Gabriel Dos Reis  <gdr@codesourcery.com>
210
211         * src/complex.cc (pow): Remove definitions for explicit
212         specializations. 
213         * libmath/mathconf.h: Remove declarations for c_log, c_logf,
214         c_logl. 
215         * libmath/complex-stub.h: Remove declarations for cpow, cpowf,
216         cpowl. 
217         * libmath/cpow.c: Remove.
218         * libmath/cpowf.c: Remove.
219         * libmath/cpowl.c: Remove.
220         * libmath/Makefile.am (EXTRA_LONG_DOUBLE_yes): Remove c_logl,
221         cpowl, 
222         (EXTRA_DIST): Remove c_log, c_logf, carg, cargf.
223         * libmath/Makefile.in: Regenarate.
224         * libmath/c_log.c: Remove
225         * libmath/c_logf.c: Likewise.
226         * libmath/c_logl.c: Likewise.
227         * libmath/carg.c: Likewise.
228         * libmath/cargf.c: Likewise.
229         * libmath/cargl.c: Likewise.
230         * include/bits/std_complex.h (pow): Define primary templates.
231         (complex<>): Remove friend declarations for pow<>().
232         * acinclude.m4: Remove check for c_log, c_logf, c_logl, carg,
233         cargf.
234         * aclocal.m4: Regenarate.
235         * configure: Regenarate.
236
237 2000-12-03  Joseph S. Myers  <jsm28@cam.ac.uk>
238
239         * docs/configopts.html, docs/documentation.html,
240         docs/install.html, docs/17_intro/BADNAMES,
241         docs/17_intro/contribute.html, docs/17_intro/howto.html,
242         docs/18_support/howto.html, docs/19_diagnostics/howto.html,
243         docs/20_util/howto.html, docs/21_strings/howto.html,
244         docs/22_locale/howto.html, docs/23_containers/howto.html,
245         docs/24_iterators/howto.html, docs/25_algorithms/howto.html,
246         docs/26_numerics/howto.html, docs/27_io/howto.html,
247         docs/ext/howto.html, docs/faq/index.html, docs/faq/index.txt: Sync
248         with wwwdocs.
249
250 2000-12-01  Phil Edwards  <pme@sources.redhat.com>
251
252         * docs/download.html:  Remove.
253         * docs/footer.ihtml:  Remove.
254         * docs/header.ihtml:  Remove.
255         * docs/index.html:  Remove.
256         * docs/links.html:  Remove.
257         * docs/mail.html:  Remove.
258         * docs/status.html:  Remove.
259         * docs/thanks.html:  Remove.
260
261 2000-12-01  Phil Edwards  <pme@sources.redhat.com>
262
263         * mkcheck.in:  Count static and shared results separately.
264
265 2000-12-01  Loren J. Rittle  <ljrittle@acm.org>
266
267         * mkcheck.in:  Correct typo.
268
269 2000-12-01  Gabriel Dos Reis  <gdr@codesourcery.com>
270
271         * src/cmath.cc: Remove.
272         * src/Makefile.am (c_base_headers): Add bits/cmath.tcc.
273         (sources): Remove cmath.cc
274         * src/Makefile.in: Regenerate.
275
276         * include/c/bits/std_cmath.h (__cmath_power<>): Declare.
277         (__cmath_abs<>): New function.
278         (abs, fabs): Use __cmath_abs when no direct support is available.
279         (__pow_helper<>): New function.
280         (pow): Define here.  Use __pow_helper<>.
281
282         * include/c/bits/cmath.tcc: New file.
283
284 2000-11-29  Benjamin Kosnik  <bkoz@redhat.com>
285
286         Fixes for build directories with colons, AIX build problems.
287         * src/Makefile.am: Cleanups, add documentation.
288         (libstdc++.INC): Simplify rule.
289         (myinstallheaders): Consolidate install rules.
290         (myinstalldirs): New, make directores.
291         (base_headers): Subdivide based on install directory.
292         (ext_headers): New.
293         (backward_headers): New.
294         (headers): Remove.
295         (c_headers): Remove, unused.
296         (c_shadow_headers): Split up, deal with conditional usage in a
297         sane manner.
298         * src/Makefile.in: Regenerate.
299         
300 2000-11-29  Phil Edwards  <pme@sources.redhat.com>
301
302         Sync with the documentation from wwwdocs.
303         * docs/Makefile:  New file (rebuilds FAQ text version).
304         * docs/configopts.html:  Update.
305         * docs/documentation.html:  Update.
306         * docs/download.html:  Update.
307         * docs/index.html:  Update.
308         * docs/install.html:  Update.
309         * docs/links.html:  Update.
310         * docs/mail.html:  Update.
311         * docs/status.html:  Update.
312         * docs/thanks.html:  Update.
313         * docs/27_io/howto.html:  Update.
314         * docs/faq/index.html:  Update for 2.91.
315         * docs/faq/index.txt:  Update for 2.91.
316         * docs/footer.html:  Removed.
317         * docs/footer.ihtml:  New file.
318         * docs/gccrebuild.html:  Removed.
319         * docs/header.html:  Removed.
320         * docs/header.ihtml:  New file.
321
322 2000-11-29  Loren J. Rittle  <ljrittle@acm.org>
323
324         * tests_flags.in: Correct typo.
325
326 2000-11-29  Gabriel Dos Reis  <gdr@codesourcery.com>
327
328         * tests_flags (SH_FLAGS, ST_FLAGS): Move them back to ...
329         * mkcheck.in (SH_FLAGS, ST_FLAGS): ...here
330
331 2000-11-29  Gabriel Dos Reis  <gdr@codesourcery.com>
332
333         * src/Makefile.am (sources): Add bitset.cc
334         * src/Makefile.in: Regenrate.
335
336         * include/bits/std_bitset.h (_GLIBCPP_BITSET_BITS_PER_WORD): New
337         macro. Replace __BITS_PER_WORDS throughout.
338         (__BITS_PER_WORDS): Remove.
339         (bitset<>::_M_do_find_first, bitset<>::_M_do_find_next): Move
340         definitions to src/bitset.cc.
341
342         * src/bitset.cc (bitset<>::_M_do_find_first,
343         bitset<>::_M_do_find_next):  Define here.
344         (_Bit_count<>::_S_bit_count, _Find_one<>::_S_first_one): Define
345         here. Explicitly instantiate definitions.
346
347 2000-11-28  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
348
349         * config/cpu/powerpc/bits/atomicity.h (__exchange_and_add): Silence
350         preprocessor multi-line string warnings.
351         (__atomic_add): Likewise.
352         (__compare_and_swap): Likewise.
353         (__always_swap): Likewise.
354         (__test_and_set): Likewise.
355         * config/cpu/arm/bits/atomicity.h (__exchange_and_add): Likewise.
356         (__atomic_add): Likewise.
357         (__compare_and_swap): Likewise.
358         (__always_swap): Likewise.
359         (__test_and_set): Likewise.
360
361 2000-11-28  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
362
363         Update for 2.91 release.
364         * include/bits/c++config (__GLIBCPP__): Update.
365         * docs/17_intro/RELEASE-NOTES: Update.
366         * docs/status.html: Update, remove bogus autotools disinformation.
367         
368 2000-11-27  Benjamin Kosnik  <bkoz@redhat.com>
369
370         * tests_flags.in (LTCXX): Change CXX_FLAG to CXXFLAGS.
371
372         * testsuite/22_locale/ctor_copy_dtor.cc: Adjust formatting.
373         * testsuite/27_io/istream_extractor_arith.cc (test11): New
374         testcase, based on libstdc++/90.
375         
376 2000-11-27  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
377
378         * config/cpu/arm/bits/atomicity.h (__exchange_and_add): Add
379         __volatile__ to asm.
380         (__atomic_add): Likewise.
381         (__compare_and_swap): Likewise.
382         (__always_swap): Likewise.
383         (__test_and_set): Likewise.
384         
385         * config/cpu/powerpc/bits/atomicity.h: Replace '__ATOMICITY_INLINE'
386         with 'inline'.
387         (__exchange_and_add): Add __volatile__ to asm.
388         (__atomic_add): Likewise.
389         (__compare_and_swap): Likewise.
390         (__always_swap): Likewise.
391         (__test_and_set): Likewise.
392         
393 2000-11-27  Gabriel Dos Reis  <gdr@codesourcery.com>
394
395         * tests_flags.in: Update documentation to reflect the change
396         below.
397
398 2000-11-26  Benjamin Kosnik  <bkoz@fillmore.constant.com>
399
400         * tests_flags.in: Export CXX, CXXFLAGS.
401         * mkcheck.in: Grab them.
402
403 2000-11-26  David Billinghurst  <David.Billinghurst@riotinto.com>
404             Benjamin Kosnik  <bkoz@redhat.com>
405         
406         * mkcheck.in: Add exe extension to printnow executable, abstract
407         out call to this with TIMER_COMMAND.
408         * configure.target (l_glibcpp_cxxflags): Add cygwin support.
409         * acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Correct paths.
410         * aclocal.m4: Regenerate.
411         * configure: Regenerate.
412         
413 2000-11-26  Benjamin Kosnik  <bkoz@redhat.com>
414
415         * testsuite/27_io/istream_unformatted.cc (test05): Fixup.
416
417 2000-11-26  Benjamin Kosnik  <bkoz@redhat.com>
418
419         * acinclude.m4: Only sanity check for compiler version when
420         configuring. More fixes for 'make clean'.
421         * aclocal.m4: Regenerate.
422         * configure: Regenerate.
423         
424 2000-11-26  Gabriel Dos Reis  <gdr@codesourcery.com>
425
426         * libmath/Makefile.am (EXTRA_LONG_DOUBLE_yes): Remove cabsl.c 
427         * libmath/Makefile.in: Regenerate.
428         * libmath/cabs.c: Remove.
429         * libmath/cabsf.c: Likewise.
430         * libmath/cabsl.c: Likewise.
431         * libmath/complex-stub.h: Remove declarations for cabs*.
432
433         * acinclude.m4: Remove check for cabs*. 
434         * aclocal.m4: Regenerate.
435
436         * Makefile.in: Regenerate.
437
438 2000-11-26  Gabriel Dos Reis  <gdr@codesourcery.com>
439
440         * tests_flags.in: New file. Split out of ...
441         * mkcheck.in: ... this. Move flags computation into
442         tests_flags.in. 
443         * configure.in: Add support for tests_flags.
444         * confiigure: Regenerate.
445
446 2000-11-25  Joseph S. Myers  <jsm28@cam.ac.uk>
447
448         * acinclude.m4: Change C9X references to refer to C99.
449         * aclocal.m4, configure: Regenerate.
450         * config/os/gnu-linux/bits/os_defines.h, src/complex.cc,
451         testsuite/22_locale/codecvt_wchar_t_char.cc,
452         include/bits/stl_config.h, include/c/bits/std_cwchar.h,
453         libmath/mathconf.h: Change C9X references to refer to C99.
454
455 2000-11-25  Benjamin Kosnik  <bkoz@redhat.com>
456             Richard Earnshaw  <rearnsha@arm.com> 
457
458         * src/Makefile.am (INCLUDES): Remove unconditional use of
459         _GNU_SOURCE and _ISOC99_SOURCE macros.
460         * src/Makefile.in: Regenerate.
461         
462 2000-11-24  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
463
464         * testsuite/22_locale/codecvt_wchar_t_char.cc (main): Add
465         _GLIBCPP_USE_WCHAR_T guards.
466
467         * configure.in (AC_OUTPUT_COMMANDS): Remove, just run scripts as
468         is, so that checks for existence of generated files actually work.
469         * configure: Regenerate.
470
471 2000-11-23  Hans-Peter Nilsson  <hp@bitrange.com>
472
473         * config/os/gnu-linux/bits/os_defines.h: Include <features.h>.
474         If not glibc 2.1 or higher, include <gnu/types.h> and define
475         __off64_t as __loff_t and #define __THROW as empty.
476
477         * libio/libio.h [__P]: Move __THROW and __PMT into their own
478         ifndef:s.
479
480 2000-11-23  David Edelsohn  <edelsohn@gnu.org>
481
482         * porting.texi: Expand libtool information.
483
484 2000-11-23  Gabriel Dos Reis  <gdr@codesourcery.com>
485
486         * include/bits/ios_base.h (ios_base::failure::~failure,
487         ios_base::failure::what): Move defintion to ...
488
489         * src/ios.cc (ios_base::failure::~failure): ... here.
490         src/ios.cc (ios::failure::what): Likewise.
491
492 2000-11-22  Benjamin Kosnik  <bkoz@redhat.com>
493
494         Make deprecated strstream header consistent with new and new.h.
495         * include/backward/strstream.h: Add. Use using declarations to
496         scope strstreambuf, istrstream, ostrstream, strstream to global
497         scope.
498         * include/backward/strstream: Remove using declarations.
499         * src/Makefile.am (base_headers): Add strstream.
500         * src/Makefile.in: Regenerate.
501
502         * include/backward/new.h (_CPP_BACKWARD_NEW_H): Change macro guard
503         to be consistent with other headers.
504
505 2000-11-22  Richard Henderson  <rth@redhat.com>
506
507         * config/os/bsd/bits/ctype_inline.h (is): Fix order of expressions.
508         
509 2000-11-22  Phil Edwards  <pme@sources.redhat.com>
510
511         * porting.texi:  Minor tweaks to vocabulary.
512
513 2000-11-22  Loren J. Rittle  <ljrittle@acm.org>
514
515         * include/backward/strstream.h: Reinstate the `using'
516         statements.
517
518 2000-11-22  Loren J. Rittle  <ljrittle@acm.org>
519
520         * src/Makefile.am (base_headers): Add missing backwards headers.
521         * src/Makefile.in: Regenerate.
522
523 2000-11-21  scott snyder  <snyder@fnal.gov>
524
525         * config/c_io_stdio.cc (seekoff): Fix return value.
526         (seekpos): Likewise.
527         (sys_seek): Likewise.
528
529 2000-11-21  Loren J. Rittle  <ljrittle@acm.org>
530
531         * mkcheck.in (explanation): Retain output of all failing
532         compiles.  Don't add gratuitous space to the log file.
533
534 2000-11-21  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
535
536         * src/strstream.cc: Adjust includes.
537         * src/Makefile.am (base_headers): Remove std_strstream.h, add
538         backwards/strstream.h.
539         (std_headers): Remove strstream.
540         * src/Makefile.in: Regenerate.
541         * libsupc++/Makefile.am (headers): Remove new.h
542         * libsupc++/Makefile.in: Regenerate.
543         * include/std/strstream: Remove.        
544         * include/backward/strstream.h: Replace with...
545         * include/bits/std_strstream.h: ...this. Move.
546         * include/backward/complex.h: Remove SGIisms.
547         * include/backward/streambuf.h: Same.
548         * include/backward/stream.h: Same.
549         * include/backward/ostream.h: Same.
550         * include/backward/istream.h: Same.
551         * include/backward/iostream.h: Same.
552         * include/backward/iomanip.h: Same.
553         * include/backward/fstream.h: Same.
554         * libsupc++/new.h: Add using declarations for bad_alloc,
555         nothrow_t, and nothrow, move to ...
556         * include/backward/new.h: ...here.
557
558 2000-11-21  Mark Mitchell  <mark@codesourcery.com>
559
560         * porting.texi: New file.
561
562 2000-11-21  Branko Cibej  <brankoe@xbc.nu>
563
564         * config/os/solaris/solaris2.6/bits/os_defines.h: Define
565         _XOPEN_SOURCE, _LARGEFILE64_SOURCE, __EXTENSIONS__, __off_t,
566         __off64_t and __ssize_t.
567         * config/os/solaris/solaris2.5/bits/os_defines.h: For now, use the
568         same configuration as above.
569         
570 2000-11-21  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
571
572         * acinclude.m4 (AC_LC_MESSAGES): Check for locale.h.
573         * aclocal.m4: Regenerate.
574         * configure: Renerate.
575
576 2000-11-20  Benjamin Kosnik  <bkoz@redhat.com>
577
578         * mkcheck.in (explanation): Don't paste output of passing compiles
579         into log file. Use -static. Get version info.
580
581         * testsuite/23_containers/vector_ctor.cc (test02): Fix thinko.
582
583 2000-11-20  Gabriel Dos Reis  <gdr@codesourcery.com>
584
585         * include/bits/std_complex.h (complex<double>): Constructor
586         complex<double>::complex(const complex<float>&) is not explicit;
587         since it is a promotion.
588         (complex<long double>): Constructors taking complex<float> and
589         complex<double> are not explicit.
590
591 2000-11-20  Benjamin Kosnik  <bkoz@redhat.com>
592
593         * include/bits/std_complex.h: Tweaks, include cmath for abs overloads.
594         * src/complex.cc: Remove cmath include, formatting tweaks, remove
595         dead code.
596         * include/c/bits/std_cmath.h: Formatting tweaks.
597         * testsuite/26_numerics/complex_value.cc: New file, for catching
598         bits gleaned from libstdc++/106.
599
600         * testsuite/23_containers/vector_ctor.cc (test02): Add test from
601         libstdc++/102.
602         
603 2000-11-20  Joseph S. Myers  <jsm28@cam.ac.uk>
604
605         * include/bits/c++config, include/bits/ios_base.h,
606         include/bits/std_streambuf.h: Correct spelling of "deprecated".
607
608 2000-11-19  Mark Mitchell  <mark@codesourcery.com>
609
610         * libsupc++/exception_support.cc (__throw_bad_cast): Name it 
611         __cxa_bad_cast under the new ABI.
612         (__throw_bad_typeid): Name it __cxa_bad_typeid under the new ABI.
613         * libsupc++/pure.cc (__pure_virtual): Name it __cxa_pure_virtual
614         under the new ABI.
615
616 2000-11-18  Mark Mitchell  <mark@codesourcery.com>
617
618         * libsupc++/exception_support.h: New header file.
619         * libsupc++/vec.cc: Include it.
620         (__cxa_vec_new2): Recatch exceptions before rethrows.
621         (__cxa_vec_new3): Likewise.
622         (__cxa_vec_ctor): Likewise.
623         (__cxa_vec_cctor): Likewise.
624         (__cxa_vec_dtor): Likewise.
625         (__cxa_vec_delete2): Likewise.
626         (__cxa_vec_delete3): Likewise.
627
628 2000-11-17  Theodore Papadopoulo  <Theodore.Papadopoulo@sophia.inria.fr>
629
630         * include/bits/stl_tree.h: Overload operators == and != to be able
631         to handle the case (const_iterator,iterator) and
632         (iterator,const_iterator), thus fixing libstdc++/737 and the like.
633         * testsuite/23_containers/map_operators.cc (test02): New tests.
634         
635 2000-11-17  Loren J. Rittle  <ljrittle@acm.org>
636
637         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Correct last patch
638           to ``make --enable-cstdio=stdio the default''.
639         * libstdc++-v3/aclocal.m4: Rebuilt.
640         * libstdc++-v3/configure: Rebuilt.
641
642 2000-11-17  Phil Edwards  <pme@sources.redhat.com>
643
644         * acinclude.m4 (GLIBCPP_ENABLE_ATOMICITY):  Move switch statement
645           contents to...
646         * configure.target:  ...here.  Enable generic atomic ops, and warn.
647         * aclocal.m4:  Regenerated.
648         * configure:  Ditto.
649         * Makefile.in:  Ditto.
650         * libio/Makefile.in:  Ditto.
651         * libmath/Makefile.in:  Ditto.
652         * libsupc++/Makefile.in:  Ditto.
653         * src/Makefile.in:  Ditto.
654
655 2000-11-16  Loren J. Rittle  <ljrittle@acm.org>
656
657         * include/bits/locale_facets.tcc (num_get<_CharT,
658           _InIter>::do_get(...)): Add missing typename keyword.
659
660 2000-11-16  Mark Mitchell  <mark@codesourcery.com>
661
662         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Make 
663         --enable-cstdio=stdio the default.  Disable wide character support
664         in that event.
665         * configure.in: Move GLIBCPP_ENABLE_C_MBCHAR after
666         (GLIBCPP_ENABLE_CSTDIO).
667         * config/c_io_stdio.h: Don't include <libio.h>, don't define
668         __c_wfile_type.
669         * aclocal.m4: Regenerated.
670         * configure: Likewise.
671         * Makefile.in: Likewise.
672         * libio/Makefile.in: Likewise.
673         * libmath/Makefile.in: Likewise.
674         * libsupc++/Makefile.in: Likewise.
675         * src/Makefile.in: Likewise.
676         
677 2000-11-16  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
678
679         * config/c_io_stdio.h: Include stddef.h.
680
681 2000-11-16  Mark Mitchell  <mark@codesourcery.com>
682
683         * config/c_io_stdio.h (streamsize): Make it a typedef for
684         ptrdiff_t.
685         (wstreamsize): Likewise.
686
687         * config/c_io_stdio.h: Include libio.h.
688
689 2000-11-15  Mark P Mitchell  <mark@codesourcery.com>
690
691         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Substitute libio_la.
692         * src/Makefile.am (libstdc___la_LIBADD): Use it.
693         * aclocal.m4: Regenerated.
694         * configure: Likewise.
695         * Makefile.in: Likewise.
696         * libio/Makefile.in: Likewise.
697         * libmath/Makefile.in: Likewise.
698         * libsupc++/Makefile.in: Likewise.
699         * src/Makfile.in: Likewise.
700         
701 2000-11-15  Mark Mitchell  <mark@codesourcery.com>
702
703         * mkcheckin.in: Move check for bash version 2 later in the file.
704
705         * include/bits/basic_string.h (basic_string::_Rep::_S_max_size):
706         Make it const.
707         (basic_string::_Rep::_S_terminal): Likewise.
708         * include/bits/string.tcc (basic_string::_Rep::_S_max_size):
709         Likewise.
710         (basic_string::_Rep::_S_terminal): Likewise.
711         
712 2000-11-15  David Billinghurst  <David.Billinghurst@riotinto.com>
713
714         * mkcheck.in:  Add function size_command() for irix.
715
716 2000-11-14  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
717
718         * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPOR): Set LIBS back to
719         initial value.
720         (GLIBCPP_EXPORT_INCLUDES): Only export TOPLEVEL_INCLUDES if
721         building a canadian cross. This should fix the remaining java
722         build issues.
723         * aclocal.m4: Regenerate.
724         * configure: Regenerate.
725         
726         * include/bits/c++config (__GLIBCPP__): Set release version for 2.91.
727
728 2000-11-14  Phil Edwards  <pme@sources.redhat.com>
729
730         * mkcheck.in: On a platform where we don't know how to extract
731         section sizes, just set them to zero.  Use old method of reading
732         file contents.
733
734 2000-11-13  Loren J. Rittle  <ljrittle@acm.org>
735
736         * config/c_io_stdio.h: Don't define __c_wfile_type
737         when _GLIBCPP_USE_WCHAR_T is not defined.
738
739 2000-11-13  Phil Edwards  <pme@sources.redhat.com>
740
741         * acinclude.m4 (GLIBCPP_CHECK_TARGET):  New macro, replacing
742         GLIBCPP_CHECK_CPU and GLIBCPP_CHECK_OS, sourcing configure.target.
743         (GLIBCPP_CONFIGURE):  Call new macro here.
744         * configure.host:  Cleanup.
745         * configure.in:  Remove those two macros.
746         * configure.target:  New file.
747         * aclocal.m4:  Regenerated.
748         * configure:  Ditto.
749         * Makefile.in:  Ditto.
750         * libio/Makefile.in:  Ditto.
751         * libmath/Makefile.in:  Ditto.
752         * libsupc++/Makefile.in:  Ditto.
753         * src/Makefile.in:  Ditto.
754
755         * mkcheck.in:  Use libtool.  Split things out into functions.
756
757 2000-11-12  Alexandre Petit-Bianco  <apbianco@cygnus.com>
758
759         * Makefile.am (tmp-libstdsc++.INC:): Do not use -I$(top_builddir).
760         * Makefile.in: Regenerate.
761
762 2000-11-12  David Edelsohn  <edelsohn@gnu.org>
763
764         * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Add test for
765         libiconv.a providing wchar_t support functions.
766         * aclocal.m4: Regenerate.
767         
768 2000-11-12  Loren J. Rittle  <ljrittle@acm.org>
769
770         * acinclude.m4 (GLIBCPP_ENABLE_ATOMICITY): Handle FreeBSD.
771         * aclocal.m4, configure: Rebuilt.
772
773 2000-11-12  Brent Verner  <brent@rcfile.org>
774
775         * include/c_std/bits/wrap_langinfo.h: New file.
776         * include/c_std/langinfo.h: New file.
777         * include/bits/codecvt.h (__enc_trants::__enc_traits()): Bring in
778         CODESET from _C_legacy::CODESET if using shadow headers.
779         * src/Makefile.am: Add new files.
780         * src/Makefile.in: Regenerate.
781         
782 2000-11-12  Mark Mitchell  <mark@codesourcery.com>
783
784         * include/c/bits/std_cmath.h (abs): Change extern "C" declaration
785         of `abs (double)' to ...
786         (fabs): this.
787
788         * config/os/solaris/solaris2.7/bits/os_defines.h: Define
789         __EXTENSIONS__.
790
791 2000-11-11  Mark P Mitchell  <mark@codesourcery.com>
792
793         * include/bits/basic_file.h (__basic_file): Don't use __c_wfile_type
794         when _GLIBCPP_USE_WCHAR_T is not defined.
795
796 2000-11-10  Phil Edwards  <pme@sources.redhat.com>
797
798         * include/bits/codecvt.h (__iconv_adaptor):  New adaptor function,
799           courtesy of Alexandre Oliva, to handle const/non-const signatures.
800           (codecvt::do_out):  Use.
801           (codecvt::do_in):  And here.
802
803 2000-11-10  Gabriel Dos Reis  <gdr@codesourcery.com>
804
805         * include/bits/cpp_type_traits.h: Fix typos.  Adjust formatting.
806
807 2000-11-10  Gabriel Dos Reis  <gdr@codesourcery.com>
808
809         * include/bits/localefwd.h (_Count_ones<>::_S_halfcount,
810         _Count_ones<>::_S_count): Turn into enumerators.
811
812 2000-11-08  Mark Mitchell  <mark@codesourcery.com>
813
814         * include/bits/codecvt.h (codecvt::do_out): Make it const-correct.
815         (codecvt::do_in): Likewise.
816
817 2000-11-08  David Edelsohn  <edelsohn@gnu.org>
818
819         * src/locale-inst.cc: Add explicit instantiations of
820         _M_fill_insert and fill_n<..., unsigned long,...> .
821
822 2000-11-06  Gabriel Dos Reis  <gdr@codesourcery.com>
823
824         * include/bits/std_complex.h (conj): Undo double removal.
825
826 2000-11-06  Alexandre Oliva  <aoliva@redhat.com>
827
828         * acinclude.m4 (LIB_AC_PROG_CXX): Remove CXX from the list of
829         alternatives for CXX_libstdcxx, now that it is useless.
830         * aclocal.m4, configure: Rebuilt.
831
832 2000-11-04  Mark Mitchell  <mark@codesourcery.com>
833
834         * acinclude.m4 (LIB_AC_PROG_CXX): Set CXX_libstdcxx from CXX.
835         * aclocal.m4: Regenerated.
836         * configure: Likewise.
837
838         * acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Fix punctuation in
839         use of `test'.
840         * aclocal.m4: Regenerated.
841         * configure: Likewise.
842
843 2000-11-04  Alexandre Oliva  <aoliva@redhat.com>
844
845         * acinclude.m4 (CXX): Prevent it from being cached.
846         * aclocal.m4, configure, */Makefile.in: Rebuilt.
847
848 2000-11-03  David Edelsohn <dje@watson.ibm.com>
849
850         * acinclude.m4 (GLIBCPP_CHECK_OS): Add AIX target selecting threads
851           flag based on multilib definition of $CXX.
852         * mknumeric_limits (LDFLAGS): Add AIX target linking with pthreads
853           based on multilib definition of $CXX.
854         * config/os/aix/bits/os_defines.h (_G_USING_THUNKS): Define as 0.
855
856 2000-11-03  Phil Edwards  <pme@sources.redhat.com>
857
858         * acinclude.m4:  Cleanups.
859         * aclocal.m4:  Regenerated.
860         * configure:  Ditto.
861         * Makefile.in:  Ditto.
862         * libio/Makefile.in:  Ditto.
863         * libmath/Makefile.in:  Ditto.
864         * libsupc++/Makefile.in:  Ditto.
865         * src/Makefile.in:  Ditto.
866
867         * docs/install.html:  Removal of EGCS.
868         * docs/23_containers/wrappers_h.txt:  Likewise.
869         * docs/faq/index.html:  Likewise.
870         * docs/faq/index.txt:  Regenerated.
871         * docs/thanks.html:  More people.
872
873 2000-11-03  David Edelsohn  <edelsohn@gnu.org>
874
875         * include/c/bits/std_cwchar.h: Undefine macro that conflicts
876         with function name defined in this file.
877
878 Thu Nov  2 23:19:20 2000  Mark P Mitchell  <mark@codesourcery.com>
879
880         * include/c/bits/std_cctype.h: Undefine macros that conflict
881         with function names defined in this file.
882         * include/c/bits/std_cstdio.h: Likewise.
883
884 2000-11-02  Mark Mitchell  <mark@codesourcery.com>
885
886         * acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Fix typo.
887
888 Thu Nov  2 10:11:45 2000  Mark P Mitchell  <mark@codesourcery.com>
889
890         * acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Add support for IRIX.
891         * aclocal.m4: Regenerated.
892         * Makefile.in: Regenerated.
893         * libio/Makefile.in: Likewise.
894         * libmath/Makefile.in: Likewise.
895         * libsupc++/Makefile.in: Likewise.
896         * src/Makefile.in: Likewise.
897         * configure: Likewise.
898         * config/os/irix/bits/ctype_base.h: Revise.
899         * config/os/irix/bits/ctype_inline.h: Likewise.
900         * config/os/irix/bits/ctype_noninline.h: Likewise.
901
902         * testsuite/22_locale/codecvt_unicode_char.cc: Don't run it
903         if not _GLIBCPP_USE_WCHAR_T.
904         * testsuite/22_locale/codecvt_unicode_wchar_t.cc: Likewise.
905         * testsuite/22_locale/ctor_copy_dtor.cc: Likewise.
906         * testsuite/22_locale/ctype_wchar_t_members.cc: Likewise.
907         
908         * mkcheck.in: Fix echoing of -rpath option.
909         
910         * config/os/irix/bits/atomicity.h (_Atomic_word): Make it a
911         signed type.
912         (__exchange_aand_add): Adjust accordingly.
913         (__atomic_add): Likewise.
914         
915 2000-11-02  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
916
917         * src/locale.cc: Match orderings for static members.
918         * include/bits/fstream.tcc: Fixes for cin.
919
920 2000-11-02  Gabriel Dos Reis  <gdr@codesourcery.com>
921
922         * include/bits/std_complex.h (complex<>): Remove (cos<>, cosh<>,
923         exp<>, log<>, log<>, sin, sinh<>) friend declarations.
924         (cos, cosh, sin, sinh): Define primary templates.
925
926         * src/complex.cc (cos<>, cosh<>, sin<>, sinh<>): Comment out
927         definitions. 
928
929 2000-11-01  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
930
931         * bits/basic_file.h (_M_open_mode): Change signature, move
932         specializations to..
933         * config/c_io_libio.cc: ...here.
934         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Add sdtio option, remove wince.
935         * aclocal.m4: Regenerate.
936         * configure: Regenerate.
937         * config/c_io_stdio.h: New file.
938         * config/c_io_stdio.cc: New file.
939         * docs/configopts.html: Modify documentation.
940         
941 2000-10-31  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
942
943         * include/c/bits/std_cwctype.h: Add more undefs.
944
945 2000-10-31  Gabriel Dos Reis  <gdr@codesourcery.com>
946
947         * include/bits/std_complex.h (norm): Forward declare.
948         (complex<>): Comment out friend declaration of conj<>.
949         (conj<>): Comment out specialization.
950         (exp, log, log10): Define primary templates.
951
952         * src/complex.cc (exp<>, log<>, log10<>): Comment out
953         specializations. 
954
955 2000-10-31  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
956
957         * include/bits/std_complex.h: Remove duplicate definition of conj.
958         * include/c/bits/std_cwctype.h: Consistent placement of undefs.
959         
960 2000-10-31  Gabriel Dos Reis  <gdr@codesourcery.com>
961
962         * src/complex.cc (arg, polar): Comment out specializations.
963
964         * include/bits/std_complex.h (complex<>): Remove arg<> friend
965         declaration. 
966         (arg): Define primary template.
967         (polar): Likewise.
968         (conj): Likewise.
969
970 2000-10-31  Gabriel Dos Reis  <gdr@codesourcery.com>
971
972         * include/c/bits/std_cwctype.h: #undef possible function-like
973         macro definitions of iswxxx functions, which might be brought in
974         by <wctype.h>.  Those macro definitions prevent build on some
975         linux-based systems.
976         
977         * include/bits/std_complex.h (complex<>): Comment out friend
978         declarations of abs<> specializations.
979         (abs): Define primary template.
980
981         * src/complex.cc (abs): Comment out specialization definition.
982
983 2000-10-30  Phil Edwards  <pme@sources.redhat.com>
984
985         * acinclude.m4 (GLIBCPP_ENABLE_DEBUG):  Raise debugging level from
986           the default of 2 to 3.
987         * configure.in:  Fix minor typos.  SUBST the values of enable_shared
988           and enable_static so that mkcheck will be aware of them.  Put the
989           test for gconv.h in with all the other header tests.
990         * aclocal.m4:  Regenerate.
991         * configure:  Ditto.
992         * Makefile.in:  Ditto.
993         * libio/Makefile.in:  Ditto.
994         * libmath/Makefile.in:  Ditto.
995         * libsupc++/Makefile.in:  Ditto.
996         * src/Makefile.in:  Ditto.
997
998         * config/os/solaris/solaris2.7/bits/os_defines.h:  Define
999           _G_USING_THUNKS to 0.
1000
1001 2000-10-30  Benjamin Kosnik  <bkoz@redhat.com>
1002
1003         * src/complex_io.cc : Remove ancient defines.
1004         * config/os/gnu-linux/bits/os_defines.h: Add defines.
1005         * libsupc++/tinfo2.cc: Change to cstddef.
1006
1007         * include/bits/codecvt.h: Add include of c++config.h, so that
1008         __USE_GNU gets defined. (Important for alpha.)
1009
1010         * include/c/bits/std_cwctype.h: Same.
1011         * include/c/bits/std_ctime.h: And here.
1012         * include/c/bits/std_cstdarg.h: Same.
1013         * include/c/bits/std_csignal.h: Same.
1014         * include/c/bits/std_csetjmp.h: Same.
1015         * include/c/bits/std_clocale.h: Same.
1016         * include/c/bits/std_climits.h: Touch.
1017         * include/c/bits/std_cfloat.h: Same.
1018         * include/c/bits/std_cerrno.h: Same.
1019         * include/c/bits/std_cwchar.h: Same.
1020         * include/c/bits/std_cassert.h: Same.
1021         * include/c/bits/std_cctype.h: Same.    
1022         * include/c/bits/std_cstddef.h: And here.
1023         * include/c/bits/std_cstdlib.h: And here.
1024         * include/c/bits/std_cstdio.h: Same.
1025         * include/c/bits/std_cstring.h: Add names to namespace std::.
1026
1027         * include/bits/c++config (_GNU_SOURCE): Move linux-specific macros
1028         from here...
1029         (_ISOC99_SOURCE): And this one....
1030         * config/os/gnu-linux/bits/os_defines.h: ...to here.
1031         
1032         * include/bits/codecvt.h (codecvt<_InternT, _ExternT,
1033         __enc_traits>::do_in): Don't cast to const, this is a bug in glibc
1034         prior to 2.2.
1035         (codecvt<_InternT, _ExternT, __enc_traits>::do_out): Same.
1036         * include/c/bits/std_cwchar.h: Add using declarations for mbstate_t.
1037         
1038 2000-10-30  Steven King  <sxking@uswest.net>
1039
1040         * include/bits/codecvt.h: Add cast.
1041         * include/c_std/stdio.h: Re-add printf using declaration.
1042         * include/c_std/bits/std_cstdio.h: Same
1043         * testsuite/22_locale/codecvt_wchar_t_char.cc: Fixup testsuite.
1044         * testsuite/22_locale/ctor_copy_dtor.cc: Same.
1045         * testsuite/22_locale/facet.cc: Same.
1046         * testsuite/22_locale/global_templates.cc: Same.
1047         * testsuite/22_locale/operators.cc: Same.
1048         * testsuite/22_locale/static_members.cc: Same.
1049         * testsuite/26_numerics/c_math.cc: Same.
1050         * testsuite/26_numerics/complex_inserters_extractors.cc: Same.
1051         * testsuite/27_io/fpos.cc: Same.
1052         * testsuite/27_io/istream_extractor_arith.cc: Same.
1053         * testsuite/27_io/istream_unformatted.cc: Same.
1054         * testsuite/27_io/ostream_inserter_arith.cc: Same.
1055         * testsuite/27_io/streambuf.cc: Same.
1056
1057 2000-10-30  Mark Mitchell  <mark@codesourcery.com>
1058
1059         * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT): Check 
1060         for cabs, cabsf, and cabsl, too.
1061         * aclocal.m4: Regenerated.
1062         * config.h.in: Likewise.
1063         * configure: Likewise.
1064         * libmath/Makefile.am (libmath_la_SOURCES): Remove cabs.c and
1065         cabsf.c.
1066         * libmath/Makefile.in: Regenerated.
1067         * libmath/complex-stub.h (cabs): Don't declare if the system
1068         already provides this function.
1069         (cabsf): Likewise.
1070         (cabsl): Likewise.
1071         * src/complex.cc (abs): Directly use `hypot' since we can't call
1072         cabs on IRIX.
1073
1074 2000-10-30  Joseph S. Myers  <jsm28@cam.ac.uk>
1075
1076         * acinclude.m4: Update URL on egcs.cygnus.com to point to
1077         gcc.gnu.org.
1078         * aclocal.m4, configure: Regenerate.
1079         * src/gen-num-limits.cc, include/bits/c++config,
1080         include/bits/stl_config.h: Remove EGCS references.
1081
1082 2000-10-29  Mark Mitchell  <mark@codesourcery.com>
1083
1084         * mkcheck.in (test_file): Use -rpath, rather than --rpath, when
1085         building shared executables.
1086
1087 2000-10-29   Mark Harig <mharig@landmark.com>
1088
1089         * src/Makefile.am: Change logic for include dir options.
1090         * src/Makefile.in: Regenerate.
1091         * libsupc++/Makefile.am: Ditto.
1092         * libsupc++/Makefile.in: Regenerate.
1093         
1094 2000-10-29  Benjamin Kosnik  <bkoz@redhat.com>
1095
1096         * configure.in: Simplify use of AC_CACHE_SAVE.  Put linked files
1097         in $(top_builddir)/include/bits, not $(top_builddir)/bits, to help
1098         with libgcj build issues and improve consistency with the source
1099         directory's include directory setup.
1100         * configure: Regenerate.
1101         * acinclude.m4: Same here.
1102         * aclocal.m4: Regenerate.
1103         * mknumeric_limits (OUT_H): Also change paths here.
1104         * mkcheck.in (C_DIR): And here.
1105         * mkc++config (OUT_H): And here.
1106         * libmath/Makefile.am (INCLUDES): And here.
1107         * src/Makefile.am (INCLUDES): Change to $(top_builddir)/include.
1108         * libio/Makefile.am: Ditto.
1109         * libsupc++/Makefile.am (INCLUDES): Ditto.
1110
1111 2000-10-29  Mark Mitchell  <mark@codesourcery.com>
1112
1113         * config/c_io_libio.cc (basic_file<char>::__basic_file): 
1114         Don't pass a NULL _IO_wide_data to _IO_no_init when
1115         _GLIBCPP_USE_WCHAR_T is not defined.
1116         * config/c_io_libio.h (_IO_codecvt): Don't declare when 
1117         _GLIBCPP_USE_WCHAR_T is not defined.
1118         * config/c_io_libio_codecvt.c: Don't compile it 
1119         when _GLIBCPP_USE_WCHAR_T is not defined.
1120         * include/bits/codecvt.h (codecvt<_InternT, _ExternT, __enc_traits):
1121         Don't define this specialization when _GLIBCPP_USE_WCHAR_T 
1122         is not defined.
1123         * include/bits/locale_facets.h (<bits/std_cwctype.h>): Don't
1124         include it when _GLIBCPP_USE_WCHAR_T is not defined. 
1125         * src/codecvt.cc (__enc_traits::_S_max_size): Don't define
1126         when _GLIBCPP_USE_WCHAR_T is not defined.
1127         * src/localename.cc (locale::_Impl::_M_construct_collate):
1128         Don't call wide-character functions when _GLIBCPP_USE_WCHAR_T is 
1129         not defined.
1130         (locale::_Impl::_M_construct_ctype): Likewise.
1131         (locale::_Impl::_M_construct_monetary): Likewise.
1132         (locale::_Impl::_M_construct_numeric): Likewise.
1133         (locale::_Impl::_M_construct_time): Likewise.
1134         (locale::_Impl::_M_construct_messages): Likewise.
1135         
1136         * acinclude.m4 (GLIBCPP_ENABLE_ATOMICITY): Handle IRIX.
1137         * aclocal.m4: Regenerated.
1138         * configure: Likewise.
1139         * config/os/irix/bits/atomicity.h: New file.
1140         * config/os/irix/bits/os_defines.h (_POSIX_SOURCE): Undefine.
1141         (__off_t): Define.
1142         (__off64_t): Likewise.
1143         (__ssize_t): Likewise.
1144         (_G_USING_THUNKS): Define to zero.
1145         
1146 2000-10-28  Mark Mitchell  <mark@codesourcery.com>
1147
1148         * src/string-inst.cc (basic_string<C>::npos): Explicitly
1149         instantiate it.
1150
1151 2000-10-26  Benjamin Kosnik  <bkoz@redhat.com>
1152
1153         * include/c/bits/std_cmath.h: Fix double declarations in namespace std.
1154
1155         Clean up naming, consistency in "C" library autoconf testing.
1156         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): For consistency, change to
1157         GLIBCPP_CHECK_CTYPE_SUPPORT.
1158         (GLIBCPP_CHECK_STDLIB_SUPPORT): Add.
1159         * aclocal.m4: Regenerate.
1160         * configure.in: And here. 
1161         Add call to GLIBCPP_CHECK_STDLIB_SUPPORT.
1162         * configure: Regenerate.
1163         
1164 2000-10-26  David Edelsohn  <edelsohn@gnu.org>
1165
1166         * acinclude.m4 (GLIBCPP_CHECK_STDLIB_DECL_AND_LINKAGE_2): New macro.
1167         (GLIBCPP_CHECK_MATH_SUPPORT): Use it to test for strtold.
1168         
1169 2000-10-26  Phil Edwards  <pme@sources.redhat.com>  
1170             David Edelsohn  <dje@watson.ibm.com>
1171
1172         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Comment out
1173         --gc-sections stuff entirely to avoid misleading people.
1174         (GLIBCPP_ENABLE_CSTDIO): Merge need_libio and need_xtra_libio.
1175         * libio/Makefile.am (LIBIO_SRCS,LIBIO_WSRCS,LIBIO_XTRA_SRCS):
1176         Rearrange and merge.
1177         * libio/libio.h: Simplify, make fewer assumptions.  Define those
1178         macros which must be defined.
1179         * config/os/solaris/solaris2.7/bits/os_defines.h: Simplify as a
1180         result.
1181
1182 2000-10-26  Mark Mitchell  <mark@codesourcery.com>
1183
1184         * include/backward/streambuf.h: New file.
1185
1186 2000-10-26  David Edelsohn  <dje@watson.ibm.com> 
1187         
1188         * config/os/aix/bits/ctype_inline.h (is): Use __OBJ_DATA directly.
1189         * config/os/aix/bits/ctype_noninline.h (do_tolower): Fix typo.
1190         * config/os/aix/bits/os_defines.h: Add AIX defines.
1191
1192 2000-10-26  Benjamin Kosnik  <bkoz@redhat.com>
1193
1194         * acinclude.m4 (GLIBCPP_ENABLE_LONG_DOUBLE): Remove.
1195         * aclocal.m4: Regenerate.
1196         * configure.in: Remove GLIBCPP_ENABLE_LONG_DOUBLE.
1197         * configure: Regenerate.
1198         * docs/configopts.html: Remove.
1199         * src/complexl.cc: Revert.
1200         * config.h.in: Remove.
1201         * include/c_std/bits/std_cmath.h: Remove guards based on
1202         _GLIBCPP_USE_LONG_DOUBLE.
1203         * include/c/bits/std_cmath.h: Same. Format. Match c_std behavior
1204         with respect to long double signatures.
1205
1206         * config/os/aix/bits/ctype_noninline.h (ctype): Remove throw
1207         specification.
1208         * config/os/newlib/bits/ctype_noninline.h (ctype): And here.
1209         * config/os/solaris/solaris2.6/bits/ctype_noninline.h (ctype): Same.
1210         * config/os/solaris/solaris2.5/bits/ctype_noninline.h (ctype): Same.
1211         * config/os/generic/bits/ctype_noninline.h (ctype): Same.
1212         * config/os/bsd/bits/ctype_noninline.h (ctype): Same.
1213
1214 2000-10-26  Gabriel Dos Reis  <gdr@codesourcery.com>
1215
1216         * include/bits/std_valarray.h (valarray::valarray): Fix thinko.
1217         Use __valarray_copy_construct only where appropriate.
1218
1219 2000-10-25  Mark Mitchell  <mark@codesourcery.com>
1220
1221         * Makefile.in (check): Don't make mkcheck executable.
1222         (check-install): Likewise.
1223         * configure.in (AC_OUTPUT): Make mkcheck executable.
1224         * mkcheck.in (top_srcdir): New variable.
1225         (INC_PATH): Set the path to the backward and ext directories
1226         correctly.
1227         
1228 2000-10-25  Phil Edwards  <pme@sources.redhat.com>
1229
1230         * configure.in:  Check for gconv.h.
1231         * libio/wfileops.c:  Wrap gconv.h in HAVE_GCONV_H.
1232
1233         * config/c_io_libio_codecvt.c:  Change __mbstate_t to __c_mbstate_t.
1234         * libio/_G_config.h:  And here.
1235         * libio/iofwide.c:  And here.
1236         * libio/libio.h:  And here.
1237
1238         * config/os/solaris/solaris2.7/bits/ctype_noninline.h:  Remove
1239           exception specification to match declaration.
1240         * include/bits/locale_facets.tcc:  Include bits/std_clocale.h.
1241
1242 2000-10-24   Mark Harig <mharig@landmark.com>
1243
1244         * docs/configopts.html: Added documentation for the
1245         "--enable-version-specific-runtime-libs" and
1246         "--with-gxx-include-dir" configuration switches.
1247
1248 2000-10-24  Benjamin Kosnik  <bkoz@redhat.com>
1249
1250         * include/bits/stl_pair.h (make_pair): Add LWG solution.
1251
1252         * testsuite/21_strings/compare.cc (test01): Inject namespace std
1253         into the mix.
1254
1255         * mkcheck.in (MAX_MEM_USAGE): Bump up to 3072. Strangely enough,
1256         this works. 
1257
1258 2000-10-24  Levente Farkas  <lfarkas@mindmaker.hu>
1259
1260         * include/bits/std_bitset.h (_M_do_find_next): Fix typo.
1261
1262 2000-10-24  Phil Edwards  <pme@sources.redhat.com>
1263
1264         * acconfig.h:  List _GLIBCPP_USE_THREADS.
1265         * acinclude.m4:  General formatting cleanup (tabs/spaces), typo
1266           correction, etc.  Add comments about following *real* changes
1267           where they are used.
1268           (GLIBCPP_ENABLE_C_MBCHAR):  New test...
1269           (GLIBCPP_CHECK_WCHAR_T_SUPPORT):  ...results used here.
1270           (GLIBCPP_ENABLE_CSTDIO):  Define need_wlibio iff wide characters
1271           are requested.
1272           (GLIBCPP_ENABLE_THREADS):  If threads are used, define new
1273           macro _GLIBCPP_USE_THREADS in c++config.h.
1274           (GLIBCPP_ENABLE_SHADOW):  For C_INCLUDE_DIR, change () to {} as
1275           this is used in both makefiles and shell scripts (mkcheck).
1276         * configure.in:  Call GLIBCPP_ENABLE_C_MBCHAR.
1277
1278         * libio/_G_config.h:  Wrap _IO_MTSAFE_IO in _GLIBCPP_USE_THREADS.
1279         * config/c_io_libio.h:  In nonthreaded case, typedef __c_lock to
1280           something harmless, like int.
1281
1282         * config/os/aix/bits/os_defines.h:  Guard with _GLIBCPP_OS_DEFINES,
1283           add comment/instructions.
1284         * config/os/bsd/bits/os_defines.h:  Ditto.
1285         * config/os/generic/bits/os_defines.h:  Ditto.
1286         * config/os/gnu-linux/bits/os_defines.h:  Ditto.
1287         * config/os/irix/bits/os_defines.h:  Ditto.
1288         * config/os/newlib/bits/os_defines.h:  Ditto.
1289         * config/os/solaris/solaris2.5/bits/os_defines.h:  Ditto.
1290         * config/os/solaris/solaris2.6/bits/os_defines.h:  Ditto.
1291
1292         * mkcheck.in:  Limit the available heap size for testsuite
1293           binaries, initially at 2MB.
1294
1295 2000-10-23  Benjamin Kosnik  <bkoz@redhat.com>
1296
1297         * testsuite/21_strings/compare.cc (test01): Add using declarations.
1298
1299         * include/c_std/bits/std_cerrno.h: And here.
1300         * include/c_std/bits/std_cassert.h: Tweaks.
1301
1302         * mkcheck.in: Simplify.
1303         
1304         * acinclude.m4 (GLIBCPP_ENABLE_LONG_DOUBLE): Simplify.
1305         (GLIBCPP_ENABLE_LONG_LONG): Same.
1306         * aclocal.m4: Regenerate.
1307
1308         * src/Makefile.am (c_shadow_headers): Add features.h,
1309         bits/wrap_features.h.
1310         * src/Makefile.in: Regenerate.
1311         * include/c_std/features.h: New file.
1312         * include/c_std/bits/wrap_features.h (_CPP_WRAP_FEATURES_H): New
1313         file. Need to have c++config.h included before this file so
1314         _ISOC99_SOURCE around.
1315
1316         * include/c_std/sys/cdefs.h: Hack.
1317         * include/c_std/stdlib.h: Same, use c++config.h.
1318         * include/c_std/bits/std_cstdlib.h: Use _GLIBCPP_HAVE_STRTOLD.
1319
1320         * include/c_std/bits/std_cassert.h: Fix.
1321         * include/c_std/bits/std_cerrno.h: Make consistent.
1322
1323         * include/c_std/bits/std_csetjmp.h (setjmp): Unscope global
1324         declaration from ::_C_legacy to _C_legacy.
1325
1326         * include/c_std/bits/std_cstdio.h: same with printf.
1327         * include/c_std/stdio.h: And here.
1328
1329         * include/c_std/bits/std_cstdlib.h: abort, exit comment.
1330         * include/c_std/stdlib.h: Same here.
1331         
1332 2000-10-23  Benjamin Kosnik  <bkoz@redhat.com>
1333
1334         * testsuite/21_strings/compare.cc (test01): Add using declarations.
1335
1336         * include/c_std/bits/std_cerrno.h: And here.
1337         * include/c_std/bits/std_cassert.h: Tweaks.
1338
1339         * mkcheck.in: Simplify.
1340         
1341         * acinclude.m4 (GLIBCPP_ENABLE_LONG_DOUBLE): Simplify.
1342         (GLIBCPP_ENABLE_LONG_LONG): Same.
1343         * aclocal.m4: Regenerate.
1344
1345         * src/Makefile.am (c_shadow_headers): Add features.h,
1346         bits/wrap_features.h.
1347         * src/Makefile.in: Regenerate.
1348         * include/c_std/features.h: New file.
1349         * include/c_std/bits/wrap_features.h (_CPP_WRAP_FEATURES_H): New
1350         file. Need to have c++config.h included before this file so
1351         _ISOC99_SOURCE around.
1352
1353         * include/c_std/sys/cdefs.h: Hack.
1354         * include/c_std/stdlib.h: Same, use c++config.h.
1355         * include/c_std/bits/std_cstdlib.h: Use _GLIBCPP_HAVE_STRTOLD.
1356
1357         * include/c_std/bits/std_cassert.h: Fix.
1358         * include/c_std/bits/std_cerrno.h: Make consistent.
1359
1360         * include/c_std/bits/std_csetjmp.h (setjmp): Unscope global
1361         declaration from ::_C_legacy to _C_legacy.
1362
1363         * include/c_std/bits/std_cstdio.h: same with printf.
1364         * include/c_std/stdio.h: And here.
1365
1366         * include/c_std/bits/std_cstdlib.h: abort, exit comment.
1367         * include/c_std/stdlib.h: Same here.
1368         
1369 2000-10-21  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1370
1371         * acinclude.m4 (GLIBCPP_ENABLE_LONG_DOUBLE): New macro.
1372         * aclocal.m4: Regenerate.
1373         * configure.in: Use it.
1374         * configure: Regenerate.
1375         * src/complexl.cc: Fixup.
1376         * include/c_std/bits/std_cmath.h: Fixup.
1377         * include/c/bits/std_cmath.h: Fixup.
1378         * docs/configopts.html: Add docs.
1379         
1380         * docs/links.html: Add links to defects list, standards FAQ.
1381
1382         * testsuite/21_strings/ctor_copy_dtor.cc (test01): Disable tests
1383         with string creation that allocate huge ammounts of memory.
1384
1385         * include/c/bits/std_cstddef.h: Put size_t, ptrdiff_t in
1386         namepace std.
1387
1388 2000-10-21  Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
1389
1390         * libsupc++/exception.cc: Use namespace std.
1391         * libsupc++/new: DITTO.
1392         * libsupc++/new_op.cc: DITTO.
1393         * libsupc++/new_opnt.cc: DITTO.
1394         * libsupc++/new_opv.cc: DITTO.
1395         * libsupc++/new_opvnt.cc: DITTO.
1396         * libsupc++/tinfo.cc: DITTO.
1397         * libsupc++/tinfo.h: DITTO.
1398         * libsupc++/vec.cc: DITTO.
1399         * libsupc++/Makefile.am: Blank lines removal.
1400
1401 2000-10-21  Joseph S. Myers  <jsm28@cam.ac.uk>
1402
1403         * docs/configopts.html, docs/install.html, docs/17_intro/BADNAMES,
1404         docs/17_intro/howto.html, docs/18_support/howto.html,
1405         docs/19_diagnostics/howto.html, docs/20_util/howto.html,
1406         docs/21_strings/howto.html, docs/22_locale/howto.html,
1407         docs/23_containers/howto.html, docs/24_iterators/howto.html,
1408         docs/25_algorithms/howto.html, docs/26_numerics/howto.html,
1409         docs/27_io/howto.html, docs/ext/howto.html, docs/faq/index.html:
1410         Remove many EGCS references; use current absolute URLs on
1411         gcc.gnu.org or sources.redhat.com for messages in list archives.
1412         * docs/faq/index.txt: Regenerate.
1413
1414 2000-10-19  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1415
1416         * testsuite/22_locale/codecvt_unicode_char.cc (test01): Adjust
1417         creation of state_type for unicode_codecvt to take into account
1418         the byte order markings. Add distinct tests for UCS-2BE and UCS-2LE.
1419         * testsuite/22_locale/codecvt_unicode_wchar_t.cc (test01): Same.
1420         * include/bits/codecvt.h (__enc_traits): Add support for encodings
1421         that need a byte order marker. Needed for correct unicode support.
1422
1423         * src/locale.cc: Remove explicit qualification std::.
1424         (locale::locale(const char* __name)): Revert, as named locale
1425         support not finished.
1426         * src/localename.cc (locale::_Impl:: _Impl(size_t __numfacets,
1427         size_t __refs, bool __has_name = false, string __name): Move
1428         default argument...
1429         * include/bits/localefwd.h: Here.
1430         
1431 2000-10-18  Chip Salzenberg  <chip@valinux.com>
1432
1433         * libio/libio.h (_IO_USER_LOCK): Define.
1434
1435 2000-10-18  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1436
1437         * libsupc++/Makefile.am (exception): Change exception.cc to
1438         exception_support.cc.
1439         (CXXLINK): Remove bogus --tag CC.
1440         * libsupc++/Makefile.in: Regenerate.
1441         * libsupc++/exception.cc: Move to...
1442         * libsupc++/exception_support.cc: ...here.
1443
1444         * src/Makefile.am: Remove bogus --tag CC.
1445         * src/Makefile.in: Regenerate.
1446         
1447         * include/bits/locale_facets.tcc (use_facet): Simplify.
1448         * include/bits/locale_facets.h (use_facet<ctype<char> >): Correct
1449         use_facet declaration. Replace 'const ctype<T>' with ctype<T>.
1450         (use_facet<ctype<wchar_t> >): Same.
1451         * src/locale-inst.cc: Remove explicit instantiation.
1452         * src/locale.cc: Correct signature here too.
1453         (_Bad_use_facet::what()): Correct error string.
1454         * include/bits/localefwd.h: Correct comment.
1455
1456         * mkcheck.in (C_DIR): Change libsupc++/include to libsupc++.
1457
1458 2000-10-17  Martin Buchholz <martin@xemacs.org>
1459
1460         * testsuite/27_io/istream_seeks.cc: Fix spelling typo.
1461         * testsuite/27_io/ostream_seeks.cc: Similarly.
1462
1463 2000-10-17  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1464
1465         via Alexandre Oliva  <aoliva@redhat.com>
1466         * libsupc++/Makefile.am: Add --tag CXX, --tag CC, comments.
1467         * libsupc++/Makefile.in: Regenerate.
1468         * src/Makefile.am: Duplicate code.
1469         * src/Makefile.in: Regenerate.
1470         
1471         * acinclude.m4 (GLIBCPP_ENABLE_RELIBGCC): Take this out.
1472         * aclocal.m4: Regenerate.
1473         * configure.in: And here.
1474         * configure: Regenerate.
1475
1476         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Disable
1477         test for SECTION_LDFLAGS.
1478
1479 2000-10-16  Benjamin Kosnik  <bkoz@gnu.org>
1480
1481         Shadow headers would work if libsupc++ was strict about namespaces.
1482         This only possible if g++ maps std::size_t -> size_t. (Hint hint.)
1483         * include/c_std/assert.h: Add guards.
1484         * include/c_std/bits/std_climits.h: Correct typo.
1485         * include/c_std/ctype.h: Remove #error.
1486
1487         * libio/libioP.h: Break up extern "C" bits around includes.
1488         * libio/libio.h: Only include C headers, or else _C_legacy namespaces
1489         will be nested.
1490         * libio/libioP.h: Same here.
1491
1492 2000-10-15 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
1493
1494         * include/c_std/unistd.h: Define some types only when defined in
1495         the original unistd.h.
1496         * include/c_std/bits/std_cstddef.h: Explicitly ask for the
1497         definition of size_t, ptrdiff_t and NULL.
1498         * include/c_std/bits/wrap_unistd.h: Blank lines removal.
1499
1500 2000-10-15  Phil Edwards  <pme@sources.redhat.com>
1501
1502         * docs/configopts.html:  Remove libgcc-rebuild; HTML formatting.
1503
1504 2000-10-13  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1505             Mark Harig  <markh@landmark.com>
1506
1507         * src/Makefile.am (toolexeclibdir): Add support fo
1508         VERSION_SPECIFIC_LIBS and --with-gxx-include-dir.
1509         * src/Makefile.in: Regenerate.
1510         * libsupc++/Makefile.am: Same.
1511         (glibcppinstalldir): Adjust.
1512         * libsupc++/Makefile.in: Regenerate.
1513         * Makefile.am: Remove gxx_include_dir. Remove INCLUDE. 
1514         * Makefile.in: Regenerate.
1515         * docs/configopts.html: Add descriptions of flags.
1516         
1517 2000-10-11  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1518
1519         * libsupc++/Makefile.am: Use it.
1520         * libio/Makefile.am: Use it.
1521         * libmath/Makefile.am: Use it.
1522         * src/Makefile.am: Use it.
1523         * Makefile.am (AM_MAKEFLAGS): Remove includes.
1524
1525         * acinclude.m4 (GLIBCPP_EXPORT_INCLUES): Move include macros here.
1526         (GLIBCPP_EXPORT_FLAGS): Move CXX flag setting here.
1527         * configure.in: Use it.
1528
1529         * mkcheck.in (SRC_DIR): Use C_INCLUDE_DIR.
1530
1531         * src/Makefile.am (CXXCOMPILE): Remove.
1532         * src/Makefile.in: Regenerate.
1533         * libsupc++/Makefile.am (CXXCOMPILE): Same here.
1534         * libsupc++/Makefile.in: Regenerate.
1535
1536         * include/c_std/*: Merge with shadow.
1537         * include/c_std/bits/*: Same.
1538
1539         * shadow: Remove directory.
1540         * shadow/*: De-populate.
1541         
1542 2000-10-11  Phil Edwards  <pme@sources.redhat.com>
1543
1544         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES):  Comment out
1545           exception-throwing code for linker test.
1546         * aclocal.m4:  Regenerate.
1547         * configure:  Regenerate.
1548
1549 2000-10-10  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1550
1551         * Makefile.am (LIBSUPCXX_INCLUDES): Adjust.
1552         * libsupc++/include: Remove
1553         * libsupc++/include/*: Move to ...
1554         * libsupc++: Here.
1555         * libsupc++/Makefile.am (glibcppinstall_HEADERS): Install headers.
1556         (glibcppinstalldir): New.
1557         
1558         * src/Makefile.am (c_base_headers): New.
1559         (c_shadow_headers): New
1560         (c_headers): New.
1561         (myinstallheaders): Correct install issues.
1562         * src/Makefile.in: Regenerate.
1563         
1564         * Makefile.am (CSHADOW_INCLUDES): Simplify.
1565         * Makefile.in: Regenerate.
1566         * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Add c_include_dir.
1567         * aclocal.m4: Regenerate.
1568         * mkcheck.in (SRC_DIR): Use it.
1569         
1570         * include/bits/std_stdexcept.h: And here.
1571         * include/bits/std_ios.h: Change std_exception.h to exception.
1572         * src/locale.cc: And here.
1573         * src/locale-inst.cc: And here.
1574         
1575         * include/bits/valarray_array.h: And here.
1576         * include/bits/stl_alloc.h: And here.
1577         * include/bits/stl_algobase.h: And here.
1578         * include/bits/pthread_allocimpl.h: And here.
1579         * include/bits/stl_construct.h: Change to std_new.h to new.
1580
1581         * include/bits/locale_facets.h: Change std_typeinfo.h to typeinfo.
1582
1583         * src/Makefile.am (INCLUDES): Add LIBSUPCXX_INCLUDES.
1584         (headers): Remove duplicated headers.
1585         (std_headers): And here.
1586         * src/Makefile.in: Regenerate.
1587         * libsupc++/Makefile.am (LIBSUPCXX_INCLUDES): Remove.
1588         * libsupc++/Makefile.in: Regenerate.
1589         * Makefile.am (LIBSUPCXX_INCLUDES): Add here.
1590         (AM_MAKEFLAGS): And here.
1591         * Makefile.in: Regenerate.
1592         * include/bits/std_typeinfo.h: Remove.
1593         * include/bits/std_new.h: Remove
1594         * include/bits/std_exception.h: Remove.
1595         * std/new: Remove.
1596         * std/typeinfo: Remove.
1597         * std/exception: Remove.
1598
1599         * libio/_G_config.h (__need_ptrdiff_t): Add.
1600         
1601         * libsupc++/include/new: Change stddef.h to cstddef.
1602         * libsupc++/tinfo.h: Change limits.h to climits.
1603         * libsupc++/pure.cc: Comment out _GNU_LIBRARY_ bits, as this
1604         renders the file uncompilable. Add copyright.
1605
1606         * include/c_std/bits/std_cstddef.h: Don't bring wchar_t into std
1607         namespace, as it is a fundamental type.
1608
1609 2000-10-09  Richard Henderson  <rth@cygnus.com>
1610
1611         * libsupc++/pure.cc: New file.
1612         * libsupc++/Makefile.am (INCLUDES): Add top_builddir.
1613         (sources): Add pure.cc.
1614         * libsupc++/Makefile.in: Regenerate.
1615
1616 2000-10-09  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1617
1618         * docs/configopts.html: Edit.
1619
1620         * libio/Makefile.am (INCLUDES): Remove duplicates, simplify.
1621         * libio/Makefile.in: Regenerate.
1622         * libmath/Makefile.am (INCLUDES): Remove duplicates, simplify.
1623         * libmath/Makefile.in: Regenerate.
1624         * libsupc++/Makefile.am (INCLUDES): Remove duplicate.
1625         * libsupc++/Makefile.in: Regenerate.
1626
1627         * Makefile.am (AM_MAKEFLAGS): Add GLIBCPP_INCLUDES,
1628         TOPLEVEL_INCLUDES, LIBMATH_INCLUDES, LIBIO_INCLUDES,
1629         CSHADOW_INCLUDES up here.
1630         * Makefile.in: Regenerate.
1631         * src/Makefile.am (CSHADOW_INCLUDES): Add include/c_std, include/c
1632         for shadow headers.
1633         (myinstallheaders): Change glibcpp_includedir to GLIBCPP_INCLUDES.
1634         Move GLIBCPP_INCLUDES, TOPLEVEL_INCLUDES, LIBMATH_INCLUDES,
1635         LIBIO_INCLUDES, CSHADOW_INCLUDES up Makefile hierarchy.
1636         * src/Makefile.in: Regenerate.
1637         
1638         * include/c: New directory.
1639         * include/c/bits/(std_cassert.h, std_cctype.h, std_cerrno.h,
1640         std_cfloat.h, std_climits.h, std_clocale.h, std_cmath.h,
1641         std_csetjmp.h, std_csignal.h, std_cstdarg.h, std_cstddef.h,
1642         std_cstdio.h, std_cstdlib.h, std_cstring.h, std_ctime.h,
1643         std_cwchar.h, std_cwctype.h): Add, moving from...
1644         * include/bits: ...here.
1645         * include/c_std: New directory.
1646         * include/c_std/bits/*: Populate from...
1647         * shadow: ...here. Remove directory.
1648         
1649 2000-10-08   Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1650
1651         * libsupc++/Makefile.am (INCLUDES): Add toplevel include directory.
1652         (INCLUDES): Add glibcpp_includedir.
1653         * libsupc++/Makefile.in: Regenerate.
1654
1655         * acinclude.m4 (GLIBCPP_CHECK_OS): Link to os_defines.h.
1656         * aclocal.m4: Regenerate.
1657         * config/os/*/bits/os_defintes: Adjust copyright dates.
1658         
1659 2000-10-08  Phil Edwards  <pme@sources.redhat.com>
1660
1661         * include/bits/c++config:  Include <bits/os_defines.h>
1662         * config/os/aix/bits/os_defines.h:  New file.
1663         * config/os/bsd/bits/os_defines.h:  Ditto.
1664         * config/os/generic/bits/os_defines.h:  Ditto.
1665         * config/os/gnu-linux/bits/os_defines.h:  Ditto.
1666         * config/os/irix/bits/os_defines.h:  Ditto.
1667         * config/os/newlib/bits/os_defines.h:  Ditto.
1668         * config/os/solaris/solaris2.5/bits/os_defines.h:  Ditto.
1669         * config/os/solaris/solaris2.6/bits/os_defines.h:  Ditto.
1670         * config/os/solaris/solaris2.7/bits/os_defines.h:  Ditto.
1671
1672 2000-10-07  David Edelsohn  <dje@watson.ibm.com> 
1673         
1674         * config/os/aix/bits/atomicity.h: New file.
1675
1676 2000-10-07  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1677         
1678         * acinclude.m4: Remove CPU_FLAGS
1679         * libio/Makefile.am: Here too.
1680         * Makefile.am: Here too.
1681         
1682         * src/Makefile.am (CONFIG_INCLUDES): Remove.
1683         (INCLUDES): Remove CONFIG_INCLUDES.
1684         (cpu_headers): Remove.
1685         (myinstallheaders): Remove cpu_headers.
1686         (generated_headers): Rename to build_headers.
1687         (build_headers): Add atomicity.h, ctype_base.h,
1688         ctype_specializations.h.
1689         
1690         * config/os: New directory.
1691         * config/aix: Move to...
1692         * config/bsd: Move to...
1693         * config/generic: Move to...
1694         * config/gnu-linux: Move to...
1695         * config/irix: Move to...
1696         * config/newlib: Move to...
1697         * config/solaris: Move to...
1698         * config/os/*: Here.
1699
1700 2000-10-07  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1701
1702         * acinclude.m4: Remove CPU_FLAGS
1703         * libio/Makefile.am: Here too.
1704         * Makefile.am: Here too.
1705         
1706         * src/Makefile.am (CONFIG_INCLUDES): Remove.
1707         (INCLUDES): Remove CONFIG_INCLUDES.
1708         (cpu_headers): Remove.
1709         (myinstallheaders): Remove cpu_headers.
1710         (generated_headers): Rename to build_headers.
1711         (build_headers): Add atomicity.h, ctype_base.h,
1712         ctype_specializations.h.
1713
1714         * config/os: New directory.
1715         * config/aix: Move to...
1716         * config/bsd: Move to...
1717         * config/generic: Move to...
1718         * config/gnu-linux: Move to...
1719         * config/irix: Move to...
1720         * config/newlib: Move to...
1721         * config/solaris: Move to...
1722         * config/os/*: Here.
1723         
1724 2000-10-06  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1725
1726         * src/Makefile.am: Remove OPTIMIZE_CXXFLAGS, WARN_CXXFLAGS,
1727         CONFIG_CXXFLAGS from here, and move to...
1728         * src/Makefile.in: Regenerate.
1729         * Makefile.am: ... here. Clean.
1730         (OPTIMIZE_CXXFLAGS): Move up Makefile hierarchy to here.
1731         (WARN_CXXFLAGS): Same.
1732         (CONFIG_CXXFLAGS): Same.
1733         * Makefile.in: Regenerate.
1734         * libsupc++/Makefile.am: Use top-level OPTIMIZE_CXXFLAGS,
1735         WARN_CXXFLAGS, CONFIG_CXXFLAGS as part of local AM_CXXFLAGS.
1736         * libsupc++/Makefile.in: Regenerate.
1737                 
1738         Change math to libmath.
1739         * math: Move to libmath, delete.
1740         * libmath: New directory.
1741         * libmath/*: Populate.
1742         * src/Makefile.am (LIBMATH_INCLUDES): Change to libmath.
1743         (libstdc___la_LIBADD): Same.
1744         * src/Makefile.in: Regenerate.
1745         * configure.in: Add AC_OUTPUT for libmath/Makefile.
1746         * configure: Regenerate.
1747         * Makefile.am (SUBDIRS): Add libmath.
1748         * Makefile.in: Regenerate.
1749         * README (file): Change name.
1750         
1751 2000-10-06  Benjamin Kosnik  <bkoz@cygnus.com>
1752             Richard Henderson  <rth@cygnus.com>
1753             Alexandre Oliva  <aoliva@redhat.com>
1754         
1755         * libsupc++: New directory.
1756         * libsupc++/*: Populate.
1757         * libsupc++/Makefile.am (INCLUDES): Add -I../../gcc for
1758         eh-common.h, gansidecl.h.
1759         * configure.in: Add in libsupc++/Makefile to AC_OUTPUT.
1760         * configure: Regenerate.
1761         * Makefile.am (SUBDIRS): Add libsupc++.
1762         * Makefile.in: Regenerate.
1763         * src/Makefile.am (libstdc___la_LIBADD): Add in libsupc++.la
1764         * src/Makefile.in: Regenerate.
1765         * libio/Makefile.am: Remove extraneous, confusing bits.
1766         * libio/Makefile.in: Regenerate.
1767         
1768 2000-10-05  Brent Verner  <brent@rcfile.org>
1769
1770         * bits/istream.tcc [basic_istream::get(basic_streambuf&)]: Removed
1771         test for _M_gcount < in_avail(), as in_avail() only reports info
1772         for current buffer, causing method to return at end of buffer.
1773         * testsuite/27_io/istream_unformatted.cc [test07()]: New test.
1774         * testsuite/27_io/istream_unformatted-3.txt: New file.
1775         * testsuite/27_io/istream_unformatted-3.tst: New file.
1776
1777 2000-10-05  Benjamin Kosnik  <bkoz@fillmore.constant.com>
1778
1779         * README (file): Adjust directory structures.
1780         * mkcheck.in (INC_PATH): Adjust for header changes.
1781
1782 2000-10-05  Phil Edwards  <pme@sources.redhat.com>
1783
1784         * acinclude.m4 (GLIBCPP_CHECK_CTYPE):  Tweaks to message texts
1785           for public relations purposes.
1786         * aclocal.m4:  Regenerated.
1787         * configure:  Regenerated.
1788
1789         * docs/ext/howto.html:  Additional explanation about hashing.
1790
1791 2000-10-05  Benjamin Kosnik  <bkoz@cygnus.com>
1792
1793         * include: New directory.
1794         * include/backward: New directory.
1795         * include/bits: New directory.
1796         * include/ext: New directory.
1797         * include/std: New directory.
1798         * include/*/*: Populate.
1799
1800         * backwards: Move to include/backwards, delete.
1801         * bits: Move to include/bits, delete.
1802         * ext: Move to include/ext, delete.
1803         * std: Move to include/std, delete.
1804         
1805         * src/complex.cc: Adjust include of mathconf.
1806
1807         * mkc++config (BASE_H): Add include.
1808
1809         * src/Makefile.am: Support for topleve sources include directory.
1810         (INCLUDES): Add LIBMATH_INCLUDE.
1811         * src/Makefile.in: Regenerate.
1812         * math/Makefile.am (INCLUDES): Append /include.
1813         * math/Makefile.in: Regenerate.
1814         * libio/Makefile.am (INCLUDES): Add glibcpp_includedir.
1815         * libio/Makefile.in: Regenerate.
1816         
1817 2000-10-04  Benjamin Kosnik  <bkoz@gnu.org>
1818
1819         * libio/_G_config.h : Re-guard the __mbstate_t declaration.
1820
1821 2000-10-03  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1822
1823         * docs/22_locale/howto.html: Add link to proto-documentation on
1824         locales.
1825         * docs/documentation.html: Rename links for clarity.
1826
1827         * src/Makefile.am (headers): Remove unistd.h, wrap_unistd.h. Add
1828         fcntl.h, iolibio.h, libioP.h, pthread.h, iconv.h. 
1829         * src/Makefile.in: Regenerate.
1830         
1831 2000-10-02  Steven King  <sxking@uswest.net>
1832
1833         * mkcshadow: Fixed script to output proper include guard.
1834         * bits/char_traits.h: Cleaned up types in char_traits<char> functions.
1835         * libio/_G_config.h: Hacked to make work with shadow heraders.
1836         * shadow/*: Hacked to make shadow headers work. 
1837
1838 2000-10-02  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1839
1840         Self-compile with shadow headers.
1841         * acconfig.h (_GLIBCPP_USE_SHADOW_HEADERS): Define. Eventually,
1842         like _GLIBCPP_USE_NAMESPACES before it, this macro will die when
1843         it becomes the default way the library is built.
1844         * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): New macro.
1845         * config/gnu-linux/bits/ctype_base.h (ctype_base): Use it.
1846         * config/gnu-linux/ctype.cc (ctype): Use it.
1847         
1848         * src/localename.cc (locale::_Impl::_M_replace_categories): Remove
1849         call to assert.
1850         * src/locale.cc: Explicitly cast mbstate_t to void* in calls to
1851         memset. This should not be necessary, but an ambiguous overload
1852         with it in.
1853
1854         * shadow/bits/std_cwchar.h: Fix.
1855         * shadow/wchar.h: Fix.
1856
1857         * config/gnu-linux/bits/ctype_base.h (ctype_base): Inject ctype
1858         enums into namespace std:: for ctype_base enum. Other OS types
1859         will have to do this as well.
1860         * config/gnu-linux/ctype.cc (ctype): Inject ctype data into
1861         namespace std, in particular __ctype_toupper, __ctype_tolower,
1862         __ctype_b.
1863
1864         * shadow/iolibio.h: New file.
1865         * shadow/bits/wrap_iolibio.h: New file.
1866         * shadow/libioP.h: New file.
1867         * shadow/bits/wrap_libioP.h: New file.
1868         * shadow/bits/wrap_fcntl.h: New file.
1869         * shadow/fcntl.h: New file.
1870         * shadow/iconv.h: New file. Inject iconv names into the global
1871         namespace, unmangled for the moment.
1872         * shadow/bits/wrap_iconv.h: New file.
1873         * shadow/unistd.h: Remove. Useless.
1874         * shadow/bits/wrap_unistd.h: Remove.
1875         
1876         * src/Makefile.am: Take out machine-ansi.h, add fcntl.h unistd.h.
1877         * src/Makefile.in: Regenerate.
1878         
1879         * config/c_io_libio.h (_IO_codecvt): Change to normal C++ decl.
1880         
1881         * shadow/libio.h: Fix.
1882         * shadow/bits/wrap_libio.h: Fix.
1883
1884         * shadow/bits/std_clocale.h: Remove typedef struct construct,
1885         which will not compile.
1886         * shadow/bits/std_ctime.h: Same.
1887         
1888         * shadow/pthread.h: New file. Put pthreads types and functions
1889         into global scope, which is probably not the correct long-term
1890         solution but has to be done at the moment before libio wrappers
1891         can even be started.
1892         * shadow/bits/wrap_pthread.h: New file.
1893
1894         * bits/std_ios.h: Formatting tweak.
1895         * shadow/bits/std_cstdio.h: Format. Remove extraneous bits.
1896
1897         * acinclude.m4 (GLIBCPP_CHECK_COMPILER_FEATURES): Add -Werror to
1898         tests for compiler features.
1899         * aclocal.m4: Regenerate.
1900         * configure: Regenerate.
1901         
1902         * config/c_io_libio.cc: Remove fcntl.h include, as SEEK_SET
1903         redefined.
1904         * libio/libioP.h: Comment out fcntl.h include.
1905
1906         * shadow/math.h: Add in float and long declarations, as per ISO C9X.
1907
1908         * bits/c++config: Define _ISOC99_SOURCE.
1909
1910         * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Add -fno-builtins to
1911         CSHADOWFLAGS, as well as _ISOC99_SOURCE.
1912         * aclocal.m4: Regenerate.
1913         * configure: Regenerate.
1914         * src/Makefile.am (CSHADOW_INCLUDES): Enable, again.
1915         (CSHADOW_INCLUDES): Add -I$(top_srcdir)/std before shadow include dir.
1916         (CXXCOMPILE): Remove $(DEFS), which searches $(top_srcdir) before
1917         std or shadow directories.
1918         (LTCXXCOMPILE): Same.
1919         (INCLUDES): Add $(top_builddir) before $(top_srcdir).
1920         (AC_CXXFLAGS): Add CSHADOWFLAGS.
1921         * src/Makefile.in: Regenerate.
1922
1923         * src/complex.cc (FCT): Change ::name to name.
1924         * src/complexl.cc (FCT): Same. Use _GLIBCPP_USE_LONG_LONG here.
1925         * src/complexf.cc (FCT): Same.
1926
1927         * src/complexf.cc: Remove FCT define, as things are properly
1928         overloaded in the std namespace with the shadow headers.
1929         * src/complexl.cc: Same.
1930         * src/complex.cc: Same.
1931         
1932 2000-09-25  Phil Edwards  <pme@sources.redhat.com>
1933
1934         * docs/documentation.html:  Add link to...
1935         * docs/ext/howto.html:  ...this.  New dir/file, describing library
1936           extensions (both ours and SGI's).
1937         * docs/faq/index.html:  Small updates.
1938         * docs/faq/index.txt:  Regenerate.
1939
1940 2000-09-25 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
1941
1942         * bits/basic_file.h (_M_open_mode): Remove extra qualifier.
1943
1944 2000-09-25  Levente Farkas  <lfarkas@mindmaker.hu>
1945
1946         * ext/stl_hashtable.h (_M_copy_from): Change __copy to __local_copy.
1947         
1948 2000-09-19  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1949
1950         * src/localename.cc (locale::_Imp) : Remove typedefs.   
1951         * bits/localefwd.h (locale::locale(const locale& __other, _Facet*
1952         __f): Consistency check, call _Imp ctor with reference argument
1953         of 1.
1954         * bits/localefwd.h: Change _S_num_categories to
1955         _S_categories_num. Add new data member, _S_facets_num, which is
1956         the number of standard facets.
1957
1958 2000-09-19  Phil Edwards  <pme@sources.redhat.com>
1959
1960         * docs/21_strings/howto.html:  Fix editor lossage from last commit.
1961
1962 2000-09-19  Phil Edwards  <pme@sources.redhat.com>
1963
1964         * docs/thanks.html:  More thanks.
1965         * docs/18_support/howto.html:  Fix thinko.
1966         * docs/21_strings/howto.html:  Minor tweaks and updates to URLs.
1967           Redo the string transformation notes and link to...
1968         * docs/22_locale/howto.html:  ...here.
1969
1970 2000-09-18  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1971
1972         * src/locale-inst.cc: Add time_put_byname and
1973         time_get_byname instantiations.
1974         * bits/locale_facets.h: Correct default, private derivation to
1975         public derivation in _byname declarations.
1976         * src/locale.cc (locale::classic()): Simplify.
1977         * src/localename.cc (locale::_Impl:: _Impl(const _Impl& __other,
1978         const string& __name, category __cat, size_t __refs): Re-work for
1979         named locales.
1980         (_M_normalize_category_names): Remove.
1981
1982         * testsuite/22_locale/global_templates.cc (test01): Tweaks.
1983         * testsuite/22_locale/ctor_copy_dtor.cc (test01): More tests.
1984
1985 2000-09-18  Yuri V. Baskakov  <yuribsk@lab.sun.mcst.ru>
1986
1987         * bits/std_bitset.h (operator>>): Change to char_type.
1988
1989 2000-09-15  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1990
1991         * src/locale.cc (locale::locale(const char* __name)): Consolidate
1992         name setting. Add checks for NULL __name pointers. Remove calls to
1993         _S_initialize() as initial locale initialization can either be
1994         assumed, or needs to be made consistent throughout locale
1995         constructors.
1996         (locale::locale(const locale& __other, const char* __name,
1997         category __cat): Add checks for NULL name. Add checks for
1998         assignment to self.
1999         * src/localename.cc (locale::_Impl:: _Impl(const _Impl& __other,
2000         const string& __name, category __cat, size_t __refs)): Set correct
2001         name, has_name values.
2002         * testsuite/22_locale/ctor_copy_dtor.cc (test01): More tests.
2003         * docs/22_locale/locale.html: New file, more unfinished docs...
2004         
2005 2000-09-14  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2006
2007         * src/locale.cc (locale::name()): Implement.
2008         (_Impl(size_t __numfacets, size_t __refs, bool __namep = false,
2009         string __name = "*")): Change signature.
2010         (locale::classic): Initialize the "C" locale as a named locale.
2011         * bits/localefwd.h (locale): Change _M_num_references to
2012         _M_references. Eliminate _M_cached_name_ok. Rename _M_cached_name
2013         to _M_name.
2014         * bits/localefwd.h: Tweaks.
2015         * src/localename.cc: Tweaks.
2016         * testsuite/22_locale/ctor_copy_dtor.cc (test01): Add tests.
2017         (test01): Fix.
2018
2019         * bits/basic_string.h: Consistency check, change _M_state ->
2020         _M_references.
2021
2022 2000-09-14  Brendan Kehoe  <brendan@zen.org>
2023
2024         * bits/string.tcc (_Rep::_S_max_size): Use typename for its size_type
2025         return type.
2026
2027         * src/Makefile.an (headers): Also install backward/fstream.h.
2028         * src/Makefile.in: Regenerate.  
2029
2030         * bits/char_traits.h (char_traits<_CharT>::get_state,
2031         char_traits<char>::get_state, char_traits<wchar_t>::get_state): Pass
2032         argument in by reference, not by value. Uglify to _S_get_state.
2033         (char_traits<*>::__eos): Uglify to _S_eos.
2034         * bits/std_ostream.h (ends(basic_ostream<_CharT, _Traits>& __os)):
2035         Change __eos to _S_eos.
2036         
2037 2000-09-13  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2038
2039         * testsuite/22_locale/static_members.cc: New file.
2040         * testsuite/22_locale/ctor_copy_dtor.cc: New file.
2041         * src/locale.cc: Minor formatting tweaks.
2042
2043 2000-09-12  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2044
2045         * testsuite/22_locale/global_templates.cc (test01): Add negative
2046         tests for use_facet.
2047
2048         * bits/localefwd.h (locale::operator()): Minor tweaks.
2049         * bits/locale_facets.tcc (locale::operator()): Same.
2050         * testsuite/22_locale/operators.cc: New file.
2051
2052         * testsuite/22_locale/facet.cc (output_iterator): Remove
2053         gnu_input_iterator, gnu_output_iterator.
2054
2055 2000-09-11  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2056
2057         * acinclude.m4 (GLIBCPP_CHECK_GNU_MAKE): Remove test != "0". 
2058         * aclocal.m4: Regenerate.
2059         * configure: Regenerate.
2060
2061         * bits/c++config (__GLIBCPP__): Update, in the hopes of making a
2062         snapshot release soon.
2063         (_GNU_SOURCE): Define this in the header files, as ISO C99 support
2064         is pretty much assumed.
2065
2066         * testsuite/22_locale/global_templates.cc: New file. Add tests for
2067         use_facet and has_facet.
2068
2069         * bits/codecvt.h (codecvt<_InT, _ExT, __enc_traits>::do_out):
2070         Modify/correct iconv signatures for glibc2.2.
2071
2072 2000-09-10  Branko Cibej  <branko.cibej@hermes.si>
2073
2074         * acinclude.m4 (GLIBCPP_CHECK_GNU_MAKE): Replace "grep -q" with
2075           "grep -c".
2076
2077 2000-09-09  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2078
2079         * bits/localefwd.h (locale::_Impl): Scope out types to public.
2080         (locale): Make _Impl declaration public.
2081
2082 2000-09-08  Felix Natter  <fnatter@gmx.net>
2083
2084         * docs/17_intro/porting-howto.html:  New version.
2085
2086 2000-09-07  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2087
2088         * config/cpu/i386/bits/atomicity.h (__exchange_and_add): Change unused
2089         to __unused__.
2090         * config/cpu/ia64/bits/atomicity.h (__exchange_and_add): And here.
2091         * config/cpu/i486/bits/atomicity.h (__exchange_and_add): And here.
2092
2093 2000-09-07  Phil Edwards  <pme@sources.redhat.com>
2094
2095         Add bits for --enable-maintainer-mode:
2096         - turns on enable_debug
2097           (doing "--enable-maint --disable-debug" will DTRT)
2098         - turns on -Werror, now off by default
2099         * acinclude.m4: Add bits.
2100         * aclocal.m4: Regenerate.
2101         * configure.in: Add defaults for GLIBCPP_ENABLE_DEBUG.
2102         * configure: Regenerate.        
2103         
2104 2000-09-07  Benjamin Kosnik  <bkoz@cygnus.com>
2105
2106         * bits/std_cwctype.h: Remove yesterday's hacks.
2107
2108 2000-09-07  Brad Garcia  <bgarcia@laurelnetworks.com>
2109
2110         * bits/stl_tree.h: Make operators !=, == type safe for map, set.
2111         * testsuite/23_containers/set_operators.cc: New file. Should not
2112         compile.  
2113         * testsuite/23_containers/map_operators.cc: New file. Ditto.
2114         
2115 2000-09-06  Richard Henderson  <rth@cygnus.com>
2116             Benjamin Kosnik  <bkoz@cygnus.com>
2117
2118         * acinclude.m4 (GLIBCPP_CHECK_CPU): Add ia64 support.
2119         * aclocal.m4: Regenerate.
2120         * configure: Regenerate.
2121         * config/cpu/ia64: New directory.
2122         * config/cpu/ia64/bits: New directory.
2123         * config/cpu/ia64/bits/atomicity.h: New file.
2124         
2125 2000-09-06  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2126         
2127         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Force glibc_satisfactory
2128         to no, so that libstdc++-v3's libio will be built on glibc-2.2
2129         systems. 
2130         * aclocal.m4: Regenerate.
2131         * configure: Regenerate.
2132         * */Makefile.in: Regenerate.
2133
2134         * bits/std_cwctype.h: Put in temporary hack to work around -O2 +
2135         glibc 2.1.x unsigned errors. Or disable -Werror by default...
2136
2137         * testsuite/23_containers/vector_element_access.cc: New file.
2138         * bits/stl_config.h (__STL_THROW_RANGE_ERRORS): Define.
2139
2140 2000-09-06  Levente Farkas  <lfarkas@mindmaker.hu>
2141
2142         * bits/string.tcc: Fix up more parameter names.
2143
2144 2000-09-06  Alexandre Oliva  <aoliva@redhat.com>
2145
2146         * configure: Rebuilt with new libtool.m4.
2147
2148 2000-09-01  Benjamin Kosnik  <bkoz@cygnus.com>
2149
2150         * src/locale-inst.cc: Remove pre-instantiation of unicode
2151         codecvt types. Now unnecessary, as locale header now correct.
2152
2153 2000-08-31  Benjamin Kosnik  <bkoz@cygnus.com>
2154
2155         * bits/locale_facets.tcc (_S_build_float_format): Move ...      
2156         * src/locale.cc: Here.          
2157         * bits/locale_facets.tcc (num_get::_M_extract): Clean up generic
2158         definition. Move specialization to ...
2159         * src/locale.cc: Here.  
2160         * bits/locale_facets.tcc: Move _Format_cache specializations to ...
2161         * src/locale.cc: Here.
2162         * bits/locale_facets.tcc: Move use_facet<ctype> specializations to ...
2163         * src/locale.cc: Here.
2164
2165         * bits/std_locale.h: Note that locale_facets.tcc should be
2166         included here, for standards conformance. It may increase
2167         compile times though. For the time being, enable.
2168         * testsuite/22_locale/facet.cc: New file, some parts commented out
2169         for the time being.
2170
2171         * mkcheck.in: Append total time to test summary file.
2172
2173         * bits/sbuf_iter.h : Formatting tweaks.
2174
2175         Clean up static const data member definitions.
2176         * src/locale.cc: Add definitions for all missing locale,
2177         locale::_Imp, and locale::id static data members.
2178         (ctype<char>): Add table_size define.
2179         (money_base): Add _S_default_pattern, uglify.
2180         * bits/localefwd.h: Add definitions for static members of _Count_ones.
2181         * bits/locale_facets.h: Tweaks.
2182         * bits/locale_facets.tcc: Tweaks.       
2183         * bits/string.tcc: Add definition for npos.
2184         * bits/ios_base.h: Tweaks.
2185         * bits/ios_base.h (ios_base::Init::_M_ios_base_init): Change to
2186         _S_ios_base_init.
2187         * src/ios.cc: And here. Add _S_local_words definition.
2188         Add definitions for __ios_flags const static data.
2189         * src/codecvt.cc: Same for __enc_traits.
2190         * src/locale-inst.cc: Remove money_base data member definition
2191         here.
2192
2193 2000-08-30  Benjamin Kosnik  <bkoz@redhat.com>
2194
2195         * testsuite/22_locale/ctype_wchar_t_members.cc (test01): New file.
2196
2197         * docs/22_locale/codecvt.html: Re-number.
2198         * docs/22_locale/howto.html: Add entry for ctype
2199         documentation. Add entry for Nathan's introduction to locales
2200         paper.
2201         * docs/22_locale/ctype.html: New file. In progress...
2202
2203         * docs/22_locale/codecvt.html: Formatting cleanups.
2204         * src/locale.cc (ctype<wchar_t>::do_is): Fix thinko.
2205
2206 2000-08-30  Phil Edwards  <pme@sources.redhat.com>
2207
2208         * docs/22_locale/codecvt.html:  Behind-the-scenes ASCII->HTML
2209           tweaks for certain browsers.
2210
2211 2000-08-29  Benjamin Kosnik  <bkoz@redhat.com>
2212
2213         * bits/locale_facets.h (ctype<char>): Remove __table_type.
2214         Add include for bits/std_cwctype.h, for wctype_t.
2215         * src/locale.cc (ctype<wchar_t>): Implement.
2216         * config/gnu-linux/bits/ctype_base.h (ctype_base): Remove mask
2217         typedef, instead name enum.
2218         * config/gnu-linux/bits/ctype_specializations.h: Tweak.
2219         * config/gnu-linux/ctype.cc: Tweak.     
2220         * testsuite/22_locale/ctype.cc: Tweak.
2221         
2222         * bits/codecvt.h (__enc_traits): Uglify names.
2223         
2224 2000-08-28  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2225
2226         * docs/22_locale/codecvt.html: Add more bits, format. 
2227         * bits/codecvt.h: Add copy ctor, rename types.
2228         * testsuite/22_locale/codecvt_unicode_char.cc: Tweak.
2229         
2230         * libio/iofwide.c: Tweak.
2231         
2232 2000-08-28  Phil Edwards  <pme@sources.redhat.com>
2233
2234         * docs/configopts.html:  Mention new options.
2235         * docs/install.html:  Formatting changes for platform-specific
2236           pre-reqs, previously only Cygwin.
2237         * docs/mail.html:  Fix new link.
2238         * docs/thanks.html:  A couple more people.
2239         * docs/26_numerics/howto.html:  Fix typo.
2240
2241 2000-08-24  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2242
2243         * docs/22_locale/howto.html: Add notes on codecvt implementation.
2244         * docs/22_locale/codecvt.html: New file. In progress.
2245         
2246 2000-08-24  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2247
2248         * acconfig.h: Revert.
2249         * acinclude.m4: Revert.
2250         * libio/_G_config.h: Revert.
2251         * libio/libio.h: Revert.
2252         
2253 2000-08-23  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>      
2254
2255         * bits/codecvt.h: Tweaks.
2256         * testsuite/22_locale/codecvt_unicode_wchar_t.cc (test01): Fix up
2257         initial string literals for UCS4.
2258
2259 2000-08-23  Phil Edwards  <pme@sourceware.cygnus.com>
2260
2261         * acconfig.h:  _GLIBCPP_USING_THREADS and some workaround types added.
2262         * acinclude.m4:  New macro, GLIBCPP_ENABLE_WCHAR.  Set the threads
2263           definition as well, and some minor spelling/spacing fixes.  If
2264           building libio, check for certain typedefs.
2265         * libio/_G_config.h:  Wrap _IO_MTSAFE_IO in _GLIBCPP_USING_THREADS.
2266           Conditionally define _LARGEFILE64_SOURCE, otherwise the 64-bit types
2267           will never be there.
2268         * libio/libio.h:  In the null case, _IO_lock_t can't just be void.
2269         * src/string-inst.cc:  Use _GLIBCPP_USE_WCHAR_T.
2270
2271         * configure.in:  Update the cache a bit more often.
2272
2273         * mkcheck.in:  For check-install, also need to -I the testsuite dir.
2274
2275 2000-08-22  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2276
2277         * src/locale-inst.cc: Add codecvt<unicode_t, wchar_t,
2278         __enc_traits> instantiations for has_facet and use_facet.
2279         * testsuite/22_locale/codecvt_unicode_wchar_t.cc: New file, for
2280         testing two-byte unicode encodings converted to four-byte UCS4
2281         encodings.
2282
2283         * bits/codecvt.h (codecvt<__enc_traits>): Fix do_unshift.
2284         * testsuite/22_locale/codecvt_unicode_char.cc (test01): Add
2285         correct state/encoding information.
2286
2287         * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Add wcsrtombs,
2288         mbsrtowcs checks as codecvt<wchar_t, char, mbstate_t> needs them
2289         now.
2290         Add checks for langinfo.h, nl_langinfo function call.
2291         * libio/iofwide.c (_IO_fwide): Simplify, as nl_langinfo is assumed.
2292
2293 2000-08-22  Richard B. Kreckel  <Richard.Kreckel@Uni-Mainz.DE>
2294
2295         * config/cpu/alpha/bits/atomicity.h: Change __attribute__
2296         ((unused)) to __attribute__ ((__unused__)).
2297         * config/cpu/arm/bits/atomicity.h: Same.
2298         * config/cpu/generic/bits/atomicity.h: Same.
2299         * config/cpu/i386/bits/atomicity.h: Same.
2300         * config/cpu/i486/bits/atomicity.h: Same.
2301         * config/cpu/powerpc/bits/atomicity.h: Same.
2302         * config/cpu/sparc/sparc32/bits/atomicity.h: Same.
2303         * config/cpu/sparc/sparc64/bits/atomicity.h: Same.
2304
2305 2000-08-22  Levente Farkas  <lfarkas@mindmaker.hu>
2306
2307         * bits/basic_string.h: Fix up parameter names.
2308
2309 2000-08-22  Brent Verner <brent@rcfile.org>
2310
2311         * src/Makefile.am (INCLUDES): Put $(CSHADOW_INCLUDES) before
2312         $(top_srcdir)
2313         * src/Makefile.in: Regenerate.
2314         
2315 2000-08-21  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2316
2317         * bits/codecvt.h: Implement codecvt<wchar_t, char, mbstate_t>. Fix
2318         up __enc_traits template so as to be marginally useful.
2319         * src/codecvt.cc: And here.
2320         * bits/char_traits: Tweak.
2321         * bits/locale_facets.h: Tweak.
2322         * bits/locale_facets.tcc: Tweak.
2323         * bits/localefwd.h: Tweak.
2324         * src/locale-inst.cc: Add use_facet/has_facet instantiations here.
2325         * testsuite/22_locale/codecvt_wchar_t_cc.cc: New file.
2326         * testsuite/22_locale/codecvt_char_char.cc: New file.
2327         * testsuite/22_locale/codecvt_unicode_char.cc: New file.
2328         
2329 2000-08-21  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>
2330
2331         * bits/std_cmath.h (std::abs): Overload for int and long.
2332
2333 2000-08-20  Benjamin Kosnik  <bkoz@gnu.org>
2334
2335         * src/string-inst.cc: Tweak instantiations for new-gxx-abi.
2336
2337 2000-08-19  Gabriel Dos Reis  <gdr@codesourcery.com>
2338
2339         * bits/valarray_array.h (__valarray_min, __valarray_max): Fix
2340         thinko. Diagnostic messages really need to be improved for
2341         template argument deduction.
2342
2343 2000-08-18  Benjamin Kosnik  <bkoz@gnu.org>
2344
2345         * bits/valarray_meta.h: Fix typos...
2346
2347 2000-08-18  Gabriel Dos Reis  <gdr@codesourcery.com>
2348
2349         * bits/valarray_meta.h (_Expr<>::shift, _Expr::cshift,
2350         _Expr<>::apply): Implement. 
2351
2352 2000-08-18  Gabriel Dos Reis  <gdr@codesourcery.com>
2353
2354         * bits/valarray_meta.h (_Expr<>::min, _Expr<>::max): Implement.
2355
2356         * bits/valarray_array.h (__valarray_min, __valarray_max): New
2357         function. 
2358
2359 2000-08-17  Mark Mitchell  <mark@codesourcery.com>
2360
2361         * bits/localefwd.h (std::locale): Use explicit `class' specified
2362         when declaring friends.
2363         * bits/std_fstream.h (std::basic_filebuf): Likewise.
2364
2365 2000-08-16  Alexandre Oliva  <aoliva@redhat.com>
2366
2367         * src/Makefile.am (libstdc++.INC): Renamed from INCLUDES.
2368         * src/Makefile.in: Regenerate.
2369
2370 2000-08-15  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2371
2372         * bits/codecvt.h: New file.
2373         * src/codecvt.cc: New file.
2374         * bits/std_locale.h: Add include here.
2375         * src/Makefile.am (headers): Add codecvt.h
2376         (sources): Add codecvt.cc.
2377         * src/Makefile.in: Regenerate.
2378         * bits/locale_facets.h (codecvt): Re-implement. Rename _Codecvt to
2379         __codecvt_abstract_base in an attempt to point some light this way...
2380         Move __enc_traits and codecvt bits to codecvt.h.
2381         * src/locale-inst.cc: Remove codecvt<wchar_t, wchar_t, mbstate_t>
2382         explicit instantiation. Separate out codecvt instantations, simplify.
2383         * src/locale.cc: Move codecvt bits to codecvt.cc
2384
2385 2000-08-15  Alexandre Oliva  <aoliva@redhat.com>
2386
2387         * src/Makefile.am (INCLUDES): New target file, with all -I flags.
2388         * src/Makefile.in: Regenerate.
2389
2390 2000-08-14  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2391
2392         C/C++ io merge/sync.
2393         * libio/fileops.c
2394         * libio/genops.c
2395         * libio/iofclose.c
2396         * libio/iofopen.c
2397         * libio/iofwide.c
2398         * libio/libio.h
2399         * libio/libioP.h
2400         * libio/stdio.c
2401         * libio/wfileops.c
2402         * libio/wgenops.c
2403         * config/c_io_libio.cc (__basic_file): Add hacky casts to
2404         ((struct _IO_FILE_plus *) in ctors.
2405         (__basic_file<wchar_t>): Adjust _wide_data->_codecvt to just _codecvt.
2406         * libio/Makefile.am: Fix copyright. Remove cleanup.c.
2407         * libio/cleanup.c: Remove.
2408         * libio/filedoalloc.c (_IO_file_doallocate): Don't call
2409         _IO_cleanup_registration_needed, even if not libc.
2410                 
2411         * testsuite/27_io/stringstream.cc (test02): Fix.
2412
2413 2000-08-14  Brent Verner <brent@rcfile.org>
2414
2415         * testsuite/debug_assert.h: new file
2416         * testsuite/*/*.cc: s/test\s*&=([^;]+);/VERIFY($1);/g
2417         changed conditional #include <c?assert.?h?> to
2418         unconditional #include <debug_assert.h>
2419         * mkcheck.in: added $SRC_DIR/testsuite to include search path
2420         for testsuite compile command.
2421
2422 2000-08-14  Levente Farkas  <lfarkas@mindmaker.hu>
2423
2424         * bits/std_fstream.h: Remove duplicate typdefs for ofstream and
2425         wofstream, filebuf, wfilebuf, fstream, wfstream.
2426         * bits/std_streambuf.h: Same for streambuf, wstreambuf.
2427         * bits/std_sstream.h: Same for stringstream and wstringstream.
2428         Same for stringbuf, wstringbuf, istringstream, wistringstream,
2429         ostringstream, wostringstream.
2430         
2431         * testsuite/26_numerics/valarray.cc: Add test.
2432
2433 2000-08-14  Zack Weinberg  <zack@wolery.cumb.org>
2434
2435         * configure: Regenerate after change to ../libtool.m4.
2436
2437 2000-08-10  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2438
2439         * bits/locale_facets.tcc: Formatting tweaks.
2440         * bits/locale_facets.h (__enc_traits): Start integrating this
2441         into codecvt, ctype. Formatting tweaks.
2442
2443 2000-08-09  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2444
2445         Preliminary wchar_t implementation, with trivial encodings.
2446         * docs/configopts.html: Add bits about canonical configure option
2447         checking.
2448
2449         * testsuite/27_io/iostream_objects.cc: Replace this file (which
2450         has newly-declared-illegal mixing of wide/narrow stdstreams) with...
2451         * testsuite/27_io/narrow_stream_objects.cc: New file.
2452         * testsuite/27_io/wide_stream_objects.cc: New file.
2453
2454         * bits/fstream.tcc (underflow): Temporarily hack a solution
2455         together that writes from the external file to the internal
2456         buffers. This removes codecvt from the loop, and is incorrect.
2457         (_M_really_overflow): Same here.
2458
2459         * testsuite/21_strings/inserters_extractors.cc (test05): Tweaks.
2460         
2461 2000-08-08  Benjamin Kosnik  <bkoz@cygnus.com>
2462             Ulrich Drepper  <drepper@cygnus.com>
2463
2464         * config/c_io_libio.h: Tweak.
2465         * config/c_io_libio_codecvt.c: New file.
2466         * libio/Makefile.am: Add c_codecvt.c.
2467         * libio/Makefile.in: Regenerate.
2468         * libio/genops.c (_IO_unbuffer_write): Don't call _IO_SETBUF if the
2469         stream is not orientated.
2470
2471         * acinclude.m4: Add config/c_io_libio_codecvt.c dummy file, until
2472         encoding gets fleshed out.
2473
2474         * bits/basic_file.h: Add specialization declarations.
2475         * config/c_io_libio.cc: Add specializations for pbackfail, uflow.
2476
2477         * config/c_io_libio.h: Add __c_wfile_type.
2478         * bits/basic_file.h: Add _M_wfile.
2479
2480         * config/c_io_libio.cc (__basic_file<char>): Initialize the
2481         streams without setting the orientation of the underlying FILE to
2482         either wide or narrow.
2483         (__basic_file<wchar_t>)): Enable tricky wchar_t io bits.
2484
2485 2000-08-07  Felix Natter  <fnatter@gmx.net>
2486
2487         * docs/17_intro/porting-howto.html:  New version.
2488
2489 2000-08-03  Mark Mitchell  <mark@codesourcery.com>
2490
2491         * bits/locale_facets.h (ctype::ctype): Don't name unused
2492         parameters.
2493
2494 2000-08-01  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2495
2496         * docs/install.html: Edit bits about requiring a special version
2497         of the autotools.
2498
2499 2000-07-31  Benjamin Kosnik  <bkoz@cygnus.com>
2500
2501         * libio/fileops.cc: Update to current glibc sources.
2502         * libio/genops.c: Same.
2503         * libio/iofwide.c: Same.
2504         * libio/libio.h: Same.
2505         * libio/libioP.h: Same.
2506         * libio/wfiledoalloc.c: Same.
2507         * libio/wgenops.c: Same.
2508         
2509 2000-07-28  Alexandre Oliva  <aoliva@redhat.com>
2510
2511         * acinclude.m4: Include ../libtool.m4.
2512         * aclocal.m4, configure: Rebuilt.
2513         
2514 2000-07-26  Phil Edwards  <pme@sourceware.cygnus.com>
2515
2516         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES):  Test for GNU ld
2517           before trying to use any of its options.
2518           (CHECK_MATH_DECL*,CHECK_BUILTIN_MATH_DECL*):  Cache tests.
2519         * aclocal.m4:  Regenerate.
2520         * configure.in:  Having found GNU make, name it.
2521         * configure:  Regenerate.
2522         * docs/install.html:  Mention possible problems with caching.
2523         * src/Makefile.am (CXXLINK):  Use new OPT_LDFLAGS.
2524         * src/Makefile.in:  Regenerate.
2525         * libio/Makefile.in:  Regenerate.
2526         * math/Makefile.in:  Regenerate.
2527         * Makefile.in:  Regenerate.
2528
2529 2000-07-26  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2530
2531         * src/misc-inst.cc (std): Remove instantiations.
2532
2533         * acinclude.m4: Add forward-looking bits for autoconf.
2534         * aclocal.m4: Regenerate.
2535
2536         * bits/ostream.tcc (ostream::operator<<): Fix const char* case.
2537
2538 2000-07-25  Benjamin Kosnik  <bkoz@gnu.org>
2539
2540         * configure.in: Change AM_PROG_LIBTOOL to AC_PROG_LIBTOOL. Change
2541         it back for current versions of maintainer-tools...
2542         * acinclude.m4: Some cleanups...
2543         * aclocal: Regenerated.
2544         * configure: Regenerated.
2545         
2546         * src/Makefile.am (CXXLINK): Add -Wl,-01 to the link line for
2547         optimizing/adapting the hash table using GNU ld.
2548         * src/Makefile.in: Regenerate.
2549         
2550 2000-07-24  H.J. Lu  <hjl@gnu.org>
2551
2552         * src/Makefile.am (LIBIO_INCLUDES): Set to -I$(top_srcdir)/libio
2553         even if GLIBCPP_NEED_LIBIO is false. The installed glibc header
2554         files don't include private libio header files needed by
2555         libstdc++ v3.
2556         * src/Makefile.in: Rebuild.
2557
2558 2000-07-24  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2559
2560         * bits/std_fstream.h: Parameterize __basic_file.
2561         * config/c_io_libio.cc: Add wchar_t methods for parameterization.
2562         * bits/basic_file.h: Same here.
2563
2564         * bits/istream.tcc (getline): Tweaks.
2565
2566         * bits/fstream.tcc: Shorten __retval to __ret.
2567         * bits/ostream.tcc: Same.
2568         * bits/sbuf_iter.h: Same.
2569         * bits/sstream.tcc: Same.
2570         * bits/streambuf.tcc: Same.
2571         * bits/std_fstream.h: Same.
2572         * src/string-inst.cc: Same.
2573         * src/ios.cc: Same.
2574         * config/c_io_libio.cc: Same.
2575         * bits/string.tcc: Same.
2576         * bits/std_streambuf.h: Same.
2577
2578 2000-07-23  Brent Verner <brent@rcfile.org>
2579
2580         * bits/istream.tcc: istream::getline(char_type*, streamsize,
2581         char_type) make compliant
2582         * testsuite/27_io/istream_unformatted.cc: test for compliant behavior
2583
2584 2000-07-23  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2585
2586         * acinclude.m4 (enable_cshadow_headers): Fix problems with blddir
2587         and srcdir used to define CSHADOW_INCLUDES..
2588
2589         * configure.in: For consistency, change .sanity_warned to
2590         stamp-sanity-warned.
2591
2592         * acinclude.m4: Tweak formatting.
2593         * Makefile.am (check): Call mkcheck with full pathname for build
2594         directory...
2595         (check-install): And here.
2596         * Makefile.in: Regenerate.
2597         
2598 2000-07-22  Gabriel Dos Reis  <gdr@codesourcery.com>
2599
2600         Line up with libstdc++-v2 version of valarray.
2601         * bits/valarray_array.h (__valarray_product): Make inline.
2602         * src/valarray-inst.cc (__valarray_product): Remove explicit
2603         instantiation. 
2604
2605 2000-07-21  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2606
2607         * src/stl-inst.cc: Change __sink_unused_warning to unsigned int
2608         for alpha.
2609
2610         * testsuite/26_numerics/complex_inserters_extractors.cc (testall):
2611         Change return type to void.
2612         * testsuite/25_algorithms/lower_bound.cc: Add return values.
2613         * testsuite/17_intro/header_ciso646.cc: Modify.
2614         * bits/locale_facets.h: Add return values for the generic cases.
2615
2616 2000-07-21  H.J. Lu  (hjl@gnu.org)
2617
2618         * acinclude.m4: Include <features.h> for glibc testing.
2619         * aclocal.m4: Likewise.
2620
2621         * configure: Rebuild.
2622
2623 2000-07-20  H.J. Lu  (hjl@gnu.org)
2624
2625         * acinclude.m4: Change "#pragma system_header" to
2626         "#pragma GCC system_header".
2627         * aclocal.m4: Likewise.
2628         * bits/std_cmath.h: Likewise.
2629         * bits/std_cassert.h: Likewise.
2630         * bits/std_cctype.h: Likewise.
2631         * bits/std_cerrno.h: Likewise.
2632         * bits/std_cfloat.h: Likewise.
2633         * bits/std_climits.h: Likewise.
2634         * bits/std_clocale.h: Likewise.
2635         * bits/std_cwchar.h: Likewise.
2636         * bits/std_csetjmp.h: Likewise.
2637         * bits/std_csignal.h: Likewise.
2638         * bits/std_cstdarg.h: Likewise.
2639         * bits/std_cstddef.h: Likewise.
2640         * bits/std_cstdio.h: Likewise.
2641         * bits/std_cstdlib.h: Likewise.
2642         * bits/std_cstring.h: Likewise.
2643         * bits/std_ctime.h: Likewise.
2644         * bits/std_cwctype.h: Likewise.
2645         * bits/std_exception.h: Likewise.
2646         * bits/std_new.h: Likewise.
2647         * bits/std_typeinfo.h: Likewise.
2648         * shadow/bits/std_cassert.h: Likewise.
2649         * shadow/bits/std_cctype.h: Likewise.
2650         * shadow/bits/std_cerrno.h: Likewise.
2651         * shadow/bits/std_cfloat.h: Likewise.
2652         * shadow/bits/std_climits.h: Likewise.
2653         * shadow/bits/std_clocale.h: Likewise.
2654         * shadow/bits/std_cmath.h: Likewise.
2655         * shadow/bits/std_csetjmp.h: Likewise.
2656         * shadow/bits/std_csignal.h: Likewise.
2657         * shadow/bits/std_cstdarg.h: Likewise.
2658         * shadow/bits/std_cstddef.h: Likewise.
2659         * shadow/bits/std_cstdio.h: Likewise.
2660         * shadow/bits/std_cstdlib.h: Likewise.
2661         * shadow/bits/std_cstring.h: Likewise.
2662         * shadow/bits/std_ctime.h: Likewise.
2663         * shadow/bits/std_cwchar.h: Likewise.
2664         * shadow/bits/std_cwctype.h: Likewise.
2665         * shadow/bits/wrap_libio.h: Likewise.
2666         * shadow/bits/wrap_unistd.h: Likewise.
2667         * shadow/sys/cdefs.h: Likewise.
2668
2669         * configure: Rebuild.
2670
2671 2000-07-20  Jakub Jelinek  <jakub@redhat.com>
2672
2673         * config/cpu/sparc/sparc64/bits/atomicity.h (__exchange_and_add):
2674         Use extended word instructions to match 64bit _Atomic_word.
2675         (__atomic_add): Likewise.
2676         * math/clog10l.c (clog10l): Use M_PIl if defined.
2677         * math/c_logl.c (c_logl): Likewise.
2678         * math/signbitl.c (__signbitl): Adapt for IEEE quad long doubles.
2679         * math/mathconf.h (ieee_quad_double_shape_type): New type.
2680         (GET_LDOUBLE_MSW64): New define.
2681
2682 2000-07-20  Benjamin Kosnik  <bkoz@cygnus.com>
2683
2684         * bits/std_streambuf.h: Add bits for pback buffers here, so that
2685         in_avail, etc can use them.
2686         * bits/std_fstream.h: Ditto.
2687         * bits/fstream.tcc: Ditto.
2688         * testsuite/27_io/filebuf.cc: Tweaks.
2689         * testsuite/27_io/filebuf-3.tst: Correct for pbackfail bits.
2690
2691 2000-07-19  Benjamin Kosnik  <bkoz@cygnus.com>
2692
2693         * src/localename.cc: Same.
2694         * src/locale.cc: Same.
2695         * bits/localefwd.h: _M_init_facet to _M_facet_init.
2696
2697         * bits/locale_facets.h: _M_init_boolnames to _M_boolnames_init.
2698
2699         * bits/std_sstream.h: Change _M_init_stringbuf to _M_stringbuf_init.
2700
2701         * bits/fstream.tcc: Change _M_init_filebuf to _M_filebuf_init.
2702         * bits/std_fstream.h: Same.
2703
2704         * bits/basic_string.h: Tweaks.
2705         
2706 2000-07-19  Phil Edwards  <pme@sourceware.cygnus.com>
2707
2708         * docs/18_support/howto.html:  Update.
2709
2710 2000-07-19  Benjamin Kosnik  <bkoz@milou.soma.redhat.com>
2711
2712         Internal consistency checks.....
2713         * bits/ios_base.h: Change _M_locale_ios to _M_ios_locale.
2714         * src/ios.cc: Same.
2715         
2716         * bits/basic_ios.h: Change _M_fctype_ios to _M_ios_fctype.
2717         * bits/basic_ios.tcc: Same.
2718         
2719         * bits/std_streambuf.h: Change _M_locale_buf to _M_buf_locale.
2720         Change _M_fctype_buf to _M_buf_fctype.
2721         * bits/fstream.tcc: Same.
2722
2723         * bits/std_streambuf.h: Change _M_buf_bump to _M_out_cur_move.
2724         Change _M_locale_set to _M_buf_locale_init.
2725         * bits/streambuf.tcc: Same.
2726         * bits/sstream.tcc: Same.
2727         * bits/fstream.tcc: Same.
2728
2729         * bits/std_streambuf.h: Make typedefs consistent.
2730         (_M_buf_bump): Be more careful with input sequence.
2731
2732         * bits/std_sstream.h: Same.
2733         * bits/std_fstream.h: Same.
2734
2735 2000-07-18  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2736
2737         * acinclude.m4: Tweaks.
2738         * config/c_io_libio.cc: Tweaks.
2739         * bits/sstream.tcc (stringbuf::pbackfail): Simplify.
2740         * libio/_G_config.h: Don't define _G_HAVE_ST_BLKSIZE.
2741         * libio/[iofwide.c, wfiledoalloc.c, wfiteopos.c, wgenops.c]: New files.
2742         * libio/iofclose.c iofopen.c, stdio.c: New files.
2743         * libio/Makefile.am: Add files, add flags, etc.
2744         * src/Makefile.am (sources): Add filebuf.cc.
2745         * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT):
2746         (GLIBCPP_ENABLE_CSTDIO): Versioning testing, etc etc.
2747
2748 2000-07-17  Phil Edwards  <pme@sourceware.cygnus.com>
2749
2750         * acinclude.m4:  Import CHECK_GNU_MAKE from autoconf macro archive.
2751         * configure.in:  Use it.  Also print reminders one time.
2752         * aclocal.m4:  Regenerate.
2753         * configure:  Regenerate.
2754
2755 2000-07-15  Gabriel Dos Reis  <gdr@codesourcery.com>
2756
2757         * bits/valarray_array.h (__valarray_get_storage): New function.
2758         (_Array<>::Array): Use it.
2759         * bits/std_valarray.h (valarray<>::valarray): Likewise.
2760         (valarray<>::resize): Likewise.  Tweak.
2761         * src/valarray-inst.cc (__valarray_product): Tweak.
2762
2763 2000-07-11  Phil Edwards  <pme@sourceware.cygnus.com>
2764
2765         * docs:  Update sourceware->sources in every HTML file.  Minor updates.
2766
2767 2000-07-07  Benjamin Kosnik  <bkoz@soma.redhat.com>
2768
2769         Clean up configure/build longstanding issues.
2770         * src/Makefile.am (AC_CXXFLAGS): Don't set @SECTION_LDFLAGS@ here.
2771         (CXXLINK): Add here, instead.
2772
2773         * Makefile.am (check-install): Make sure mkcheck has execute privs.
2774         (check): Same here.
2775         * configure.in (AC_OUTPUT_COMMANDS): Remove hacks here.
2776
2777         * configure.in (AC_OUTPUT_COMMANDS): Link c_io_libio.h and
2778         c_io_libio.cc instead of copying.
2779         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Do link here.
2780
2781         * configure.in (AC_OUTPUT_COMMANDS): Link $THREADS.h and
2782         c++threads.h instead of copying.
2783         * acinclude.m4 (GLIBCPP_ENABLE_THREADS): Do link here.
2784         Tweaks.
2785         
2786         * config/c_io_libio.cc (__basic_file::_M_open_mode): Consolidate.
2787         * bits/basic_file.h: Declare.
2788
2789         * mkcheck.in (TESTS_FILE): Use -v instead of --version.
2790
2791 2000-07-07   brent verner  <brent@rcfile.org> 
2792
2793         * testsuite/27_io/istream_unformatted.cc (test05): New test.
2794
2795 2000-07-07  Benjamin Kosnik  <bkoz@gnu.org>
2796
2797         * bits/istream.tcc (istream::getline): Minor tweaks.
2798
2799 2000-07-07  Phil Edwards  <pme@sourceware.cygnus.com>
2800
2801         * docs/download.html:  Mention gcc_update.
2802         * docs/configopts.html:  Minor updates.
2803         * docs/gccrebuild.html:  Ditto.
2804         * docs/18_support/howto.html:  More tips, explanations, and reminders.
2805         * docs/19_diagnostics/howto.html:  Ditto.
2806         * docs/21_strings/howto.html:  Ditto.
2807         * docs/24_iterators/howto.html:  Ditto.
2808         * docs/25_algorithms/howto.html:  Ditto.
2809         * docs/26_numerics/howto.html:  Ditto.
2810
2811 2000-07-05  brent verner  <brent@rcfile.org> 
2812
2813         * testsuite/27_io/ifstream_members.cc (test01): Add tests.
2814         * testsuite/27_io/ofstream_members.cc (test01): Add tests.
2815         * config/c_io_libio.cc (__basic_file::open): Unset
2816         ~_IO_DELETE_DONT_CLOSE.
2817
2818 2000-07-05  Zack Weinberg  <zack@wolery.cumb.org>
2819         
2820         * bits/gslice_array.h, bits/indirect_array.h, bits/mask_array.h,
2821         bits/slice_array.h, bits/std_valarray.h, bits/valarray_meta.h:
2822         Do not paste anything after 'operator' keyword.
2823
2824 2000-07-03  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2825
2826         * bits/std_memory.h: Revert.
2827
2828 2000-07-03  Brendan Kehoe  <brendan@zen.org>
2829
2830         * bits/std_complex.h: Fix parens. Format.
2831         
2832 2000-07-03  scott snyder  <snyder@fnal.gov>
2833
2834         * bits/locale_facets.tcc (_M_extract): Only figure out the base
2835         from the input if base == 0.
2836         * testsuite/27_io/istream_extractor_arith.cc: Test reading a
2837         number with a leading `0' in hex mode.
2838
2839         * shadow/bits/std_cmath.h: Fix typo in _GLIBCPP_HAVE_CEILL test.
2840
2841         * mkinclosure: Change `==' to `=' in test.
2842
2843 2000-07-03  Chip Salzenberg  <chip@valinux.com>
2844
2845         * src/Makefile.am (libio_headers): _G_config.h is found in srcdir,
2846         not builddir.
2847         * src/Makefile.in: Regenerate.
2848
2849 2000-07-01  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2850             Ulrich Drepper  <drepper@purist.soma.redhat.com>
2851
2852         Sync libio to glibc-2.2 current CVS. 
2853         * libio/_G_config.h: New file.
2854         * libio/wfileops.c: New file.
2855         * libio/wfiledoalloc.c: New file.
2856         * libio/wgenops.c: New file.
2857         * libio/iofwide.c: New file.
2858         * libio/Makefile.am: Tweaks.
2859         * libio/Makefile.in: Regenerate.
2860         * libio/gen-params: Remove. Generic replacement for this yet undone.
2861         * libio/[filedoalloc.c, fileops.c, genops.c, iolibio.h, libio.h,
2862         libioP.h, stdfiles.c]: Update.
2863         * config/c_io_libio.cc: Tweaks.
2864         * acinclude.m4: Complete hacks to test wide io.
2865         * aclocal.m4: Regenerate.
2866         * configure: Regenerate.
2867         * src/Makefile.am: Update.
2868         * src/Makefile.in: Regenerate.
2869
2870         * math/cargl.c: Remove underscores.
2871         
2872         * bits/locale_facets.h: Tweaks. Start adding iconv details
2873         and notes.
2874         * bits/locale_facets.tcc: Tweaks.
2875         * bits/std_cwchar.h: Tweaks.
2876         
2877 2000-06-29  scott snyder  <snyder@fnal.gov>
2878
2879         * bits/concept_checks.h
2880         (__less_then_comparable_requirement_violation): Only check for <.
2881         * testsuite/25_algorithms/lower_bound.cc: New file.
2882         
2883 2000-06-29  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2884
2885         * testsuite/27_io/ostream_manip.cc (test02): Add tests.
2886         * bits/ostream.tcc: Tweak.
2887         * bits/std_fstream.h (basic_filebuf::setbuf): Reset
2888         _M_buf_size_opt too.
2889         * bits/std_streambuf.h (basic_streambuf::~basic_streambuf): Zero
2890         out _M_buf_size_opt.
2891         * bits/std_sstream.h (basic_stringbuf::_M_init_stringbuf): Set
2892         _M_buf_size_opt out here.
2893         * bits/char_traits.h (char_traits::eos): Non standard member
2894         function, uglify to __eos. Return char_type().
2895         * bits/std_ostream.h: Change.
2896
2897         * testsuite/27_io/ostream_seeks.cc: New file.
2898         * testsuite/27_io/ostream_seeks-1.tst: New file.
2899         * testsuite/27_io/istream_unformatted.cc (main): Move test04 and
2900         test05 to...
2901         * testsuite/27_io/istream_seeks.cc: New file.
2902
2903 2000-06-29  Branko Cibej  <branko.cibej@hermes.si>
2904
2905         * bits/std_memory.h (auto_ptr_ref): Reworked and defined only if
2906         _GLIBCPP_RESOLVE_LIB_DEFECTS.
2907         (auto_ptr): _M_ptr changed to void*.
2908         (suto_ptr::get): Cast _M_ptr to element type.
2909         (auto_ptr::auto_ptr(auto_ptr<Tp1>)): Test implicit convetsion.
2910         (auto_ptr::~auto_ptr): Use this->get() instead of _M_ptr.
2911         (auto_ptr::operator*): Likewise.
2912         (auto_ptr::operator->): Likewise.
2913         (auto_ptr::release): Likewise.
2914         (auto_ptr::reset): Likewise.
2915         (auto_ptr::auto_ptr(auto_ptr_ref)): Initialize from __ref._M_release.
2916         (auto_ptr::operator auto_ptr_rev<_Tp1>): Updated.
2917         Define nested auto_ptr_ref unless _GLIBCPP_RESOLVE_LIB_DEFECTS.
2918         Define operator=(auto_ptr_ref) if _GLIBCPP_RESOLVE_LIB_DEFECTS.
2919
2920 2000-06-28  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2921
2922         * testsuite/27_io/filebuf.cc: Tweak.
2923         * testsuite/27_io/filebuf_members.cc (test_01): Fix.
2924         * config/c_io_libio.cc (__basic_file::~__basic_file): Match libio
2925         filebuf dtor.
2926         (__basic_file::basic_file): Clean, add calls similar to
2927         _IO_file_attach.
2928         (__basic_file::open): Clean.
2929         (__basic_file::sys_open): Clean.
2930
2931         * bits/std_fstream.h: Revert.
2932         * bits/fstream.tcc (filebuf::close()): Revert.
2933         (filebuf::basic_filebuf()): Revert.
2934
2935 2000-06-27  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2936
2937         Update to SGI STL 3.3
2938         * ext/hash_map, ext/hash_set, ext/slist, ext/stl_bvector.h,
2939         ext/stl_rope.h, ext/ropeimpl.h: Update.
2940         * bits/std_bitset.h, bits/std_map, bits/std_memory.h,
2941         bits/stl_algo.h, bits/stl_algobase.h, bits/stl_alloc.h,
2942         bits/stl_config.h, bits/stl_construct.h, bits/stl_deque.h,
2943         bits/stl_function.h, bits/stl_heap.h, bits/stl_iterator.h,
2944         bits/stl_iterator_base.h, bits/stl_list.h, bits/stl_map.h,
2945         bits/stl_multimap.h, bits/stl_multiset.h, bits/stl_numeric.h,
2946         bits/stl_queue.h, bits/stl_set.h, bits/stl_stack.h,
2947         bits/stl_string_fwd.h, bits/stl_threads.h, bits/stl_three.h,
2948         bits/stl_uninitialized.h, bits/stl_vectory.h: Update.
2949
2950         * src/Makefile.am (headers): Add new files.
2951         * src/Makefile.in: Regenerate.
2952         * src/stl-inst.cc (std): Add instantiation for __sink_unused_warning.
2953         * bits/concept_checks.h: New file.
2954         * bits/container_concepts.h: New file.
2955         * bits/sequence_concepts.h: New file.
2956         
2957 2000-06-27  H.J. Lu  <hjl@gnu.org>
2958             Loren J. Rittle  <ljrittle@acm.org>
2959
2960         * mkcheck.in: Add support to print standard flags needed to
2961         test g++ in build tree.  Enhance command line error checking.
2962
2963 2000-06-27  Phil Edwards  <pme@sourceware.cygnus.com>
2964
2965         * docs/install.html:  Fix minor typo as reported.
2966
2967 2000-06-26  Brent Verner <brent@rcfile.org>
2968
2969         * bits/string.tcc (string::rfind): Fix.
2970         * testsuite/21_strings/rfind.cc: New file.
2971         
2972 2000-06-26  Anthony Williams  <anthony@anthonyw.cjb.net>
2973
2974         * testsuite/21_strings/ctor_copy_dtor.cc: Fixed logic error.
2975         
2976 2000-06-26  Branko Cibej  <branko.cibej@hermes.si>
2977
2978         * testsuite/27_io/filebuf_members.cc (test_01): Fixed typos.
2979
2980         * mkcheck.in: Make the *.txt and *.tst files writable after
2981           copying them to $TEST_DIR.
2982
2983         * testsuite/27_io/ostream_inserter_arith.cc: Renamed
2984           __TEST_NUMPUT_VERBOSE to TEST_NUMPUT_VERBOSE.  Define
2985           TEST_NUMPUT_VERBOSE only if DEBUG_ASSERT.
2986         
2987 2000-06-23  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2988
2989         * bits/fstream.tcc (basic_filebuf::basic_filebuf(fd)): Use it.
2990         (basic_filebuf::close): Use it.
2991         * bits/std_fstream.h (basic_filebuf): Remove default arguments for
2992         filebuf ctor.
2993         (basic_filebuf): Add _M_fileno_based data member.
2994         As reported by brent verner <brent@rcfile.org> 
2995         * testsuite/27_io/filebuf_members.cc: New file.
2996         * testsuite/27_io/filebuf_members-1.tst: New file.
2997
2998         * bits/std_fstream.h: Formatting tweaks.
2999         * testsuite/27_io/ofstream_members.cc: New file.
3000         * testsuite/27_io/ofstream_members-1.tst: New file.
3001         * testsuite/27_io/ifstream_members.cc: New file.
3002         * testsuite/27_io/ifstream_members-1.tst: New file.
3003
3004 2000-06-23  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3005             Ulrich Drepper  <drepper@cygnus.com>
3006         
3007         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Add -D_GNU_SOURCE, so
3008         that all the freaky stuff like sincos will be around...
3009
3010 2000-06-22  Branko Cibej  <branko.cibej@hermes.si>
3011
3012         * Makefile.am (AM_MAKEFLAGS): Added WERROR to list of flags.
3013
3014 2000-06-22 Steven King <sxking@uswest.net>
3015
3016         * acinclude.m4: Check for sinl, _sinl using 1 parameter.
3017
3018 2000-06-22  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3019
3020         * acinclude.m4 (GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT): Redo. Use the
3021         same approach as GLIBCPP_CHECK_MATH_SUPPORT, only don't try to
3022         link against libm and don't use -fno-builtins...
3023         * math/mathconf.h: Change up builtin macros to new schema.
3024         * bits/std_cmath.h: And here. Wheee!
3025         * shadow/bits/std_cmath.h: And here.
3026         * acconfig.h: Change up builtin macros here.
3027         * math/cosf.c:  Remove.
3028         * math/fabsf.c:  Likewise.
3029         * math/sinf.c:  Likewise.
3030         * math/sqrtf.c:  Likewise.
3031         * math/Makefile.am (EXTRA_DIST):  Remove those four files.
3032         * math/Makefile.in:  Regenerate.
3033
3034 2000-06-22  Anthony Williams  <anthony@anthonyw.cjb.net>
3035
3036         * testsuite/21_strings/find.cc: Patch.
3037
3038 2000-06-22  Benjamin Kosnik  <bkoz@soma.redhat.com>
3039
3040         * acinclude.m4 (GLIBCPP_CHEC_LINKER_FEATURES): Use gcc + -x c++ as
3041         an easy way to get at g++ without having to link in libstdc++.
3042
3043 2000-06-21  Benjamin Kosnik  <bkoz@soma.redhat.com>
3044
3045         Fix alpha, powerpc build failures.
3046         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Substantially
3047         re-write. Need to check for both proper declaration when using a
3048         c++ compiler, and "C" linkage when linking. Do both, and if both
3049         exist, then define the HAVE_* bits in config.h.
3050         (GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE): New, uber-macro. Does all.
3051         (GLIBCPP_CHECK_LINKER_FEATURES): Actually link and run this
3052         program, doh.
3053
3054 2000-06-20  Anthony Williams  <anthony@anthonyw.cjb.net>
3055
3056         * bits/string.tcc: Fix find.
3057         * testsuite/21_strings/find.cc: Patch.
3058         
3059 2000-06-20  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3060
3061         * docs/install.html: Update where to get automake, where to get
3062         binutils.
3063         * acinclude.m4: Need -fno-builtins too, so gcc doesn't recognize
3064         builtins.
3065
3066 2000-06-19  Benjamin Kosnik  <bkoz@soma.redhat.com>
3067
3068         * acinclude.m4 ((GLIBCPP_CHECK_MATH_SUPPORT): Revert last change.
3069         Add -Werror-implicit-function-declaration instead.
3070
3071         Regenerate with fixed maintainer-tools.
3072         * aclocal.m4: Regenerate.
3073         * configure: Regenerate.
3074         * libio/Makefile.in: Regenerate.
3075         * src/Makefile.in: Regenerate.
3076         
3077 2000-06-19  Russell Davidson  <russell@ehess.cnrs-mrs.fr>
3078
3079         * testsuite/27_io/istream_extractor_arith.cc: Patch.
3080         * bits/locale_factets.tcc: Tweak.
3081         
3082 2000-06-19  Raja R Harinath  <harinath@cs.umn.edu>
3083         
3084         * src/Makefile.am: change @WERROR@ to $(WERROR) so that this can
3085         be overridden on the command line for individual files.
3086
3087 2000-06-19  Benjamin Kosnik  <bkoz@soma.redhat.com>
3088
3089         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Can't use
3090         AC_LANG_CPLUSPLUS as this tries to link in libstdc++, which we are
3091         building. Use -x c++ instead, which does not attempt to link
3092         libstdc++.
3093
3094         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Actually check for
3095         not coring when we hit a try/throw block, which was the problem
3096         with the linker support...
3097
3098         * docs/17_intro/contribute.html: Add bits about getting to the LWG
3099         issues pages.
3100         * docs/documentation.html: Rename link to make more accurate and scary.
3101         * docs/gccrebuild.html: Edit for clarity as these are no longer
3102         separate projects.
3103         * docs/install.html: Add bits about binutils for
3104         -ffunction-sections, -fdata-sections, -Wl,--gc-sections
3105
3106         * configure.in: Add call for GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT.
3107         * math/Makefile.am (EXTRA_DIST): Change USE_LONG_DOUBLE to
3108         USE_COMPLEX_LONG_DOUBLE.
3109         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Break into
3110         GLIBCPP_CHECK_MATH_SUPPORT and GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT.
3111         Works around irregularies in powerpc "C" compiler, but a good idea
3112         anyway.
3113
3114         * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_COMPILER_SUPPORT):
3115         New. Merge both old compiler bug checks for complex into this.
3116
3117 2000-06-19  Anthony Williams  <anthony@anthonyw.cjb.net>
3118         
3119         * testsuite/21_strings/find.cc: Empty strings can be found at all
3120         positions. Modified.
3121
3122 2000-06-19  Branko Cibej  <branko.cibej@hermes.si>
3123
3124         * testsuite/20_utilities: New directory.        
3125         * testsuite/20_utilities/auto_ptr.cc: New file.
3126         
3127 2000-06-14  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3128
3129         * src/Makefile.am (string_sources): Simplify, assuming that with
3130         -ffunction-sections, -fdata-sections, -Wl,--gc-sections, all this
3131         hacking is not necessary.
3132         (wstring_sources): Same.
3133         (OPTIMIZE_CXXFLAGS): Enable -fdata-sections -ffunction-sections
3134         -Wl,--gc-sections.
3135         * src/string-inst.cc: Remove macro blocks.
3136         * mkcheck.in (CXX_FLAG): Add bits here.
3137         
3138         * src/string-inst.cc: Remove iostream-related string instantiations.
3139         * src/misc-inst.cc: Add here.
3140
3141         * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION): Change FMTFLAGS
3142         to WFMT_FLAGS.
3143         * aclocal.m4: Regenerate.
3144         * configure.in: Change up.
3145         * configure: Regenerate.
3146         
3147 2000-06-13  Steven King  <sxking@uswest.net>
3148
3149         * acinclude.m4:  Fixup some of the builtin math tests and add tests for
3150         __builtin_fmod* and test libm for fmodf, fmodl or _fmodf, _fmodl.
3151         * acconfig.h: Add entries for fmod*.
3152
3153 2000-06-13  Branko Cibej  <branko.cibej@hermes.si>
3154
3155         * bits/std_cmath.h:  Fix typos in tests (*_FMODFF -> *_FMODF).
3156         Test  *_MODFF not *_MODF for modf(float, float*).
3157         (modf(float, float*)): Remove reference to _C_legacy.
3158
3159 2000-06-13  Benjamin Kosnik  <bkoz@redhat.com>
3160         
3161         * acinclude.m4 (enable_cshadow_headers): Change CSHADOWFLAGS to
3162         _GNU_SOURCE instead of _ISOC9X_SOURCE, as _GNU_SOURCE is the
3163         superset, and already defined at top level.
3164         * aclocal.m4: Regenerate.
3165         * configure: Regenerate.
3166
3167         * docs/17_intro/contribute.html: Plead with people to use -cp.
3168         
3169 2000-06-13  Anthony Williams  <anthony@anthonyw.cjb.net>
3170
3171         * testsuite/23_containers/bitset_ctor.cc: Qualify reverse wth std::.
3172
3173         * testsuite/27_io/filebuf.cc: Changed calls to
3174         fpos<>._M_position() to implicit calls to operator streamoff().
3175         * testsuite/27_io/iostream_objects.cc: Removed #include <ciso646>,
3176         as not needed. Revert, as part of standard.
3177         * testsuite/27_io/ostream_inserter_arith.cc: Replaced explicit
3178         call to numpunct<>._M_init() with overrides of the appropriate
3179         virtual functions.
3180
3181         * testsuite/27_io/stringstream.cc: Removed unnecessary char *
3182         pointers from test01, so no need to call base(), which isn't
3183         guaranteed to be implemented as iterators may themselves be pointers
3184         * testsuite/27_io/stringbuf.cc: Removed unnecessary calls to
3185         _M_position() - use implicit conversion to streamoff instead
3186
3187 2000-06-13  Thomas Holenstein  <thomas@hex.ch>
3188  
3189         * bits/stl_iterator.h: Added inline to operators == to >=.
3190
3191 2000-06-13  Brent Verner <brent@rcfile.org>
3192
3193         * bits/streambuf.tcc: repaired _S_copy_streambufs()
3194         * testsuite/27_io/ostream_inserter_other.cc (test03): Added testcase.
3195         
3196 2000-06-12  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3197
3198         * bits/locale_facets.h (ctype<wchar_t>): Remove unnecessary data
3199         members.
3200         * src/locale.cc: Add cwchar include here. Remove incorrect
3201         definitions, and stub them out.
3202         * config/generic/ctype.cc (ctype): Remove ctype<wchar_t> bits.
3203         * config/solaris/solaris2.7/ctype.cc (ctype): Same.
3204         * config/solaris/solaris2.5/ctype.cc (ctype): Same.
3205         * config/newlib/ctype.cc: Same.
3206         * config/gnu-linux/ctype.cc: Same.
3207         * config/bsd/ctype.cc: Same.
3208         * config/aix/ctype.cc: Same.
3209
3210 2000-06-12  Branko Cibej  <branko.cibej@hermes.si>
3211
3212         * config/solaris/solaris2.6/ctype.cc (do_toupper, do_tolower): Use
3213         towupper and towlower to convert wide characters.
3214
3215 2000-06-12  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3216
3217         * mkcheck.in: Clean up confusion regarding NAME, PRE_NAME.
3218
3219 2000-06-08  Branko Cibej  <branko.cibej@hermes.si>
3220
3221         * acinclude.m4 (GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT):  Check for
3222           sinf, cosf, fabsf, and sqrtf; add to LIBMATHOBJS if missing.
3223         * aclocal.m4:  Regenerate.
3224         * configure:  Regenerate.
3225         * math/cosf.c:  New file.
3226         * math/fabsf.c:  Likewise.
3227         * math/sinf.c:  Likewise.
3228         * math/sqrtf.c:  Likewise.
3229         * math/Makefile.am (EXTRA_DIST):  Add those four files.
3230         * math/Makefile.in:  Regenerate.
3231
3232 2000-06-08  Phil Edwards  <pme@sourceware.cygnus.com>
3233
3234         * testsuite/26_numerics/complex_inserters_extractors.cc:  Need cmath.
3235
3236 2000-06-06  Steven King  <sxking@uswest.net>
3237
3238         * acconfig.h: Added defines for HAVE_BUILTIN math functs for float,
3239         double and long double.  Added defines for HAVE libm math functs for
3240         float and long double.
3241         * aclocal.m4: Added configure checks for builtin math funcs and libm
3242         support for float and long double versions of the math functions.
3243         * config.h.in: Added undefs for math functs.
3244         * configure: Regenerate.
3245         * math/mathconf: Changed the _GLIBCPP_HAS_BUILTIN_* to
3246         _GLIBCPP_HAVE_BUILTIN_*.
3247         * bits/std_cmath.h: Added long double support.  Use builtins for
3248         float, double and long if available, otherwise, use libm versions if
3249         availible, otherwise, punt.
3250         * shadow/bits/std_cmath.h: ditto
3251
3252 2000-06-02  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3253
3254         * bits/locale_facets.h: Tweak.
3255         * src/locale.cc (codecvt<wchar_t>): Tweak. 
3256         
3257         * bits/locale_facets.h (_Format_cache): _S_ecks -> _S_x. 
3258         * bits/locale_facets.tcc (num_get<char>::_M_extract): Fix for hex.
3259
3260         * bits/basic_string.h: Move data member up.
3261         * src/string-inst.cc: Fix instantiations.
3262         * bits/string.tcc: Fix types.
3263         
3264 2000-06-02  Anthony Williams  <anthony@anthonyw.cjb.net>
3265
3266         * testsuite/21_strings/replace.cc (test01): Qualify find with std::.
3267
3268 2000-06-01  Benjamin Kosnik  <bkoz@gnu.org>
3269
3270         * bits/std_cwctype.h: Clean.
3271         * bits/std_cwchar.h: Clean, remove cruft.
3272
3273         * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Re-work, add bits
3274         for beginning iconv support.
3275         Remove _GLIBCPP_HAS_WCHAR_MIN_MAX, roll into _GLIBCPP_USE_WCHAR_T
3276         macro.
3277         * acconfig.h: Remove _GLIBCPP_HAS_WCHAR_MIN_MAX.
3278         * bits/limits_generic.h: Remove.
3279         * src/gen-num-limits.cc: Same.
3280         
3281         * src/locale.cc: Tweaks.
3282
3283         * bits/char_traits.h: Tweaks.
3284
3285 2000-05-31  Russell Davidson  <russell@ehess.cnrs-mrs.fr> 
3286
3287         * bits/locale_facets.tcc (num_get<char>::_M_extract): Fix signage,
3288         exponent, scientific formatting issues.
3289         * testsuite/27_io/istream_extractor_arith.cc (test09): Add tests.
3290         
3291 2000-05-31  Branko Cibej  <branko.cibej@hermes.si>
3292
3293         * bits/limits_generic.h (numeric_limits<wchar_t>): Use WCHAR_MIN
3294         and WCHAR_MAX instead of WCHART_MIN and WCHART_MAX.
3295
3296 2000-05-31  Nathan Myers  <ncm@cantrip.org>
3297  
3298        * docs/thanks.html: edit own credits
3299
3300 2000-05-31  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3301
3302         * bits/generic_shadow.h: Remaining _C_Shadow -> _C_shadow fix.
3303         
3304         * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Add strtoull checks...
3305
3306         * mkcheck.in (SH_FLAG): Add in -Wl,--rpath -Wl,$LIB_PATH. Tweaks.
3307         
3308 2000-05-31 Steven King <sxking@uswest.net>
3309
3310         * shadow/time.h: fix typo
3311         * shadow/wchar.h: ifdef __USE_GNU for wcsdup
3312         * shadow/bits/std_cwchar.h: ditto
3313         * shadow/bits/std_cstdlib.h: add overloads of abs and div for long
3314         and long long.
3315
3316 2000-05-26  Phil Edwards  <pme@sourceware.cygnus.com>
3317
3318         * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG):  If strtoll isn't
3319           available, force --disable.  Need to flesh this out; make smarter.
3320         * aclocal.m4:  Regenerate.
3321         * configure:  Regenerate.
3322
3323         * mkcheck.in:  Minor tweaks.
3324         * docs/download.html:  Fix typo.
3325
3326 2000-05-25  Benjamin Kosnik  <bkoz@milou.soma.redhat.com>
3327
3328         * inclosure: Change to...
3329         * mkinclosure: This.
3330         Fix paths to bash.      
3331         * mkcshadow: Fix paths to bash.
3332         
3333         * src/Makefile.am: Tweaks. Do cshadow header trickery at build time.
3334         * src/Makefile.in: Regnerate.
3335         * acinclude.m4 (GLIBCPP_COMPILER_VERSION): Fix typo.
3336         (GLIBCPP_ENABLE_SHADOW): Do a less gross hack.
3337         * aclocal.m4: Regenerate.
3338         * mkcheck.in (INC_PATH): Tweak. 
3339         
3340         * configure.in: Enable long long by default.
3341         * configure: Regenerate.
3342         
3343         * mkcheck.in (LIB_PATH): Revert.
3344
3345 2000-05-24   Nathan "I don't write ChangeLog Entries" Myers  <ncm@cantrip.org>
3346
3347         * config/cpu/i486: New directory.
3348         * config/cpu/i486/bits: New directory.
3349         * config/cpu/i486/bits/atomicity.h: New file.
3350         * config/cpu/i386/bits/atomicity.h (__compare_and_swap): Delete
3351         'cmpxchgl' asm.
3352         * acinclude.m4 (GLIBCPP_CHECK_CPU): Enable i386.
3353         
3354 2000-05-24  Loren J. Rittle  <ljrittle@acm.org>
3355
3356         * backward/alloc.h (__default_alloc_template): Only expose
3357           implementation-specific symbol, if it exists in the
3358           configuration.
3359         * backward/iostream.h (ends): Expose symbol.
3360         * backward/strstream.h: New file.
3361         * backward/stream.h: New file.
3362         * backward/ostream.h: New file.
3363         * backward/istream.h: New file.
3364         * backward/fstream.h: New file.
3365         * backward/complex.h: New file.
3366         * backward/iomanip.h: New file.
3367
3368         * mkcheck.in (LIB_PATH): Add -R bits.
3369
3370         * math/carg.c (carg): Replace __atan2 with atan2.
3371
3372 2000-05-24  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3373
3374         * Makefile.am (TAGS): Construct.
3375         * Makefile.in: Rengerate.
3376         * src/Makefile.am: Tweak.
3377         * src/Makefile.in: Tweak.
3378         * configure.in: Tweak.
3379
3380         * bits/c++config.h: Rename to ...
3381         * bits/c++config: This.
3382         * mkc++config: Adjust.
3383         
3384         * m4: Remove.
3385         * m4/lc_message.m4: Merge into acinclude.m4.
3386         * m4/mathfcts.m4: Same.
3387         * m4/stringfcts.m4: Same.
3388         * acinclude.m4: Add here.
3389         * configure: Regnerate.
3390         
3391         * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION): Remove
3392         OPTLEVEL. Add FMTFLAGS.
3393         * aclocal.m4: Regenerate.
3394         * src/Makefile.am (AC_CXXFLAGS): Take out OPTLEVEL, as this has
3395         been disabled due to higher-level Makefiles running amuck over
3396         this bit, and add in FMTFLAGS so that formatting is clear. 
3397         * src/Makefile.in: Regenerate.
3398         * configure: Regenerate.
3399
3400         * src/ios.cc (ios_base::sync_with_stdio): Clean up buffers from
3401         initialization.
3402
3403         * docs/download.html: Remove references to Cygwin-specific bits,
3404         as this can now be built natively.
3405         Update with current information.
3406
3407 2000-05-24  Phil Edwards  <pme@sourceware.cygnus.com>
3408
3409         * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION):  If we can use
3410           -fdiagnostics-show-location=once, do so.  Expand AC_LANG_* to
3411           enclose other tests in this macro, including future ones.
3412         * aclocal.m4:  Regenerate.
3413         * configure:  Regenerate.
3414
3415         * docs/faq/index.html:  Update location of libg++ FAQ.
3416         * docs/faq/index.txt:  Regenerate.
3417
3418 2000-05-22  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3419
3420         * docs/17_intro/libstdc++-assign.txt: Change Cygnus to FSF.
3421
3422 2000-05-22  Phil Edwards  <pme@sourceware.cygnus.com>
3423
3424         * mkcheck.in:  Tweak for Solaris 8.  Additional minor output comment.
3425
3426 2000-05-22  Phil Edwards  <pme@sourceware.cygnus.com>
3427
3428         * acinclude.m4:  If the new pragma isn't supported, don't kill -Werror;
3429           keep -Werror and add -Wno-unknown-pragma.  -Werror Is Good.
3430         * aclocal.m4:  Regenerate.
3431         * configure:  Regenerate.
3432
3433 2000-05-19   Nathan C. Myers  <ncm@cantrip.org>
3434
3435         * bits/generic_shadow.h: s/swamp/legacy/
3436
3437 2000-05-19  Phil Edwards  <pme@sourceware.cygnus.com>
3438
3439         * acinclude.m4:  Clean up comments on newer checks.
3440           (GLIBCPP_CHECK_COMPILER_VERSION):  Check for system_header
3441           pragma support.  Remove WERRORSUPPRESS variable, add WERROR.
3442         * aclocal.m4:  Regenerate.
3443         * configure:  Regenerate.
3444         * Makefile.in:  Regenerate.
3445         * libio/Makefile.in:  Regenerate.
3446         * math/Makefile.in:  Regenerate.
3447         * src/Makefile.am:  Tell make's WERROR to depend on configure's WERROR.
3448         * src/Makefile.in:  Regenerate.
3449         * docs/configopts.html:  Document changes to --enable names.
3450
3451 2000-05-18  Chip Salzenberg  <chip@valinux.com>
3452
3453         * bits/ostream.tcc (_S_pad_char): Function template should not be
3454         static.
3455         * bits/streambuf.tcc (_S_copy_streambufs): Likewise.
3456         * src/string-inst.cc (__destroy_aux): Instantiate for string*.
3457
3458 2000-05-18  Nathan C. Myers  <ncm@cantrip.org>
3459
3460         * mkcshadow: Change C_Swamp to C_legacy.
3461         * shadow/*: Same.
3462         * shadow/bits/*: Same.
3463         s/C_Swamp/C_legacy/g
3464         s/SWAMP/LEGACY/g
3465         s/_Shadow/_shadow/g
3466
3467 2000-05-18  Anthony Williams  <anthony@anthonyw.cjb.net> 
3468
3469         * bits/locale_facets.tcc (num_get::_M_extract): Change char* to
3470         const char*.
3471         * src/string-inst.cc (string::_S_find): Same.
3472         
3473 2000-05-18  Benjamin Kosnik  <bkoz@gnu.org>
3474
3475         * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Change to
3476         --enable-cshadow-headers. Add output messages.
3477         (GCC_ENABLE_LONG_LONG): Change to --enable-long-long, no
3478         underscores (like the rest of the enable options.) Add output messages.
3479         * aclocal.m4: Regenerate.
3480         * configure: Regenerate.
3481         * configure.in: Touch.
3482         
3483 2000-05-17  Benjamin Kosnik  <bkoz@cygnus.com>
3484
3485         * mkcheck.in: Enable shared library testing.
3486
3487 2000-05-17  Nathan C. Myers  <ncm@cantrip.org>
3488
3489         * bits/std_cmath.h: fix sqrt(float)
3490
3491 2000-05-16  Loren J. Rittle  <ljrittle@acm.org>
3492
3493         * bits/std_cassert.h: Use system_header pragma.
3494         * bits/std_cctype.h: Likewise.
3495         * bits/std_cerrno.h: Likewise.
3496         * bits/std_cfloat.h: Likewise.
3497         * bits/std_climits.h: Likewise.
3498         * bits/std_clocale.h: Likewise.
3499         * bits/std_cmath.h: Likewise.
3500         * bits/std_csetjmp.h: Likewise.
3501         * bits/std_csignal.h: Likewise.
3502         * bits/std_cstdarg.h: Likewise.
3503         * bits/std_cstddef.h: Likewise.
3504         * bits/std_cstdio.h: Likewise.
3505         * bits/std_cstdlib.h: Likewise.
3506         * bits/std_cstring.h: Likewise.
3507         * bits/std_ctime.h: Likewise.
3508         * bits/std_cwchar.h: Likewise.
3509         * bits/std_cwctype.h: Likewise.
3510         * bits/std_exception.h: Likewise.
3511         * bits/std_new.h: Likewise.
3512         * bits/std_typeinfo.h: Likewise.
3513         * shadow/bits/std_cassert.h: Likewise.
3514         * shadow/bits/std_cctype.h: Likewise.
3515         * shadow/bits/std_cerrno.h: Likewise.
3516         * shadow/bits/std_cfloat.h: Likewise.
3517         * shadow/bits/std_climits.h: Likewise.
3518         * shadow/bits/std_clocale.h: Likewise.
3519         * shadow/bits/std_cmath.h: Likewise.
3520         * shadow/bits/std_csetjmp.h: Likewise.
3521         * shadow/bits/std_csignal.h: Likewise.
3522         * shadow/bits/std_cstdarg.h: Likewise.
3523         * shadow/bits/std_cstddef.h: Likewise.
3524         * shadow/bits/std_cstdio.h: Likewise.
3525         * shadow/bits/std_cstdlib.h: Likewise.
3526         * shadow/bits/std_cstring.h: Likewise.
3527         * shadow/bits/std_ctime.h: Likewise.
3528         * shadow/bits/std_cwchar.h: Likewise.
3529         * shadow/bits/std_cwctype.h: Likewise.
3530         * shadow/bits/wrap_libio.h: Likewise.
3531         * shadow/bits/wrap_unistd.h: Likewise.
3532         * shadow/sys/cdefs.h: Likewise.
3533
3534 2000-05-16  Nathan C. Myers  <ncm@cantrip.org>
3535
3536         It appears that gcc-2.96 supports the keyword "and" now.
3537         * bits/std_ciso646.h: remove.
3538         * std/ciso646: gut.
3539         * testsuite/17_intro/header_ciso646.c: enable testing.
3540         * src/Makefile.am, src/Makefile.in: remove mention of
3541         bits/std_ciso646.h
3542
3543 2000-05-16  Nathan C. Myers  <ncm@cantrip.org>
3544        
3545        * mkcshadow: fix typo s/_C_Swamp_/_C_Swamp/.
3546
3547 2000-05-16  Phil Edwards  <pme@sourceware.cygnus.com>
3548
3549         * acinclude.m4:  Fix typo, switch to decaf...
3550         * aclocal.m4:  Regenerate.
3551         * configure:  Regenerate.
3552
3553 2000-05-16  Phil Edwards  <pme@sourceware.cygnus.com>
3554
3555         * acinclude.m4 (GLIBCPP_ENABLE_SHADOW):  New macro, stub.
3556         * aclocal.m4:  Regenerate.
3557         * configure.in:  Call.
3558         * configure:  Regenerate.
3559         * docs/configopts.html:  Stub documentation.
3560
3561 2000-05-14  Nathan Myers  <ncm@cantrip.org>
3562
3563         * mkcshadow: build in more-correct directory, create cshadow/
3564         directory if needed, report progress.
3565
3566 2000-05-14  LLeweLLyn Reese  <llewelly@dbritsch.dsl.xmission.com>
3567
3568         * src/Makefile.am: Fix tr commands.
3569         * src/Makefile.am: Remove references to [w]stringCTORDUPAL.[lo,cc]
3570         * src/string-inst.cc: Remove extra instantiation of
3571           S::basic_string(S::size_type, C, S::allocator_type const&);
3572         * src/string-inst.cc: Remove extra template keyword.
3573
3574 2000-05-14  Loren J. Rittle  <ljrittle@acm.org>
3575
3576         * config/bsd/bits/ctype_base.h: Add support for plain BSD4.4.
3577         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Enhance bsd tests.
3578         * aclocal.m4: Regenerate.
3579         * configure: Regenerate.
3580         * */Makefile.in: Regenerate.
3581
3582 2000-05-11  Phil Edwards  <pme@sourceware.cygnus.com>
3583
3584         * acinclude.m4:  Fix minor typo with ctypes, add more sanity to
3585           enable-cxx-flags, and remove GLIBCPP_ENABLE_NAMESPACES altogether.
3586         * aclocal.m4:  Regenerate.
3587         * configure.in:  Non-blank arguments break fewer Linuxes.
3588         * configure:  Regenerate.
3589         * src/Makefile.am:  Re-order AC_CXXFLAGS components.
3590         * src/Makefile.in:  Regenerate.
3591
3592 2000-05-10  Benjamin Kosnik  <bkoz@redhat.com>
3593
3594         * bits/std_cmath.h: Tweaks.
3595         * math/mathconf.h: Tweaks and fixes for HP-UX 11.
3596         (sqrtf): Define away iff !builtin and !in <math.h>. 
3597         (sinf): Same.
3598         (cosf): Same.
3599         (fabsf): Same.
3600         At some point this directory should be converted to c++, the
3601         autoconf tests should be run by the c++ compiler (not c), and
3602         <cmath> should be used instead of math.h.
3603         Move declaration of nan() here.
3604         * math/complex-stub.h (cabsl): Remove nan() declaration.
3605
3606         Finish up FreeBSD4.0 support.
3607         * config/bsd/ctype.cc: Scope out toupper, tolower calls.
3608         * config/generic/ctype.cc: And here.
3609         * testsuite/21_strings/char_traits.cc (test02): Guard with
3610         _GLIBCPP_USE_WCHAR_T.
3611
3612         via Phil Edwards  <pme@sourceware.cygnus.com>
3613         * bits/std_cctype.h: Remove _GLIBCPP_USE_NAMESPACES.
3614         * acconfig.h: And here.
3615         * acinclude.m4: Same.
3616         * testsuite/27_io/istream.cc: And here.
3617         * testsuite/27_io/ostream.cc: And here.
3618
3619 2000-05-09  Benjamin Kosnik  <bkoz@gnu.org>
3620
3621         * acinclude.m4 (GLIBCPP_CHECK_CPU): Change powerpc bits to
3622         -mcpu=powerpc.
3623         * src/Makefile.am: Disable ENABLE_CXX_FLAGS stuff for the moment.
3624         
3625         * config/generic/bits/ctype_specializations.h (ctype<char>::is):
3626         Make more generic.
3627
3628         * config/bsd: New directory.
3629         * config/bsd/ctype.cc: New.
3630         * config/bsd/bits/ctype_base.h (ctype_base): New.
3631         * config/bsd/bits/ctype_specializations.h: New.
3632         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add bsd tests.
3633         
3634 2000-05-09  Phil Edwards  <pme@sourceware.cygnus.com>
3635
3636         * acinclude.m4:  New macro, GLIBCPP_ENABLE_CXX_FLAGS.
3637         * configure.in:  Call.
3638         * src/Makefile.am:  Append results of macro to AC_CXXFLAGS.
3639         * aclocal.m4:  Regenerate.
3640         * configure:  Ditto.
3641         * src/Makefile.in:  Ditto.
3642         * docs/configopts.html:  Document.
3643         * docs/download.html:  Fix typo (close quote).
3644         * docs/footer.html:  Update.
3645
3646 2000-05-09  Loren J. Rittle  <ljrittle@acm.org>
3647
3648         * backward/iostream.h: Expose endl.  Guard wide types.
3649         * src/Makefile.am (headers): Update list to match files.
3650         * src/Makefile.in: Regenerate.
3651
3652 2000-05-09  Vadim Egorov  <egorovv@mailandnews.com>
3653             Benjamin Kosnik  <bkoz@gnu.org>
3654             Nathan Myers  <ncm@cantrip.org>
3655             Dietmar Kuehl  <dietmar_kuehl@yahoo.com> 
3656
3657         * bits/streambuf.tcc (basic_streambuf::xsgetn): Fix uflow case.
3658         (basic_streambuf::xsputn): Make consistent.
3659         * testsuite/27_io/filebuf.cc: Add tests.
3660         
3661 2000-05-08  Steven King  <sxking@uswest.net>
3662
3663         * bits/char_traits.h: Use wchar_t utility functions for
3664         char_traits<wchar_t> methods.
3665         * testsuite/21_string/char_traits.cc: New (test02): test
3666         char_traits<wchar_t>
3667
3668 2000-05-08  Benjamin Kosnik  <bkoz@cygnus.com>
3669
3670         * acinclude.m4 (GLIBCPP_CXXFLAGS): Add bits for solaris2.8.
3671
3672         * bits/fstream.tcc (filebuf::_M_init_filebuf): Don't set
3673         _M_buf_size based on macro, instead use _M_buf_size_opt.
3674         * bits/std_streambuf.h (basic_streambuf): Add _M_buf_size_opt.
3675         (basic_streambuf()): Set _M_buf_size_opt.
3676         * testsuite/27_io/filebuf.cc (filebuf): Use _M_buf_size_opt
3677         instead of _M_buf_size.
3678
3679 2000-05-04  Branko Cibej  <branko.cibej@hermes.si>
3680
3681         * src/complex_io.cc: Don't instantiate inserters and extractors
3682         for wide-character streams unless _GLIBCPP_USE_WCHAR_T is defined.
3683
3684 2000-05-03  Phil Edwards  <pme@sourceware.cygnus.com>
3685             Felix Natter <fnatter@gmx.net>
3686
3687         * docs/footer.html:  Update to see if it takes effect.
3688         * docs/thanks.html:  More people.
3689         * docs/17_intro/headers_cc.txt:  Copy from testsuite, since that can't
3690           be seen from the web pages.  Rename for browser-friendliness...
3691         * docs/17_intro/howto.html:  ...and update here.
3692         * docs/17_intro/porting-howto.html:  Changes from Felix.
3693         * docs/gccrebuild.html:  Mention v3->egcs move.
3694         * docs/faq/index.html:  Ditto.  Also misc tweaks and URL updates.
3695         * docs/faq/index.txt:  Regenerate.
3696
3697 2000-05-01  Benjamin Kosnik  <bkoz@redhat.com>
3698
3699         * config/cpu/powerpc/bits/atomicity.h (__exchange_and_add): More
3700         fixes.
3701
3702 2000-05-01  Vadim Egorov  <egorovv@@mailandnews.com>
3703
3704         * bits/char_traits.h: Fix parameter types.
3705         * bits/string.tcc: Avoid traits_type::move.
3706
3707 2000-05-01  Benjamin Kosnik  <bkoz@haight.constant.com>
3708
3709         * src/Makefile.am (AC_CXXFLAGS): Add CPUFLAGS here.
3710         * src/Makefile.in: Regenerate.
3711         * acinclude.m4 (GLIBCPP_ENABLE_DEBUG): Revert.
3712
3713 2000-04-30  Steven King <sxking@uswest.net>
3714
3715         * bits/locale_facets.h: Fix syntax  error.
3716         * bits/std_fstream.h: ditto
3717
3718 2000-04-30  Benjamin Kosnik  <bkoz@gnu.org>
3719
3720         * config/cpu/powerpc/bits/atomicity.h (__compare_and_swap): Fix typo.
3721
3722         * mknumeric_limits (trait_name): Fix copyright notice.
3723         * src/gen-num-limits.cc: Explicitly instantiate epsilon and
3724         round_error data members of struct value. This works around
3725         weak-linking issues on AIX, HPUX.
3726
3727 2000-04-29  Phil Edwards  <pme@sourceware.cygnus.com>
3728
3729         * docs/download.html:  Add link to list of mirror sites.
3730
3731 2000-04-28  Loren J. Rittle  <ljrittle@acm.org>
3732
3733         * mkcheck.in: Rely on exit status instead of the presence of a
3734         core file.  Added comments on how/where to save core and exe
3735         files.  Move shell wildcards outside quotes and fix core path.
3736         
3737 2000-04-27  scott snyder  <snyder@fnal.gov>
3738
3739         * src/misc-inst.cc: Explicitly instantiate ifstream and ofstream
3740         classes.
3741
3742 2000-04-26  Nathan C. Myers  <ncm@cantrip.org>
3743
3744         * bits/basic_string.h: include <bits/atomicity.h> instead
3745         of <atomicity.h>, and use the uglified names.
3746         * config/cpu/*/atomicity.h: replace with bits/atomicity.h;
3747         uglify names, eliminate dependence on <inttypes.h>.
3748         * src/Makefile.in, src/Makefile.am: refer to correct place
3749         for atomicity.h header.
3750
3751 2000-04-25 Steven King <sxking@uswest.net>
3752
3753         * bits/basic_string.h: Fix syntax error.
3754
3755 2000-04-25  Benjamin Kosnik  <bkoz@redhat.com>
3756
3757         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Improve checks for
3758         USE_LONG_DOUBLE.
3759         (GLIBCPP_ENABLE_DEBUG): If alpha, use -gdwarf-2.
3760         * math/Makefile.am (EXTRA_LONG_DOUBLE_yes): Add all the long
3761         versions to this as copysignl is needed anyway for these targets.
3762         * math/Makefile.in: Regenerate.
3763         
3764         * bits/streambuf.tcc (streambuf::xsgetn): Tweak.
3765         * bits/fstream.tcc (underflow): Cast to libio types.
3766         * bits/basic_file.h (seekoff): Fixes for alpha: use __c_streamoff.
3767         * config/c_io_libio.cc (seekoff): And here.
3768         
3769 2000-04-24  Loren J. Rittle  <ljrittle@acm.org>
3770
3771         * mkcheck.in: Report compiler version used for test.  Find
3772         the built _G_config.h instead of any old installed version.
3773
3774 2000-04-24  Loren J. Rittle  <ljrittle@acm.org>
3775
3776         * config/generic/ctype.cc (do_toupper): Remove dependence on
3777         non-portable/non-existent lookup table.
3778         (do_tolower): Same.
3779         
3780 2000-04-24  Nathan Myers  <ncm@cantrip.org>
3781
3782         * src/string-inst.cc: More fixing.
3783
3784 2000-04-24  Benjamin Kosnik  <bkoz@gnu.org>
3785
3786         * bits/stl_iterator.h: Pedantic fixing.
3787         * bits/std_sstream.h: And here.
3788         * bits/string.tcc: And here.
3789
3790 2000-04-24  Felix Natter <fnatter@gmx.net> 
3791
3792         * docs/17_intro/howto.html: Add bits.
3793         * docs/17_intro/porting-howto.html: New file.
3794         
3795 2000-04-24  Branko Cibej  <branko.cibej@hermes.si>
3796
3797         * acinclude.m4(GLIBCPP_CHECK_WCHAR_T_SUPPORT): Expand
3798         @libinst_wstring_la@ to libinst-wstring.la when specializing for
3799         wchar_t, to empty string otherwise.
3800         * src/Makefile.am: (EXTRA_LTLIBRARIES): New.
3801         (sources): Remove $(string_sources) and $(wstring_sources).
3802         (libstdc___la_LIBADD): Add libinst-string.la and @libinst_wstring_la@.
3803         (libstdc___la_DEPENDENCIES): New.
3804         (libinst_string_la_SOURCES, libinst_wstring_la_SOURCES): New.
3805
3806 2000-04-20  Benjamin Kosnik  <bkoz@redhat.com>
3807
3808         * bits/std_sstream.h: Tweak formatting.
3809         * bits/std_fstream.h: Make types public.
3810
3811         * testsuite/27_io/streambuf.cc: Fix for alpha.
3812
3813         Brad Garcia <bgarcia@laurelnetworks.com>
3814         * bits/locale_facets.h (numpunct::numpunct(size_t)): Fix bool
3815         initialization.
3816         * testsuite/27_io/ios_manip_fmtflags.cc (test02): Add test for
3817         bool formatting.
3818         
3819 2000-04-19  Nathan Myers  <ncm@cantrip.org>
3820
3821         * src/string-inst: consolidate _S_create,
3822         destroy, leak, clone members into stringMAIN and stringMUTATE
3823         object files.
3824         * src/Makefile.am: Above, and eliminate dependence on
3825         wstring-inst.cc.
3826         * src/wstring-inst.cc: Remove.
3827
3828 2000-04-18  Benjamin Kosnik  <bkoz@redhat.com>
3829
3830         * src/Makefile.am (AC_CXXFLAGS): Activate debugging code, again.
3831         Add flags for specialized rules dealing with instantiations.
3832         
3833         * src/string-inst.cc: Add instantiations missing from shared
3834         libraries--see stringEQ, stringCONSC.
3835         * src/Makefile.am (wstring_sources): Add.
3836         (string_sources): Same.
3837         * src/Makefile.in: Regenerate.
3838         
3839         * stl/*: Integrate contents of this directory into top-level
3840         directories.
3841         * ext/bvector hash_map hash_set rope ropeimpl.h slist
3842         stl_bvector.h stl_hash_fun.h stl_hashtable.h stl_rope.h tree: Add.
3843         * bits/pthread_allocimpl.h std_algorithm.h std_bitset.h
3844         std_deque.h std_functional.h std_iterator.h std_list.h std_map.h
3845         std_memory.h std_numeric.h std_queue.h std_set.h std_stack.h
3846         std_stdexcept.h std_strstream.h std_utility.h std_vector.h
3847         stl_algo.h stl_algobase.h stl_alloc.h stl_config.h stl_construct.h
3848         stl_deque.h stl_function.h stl_heap.h stl_iterator.h
3849         stl_iterator_base.h stl_list.h stl_map.h stl_multimap.h
3850         stl_multiset.h stl_numeric.h stl_pair.h stl_pthread_alloc.h
3851         stl_queue.h stl_range_errors.h stl_raw_storage_iter.h stl_relops.h
3852         stl_set.h stl_stack.h stl_string_fwd.h stl_tempbuf.h stl_threads.h
3853         stl_tree.h stl_uninitialized.h stl_vector.h type_traits.h: Add.
3854         * backward/algo.h algobase.h alloc.h bvector.h defalloc.h deque.h
3855         function.h hash_map.h hash_set.h hashtable.h heap.h iterator.h
3856         list.h map.h multimap.h multiset.h pair.h rope.h set.h slist.h
3857         stack.h tempbuf.h tree.h vector.h: Add.
3858         * README (file): Update.
3859         * docs/documentation.html: README not being found.
3860         * src/Makefile.am (sources): Take out stl directory.
3861         * mkcheck.in (SRC_DIR): And here.
3862         * src/Makefile.in: Regenerate.
3863         
3864 2000-04-18  Levente Farkas  <lfarkas@mindmaker.hu>
3865
3866         * stl/bits/stl_function.h: Add bits so that const and non-const
3867         both work.
3868         
3869 2000-04-18  scott snyder  <snyder@fnal.gov>
3870
3871         * stl/bits/stl_map.h (class map): Fix default for _Alloc template
3872         parameter.  Get rid of use of __STL_DEFAULT_ALLOCATOR and
3873         __STL_LIMITED_DEFAULT_TEMPLATES macros.
3874         * stl/bits/stl_multimap.h (class multimap): Likewise.  Get rid of
3875         use of __STL_DEPENDENT_DEFAULT_TMPL macro.
3876
3877 2000-04-18  scott snyder  <snyder@fnal.gov>
3878
3879         * stl/bits/stl_config.h (__STL_DEPENDENT_DEFAULT_TMPL): Deleted
3880         this macro.
3881
3882         * stl/ext/hash_map (class hash_map, class hash_multimap): Get rid
3883         of use of __STL_DEPENDENT_DEFAULT_TMPL macro.
3884         * stl/ext/hash_set (class hash_set, class hash_multiset):
3885         Likewise.
3886         * stl/bits/stl_function.h (struct constant_unary_fun, struct
3887         constant_binary_fun): Likewise.
3888         * stl/bits/stl_queue.h (class queue, class priority_queue): Likewise.
3889         * stl/bits/stl_stack.h (class stack): Likewise.
3890         * stl/bits/stl_set.h (class set): Likewise.
3891         * stl/bits/stl_multiset.h (class multiset): Likewise.
3892
3893         * stl/bits/stl_iterator.h (class reverse_bidirectional_iterator,
3894         class reverse_iterator): Get rid of use of
3895         __STL_LIMITED_DEFAULT_TEMPLATES macro.
3896
3897         * stl/bits/stl_config.h (__STL_DEFAULT_ALLOCATOR): Deleted this
3898         macro.
3899
3900         * stl/bits/stl_deque.h (class deque): Get rid of use of
3901         __STL_DEFAULT_ALLOCATOR macro.
3902         * stl/bits/stl_list.h (class list): Likewise.
3903         * stl/bits/stl_multiset.h (class multiset): Likewise.
3904         * stl/bits/stl_set.h (class set): Likewise.
3905         * stl/bits/stl_string_fwd.h (class basic_string): Likewise.
3906         * stl/bits/stl_tree.h (class _Rb_tree, class rb_tree): Likewise.
3907         * stl/bits/stl_vector.h (class vector): Likewise.
3908         * stl/ext/ropeimpl.h (rotate): Likewise.
3909         * stl/ext/hash_map (class hash_map, class hash_multimap):
3910         Likewise.
3911         * stl/ext/hash_set (class hash_set, class hash_multiset):
3912         Likewise.
3913         * stl/ext/slist (class slist): Likewise.
3914         * stl/ext/stl_bvector.h (class bit_vector): Likewise.
3915         * stl/ext/stl_rope.h (class rope): Likewise.
3916         * src/locale.cc (_Impl): Likewise.
3917         * src/localename.cc (_Impl): Likewise.
3918         * bits/localefwd.h (_Impl): Likewise.
3919
3920 2000-04-18  Phil Edwards  <pme@sourceware.cygnus.com>
3921
3922         * docs/install.html:  Cleanup, minor changes.
3923         * docs/17_intro/howto.html:  Ditto.
3924
3925 2000-04-18  Nathan Myers  <ncm@cantrip.org>
3926
3927         * bits/basic_string.h: Remove "inline" from member _S_find.
3928         
3929         * src/string-inst.cc: Rewrite to reflect non-inline template
3930         instantiations in string.tcc.
3931         
3932         * src/stringADDCS.cc, stringADDPS.cc, stringADDSC.cc, stringADDSP.cc,
3933         stringADDSS.cc, stringBIST.cc, stringBOST.cc, stringCHTR.cc,
3934         stringEQPS.cc, stringEQSP.cc, stringEQSS.cc, stringEXTRA.cc,
3935         stringGEPS.cc, stringGESP.cc, stringGESS.cc, stringGETLI.cc,
3936         stringGTPS.cc, stringGTPS.cc, stringGTSP.cc, stringGTSS.cc,
3937         stringINSER.cc, stringLEPS.cc, stringLESP.cc, stringLESS.cc,
3938         stringLESP.cc, stringLTPS.cc, stringLTPS.cc, stringLTSP.cc,
3939         stringLTSS.cc, stringMAIN.cc, stringNEPS.cc, stringNESP.cc,
3940         stringNESS.cc, stringSCOPY.cc: Remove.
3941         * src/wstringADDCS.cc, etc: Remove.
3942
3943         Benjamin Kosnik  <bkoz@haight.constant.com>
3944         * src/Makefile.am: Modify to reflect above.
3945         * src/Makefile.in: Regenerate.
3946         
3947 2000-04-17  Benjamin Kosnik  <bkoz@cygnus.com>
3948
3949         * docs/install.html (--enable-libstdcxx-v3): Clean up install docs.
3950
3951 2000-04-13  Benjamin Kosnik  <bkoz@haight.cygnus.com>
3952
3953         * bits/std_fstream.h (filebuf::sync): Need to use the abstracted
3954         io interface here instead of the libio particulars.
3955
3956         * config/threads-posix.h: Consistency with stl_config.h.
3957
3958         * mkcheck.in (CXX_FLAG): Add DDEBUG_ASSERT back in.
3959         
3960 2000-04-13  Loren J. Rittle  <ljrittle@acm.org>
3961
3962         * mknumeric_limits: Rename generic type template parameter name
3963         '_T' to '_Tp'.
3964         * stl/bits/type_traits.h: Ditto.
3965
3966 2000-04-06  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
3967
3968         * mkcheck.in (SRC_DIR): Change default mkcheck behavior, so that
3969         it is more useful for --enable-libstdcxx-v3. Use the built
3970         compilers with v3, instead of compilers in PATH, and don't
3971         re-include include directories for checking the install.
3972
3973 2000-04-05  Benjamin Kosnik  <bkoz@cygnus.com>
3974
3975         * src/Makefile.am (AM_CXXFLAGS): Disable NAMESPACES, as this is on
3976         by default when using --enable-libstdcxx-v3.
3977         * src/Makefile.in: Regenerate.
3978         * configure.in: Disable GLIBCPP_ENABLE_NAMESPACES,
3979         GLIBCPP_ENABLE_RELIBGCC for --enable-libstdcxx-v3 flag.
3980         * configure: Regenerate.
3981         * mkcheck.in: Deal with NAMESPACES.
3982         
3983 2000-04-05  Petter Urkedal  <petter@matfys.lth.se>
3984
3985         * src/cmath.cc: New file...
3986         (pow(*, int)): Define functions...
3987         * src/Makefile.am (sources): ...register file.
3988         * src/Makefile.in: Regenerate.
3989         * bits/std_cmath.h (pow): ...declare functions here, and remove
3990         old definitions.
3991
3992 2000-04-04  Benjamin Kosnik  <bkoz@redhat.com>
3993         
3994         * acinclude.m4 (GCC_OBJDIR): Tweaks
3995
3996 2000-04-03  Benjamin Kosnik  <bkoz@redhat.com>
3997         
3998         * acinclude.m4 (GLIBCPP_CHECK_CPU): Add arm configure bits.
3999         * config/cpu/arm: New directory.
4000
4001         Jesper Skov  <jskov@redhat.com>
4002         * config/cpu/arm/atomicity.h: New file.
4003         
4004 2000-03-31  Benjamin Kosnik  <bkoz@redhat.com>
4005
4006         * stl/bits/stl_config.h: Make _STL_THREADS depend on _REENTRANT.
4007         Remove unused bits. Clean.
4008         
4009 2000-03-29  Benjamin Kosnik  <bkoz@cygnus.com>
4010
4011         * testsuite/25_algorithms: New directory.
4012         * testsuite/25_algorithms/min_max.cc: New file.
4013
4014 2000-03-29  scott snyder  <snyder@fnal.gov>
4015
4016         * bits/locale_facets.tcc (do_put): Allow a couple extra digits of
4017         precision beyond that which we get from numeric_limits::digits10.
4018
4019         * stl/bits/stl_algobase.h (max, min): Don't use comparison
4020         operator.
4021
4022         * testsuite/23_containers/bitset_shift.cc: Fix.
4023
4024         * testsuite/27_io/ios_manip_fmtflags.cc (test01): Don't give a
4025         temporary to imbue().
4026
4027         * bits/std_fstream.h (sync): Resync libio's idea of the current
4028         file position with the external file.
4029
4030 2000-03-28  Benjamin Kosnik  <bkoz@cygnus.com>
4031
4032         * testsuite/27_io/istream_extractor_arith.cc.cvs: Fix merge
4033         mistake.
4034
4035         * bits/std_fstream.h (filebuf::is_open): Check for _M_file before
4036         attempting calls to it. 
4037         * bits/fstream.tcc (ctors): Don't call _M_init_filebuf in
4038         ctors. Instead, call _M_init_filebuf ...
4039         (open): Here, as suggested by 27.8.1.3. 
4040         * src/ios.cc (ios_base::Init::Init()): Clean up default filebufs
4041         properly when initializing cout/cin/cerr.
4042
4043 2000-03-27  Russell Davidson  <russell@ehess.cnrs-mrs.fr>
4044
4045         * testsuite/23_containers/multiset.cc (main): Clean up for namespaces.
4046         * testsuite/22_locale/ctype_char_members.cc: And here.
4047         * testsuite/27_io/streambuf.cc (streambuf): And here.
4048         * testsuite/27_io/ostream_inserter_char.cc (test06): And here.
4049         * testsuite/27_io/istream_unformatted.cc (test05): And here.
4050         * testsuite/27_io/istream_extractor_arith.cc: And here.
4051         * testsuite/27_io/ios_manip_basefield.cc (test02): And here.
4052         * testsuite/27_io/ios_base_members_static.cc: And here.
4053         * bits/std_climits.h (_CPP_CLIMITS): Fix typo.
4054
4055 2000-03-27  Chris Faylor  <cgf@cygnus.com>
4056         
4057         * configure.in: Remove setting of CXX if canadian cross.
4058         * configure: Regenerate.
4059
4060 2000-03-27  Nathan Myers  <ncm@zembu.com>
4061
4062         * bits/sstream.tcc: Optimize.
4063         * bits/basic_string.h(string::append): Don't inline.
4064         * bits/string.tcc: Move out-of-line.
4065         
4066 2000-03-27  Phil Edwards  <pme@sourceware.cygnus.com>
4067
4068         * acinclude.m4:  (GLIBCPP_CHECK_COMPILER_VERSION)  When using <2.96,
4069           define WERRORSUPPRESS so that the inlining warnings won't kill us.
4070         * aclocal.m4:  Regenerate.
4071         * configure:  Regenerate.
4072         * src/Makefile.am:  Use WERRORSUPPRESS for the files that need it.
4073         * src/Makefile.in:  Regenerate.
4074
4075         * docs/install.html:  Almost complete rewrite.
4076
4077 2000-03-25  Phil Edwards  <pme@sourceware.cygnus.com>
4078
4079         * docs/install.html:  Explain -Werror problem at "#Werror" mark.
4080         * docs/faq/index.html:  Testsuite will die horribly if new libgcc.a
4081           not installed.
4082         * docs/faq/index.txt:  Regenerate.
4083
4084 2000-03-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br> 
4085
4086         * src/Makefile.am (libio_headers_install): Fix.
4087         * src/Makefile.in: Regenerate.
4088         
4089 2000-03-24  Benjamin Kosnik  <bkoz@cygnus.com>
4090
4091         * docs/17_intro/RELEASE-NOTES: Fix typos.
4092         * docs/index.html: Update.
4093         * docs/17_intro/BUGS: Update.
4094         * docs/status.html: Update for 2.90.8 release.
4095
4096 2000-03-23  Phil Edwards  <pme@sourceware.cygnus.com>
4097
4098         * Makefile.am:  Better error message when missing libgcc2.ready.
4099         * Makefile.in:  Regenerate.
4100         * acinclude.m4:  Fastidious nitpicking reformatting.
4101         * aclocal.m4:  Regenerate.
4102         * configure:  Regenerate.
4103         * mkcheck.in:  Must use same namespace settings as the library being
4104           tested.  Also log ST_FLAG, since it's being passed.
4105         * docs/install.html:  Add brief chunk on configuration.
4106         * docs/17_intro/RELEASE-NOTES:  Fix minor Cygwin typo.
4107         * docs/23_containers/howto.html:  Mention MT-safe string.
4108         * docs/faq/index.html:  Minor updates.
4109         * docs/faq/index.txt:  Regerarate.
4110
4111 2000-03-22  Benjamin Kosnik  <bkoz@cygnus.com>
4112
4113         * bits/sstream.tcc (seekoff): Fix for gptr() null cases.
4114         Return newoff. 
4115         * bits/fstream.tcc (seekoff): Sync.
4116         (seekpos): Sync.
4117         * testsuite/27_io/ostream_unformatted.cc: New file.
4118         * testsuite/27_io/stringbuf.cc: Fix.
4119         * testsuite/27_io/istream_unformatted.cc (test04): Fix.
4120         
4121         * config/newlib/bits/ctype_base.h (ctype_base): Fix.
4122         * config/newlib/ctype.cc (ctype): Change __ctype -> _ctype_.
4123
4124         * src/complex_io.cc (operator>>complex): Tweak.
4125
4126         * config/cpu/alpha/atomicity.h: Explicitly typedef uint32_t, int32_t if
4127         <inttypes.h> does not exist.
4128         * config/cpu/sparc/sparc64/atomicity.h: Same.
4129         * config/cpu/sparc/sparc32/atomicity.h: Same.
4130         * config/cpu/powerpc/atomicity.h: Same.
4131         * config/cpu/i386/atomicity.h: Same.
4132         * config/cpu/generic/atomicity.h: Same.
4133         * configure.in: Check for inttypes.h.
4134         * configure: Regnerate.
4135
4136 2000-03-21  Benjamin Kosnik  <bkoz@cygnus.com>
4137
4138         * bits/std_sstream.h (_M_init_stringbuf): Set initial ate position
4139         correctly.
4140         * testsuite/27_io/ostream_inserter_char.cc (test06): Add tests for ate.
4141
4142         * docs/17_intro/RELEASE-NOTES (New): Add bits.
4143
4144         * configure.in: Move AC_CHECK_HEADERS to a point where we know we
4145         are compiling natively.
4146
4147         * libio/*: Update to CVS libio from egcs.
4148         
4149 2000-03-21  Phil Edwards  <pme@sourceware.cygnus.com>
4150
4151         * docs/download.html:  Document use of -z9 for CVS.
4152         * docs/index.html:  Add target date (no link) for future snapshot.
4153
4154 2000-03-21  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4155
4156         * bits/slice_array.h: Rename generic type template parameter name
4157         '_T' to '_Tp'. 
4158         * bits/mask_array.h: Ditto
4159
4160 2000-03-20  Benjamin Kosnik  <bkoz@cygnus.com>  
4161
4162         * *: Change copyright holder from "Cygnus Solutions" to "Free
4163         Software Foundation, Inc."
4164         
4165         * docs/configopts.html: Explain what "hella versions" means.
4166         * docs/install.html: Some tweaks--nice job on this Phil.
4167         * docs/documentation.html: Add a direct link to configuration options.
4168
4169         * src/Makefile.am (OPTIMIZE_CXXFLAGS): Add in extras.
4170         * docs/17_intro/RELEASE-NOTES (New): Add.
4171         * bits/c++config.h (__GLIBCPP__): Bump version.
4172
4173         * config/c_io_libio.cc (__basic__file(__c_lock*)): Change argument
4174         type to match prototype.
4175
4176 2000-03-20  Phil Edwards  <pme@sourceware.cygnus.com>
4177
4178         * docs/install.html:  Update for new funky build procedure.  Move
4179           description of 'configure' options to...
4180         * docs/configopts.html:  ...here.  New file.
4181         * docs/17_intro/howto.html:  Updates for new snapshot.
4182         * docs/20_util/howto.html:  Ditto.
4183         * docs/21_strings/howto.html:  Ditto.
4184         * docs/21_strings/stringtok_std_h.txt:  Fix example typos.
4185         * docs/22_locale/howto.html:  Ditto.
4186         * docs/23_containers/howto.html:  Ditto.
4187         * docs/faq/index.html:  Ditto.
4188
4189 2000-03-18  Petter Urkedal  <petter@matfys.lth.se>
4190             Benjamin Kosnik  <bkoz@gnu.org>
4191         
4192         * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_SUPPORT): Move code for main
4193         to the right place.
4194         * aclocal.m4: Regenerate.
4195         * configure: Regenerate.
4196
4197 2000-03-16  Benjamin Kosnik  <bkoz@cygnus.com>
4198             scott snyder  <sss@karma.fnal.gov>
4199         
4200         * config/c_io_libio.h: Add __c_lock.
4201         * config/threads-no.h: Same here.
4202         * config/threads-posix.h: Add __mutext_type typedef.
4203         * config/c_io_libio.cc: basic_file ctor takes lock arg. 
4204         * bits/basic_file.h: Ctor takes lock arg. 
4205         * bits/std_fstream.h: Add _M_lock.
4206         * bits/fstream.tcc: Supply it to basic_file ctor.
4207
4208         * mkcheck.in (resultstext): Change [[ to [.
4209
4210         * testsuite/27_io/ostream_inserter_char.cc (test06): Tweak.
4211
4212         * bits/locale_facets.h: Tweak.  
4213
4214         * stl/bits/stl_config.h: Fix defines.
4215         
4216 2000-03-16  Benjamin Kosnik  <bkoz@cygnus.com>
4217
4218         * mkcheck.in (INC_PATH): Add paths from cpu_include_dir to find
4219         atomicity.h
4220         * configure: Regenerate.
4221         * aclocal.m4: Regnerate.
4222         
4223 2000-03-16  Nathan Myers  <ncm@zembu.com>
4224
4225         * bits/string.tcc: Add MT support.
4226         * bits/basic_string.h: Same.
4227         
4228 2000-03-16  Phil Edwards  <pme@sourceware.cygnus.com>
4229
4230         * configure.in:  Make --enable-namespaces and -libgcc-rebuild=../..
4231           the defaults.
4232         * configure:  Regenerate.
4233
4234         * config/solaris/solaris2.7/ctype.cc:  Fix unsigned/signed comparison.
4235
4236 2000-03-16  Phil Edwards  <pme@sourceware.cygnus.com>
4237
4238         * acinclude.m4 (GLIBCPP_CHECK_CTYPE):  If Sol2.5 ctype is found, keep
4239           checking for 2.[67].  (GLIBCPP_ENABLE_RELIBGCC):  No longer ignore
4240           any defaults passed in.
4241         * aclocal.m4:  Regenerate.
4242
4243 2000-03-16  Phil Edwards  <pme@sourceware.cygnus.com>
4244
4245         * mkcheck.in:  Report total successes and failures.
4246
4247 2000-03-15  Benjamin Kosnik  <bkoz@cygnus.com>
4248
4249         * config/cpu: New directory, intended to be used to provide
4250         cpu-specific configuration files. In particular, assembly language
4251         primitives for thread safety.
4252         * config/cpu/alpha: Populate.
4253         * config/cpu/alpha/atomicity.h: New file.
4254         * config/cpu/arm: Populate.
4255         * config/cpu/generic: Populate.
4256         * config/cpu/generic/atomicity.h: New file.
4257         * config/cpu/hppa: Populate.
4258         * config/cpu/i386: Populate.
4259         * config/cpu/i386/atomicity.h: New file, take from i486.
4260         * config/cpu/m68k: Populate.
4261         * config/cpu/mips: Populate.
4262         * config/cpu/powerpc: Populate.
4263         * config/cpu/powerpc/atomicity.h: New file.
4264         * config/cpu/sparc: Populate.
4265         * config/cpu/sparc/sparc32: Populate.
4266         * config/cpu/sparc/sparc64: Populate.
4267         * config/cpu/sparc/sparc32/atomicity.h: New file.
4268         * config/cpu/sparc/sparc64/atomicity.h: New file.       
4269
4270         * src/Makefile.am (myinstallheaders): Add install routines.
4271         * acinclude.m4 (GLIBCPP_CHECK_CPU):Add configuration for the
4272         cpu dir.
4273         * configure.in: Add.
4274
4275         * config/default: Adopt glibc naming conventions, and so move to
4276         * config/generic: Here.
4277         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Modify default case to generic.
4278         
4279 2000-03-15  Bill Thompson  <billt@toast.net>
4280
4281         * testsuite/27_io/ostream_inserter_char.cc (test06): Add test.
4282
4283 2000-03-14  Phil Edwards  <pme@sourceware.cygnus.com>
4284
4285         * docs/17_intro/howto.html:  Add missing "TOC" entry, and new section.
4286
4287         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Fixup.
4288         * aclocal.m4: Regenerate.
4289         * configure: Regenerate.
4290
4291 2000-03-13  scott snyder  <snyder@fnal.gov>
4292             Jason Merrill  <jason@cygnus.com>
4293         
4294         * bits/locale_facets.h (class ctype, class ctype<char>, class
4295         ctype<wchar_t>): More mask fixes.
4296         * testsuite/22_locale/ctype.cc: Test for the problem.
4297
4298 2000-03-13  Benjamin Kosnik  <bkoz@cygnus.com>
4299
4300         * acconfig.h: Add bits.
4301         * configure.in: Move AM_PROG_LIBTOOL up in file.
4302         Tweak cross compiling info. 
4303         * configure: Regenerate.
4304
4305         * mknumeric_limits (XCOMPILE): Echo compilation line for
4306         gen-num-limits.cc
4307
4308         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add aix checks.
4309         * aclocal.m4: Regenerate.
4310         * configure: Regenerate.
4311         * config/aix/ctype.cc (ctype): Tweak.
4312         * config/aix/bits/ctype_base.h (ctype_base): Tweak.
4313         * config/aix/bits/ctype_specializations.h: New file.
4314
4315 2000-03-10  scott snyder  <snyder@fnal.gov>
4316
4317         * stl/bits/stl_vector.h (_M_assign_aux): Fix for __normal_iterator 
4318         conversions.
4319         * testsuite/23_containers/vector_modifiers.cc (test01): Add a
4320         regression test for the problem.
4321
4322 2000-03-09  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
4323         
4324         * testsuite/27_io/streambuf.cc (class testbuf): Same here.      
4325         * bits/fpos.h: And here.
4326         * bits/std_ostream.h: Same here.
4327         * bits/std_istream.h: Same here.
4328         * bits/basic_ios.h: Same here.
4329         * bits/std_fstream.h: Same here.
4330         * bits/sbuf_iter.h (std): Here too.
4331         * bits/std_sstream.h: Make types public.
4332
4333         * src/misc-inst.cc: Use size_t instead of unsigned int. 
4334         * bits/locale_facets.tcc (_S_format): For now, cast to char. I
4335         suppose this should be ctype::narrow... all the ctype<wchar_t>
4336         stuff needs to be cleaned up.
4337
4338 2000-03-09  Phil Edwards  <pme@sourceware.cygnus.com>
4339
4340         * docs/gentop:  Remove entire directory, finally.
4341
4342 2000-03-09  scott snyder  <snyder@fnal.gov>
4343
4344         * bits/std_cmath.h (modf): Fix pointer overrun.
4345         * testsuite/26_numerics/c_math.cc (test04, main): Add a regression 
4346         test for the problem.
4347
4348 2000-03-09  Phil Edwards  <pme@sourceware.cygnus.com>
4349
4350         Looks like changes to the #include'd files must be followed by a
4351         change to the #include'ing files to take effect.  Caveat emptor.
4352         * docs/header.html:  New file, for server-side include.
4353         * docs/footer.html:  New file, for server-side include.
4354         * docs/documentation.html:  Change to use SSI.
4355         * docs/download.html:  Ditto.
4356         * docs/index.html:  Ditto.
4357         * docs/mail.html:  Ditto.
4358         * docs/status.html:  Ditto.
4359         * docs/thanks.html:  Ditto, plus minor updates.
4360         * docs/how.html:  Remove.
4361
4362 2000-03-09  Benjamin Kosnik  <bkoz@gnu.org>
4363
4364         Preliminary alpha-linux support.
4365         * src/locale.cc (ctype<wchar_t>): Use correct types...
4366         * bits/locale_facets.h (ctype<char>): Add __table_type typedef.
4367         (ctype<wchar_t>): Same.
4368         * bits/locale_facets.h (ctype<wchar_t>): Have char and wchar_t
4369         types match for table_size (size_t).
4370
4371         * config/gnu-linux/ctype.cc (ctype): Change char_type to wchar_t
4372         as per char specialization.
4373         * config/*/ctype.cc: Same.
4374         
4375 2000-03-09  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4376
4377         * bits/locale_facets.h (_Ctype<>::mask): Import from base class
4378         _Ctype_nois<>.  Template base classes are never examinated in
4379         first-phase name-lookup. 
4380
4381 2000-03-08  Benjamin Kosnik  <bkoz@gnu.org>
4382
4383         Add Solaris 2.5.1 support.
4384         * config/solaris/solaris2.5/bits/ctype_base.h (ctype_base): And here.
4385         * config/solaris/solaris2.5/ctype.cc: Fixup.
4386         * config/solaris/solaris2.5/bits/ctype_specializations.h: Add.
4387         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add bits for solaris2.5.1.
4388         * aclocal.m4: Regenerate.
4389         * configure: Regenerate.
4390         
4391         * config/default/ctype.cc (ctype): Fixup.
4392
4393 2000-03-07  Benjamin Kosnik  <bkoz@blues.cygnus.com>
4394
4395         * testsuite/27_io/filebuf.cc: Activate init code from yesterday...
4396         * testsuite/27_io/ostream_inserter_arith.cc (testcases): Fix for
4397         non-wchar_t case.
4398
4399 2000-03-07  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4400
4401         * bits/cpp_type_traits.h: Expand on this file purpose.
4402
4403 2000-03-06  Benjamin Kosnik  <bkoz@gnu.org>
4404
4405         * bits/locale_facets.h (ctype<char>): Remove static members, and
4406         re-work initialization code.
4407         (ctype<wchar_t>): Same.
4408         Move _S_touppper to _M_toupper and initialize in ctor.
4409         Move _S_tolower  to _M_tolower and initialize in ctor.  
4410         Move _S_table to _M_ctable and intialize in ctor.
4411         * bits/locale_facets.h (std): And here.
4412         * src/locale.cc (std): Tweak.
4413         * config/gnu-linux/ctype.cc: Change initialization here.
4414         * config/newlib/ctype.cc: And here.
4415         * config/solaris/solaris2.7/ctype.cc: And here.
4416         * config/solaris/solaris2.6/ctype.cc: And here.
4417         
4418         * bits/localefwd.h: Tweak.
4419         * bits/std_streambuf.h: Tweak formatting.
4420
4421         * testsuite/27_io/filebuf.cc: Remove BUFSIZ dependancies.
4422
4423 2000-03-05  Chip Salzenberg  <chip@valinux.com>
4424
4425         * src/misc-inst.cc (basic_iostream<>):  Instantiate.
4426
4427 2000-03-02  Phil Edwards  <pme@sourceware.cygnus.com>
4428             Kevin Atkinson  <kevinatk@home.com> 
4429
4430         Initial grab of SGI's strstream implementation with minor
4431         modifications.
4432         * src/strstream.cc:  New file.
4433         * std/strstream:  New file.
4434         * stl/bits/std_strstream.h:  New file.
4435         * bits/std_streambuf.h:  Add public access.
4436         * src/Makefile.am:  Add strstream sources to list of dependancies.
4437         * src/Makefile.in:  Regenerate.
4438
4439 2000-03-03 2000  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4440
4441         * bits/valarray_meta.h: Fix typo.
4442         
4443 2000-03-02  Alexandre Oliva  <oliva@lsd.ic.unicamp.br> 
4444             Chip Salzenberg  <chip@valinux.com>
4445             Petter Urkedal  <petter@matfys.lth.se>
4446
4447         * src/Makefile.am (myinstallheaders): Hack to avoid
4448         `for i in ; do'.
4449         * src/Makefile.in: Regenerate.
4450         
4451 2000-03-02  Chip Salzenberg  <chip@valinux.com>
4452
4453         * libio/Makefile.an, math/Makefile.an, src/Makefile.am
4454         (LINK): Put quotes around "$(CC)" for libtool link mode,
4455         so libtool will use "-B" options during GCC bootstrap.
4456         * */Makefile.in: Regenerate.
4457         
4458 2000-03-02  Petter Urkedal  <petter@matfys.lth.se>
4459
4460         * config/c_io_libio.h: Enclose it all in ::std.
4461         * bits/basic_string.h (basic_string<>): Make types and
4462         `npos' public.
4463         * mkc++config: Truncate output file before writing.
4464
4465 2000-03-01  Benjamin Kosnik  <bkoz@gnu.org>
4466
4467         * math/cabsf.c (__mycabsf): Rename to cabsf.
4468         * math/cabs.c (__mycabs): Rename to cabs.
4469
4470 2000-02-29  LLeweLLyn Reese  <llewelly@198.dsl.xmission.com>
4471  
4472        * bits/basic_string.h: Move declarations of __out_of_range(),
4473        __length_error() and accompanying macros ...
4474        * bits/exception_support.h: here. (Newly created file).
4475        * bits/basic_string.h: #include <bits/exception_support.h>
4476        * stl/bits/stl_vector.h: #include <bits/exception_support.h>
4477        * src/Makefile.am (headers): Add.
4478        * src/Makefile.in: Regenerate.
4479         
4480 2000-02-29  Benjamin Kosnik  <bkoz@cygnus.com>
4481         
4482         * bits/cpp_type_traits.h: Rename structs so they don't clash with
4483         type_traits.h.
4484         * bits/valarray_array.h: Synch. Fix typos.
4485
4486         * libio/Makefile.am: Change to only compile source files that
4487         config/c_io_libio.cc actually needs.
4488         * libio/Makefile.in: Regnerate.
4489         * libio/PlotFile.hes SFile.h builtinbuf.h editbuf.h floatconv.c
4490         floatio.h fstream.h indstream.h iofclose.c iofdopen.c iofeof.c
4491         ioferror.c iofflush.c iofgetpos.c iofgets.c iofopen.c iofprintf.c
4492         iofputs.c iofread.c iofscanf.c iofsetpos.c ioftell.c iofwrite.c
4493         iogetc.c iogetdelim.c iogetline.c iogets.c ioignore.c iomanip.h
4494         iopadn.c ioperror.c iopopen.c ioprims.c ioprintf.c ioputc.c
4495         ioputs.c ioscanf.c ioseekoff.c ioseekpos.c iosetbuffer.c
4496         iosetvbuf.c iosprintf.c iosscanf.c iostream.h iostrerror.c
4497         ioungetc.c iovfprintf.c iovfscanf.c iovsprintf.c iovsscanf.c
4498         istream.h list.out ostream.h outfloat.c parsestream.h peekc.c
4499         pfstream.h procbuf.h stdiostream.h stream.h streambuf.h strfile.h
4500         strops.c strstream.h: Delete.
4501
4502         * bits/basic_file.h: Stub out or delete unused bits in this
4503         interface.
4504         (filepos_beg): Remove.  
4505         (filepos_cur): Remove.
4506         (filepos_valid): Remove.
4507         * config/c_io_libio.cc: Resynch with the changes to basic_file.
4508
4509 2000-02-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4510
4511         * bits/cpp_type_traits.h: Correct typo.
4512
4513 2000-02-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4514
4515         * bits/cpp_type_traits.h: New file.
4516         
4517         * bits/valarray_array.h: Tweak.  #include <bits/cpp_type_traits.h>
4518         Improve array construction.
4519         (_Array_default_ctor): New dispatcher class. 
4520         (__valarray_default_construct): New function.
4521         (_Array_copy_ctor): New dispatcher class.
4522         (__valarray_copy_construct): New function.
4523         (_Array<>::free_data): Remove.
4524
4525         * src/Makefile.am (headers): Add cpp_type_traits.h
4526         * src/Makefile.in: Regenerate.
4527
4528 2000-02-28  Benjamin Kosnik  <bkoz@cygnus.com>
4529
4530         Prune libio directory to match files in libio/Makefile.
4531         * libio/PlotFile.cc,indstream.cc, isgetsb.cc, sbform.cc,
4532         stream.cc, SFile.cc, ioassign.cc, isscan.cc, sbgetline.cc,
4533         streambuf.cc, builtinbuf.cc, ioextend.cc, osform.cc, sbscan.cc,
4534         strstream.cc, editbuf.cc, iomanip.cc, parsestream.cc,
4535         stdiostream.cc, filebuf.cc, iostream.cc, pfstream.cc,
4536         stdstrbufs.cc, fstream.cc, isgetline.cc, procbuf.cc,
4537         stdstreams.cc: Remove.
4538         * libio/floatio.h, iolibio.h, iostdio.h, iostreamP.h: Remove.
4539         * libio/iofflush_u.c: Remove.
4540         
4541         * libio/dbz: Remove.  
4542         * libio/include: Remove.  
4543         * libio/stdio: Remove.  
4544         * libio/tests: Remove.  
4545         * libio/testsuite: Remove.
4546         
4547         * config/c_io_libio.cc: Add fcntl.h include for Solaris.
4548
4549         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Add bits.
4550         * configure.in: Replace 'grep -e' with 'grep' for Solaris.
4551         * configure: Regenerate.
4552
4553 2000-02-25  Benjamin Kosnik  <bkoz@gnu.org>
4554
4555         Abstract out the underlying "C" io bits.
4556         * bits/std_new.h: Remove <stl_config> include, as well as <cstddef>.
4557         * stl/bits/stl_string_fwd.h: Remove <stddef> include.
4558         * bits/std_cwchar.h: Wrap with _GLIBCPP_USE_WCHAR_T guards. Don't
4559         include <cstddef>.
4560         * stl/bits/stl_config.h: Don't include _G_config.h.
4561
4562         * bits/basic_file.h: Allow for non-inheritance based __basic_files.
4563         * config/c_io_libio.h (_GLIBCPP_BASIC_FILE_INHERITANCE): Define.
4564         * config/c_io_libio.cc: Tweak.
4565
4566         * src/Makefile.am (TOPLEVEL_INCLUDES): Add includedir.
4567         * src/Makefile.in: Regenerate.
4568         * Makefile.am (AM_MAKEFLAGS): Define includedir so that
4569         prefix/include files will be picked up.
4570         * Makefile.in: Regenerate.
4571         * math/Makefile.am (TOPLEVEL_INCLUDES): And here.
4572         * libio/Makefile.am (TOPLEVEL_INCLUDES): And here.
4573         
4574         * bits/std_ios.h: Include <bits/c++io.h> instead of libio.
4575         * bits/fpos.h: And here.        
4576         * bits/basic_file.h (get_fileno): Move definition from ...
4577         * src/basic_file.cc (std): To here.
4578         * bits/fpos.h: Move types for streamoff, streampos to..
4579         * bits/basic_file.h: Move __c_file_type and fpos typedefs to...
4580         * config/c_io_libio.h: ...here.
4581         (_GLIBCPP_[BOOLALPHA, HEX, DEC, FIXED, INTERNAL, LEFT, OCT, RIGHT,
4582         SCIENTIFIC, SHOWBASE, SHOWPOINT, SHOWPOS, SKIPWS, UNITBUF,
4583         UPPERCASE, ADJUSTFIELD, BASEFIELD, FLOATFIELD, BADBIT, EOFBIT,
4584         FAILBIT, GOODBIT, APP, ATE, BINARY, IN, OUT, TRUNC): New macros to
4585         abstract out bits in ios_base.
4586         * bits/ios_base.h: Re-macrofy.  
4587         * src/basic_file.cc : Rename, move to
4588         * config/c_io_libio.cc: Here. 
4589         * config/c_io_libio.h: New file. Include libio.
4590         * bits/c++config.h: Don't define _GLIBCPP_USE_LIBIO.
4591         * configure.in (blddir): Add enabling bits for GLIBCPP_ENABLE_CSTDIO.
4592         * configure: Regenerate.
4593         * src/Makefile.am (sources): Take out basic_file.cc and add c++io.cc.
4594         (generated_headers): Add c++io.h
4595         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): New function to select
4596         underlying "C" io library.
4597         * acinclude.m4 (GLIBCPP_CHECK_LIBIO): Roll functionality into
4598         GLIBCPP_ENABLE_CSTDIO.
4599         
4600         * configure.in: Add configure bits for cross compiling non-newlib
4601         targets. .
4602         GLIBCPP_CHECK_COMPILER_VERSION: Take out this test for this
4603         target, as we assume g++ support is not the limiting factor.
4604         GLIBCPP_CHECK_LIBIO: Same, know we don't need libio.  
4605         * configure: Regenerate.
4606         
4607 2000-02-22  Benjamin Kosnik  <bkoz@cygnus.com>
4608
4609         * Makefile.am (INTERFACE): Define.
4610         * Makefile.in: Regenerate.
4611         * libio/ChangeLog: Add entry.
4612
4613 2000-02-21  Benjamin Kosnik  <bkoz@cygnus.com>
4614
4615         * docs/install.html: Update install directions.
4616
4617         * docs/status.html: Fix sidebar to be consistent.
4618         * docs/thanks.html: Same.
4619         * docs/links.html: Same.
4620         * docs/mail.html: Same.
4621         * docs/download.html: Same.
4622
4623         * testsuite/27_io/filebuf.cc: Change BUFSIZ to buffer_size, and
4624         kill the macro BUFSIZ. I think the solaris fails lie elsewhere
4625         however, in the ctype_char_members.cc fail (for instance.)
4626         * testsuite/17_intro/headers.cc: Remove extraneous fails for hosts
4627         that do not have wchar_t enabled.
4628         * testsuite/27_io/ostream_inserter_arith.cc (struct _TestCase):
4629         Same here.
4630         * testsuite/27_io/iostream_objects.cc: And here.
4631
4632         * libio/gen-params (CONFIG_NM): Specifically add in nm as the
4633         default CONFIG_NM.
4634         
4635 2000-02-18  Benjamin Kosnik  <bkoz@haight.constant.com>
4636             Tom Tromey  <tromey@cygnus.com>
4637
4638         * configure.in: Manually add MULTISUBDIR.
4639         * configure: Regenerate.
4640         * src/Makefile.am (MULTISUBDIR): Add the lesser evil of Tom's two
4641         "Eww" hacks to get multilib installs working correctly.
4642         ($(headers): Test for MULTISUBDIR before installing.
4643         * Makefile.am (AM_MAKEFLAGS): Don't define MULTISUBDIR, instead
4644         have configure hack it in.
4645         * Makefile.in: Regenerate.
4646         * acinclude.m4 (GLIBCPP_CXXFLAGS): Tweak wording. 
4647         Add enabling bits for native Cygwin ctypes, and other newlib-based
4648         Oses.
4649         
4650 2000-02-17  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
4651
4652         * mkc++config (OUT_H): Remove EOF in cygwin.
4653         * acinclude.m4 (LIBS): Tweaks to allow cygwin to configure.
4654
4655         Tom Tromey  <tromey@cygnus.com>
4656         * src/Makefile.am: Tweaks for installing multilibs.
4657
4658 2000-02-17  Benjamin Kosnik  <bkoz@cygnus.com>
4659
4660         * src/Makefile.am: 
4661         (toolexeclib_LTLIBRARIES): Use this instead of lib_LTLIBRARIES.
4662         Add USE_LIBDIR bits here, not...
4663         * src/Makefile.in: Regenerate.
4664         * Makefile.am: ...here.
4665         * Makefile.in: Regenerate.
4666         
4667 2000-02-17  Benjamin Kosnik  <bkoz@gnu.org>
4668
4669         * acinclude.m4 (LIBS): Fix typos.
4670         * configure.in: _GLIBCPP_BUGGY_FLOAT_COMPLEX,
4671         _GLIBCPP_BUGGY_COMPLEX for crosses.
4672         * src/Makefile.am (std_headers): Add libio.h as install include,
4673         as with _G_config.h
4674         * src/Makefile.in: Regenerate.
4675
4676         * mkcheck.in: Add bits to set CXX to cross compiler.
4677
4678         * src/complex_io.cc: Tweak.
4679         * configure.in: _GLIBCPP_BUGGY_COMPLEX for crosses.
4680         * configure: Regenerate.
4681         
4682         * config/newlib/ctype.cc: Tweaks.
4683         * config/newlib/bits/ctype_base.h (ctype_base): Set mask to char,
4684         not const char.
4685         * src/complex_io.cc (operator>>(istream, complex): Define out if
4686         BUGGY_COMPLEX.
4687
4688 2000-02-16  Benjamin Kosnik  <bkoz@cygnus.com>
4689
4690         * config/newlib/bits/ctype_base.h: Correct _S_table.
4691
4692         Reconfigure ctype support for "C" libraries that don't use arrays.
4693         * testsuite/22_locale/ctype_char_members.cc: New file. Test for
4694         basic ctype<char> functionality.
4695         * src/locale.cc: Move host-specific ctype functions that are not
4696         inlines to config/*/ctype.cc files.
4697         (ctype<char>::do_tolower): For instance.
4698         (ctype<char>::do_toupper): For instance.
4699         (ctype<wchar_t>::do_tolower): For instance.
4700         (ctype<wchar_t>::do_toupper): For instance.
4701         * config/gnu-linux/ctype.cc: Modify.
4702         * config/default/ctype.cc: Modify.
4703         * config/newlib/ctype.cc: Modify.
4704         * config/solaris/solaris2.6/ctype.cc: Modify.
4705         * config/solaris/solaris2.7/ctype.cc: Modify.
4706
4707         * bits/locale_facets.h (ctype<char>::is): Mark inline, move
4708         out-of-line.
4709         (ctype<char>::scan_is): Here too.
4710         (ctype<char>::scan_not): Here too.
4711         Move out of line defs to config/*/bits/ctype_specializations.h.
4712         * config/gnu-linux/bits/ctype_specializations.h: ...here. New file.
4713         * config/default/bits/ctype_specializations.h: ...here. New file.
4714         * config/newlib/bits/ctype_specializations.h: ...here. New file.
4715         * config/solaris/solaris2.6/bits/ctype_specializations.h: New file.
4716         * config/solaris/solaris2.7/bits/ctype_specializations.h: New file.
4717         * src/Makefile.am (headers): Add ctype_specializations.h.
4718         * src/Makefile.in: Regenerate.
4719         
4720         Aaron Weiss <weiss@clearway.com> 
4721         * Makefile.am (AM_MAKEFLAGS): Add NM_FOR_BUILD, NM_FOR_TARGET, and
4722         CONFIG_NM for Solaris builds.
4723         * Makefile.in: Regenerate.
4724         
4725         * src/locale.cc: Tweak formatting.
4726
4727 2000-02-15  Benjamin Kosnik  <bkoz@cygnus.com>
4728
4729         Jim Parsons  <parsons@clearway.com> 
4730         * testsuite/27_io/istream_unformatted.cc (test06): Add test.
4731         * bits/istream.tcc (read): Set failbit if !good(). Don't increment
4732         gcount if eof.
4733         (readsome): Same.
4734
4735         Michel Decima  <michel.decima@cnet.francetelecom.fr>
4736         * testsuite/27_io/streambuf.cc: Add test.
4737         * bits/streambuf.tcc (xsgetn): Don't test for valid mode.
4738         (xsputn): Same.
4739         
4740         * src/Makefile.am (AM_CXXFLAGS): Pass down AC_CXXFLAGS,
4741         OPTIMIZE_CXXFLAGS, etc. So --enable-debug and --enable-namespaces
4742         will work correctly, for instance.
4743         * src/Makefile.in: Regenerate.
4744
4745         * bits/locale_facets.h: Fix merge error.
4746         (num_put::put(unsigned long long): And here.
4747         * mknumeric_limits (trait_name): Same.
4748         
4749 2000-02-15  Chip Salzenberg  <chip@valinux.com>
4750
4751         Support 'configure --enable-long-long'.
4752         * bits/c++config.h (_GLIBCPP_USE_LONG_LONG): Remove.
4753         * stl/bits/stl_config.h (__STL_LONG_LONG): Remove '#if 0'.
4754         * acconfig.h (_GLIBCPP_USE_LONG_LONG): Add.  Default to undef.
4755         * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Define flag macro.
4756         * configure.in (GLIBCPP_ENABLE_LONG_LONG): Use it.
4757
4758         * aclocal.m4: Regenerate.
4759         * config.h.in: Regenerate.
4760         * configure: Regenerate.
4761
4762 2000-02-15  Chip Salzenberg  <chip@valinux.com>
4763
4764         Improve (complete?) 'long long' support.
4765         * mknumeric_limits: Call $CXX with $CPPFLAGS.  Define statics
4766         for {,unsigned} long long if the limits header declares them.
4767         * src/gen-num-limits.cc: Include <bits/c++config.h> early.
4768         (__USE_GNU, _GNU_SOURCE): Define if _GLIBC_USE_LONG_LONG.
4769         (long long, unsigned long long): Gen limits if _GLIBC_USE_LONG_LONG.
4770         * bits/locale_facets.h (num_get<>::get(..., long long &)): Define.
4771         (num_put<>::put(..., long long)): Likewise.
4772         (num_put<>::put(..., unsigned long long)): Likewise.
4773         * bits/locale_facets.tcc (_S_format): Rename from _S_format_long.
4774         Templatize last parameter to support 'long long'.
4775         (num_put<>::put(...)): Call _S_format with new name.
4776         (num_put<>::put(..., long long)): Define.
4777         (num_put<>::put(..., unsigned long long)): Likewise.
4778         * src/locale-inst.cc (_S_format): Instantiate under new name.
4779
4780 2000-02-15  Petter Urkedal  <petter@matfys.lth.se>
4781
4782         * src/complex.cc (operator<<, operator>>): Moved from here...
4783         * src/complex_io.cc: ...to new file.
4784         (operator>>): Stub replaced by the real thing.
4785         * src/Makefile.am (sources): Inserted complex_io.cc.
4786         * src/Makefile.in: Regenerate.
4787         * testsuite/26_numerics/complex_inserters_extractors.cc: Check it.
4788
4789 2000-02-14  Benjamin Kosnik  <bkoz@gnu.org>
4790
4791         Add in ctype information for newlib "C" libraries.
4792         * config/newlib: New directory
4793         * config/newlib/bits/ctype_base.h: New file.
4794         * config/newlib/ctype.cc: New file.
4795
4796         * ctype/config/linux/*: Rename, move to...
4797         * ctype/config/gnu-linux/*: Here.
4798         
4799         Finish off multilib work.
4800         * configure.in: Don't set CXX if not Canadian cross.
4801         * configure: Regenerate.
4802         * acinclude.m4 (GLIBCPP_CHECK_LIBIO): Tweak messages.
4803         * aclocal.m4: Regenerate.
4804         * config.h.in: Regenerate.
4805
4806         * install-sh: Remove, as AC_CONFIG_AUX_DIR(..) picks this out of
4807         the top-level gcc directory now.
4808         * mkinstalldirs: Remove.
4809         * missing: Remove
4810         * ltconfig: Remove.
4811         * ltmain.sh: Remove.
4812         * config.guess: Remove.
4813         * config.sub: Remove.
4814         
4815 2000-02-13  Benjamin Kosnik  <bkoz@cygnus.com>
4816
4817         * configure.in (glibcpp_basedir): Add glibcpp_basedir.
4818         * Makefile.am: Move mutlilib stuff to src/Makefile.am. 
4819         * Makefile.in: Regenerate.
4820         * src/Makefile.am: Add multilib bits.
4821         * src/Makefile.in: Regenerate.
4822         
4823 2000-02-12  Benjamin Kosnik  <bkoz@cygnus.com>
4824
4825         * configure.in: Clean, add some multilib support.
4826         * configure: Regenerate.
4827         * configure.host: New file.
4828
4829         * acinclude.m4: GLIBCPP_CHECK_LIBIO. Take bits from configure.in and 
4830         roll a new function, checks for presence of libio.
4831         GLIBCPP_CHECK_COMPILER_VERSION: Same.
4832         GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT: Same.
4833         GLIBCPP_CHECK_MATH_SUPPORT: Same.
4834         GLIBCPP_CHECK_WCHAR_T_SUPPORT: Same.
4835         GLIBCPP_CHECK_LIBIO: Same.
4836         GLIBCPP_CHECK_CTYPE: Same.
4837         * aclocal.m4: Regenerate.
4838         * config.h.in: Regenerate.      
4839
4840         * Makefile.am: Tweaks.
4841         * Makefile.in: Regenerate.
4842         
4843 2000-02-11  Benjamin Kosnik  <bkoz@cygnus.com>
4844
4845         * configure.in: Make outputing the libio/Makefile
4846         conditional. Haha, yeah right. Anyway, we instead do this thing
4847         where if libio is found, then we build a null library, as there is
4848         no point in duplicating the found libio.
4849         * Makefile.am: Tweak.
4850         * Makefile: Regenerate.
4851         * libio/Makefile.am: Add _G_config.h stuff. Now cross compilers
4852         are happy happy happy.
4853         * libio/Makefile.am: Regenerate.
4854         * libio/gen-params: New file.
4855         * src/Makefile.am: Make libio.la non-conditional, as it is now a
4856         null library if it's not needed. At least we are being consistent,
4857         if not as elegant as we could be.
4858         * src/Makefile: Regenerate.
4859         
4860 2000-02-10  Benjamin Kosnik  <bkoz@gnu.org>
4861
4862         * Makefile.am (SUBDIRS): Add libio again.
4863         * Makefile.in: Regenerate.
4864         * configure.in (BUILD_LIBIO_INCLUDE): And here.
4865         (AC_OUTPUT): Generate libio/Makefile again.
4866         * configure: Regnerate.
4867         * src/Makefile.am (libstdc___la_LIBADD): Change path so that
4868         libio.la is referring back to the libio subdir again.
4869         (LIBIO_INCLUDES): And here.
4870         * src/Makefile.in: Regenerate.
4871         
4872 2000-02-09  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
4873
4874         * math/complex-stub.h: Missed one. Change __mycabs* to cabs*.
4875
4876 2000-02-09  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4877
4878         * bits/valarray_array.h (<bits/std_new.h>): #include.
4879         (__valarray_get_memory): New function.
4880         (__valarray_release_memory): Likewise.
4881         (__valarray_default_construct): New functions.
4882         (__valarray_fill_construct): New function.
4883         (__valarray_copy_construct): New funstions.
4884         (__valarray_destroy_elements): New function.
4885
4886         * bits/valarray_array.tcc (__valarray_copy_construct): New
4887         functions. 
4888
4889         * bits/std_valarray.h (valarray<>::valarray): Use
4890         __valarray_get_memory and __valarray_fill_construct,
4891         __valarray_copy_construct, __valarray_default_construct to
4892         properly construct valarrays.  
4893         (valarray<>::~valarray): Use __valarray_destroy_elements to
4894         destroy elements and __valarray_release_memory to return memory.
4895         (valarray<>::shift): Tweak. 
4896         (valarray<>::cshift): Likewise.
4897         (valarray<>::resize): Robustify.
4898
4899 2000-02-09  Benjamin Kosnik  <bkoz@cygnus.com>
4900
4901         * mknumeric_limits (XCOMPILE): Add support for cross compiling.
4902         * bits/limits_generic.h: New file, defaults.
4903         * src/limits_generic.cc: New file, defaults.    
4904         * configure.in (LIBS): Run mknumeric_limits at configure time.
4905         * acconfig.h: Remove PACKAGE VERSION HAVE_COMPLEX
4906         HAVE_LC_MESSAGES, tidy, clean, etc.
4907         * src/Makefile.am (geberated_sources): Remove.
4908
4909         * bits/fpos.h: Use _GLIBCPP_USE_LIBIO guards for libio typenames
4910         (_IO_off_t, _IO_ssize_t)
4911
4912         * src/complex.cc: Use glibc's <complex.h> if
4913         possible. . . apparently this was not being done before. Include
4914         tweaks.
4915         (abs): Enable cabs if it's around, instead of mycabs.
4916         * src/complexf.cc (FCT): Add global scope to match complex.cc.
4917         * src/complexl.cc (FCT): Same.
4918         * math/Makefile.am (EXTRA_LONG_DOUBLE_yes): Change mycabsl to cabsl.
4919         (libmath_la_SOURCES): And here.
4920         * math/(mycabs.c, mycabsf.c, mycabsl.c): Move to. . .
4921         * math/(cabs.c, cabsf.c, cabsl.c): . . . Here.
4922         * math/complex-stub.h: Move c_log declarations into. . . 
4923         * math/mathconf.h: Here. This is because glibc's <complex.h>
4924         declares cclog, not c_log. The case of the dueling standards. . .
4925         * math/mathconf.h: Add _GLIBCPP_HAVE_* to macros.
4926         * math/Makefile.am: Change.
4927         * math/nan.c (nan): Change signature.
4928         * math/mathconf.h (NAN): Same.
4929         * math/complex-stub.h (nan): And here.
4930         
4931         * Makefile.am (rebuild-stamp): Remove libio and libio
4932         dependancies.  Plan to take out libio subdir and just merge with
4933         libio in top level gcc directory. Of course, this assumes there is
4934         a libio in the top level directory (ie ../src_dir). This will
4935         probably change the way this library is configured by default.
4936         * libio/*: Remove.
4937
4938 2000-02-09  Chip Salzenberg  <chip@valinux.com>
4939
4940         * localefwd.h (locale): Make public: facet, id, category.
4941         
4942 2000-02-09  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4943
4944         * testsuite/26_numerics/buggy_complex.cc: Fix Origin:.
4945
4946         * acinclude.m4: Patch only once!
4947
4948 2000-02-09  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4949
4950         * testsuite/26_numerics/buggy_complex.cc: New file.
4951
4952 2000-02-05  Petter Urkedal  <petter@matfys.lth.se>
4953
4954         * acinclude.m4: New GLIBCPP_CHECK_COMPLEX_SUPPORT macro. Based
4955         on the 1999-11-21 entries by Mumit Khan.
4956         * configure.in: Use.
4957         * acconfig.h: New _GLIBCPP_BUGGY_COMPLEX macro.
4958         * bits/std_complex.h: Use.
4959         
4960 2000-02-04  Philip Martin <pm@corris.dircon.co.uk>
4961
4962        * stl/bits/stl_algobase.h: Add traits based dispatch for
4963        __normal_iterator in the copy_backward()algorithm
4964        * stl/bits/stl_vector.h: Reduce use of __normal_iterator
4965        base() function.
4966
4967 2000-02-04  Mumit Khan  <khan@xraylith.wisc.edu>
4968         
4969         * src/gen-num-limits.cc (signal_handler): Work around signal
4970         handling problem on Cygwin. 
4971         Thanks to Chris Faylor <cgf@cygnus.com>.
4972
4973 2000-02-03  Benjamin Kosnik  <bkoz@cygnus.com>
4974
4975         * configure.in: Add (preliminary) support for cross compiles and
4976         multilibs.
4977         Remove AC_C_BIGENDIAN tests. Why is this necessary? Cross
4978         compilation freaks on this.
4979         * configure: Regenerate.
4980         * src/Makefile.am: Add support for cross compiles.
4981         * src/Makefile: Regenerate.
4982         * Makefile.am: Add support for cross compiles.
4983         * Makefile.in: Regenerate.
4984         
4985 2000-02-02  Benjamin Kosnik  <bkoz@cygnus.com>
4986
4987         * configure.in (LIBS): Remove unused subdirs.   
4988         * configure: Regenerate.
4989         * Makefile.am (SUBDIRS): And here.
4990         * Makefile.in: Regenerate.
4991         * src/Makefile.am (sources): And here.
4992         * src/Makefile.in: Regenerate.
4993         * string/*: Remove.
4994         * amm1/*: Remove.
4995         * generic/*: Remove.
4996         * glibc/*: Remove.
4997         * mkcheck.in (INC_PATH): Include $BUILD_DIR before any source dirs.
4998
4999         * libtool: Update to libtool-1.3.4.
5000         * ltconfig: Same
5001         * ltmain.sh: Same
5002         * config.sub: Same.
5003         * config.guess: Same.
5004
5005 2000-02-02  Benjamin Kosnik  <bkoz@cygnus.com>
5006             Alexandre Petit-Bianco  <apbianco@cygnus.com>    
5007
5008         * mkc++config: New file. Put autoconf macros into _GLIBCPP_
5009         namespace instead of polluting global namespace with duplicate
5010         autoconf output.
5011         * configure.in (AC_OUTPUT): Don't need to generate bits/config.h
5012         here anymore. . .
5013         (AC_OUTPUT_COMMANDS): Make it here.
5014         * configure: Regenerate.
5015         * bits/c++config.h.in (_CPP_CPPCONFIG): Change. Tweak. Remove
5016         endif, as now we will add it manually.
5017         Move to this file. . .
5018         * bits/c++config.h: New file. Same as old c++config.h.in except
5019         the ending macro guard is now appended manually.
5020
5021         * bits/locale_facets.tcc: Change HAVE_* macros to _GLIBCPP_HAVE_*.
5022         * bits/std_cmath.h: Same here.
5023         * bits/std_cwchar.h: And here.
5024         * src/locale.cc: And here.
5025         * src/complexl.cc: And here.
5026         * math/mathconf.h: Change to include "config.h" instead of
5027         bits/c++config.h.
5028         
5029 2000-02-01  Benjamin Kosnik  <bkoz@gnu.org>
5030
5031         * configure.in: Add support for threads. Try a model closer to
5032         libjava, as hopefully if the thread bits are added carefully
5033         enough, the source code will not have gross hacks. Besides, the
5034         libstdc++-v2 model could be easily emulated without the necessity
5035         of linking files in (as currently done)--all that needs to be done
5036         is AC_DEFINE(-D_PTHREADS) etc. However, let's try something
5037         new. . . and see if we arrive at a more elegant solution.
5038         * configure: Regenerated.
5039         * config/threads-no.h: New file. 
5040         * config/threads-posix.h: New file. 
5041         * src/Makefile.am (myinstallheaders): Install c++threads.h.
5042         * src/Makefile.in: Regenerated.
5043         
5044 2000-01-31  Benjamin Kosnik  <bkoz@gnu.org>
5045
5046         META-QUESTION: Can we just make a "header.html" file and a
5047         "footer.html" and just include them in all the doc sub-pages. The
5048         duplication of the header info is kind of gross, and weak
5049         considering that if you change order or layout then all this stuff
5050         has to be changed in all the sub-files.
5051
5052         * docs/17_intro/contribute.html: Take out duplicate file info.
5053         * README: Should just contain a link to the docs/index.html
5054         page. Duplicate information removed.
5055         * docs/faq/index.html: Remove indexes into HOWTOS.
5056         * docs/17_intro/howto.html: Make intro and docs part more
5057         centralized. Move intro stuff to documentation.html.
5058         * docs/how.html: Tweak. Does this file need to exist? What calls it?
5059         * docs/README.html: Move documentation files to
5060         documentation.html. Should this file be renamed
5061         "config_and_install.html" as that is what is apparently covered
5062         here. . .
5063         * docs/install.html: Yes. New file, moved and renamed README.html.
5064         * docs/documentation.html: New file. This is the index file for
5065         the documentation.
5066         * docs/index.html: Edit sidebar order. Insert new link to new
5067         documentation spine, documentation.html.
5068
5069 2000-01-31  Scott Snyder  <snyder@fnal.gov>
5070
5071         * bits/istream.tcc (operator>>(istream&, string&)): Set failbit if 
5072         we don't extract any characters.
5073         * testsuite/21_strings/inserters_extractors.cc (main): New tests.
5074         
5075 2000-01-31  Anders Widell  <awl@hem.passagen.se>
5076
5077         * stl/bits/std_bitset.h (_M_do_left_shift): Handle case when shift
5078         step is a multiple of the word size.
5079         (_M_do_right_shift): Same.
5080         * testsuite/23_containers/bitset_shift.cc: New file.
5081         
5082 2000-01-31  Nathan Myers  <ncm@zembu.com>
5083         
5084         * README (Documentation): Add path info, fix typos.
5085         
5086 2000-01-26  Benjamin Kosnik  <bkoz@redhat.com>
5087         
5088         * bits/locale_facets.tcc (num_get::_M_extract): Add the freaking
5089         crazy group checking for numpunct, for real this time. At some
5090         point, the local variable __grp should probably get replaced a
5091         char array, or something a bit more lightweight.
5092         (num_get::do_get(bool)): Simplify. Don't set bool reference to
5093         parsed value unless err isn't failbit.
5094         (num_get::do_get(*)): Same, make consistent.
5095
5096         Nathan Myers  <ncm@zembu.com>
5097         Jim Parsons  <parsons@clearway.com>
5098         * testsuite/27_io/istream_extractor_arith.cc (test08): Add
5099         more grouping tests, tweak, scold, wine.
5100         
5101 2000-01-24  Benjamin Kosnik  <bkoz@gnu.org>
5102
5103         * testsuite/27_io/istream_extractor_arith.cc (test07): Add
5104         grouping tests.
5105         * bits/locale_facets.tcc (num_get::_M_extract): Change to fix
5106         grouping bugs. Only allow thousands_sep if _M_use_groupings is
5107         true.
5108
5109         via <llewelly@198.dsl.xmission.com>
5110         * stl/bits/stl_vector.h (vector::_M_range_check): Throw
5111         out_of_range instead of range_error.
5112
5113 2000-01-17  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5114
5115         * bits/std_iomanip.h (setw): Fix typo.
5116
5117 2000-01-14  Benjamin Kosnik  <bkoz@gnu.org>
5118
5119         * testsuite/27_io/istream_extractor_arith.cc: Fix.
5120         * bits/locale_facets.tcc (do_get(...void)): Change to strtoul.
5121         * testsuite/27_io/istream_unformatted.cc (test04): Tweak.
5122         
5123 2000-01-14  Phil Edwards  <pme@sourceware.cygnus.com>
5124
5125         * docs/README.html:  Reformat, more installation instructions.
5126         * docs/gccrebuild.html:  New file.
5127         * docs/faq/index.html:  Update for new testsuite output filenames.
5128         * docs/faq/index.txt:  Regenerate.
5129
5130 2000-01-14  Phil Edwards  <pme@sourceware.cygnus.com>
5131
5132         * Makefile.am (rebuild-stamp, all-local):  New targets.
5133         * Makefile.in:  Regenerated.
5134         * acinclude.m4:  New macro, GLIBCPP_ENABLE_RELIBGCC.
5135         * aclocal.m4:  Regenerated.
5136         * configure.in:  Call new macro.  Also do some sanity checks
5137           for combinations of --enable's that may not make sense.
5138         * configure:  Regenerated.
5139
5140 2000-01-13  Benjamin Kosnik  <bkoz@cygnus.com>
5141
5142         * testsuite/27_io/istream_extractor_arith.cc: Add checks for void*.
5143         * bits/locale_facets.tcc (do_get::(...void)): Set fmtflags
5144         correctly for hex-formatted input.
5145
5146         * testsuite/27_io/istream_manip.cc (test01): Fix, as per setting
5147         eofbit instead of eofbit | failbit.
5148         * testsuite/27_io/istream_unformatted.cc (test04): Fix, as
5149         ifstreams now are opened or'd with ios_base::in (as is correct).
5150         * bits/fstream.tcc (filebuf::seekoff): Simplify.
5151         * testsuite/27_io/ios_base_members_static.cc (test01): Fix thinko.
5152
5153 2000-01-12  Benjamin Kosnik  <bkoz@gnu.org>
5154
5155         * bits/std_fstream.h: Add ios_base as a friend to basic_filebuf.
5156         * bits/basic_file.h (basic_file::filepos_cur): Remove incorrect
5157         (misleading) code.
5158         (__basic_file::filepos_valid): Same.
5159         (__basic_file::filepos_beg): Same.
5160         (__baseic_file::get_fileno): New function.
5161         * bits/ios_base.h (ios_base::sync_with_stdio): Implement, including
5162         feedback from LWG 49.
5163         * src/ios.cc: Move definition here.
5164         * testsuite/27_io/ios_base_members_static.cc (test01): Add tests.
5165         
5166         * bits/std_sstream.h (_M_really_sync): Simplify argument list. Set
5167         output part of internal buffer based on string size, so that
5168         _M_out_end is set consistently with filebufs. Correct comments.
5169         * bits/sstream.tcc (stringbuf::overflow): Update here too.
5170         * testsuite/27_io/stringbuf.cc: Changes.
5171         
5172 2000-01-11  Benjamin Kosnik  <bkoz@gnu.org>
5173
5174         * bits/sstream.tcc (seekoff): Set based on end of written buffer,
5175         not buffer size.
5176         * testsuite/27_io/stringbuf.cc: Add tests for seekoff(end).
5177
5178         * bits/std_fstream.h (ifstream::open): Add ios_base::in to openmode.
5179         (ofstream::open): Add ios_base::out to openmode.
5180
5181         * bits/locale_facets.tcc (_M_extract): Have consistency between
5182         istream::sentry and extractors, where failbit | eofbit is
5183         set. Don't change this, but instead change. . (do some formatting
5184         tweaks.)  
5185         * bits/istream.tcc (istream::sentry): Only set eofbit.
5186         
5187 2000-01-10  Benjamin Kosnik  <bkoz@gnu.org>
5188
5189         * testsuite/27_io/istringstream_members.cc: New file.
5190
5191 2000-01-09  Benjamin Kosnik  <bkoz@gnu.org>
5192
5193         * bits/istream.tcc (istream::sentry): Flush.
5194
5195         * configure.in (AC_OUTPUT_COMMANDS): Simplify.
5196         * configure: Regenerate.
5197         * src/Makefile.am (generated_headers): Remove bits/c++config.h so
5198         that make clean will not delete it.
5199         * src/Makefile: Regenerate.
5200         
5201 2000-01-07  Phil Edwards  <pme@sourceware.cygnus.com>
5202
5203         * mkcheck.in:  Use host-specific invocation of size(1);
5204           GNU binutils isn't necessarily there (more's the pity).
5205
5206 2000-01-06  Benjamin Kosnik  <bkoz@cygnus.com>
5207
5208         * configure.in (LIBS): Better tests for solaris2.6.
5209         * configure: Regenerate.
5210
5211          <vakatov@ncbi.nlm.nih.gov>
5212         * bits/std_sstream.h: As per libstdc++20.
5213
5214 2000-01-06  Benjamin Kosnik  <bkoz@gnu.org>
5215
5216         Break out configuration on solaris.
5217         * configure.in (ctype_solaris): Add in bits for solaris2.6 and 2.7.
5218         * config/solaris/ctype.cc: Delete and move to proper version.
5219         * config/solaris/bits: Same.
5220         * config/solaris/solaris2.5: Add this directory, with subdir bits
5221         and file ctype.cc. Probably doesn't work.
5222         * config/solaris/solaris2.6: Same.
5223         * config/solaris/solaris2.7: Same, as per specs via Phil Edwards.
5224         
5225         * Makefile.am: Change paths to mkcheck.
5226         * Makefile: Regenerate.
5227         * configure.in (AC_OUTPUT_COMMANDS): Build mkcheck here.
5228         * configure: Regenerate.
5229         * src/Makefile.am (generated_headers): Add bits/c++config.h.
5230
5231         * mkcheck: Now autogenerated by configure and renamed. . .
5232         * mkcheck.in (INC_PATH): Add glue for ctype_include_dir.        
5233         Have longer-style dates.
5234         Raja R Harinath  <harinath@cs.umn.edu>
5235         * mkcheck: Change path to #!/usr/clocal/bin/bash.
5236
5237         * docs/README.html: Correct links, maybe. FAQ, install notes, and
5238         general documentation need to be organized around each other, not
5239         fight against each other. . .
5240
5241 2000-01-04  Phil Edwards  <pme@sourceware.cygnus.com>
5242             Nicolai Josuttis <nicolai.josuttis@braunschweig.netsurf.de>
5243
5244         * README:  Add a note referring to README.html.
5245         * docs/README.html:  New file from Nicolai.
5246         * docs/faq/index.html:  Move "how to get a copy" to here.
5247         * docs/gentop/footchunk.html:  Update.
5248         * docs/gentop/headchunk.html:  New links according to
5249           bkoz's idea for "How to..." stuff.
5250         * docs/gentop/thanks:  Actually put people here.
5251         * docs/download.html:  Regenerated.
5252         * docs/index.html, docs/links.html, docs/mail.html,
5253           docs/status.html, docs/thanks.html, docs/faq/index.txt:  Ditto.
5254         * docs/how.html:  Ditto.  (This file should go away soon.)
5255
5256 1999-12-26  Phil Edwards  <pme@sourceware.cygnus.com>
5257
5258         * docs/gentop/status:  Add snapshot version column, update
5259           for Solaris 7.
5260         * docs/status.html:  Regenerated.
5261
5262 1999-12-26  Phil Edwards  <pme@sourceware.cygnus.com>
5263
5264         * docs/faq/index.html:  Turn README and RELEASE-NOTES into links
5265           from installation FAQ, and specify location of text files.
5266         * docs/faq/index.txt:  Regenerated.
5267
5268 1999-12-23  Phil Edwards  <pme@sourceware.cygnus.com>
5269
5270         * docs/gentop/download:  Add links to prebuilds for Cygwin/Mingw32.
5271         * docs/download.html:  Regenerated.
5272
5273 1999-12-22  Phil Edwards  <pme@sourceware.cygnus.com>
5274
5275         * docs/faq/index.html:  Update 'what works' for .7 snapshot,
5276           clean up various links.
5277         * docs/faq/index.txt:  Regenerated.
5278         * docs/gentop/gentop:  Smarter regeneration script.
5279         * docs/gentop/{head,foot}chunk.html:  Updated with new
5280           contributors link and mod date.
5281         * docs/gentop/index:  Snapshot relase date.
5282         * docs/gentop/thanks:  New contributors page added.
5283         * docs/{download,how,index,links,mail,status,thanks}.html:
5284           Regenerated from gentop; thanks.html created.
5285
5286 1999-12-21  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
5287
5288         * bits/c++config.h.in (__GLIBCPP__): 19991221.
5289         * docs/index.html: Add correct information.     
5290
5291         * config/irix: New directory.
5292         * config/irix/ctype.cc: Add irix-6.5 info. Not tested.
5293         * config/irix/bits/ctype_base.h: And here.
5294
5295         * config/aix: New directory.
5296         * config/aix/ctype.cc: Add aix-4.2 info. Not tested.
5297         * config/aix/bits/ctype_base.h: And here.
5298         
5299 1999-12-21  Philip Martin  <pm@corris.dircon.co.uk>
5300
5301         * bits/basic_string.h: Add special case handling for integral
5302         "iterators".
5303         * bits/std_string.h: include type_traits.h
5304         * testsuite/21_strings/ctor_copy_dtor.cc: Tweak.
5305         
5306 1999-12-21  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
5307
5308         * bits/fstream.tcc (seekoff): Output buffer based on _M_*_in and
5309         _M_*_end now.
5310         * bits/std_fstream.h (sync): And here.
5311         * testsuite/27_io/filebuf.cc: Revisions.
5312         * testsuite/27_io/filebuf-2.tst: Correct, remove weird character
5313         at the end of the file.
5314         * testsuite/27_io/filebuf-3.tst: Correct.
5315         
5316 1999-12-21  Phil Edwards  <pedwards@jaj.com>
5317
5318         * docs/gentop/index:  Hold off on .7 announcement date.
5319         * docs/index.html:  Regenerate.
5320
5321 1999-12-21  Benjamin Kosnik  <bkoz@kcygnus.com>
5322
5323         * bits/std_fstream.h (sync): Move _M_file->sync() to
5324         _M_really_overflow().
5325         * bits/fstream.tcc (seekoff): Call sync, not _M_really_overflow so
5326         as to get the _M_file->sync action, which forces the external
5327         buffer to update itself.
5328         (underflow): Same here.
5329
5330 1999-12-21  Phil Edwards  <pedwards@jaj.com>
5331
5332         * bits/c++config.h.in:  Uncomment _GLIBCPP_USE_NAMESPACES and move...
5333         * acconfig.h:  ...to here.
5334         * config.h.in:  Regenerate from aclocal.
5335         * acinclude.m4:  Add GLIBCPP_ENABLE_DEBUG, GLIBCPP_ENABLE_NAMESPACES.
5336         * aclocal.m4:  Regenerate from acinclude.
5337         * configure.in:  Use ENABLE macros here.
5338         * configure:  Regenerate.
5339         * src/Makefile.am:  Use results from ENABLE macros.
5340         * src/Makefile.in:  Regenerate.
5341
5342 1999-12-20  Benjamin Kosnik  <bkoz@cygnus.com>
5343         
5344         * mkcheck (SRC_DIR): Now have to include config/* dir if "make
5345         check" and not "make check-install." Temporarily hack in linux
5346         support.
5347         
5348         * bits/std_streambuf.h: Tweaks.
5349         * bits/streambuf.tcc (xsgetn): Tweaks.
5350         * bits/std_fstream.h (sync): Make _M_really_overflow consistent.
5351         * bits/fstream.tcc (filebuf::underflow): Simplify.
5352         * bits/std_sstream.h (streambuf::underflow): Minor change to make
5353         checks for read position precisely implement the standard.
5354         * bits/basic_file.h (filepos_cur): Base this on _offset.
5355         * testsuite/21_strings/inserters_extractors.cc (test05): Tweaks.
5356         * testsuite/27_io/filebuf.cc: Tweak.
5357
5358 1999-12-20  Benjamin Kosnik  <bkoz@cygnus.com>
5359
5360         * docs/17_intro/RELEASE-NOTES: Fix typos.
5361
5362         * bits/locale_facets.h (ctype): Modify, use __to_type to abstract
5363         out platform-specific bits.
5364         * config/default/ctype.cc: And here.
5365         * config/defaults/bits/ctype_base.h: And here.
5366         * config/linux/ctype.cc: And here.
5367         * config/linux/bits/ctype_base.h (ctype_base): And here.
5368         * config/solaris/bits/ctype_base.h (ctype_base): Add
5369         __to_type. Comment, as it looks like this is for solaris2.6 and
5370         above: solaris2.5.1 doesn't seem to have the same definitions.
5371         * config/solaris/ctype.cc: And here.
5372
5373 1999-12-19  Benjamin Kosnik  <bkoz@cygnus.com>
5374             Ulrich Drepper  <drepper@cygnus.com>
5375         
5376         * acconfig.h: Remove _GLIBCPP_USE_CTYPE_ISBIT.
5377
5378         * src/locale.cc: Take out platform-specific hacks.
5379         * config/linux/ctype.cc: Put here.
5380         * config/solaris/ctype.cc: Put here.
5381         * config/default/ctype.cc: Put here.    
5382
5383         * bits/locale_facets.h: Take out platform-specific hacks.
5384         * config/linux/bits/ctype_base.h: Put here.
5385         * config/solaris/bits/ctype_base.h: Put here.
5386         * config/default/bits/ctype_base.h: Put here.   
5387
5388         * configure.in: Bump version.
5389         Add tests for top-level config directory.
5390         * configure: Regenerated.
5391         * src/Makefile.am (INCLUDES): Add platform-specific dir.
5392         * src/Makefile: Regenerate.
5393         
5394 1999-12-19  Benjamin Kosnik  <bkoz@cygnus.com>
5395             Ulrich Drepper  <drepper@cygnus.com>
5396
5397         * bits/locale_facets.h: Hack in solaris support.
5398         * src/locale.cc: Here too.
5399
5400 1999-12-18  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5401
5402         * docs/17_intro/TODO: Update
5403         * docs/17_intro/RELEASE-NOTES (New): Update.
5404
5405 1999-12-17  Benjamin Kosnik  <bkoz@milou.cygnus.com>
5406
5407         * bits/c++config.h.in (__GLIBCPP__): Bump.
5408         * docs/17_intro/RELEASE-NOTES: Update, Gaby please add your stuff.
5409         * docs/17_intro/TODO: Update.   
5410
5411         * bits/locale_facets.h: Touch this too.
5412         * bits/localefwd.h: Add typedefs for loooooong vector names.
5413         * bits/locale_facets.tcc (locale::operator()): Need parens.
5414         (has_facet): Simplify.
5415         * src/locale-inst.cc: Add instantiations.
5416         * src/locale.cc: Tweaks.
5417         
5418         * bits/std_streambuf.h: Move indeterminates into. . 
5419         * bits/std_fstream.h: Here.     
5420         * bits/fstream.tcc (underflow): Rewind just for ios_base::out
5421         streams.
5422         * bits/sstream.tcc: Very minor formatting tweaks.
5423         * bits/std_streambuf.h (_M_set_determinate): If exclusively an
5424         input buffer, set _M_buf to offset.
5425         * bits/istream.tcc (std): Tweaks.
5426         * testsuite/27_io/istream_unformatted.cc (test05): More tweaks,
5427         include fstream.
5428         * testsuite/27_io/filebuf.cc: Tweaks.
5429         
5430 1999-12-17  Phil Edwards  <pedwards@jaj.com>
5431
5432         * configure.in:  Add OPTLEVEL, -O2 for gcc 2.96+, nothing otherwise.
5433         * configure:  Regenerate.
5434         * src/Makefile.am:  Use OPTLEVEL in CXXFLAGS.
5435         * src/Makefile.in:  Regenerate.  Also picks up OTHER_CXXFLAGS rename
5436           to OPTIMIZE_CXXFLAGS from a previous revision (1.96) to Makefile.am.
5437
5438 1999-12-17  Phil Edwards  <pedwards@jaj.com>
5439
5440         * docs/21_strings/stringtok_std_h.txt:  New algorithm
5441           suggested by Chris King.
5442         * docs/21_strings/howto.html:  Link to new version.
5443
5444 1999-12-16  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5445
5446         * bits/valarray_array.h (__valarray_sum): Use operator+=, not
5447         operator+.
5448         * docs/17_intro/TODO: Update.
5449
5450 1999-12-15  Phil Edwards  <pme@sourceware.cygnus.com>
5451
5452         * docs/gentop/footchunk.html:  Updated, fixed CRLFs.
5453         * docs/gentop/gentop:  Ditto.
5454         * docs/gentop/headchunk.html:  Ditto.
5455         * docs/*.html:  Regenerated from gentop.
5456         * docs/*/howto.html:  Updated as test.
5457         * docs/faq/index.html:  Updated, fixed CRLFs.
5458         * docs/faq/index.txt:  Regenerated.
5459
5460 1999-12-15  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5461
5462         * mknumeric_limits (OUT_C): restart only if $OUT_C is present.
5463
5464         * bits/std_complex.h 
5465         (complex<float>::complex(const complex<double>&),
5466         complex<float>::complex(const complex<long double>&)): Define.
5467
5468         * docs/17_intro/TODO: Update.
5469
5470 1999-12-13  Benjamin Kosnik  <bkoz@cygnus.com>
5471
5472         * bits/istream.tcc (seekg): Don't set _M_gcount.
5473         (tellg): Same.
5474         * bits/fstream.tcc (filebuf::underflow): Re-sync
5475         external byte sequence's input buffer only. . .
5476         * testsuite/27_io/istream_unformatted.cc (test04): New tests for
5477         tellg, seekg and filebufs.
5478         (test05): Same for stringbufs.
5479         * testsuite/27_io/istream_unformatted-2.tst: New file.
5480         * testsuite/27_io/istream_unformatted-1.tst: New file.
5481         * testsuite/27_io/istream_unformatted-1.txt: New file.  
5482         * testsuite/21_strings/inserters_extractors.cc (test05): Change
5483         output file.
5484
5485 1999-12-13  Phil Edwards  <pedwards@jaj.com>
5486
5487         * docs/gentop/*:  New directory, containing bits for the homepages.
5488         * docs/*.html:  Regenerated from gentop.
5489         * docs/*/*.html:  Entries added and regenerated.
5490
5491 1999-12-13  Benjamin Kosnik  <bkoz@gnu.org>
5492
5493         Efforts to get -O2 to work with -Winline -Werrors.
5494         * bits/valarray_array.h (__valarray_fill(_Tp*, size_t, const
5495         _Tp&): Remove inline declaration, as cannot be inlined and
5496         -Winline -Werror complains. An interesting question is why this
5497         cannot be inlined, as I can see no real reason to disqualify it.
5498         (__valarray_product(const _Tp*, const _Tp*)): Same here.
5499         * bits/std_valarray.h (valarray::operator[](size_t)): Same here.
5500         
5501         * docs/17_intro/TODO: Update.
5502
5503 1999-12-12  Benjamin Kosnik  <bkoz@gnu.org>
5504
5505         * bits/std_fstream.h (seekpos): Tweaks, fixes. Move definition to
5506         fstream.tcc.
5507         * bits/basic_file.h (filepos_cur()): Make pointers themselves be
5508         the resultant position.
5509         * bits/fstream.tcc (seekoff): Explicitly set return value to
5510         resultant external byte sequence position, not value returned from
5511         _M_file->seekoff. Need to make 
5512         (seekpos): New definition.
5513         
5514         * bits/istream.tcc (seekg): As per Library Issues List 136, set to
5515         just istream. Necessary, or else tellg will give an invalid stream
5516         position, but seekg will return a valid stream position, which is
5517         not groovy: see testcase addition.
5518         * bits/ostream.tcc (seekp): Same.
5519         
5520         * bits/streambuf.tcc (_S_copy_streambufs): Simplify.
5521         * bits/sstream.tcc: Tweaks.
5522         * bits/locale_facets.tcc: Tweaks.
5523         (num_put::do_put(iter_type, ios_base, char_type, const void*)):
5524         Re-write in a way that is easier for the inliner to work with.
5525         * bits/ios_base.h: Use explicit static_cast<int>(...) notation.
5526
5527 1999-12-10  Benjamin Kosnik  <bkoz@cygnus.com>
5528
5529         * bits/locale_facets.tcc: Tweaks.
5530         * bits/locale_facets.h (use_facet): Can't inline, remove inline
5531         from declaration.
5532         * bits/localefwd.h: And here.
5533         * bits/std_ostream.h: Tweaks, sentry ctor can't be inlined.
5534         * bits/ostream.tcc: Put here.
5535         
5536         Frank Ch. Eigler  <fche@cygnus.com> 
5537         * src/Makefile.am: Adjust CXXFLAGS, add AM_CXXFLAGS. 
5538
5539 1999-12-08  Benjamin Kosnik  <bkoz@cygnus.com>
5540
5541         * bits/sstream.tcc (stringbuf::seekoff): Long overdue revamp. Make
5542         in and out buffers update independantly.
5543
5544         * bits/basic_ios.h: Minor formatting.
5545         * bits/fstream.tcc (std): Fix indentation.
5546
5547 1999-12-08  Chip Salzenberg  <chip@valinux.com>
5548
5549         * bits/char_traits.h (char_traits<>): Move not_eof() functions
5550         after corresponding eof() functions, so they're easier for the
5551         compiler to inline.
5552         * bits/locale_facets.h (money_base::__default_pattern): Move
5553         static variable out of inline functions.
5554         (_Moneypunct<>::do_{pos,neg}_format): Use it.
5555         * src/locale-inst.cc (money_base::__default_pattern): Define it.
5556
5557 1999-12-08  Benjamin Kosnik  <bkoz@cygnus.com>
5558
5559         * bits/std_fstream.h (filebuf::open): Tweak.
5560         * bits/fstream.tcc (filebuf::seekoff): Simplify, fix.
5561         * bits/std_ios.h: Minor tweaks for headers.
5562
5563 1999-12-06  Benjamin Kosnik  <bkoz@gnu.org>
5564
5565         * bits/c++config.h.in (_GLIBCPP_FULLY_COMPLIANT_HEADERS): New macro.
5566         * src/string-inst.cc: Add guards . . .
5567         * src/misc-inst.cc: And here.
5568         * bits/std_sstream.h: And here.
5569         * bits/std_fstream.h: And here.
5570         * bits/std_streambuf.h: And here.
5571         * bits/std_istream.h: And here.
5572         * bits/std_ostream.h: And here.
5573
5574 1999-12-06  Scott Snyder  <snyder@fnal.gov>
5575
5576         * bits/istream.tcc (basic_istream::read): Try to handle __n == 0
5577         case.
5578         (basic_istream::readsome): And here as well.
5579         * testsuite/27_io/istream_unformatted.cc: Test a zero-length
5580         read().
5581
5582 1999-12-06  Mumit Khan  <khan@xraylith.wisc.edu>
5583
5584         * bits/istream.tcc (basic_istream::ignore): streamsize is not 
5585         necessarily an `int'.
5586
5587 1999-12-06  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5588
5589         * mknumeric_limits: Don't use $CXXFLAGS when building
5590         gen-num-limits. It's definitely wrong to use it since $CXXFLAGS
5591         generally instructs the compiler not to emit template
5592         instantiations and we end up with undefined symbols. Sigh.
5593
5594 1999-12-05  Benjamin Kosnik  <bkoz@gnu.org>
5595
5596         * bits/locale_facets.tcc: Tweak.
5597         (_S_format_long): Adjust showpos formatting for hex and oct.
5598         * bits/std_ostream.h (operator<<(short)): Correctly deal with hex
5599         and oct by formatting as unsigned.
5600         (operator<<(int)): Same here.
5601         * bits/ostream.tcc (operator<<(long)): Same.
5602         (operator<<(long long)): Same.
5603         (_S_pad_char): Actually treat ios_base::internal as something
5604         worth doing correctly. Remove const designation on ios argument.
5605         * testsuite/27_io/ios_manip_basefield.cc (test02): Add tests.
5606         * testsuite/27_io/ostream_inserter_arith.cc (test03): Add tests.
5607         
5608 1999-12-04  Benjamin Kosnik  <bkoz@gnu.org>
5609
5610         * bits/std_sstream.h (streambuf::underflow): Check for mode == in.
5611
5612 1999-12-03  Benjamin Kosnik  <bkoz@gnu.org>
5613
5614         * bits/locale_facets.tcc (num_put::do_put(bool): Fix.
5615
5616         * bits/sstream.tcc (streambuf::seekoff): Add parens.
5617         * bits/istream.tcc (istream::get(sb)): Handle exceptional events.
5618         (operator>>(istream, _CharT*)): Change streamsize to int_type.
5619         (operator>>(istream, _CharT&)): Fix typedef'd type to be _CharT.
5620         * bits/ostream.tcc (ostream::operator<<(const char*)): Stub out
5621         unused argument.
5622         (ostream::operator<<(_CharT)): Fix.
5623         
5624         * bits/std_sstream.h: Temporarily disable including sstream.tcc to
5625         see if this will increase compile speed.
5626         * bits/std_ostream.h: Likewise. . .
5627         * bits/std_istream.h: And here.
5628         * bits/std_fstream.h: And here.
5629         * src/misc-inst.cc: Add relevant header file includes for
5630         instantiation purposes.
5631         * src/string-inst.cc: And here.
5632         * testsuite/27_io/ostream_inserter_arith.cc: Add test case.
5633         
5634 1999-12-02  Benjamin Kosnik  <bkoz@gnu.org>
5635
5636         * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
5637         * bits/istream.tcc (get(streambuf)): More fixes. 
5638         (istream::ignore): Get specific about numeric_limits<int>::max()
5639         requirements.
5640
5641         * bits/fstream.tcc (filebuf::open): Tweaks for _M_last_overflowed.
5642         (filebuf::close): Same.
5643         * testsuite/27_io/filebuf.cc: Add tests for ios_base::ate.
5644         
5645 1999-12-01  Phil Edwards  <pedwards@jaj.com>
5646
5647         * mkcheck:  Support for compilation/execution timing.
5648         * testsuite/printnow.c: New file.
5649         
5650 1999-12-01  Phil Edwards  <pedwards@jaj.com>
5651
5652         * bits/std_cwchar.h:  Test for _GLIBCPP_USE_WCHAR_T.
5653         * configure.in:  Test for presence of wchar.h before testing
5654           for any of its features.
5655         * configure:  Regenerate.
5656
5657 1999-11-30  Benjamin Kosnik  <bkoz@gnu.org>
5658
5659         Preliminary istream validations complete.
5660         * bits/istream.tcc (istream::getline): Fixes. Tweaks to make
5661         formatting more consistent. Removal of if-statements inside of for
5662         loops.
5663         (ignore): Fix.
5664         (get): Same.
5665         (putback): Same.
5666         * bits/std_istream.h: Same.
5667         * bits/sstream.tcc (stringbuf::pbackfail): Fix.
5668         * testsuite/27_io/stringbuf.cc: Tweak.
5669         * testsuite/27_io/istream_unformatted.cc (test02): Mo' tests.   
5670
5671         * bits/ostream.tcc (ostream::operator<<(arith)): Set badbit, not
5672         failbit on failure, as per 27.6.2.5.2.
5673
5674         * stl/bits/std_vector.h: Allow bool specializations. Should move
5675         ext/std_bvector to bits, not ext, maybe.
5676
5677 1999-11-30  Mumit Khan  <khan@xraylith.wisc.edu>
5678
5679         * configure.in: Fix checks for mbstate_t and WCHAR_MIN/MAX.
5680         * configure: Regenerate.
5681         
5682 999-11-29  Benjamin Kosnik  <bkoz@gnu.org>
5683
5684         * bits/istream.tcc (get(streambuf, char)): Fix.
5685         * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
5686         
5687 1999-11-29  Scott Snyder  <snyder@fnal.gov>
5688
5689         * bits/basic_string.h (append(const _Char*, size_type)): The
5690         length of the appended string is given exactly by the second arg,
5691         regardless of the data in the character array.
5692         * bits/string.tcc (basic_string(const _CharT*, size_type, const
5693         _Alloc&)): Likewise.
5694         * testsuite/21_strings/append.cc (test01): Remove erroneous test
5695         of basic_string::append.
5696
5697 1999-11-29  Chip Salzenberg  <chip@valinux.com>
5698
5699         * Makefile.in: Tweaks for CXXFLAGS.
5700         * */Makefile.in: Same.
5701
5702 1999-11-29  Mumit Khan  <khan@xraylith.wisc.edu>
5703
5704         * conficd bgure.in: Check for wide character support.
5705         * bits/c++config.h.in (_GLIBC_USE_WCHAR_T): Move from here ...
5706         * acconfig.h (_GLIBC_USE_WCHAR_T): to here.
5707         * bits/string.tcc (wstring::_S_find): Guard wchar_t specialization.
5708         
5709 1999-11-29  Mumit Khan  <khan@xraylith.wisc.edu>
5710
5711         * acinclude.m4: Fix typo.
5712         * src/complex.cc: Fix macro line continuation.
5713         
5714 1999-11-29  Petter Urkedal  <petter@matfys.lth.se>
5715
5716         * src/Makefile.am (CXXFLAGS): Add -Wno-format to allow non-
5717         string literals in format, as used in locale-facets.tcc.
5718
5719 1999-11-28  Benjamin Kosnik  <bkoz@gnu.org>
5720
5721         * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
5722         * bits/istream.tcc (istream::get): Extract to argument minus one.
5723         Various tweaks and fixes.
5724         
5725 1999-11-22  Mumit Khan  <khan@xraylith.wisc.edu>
5726
5727         * bits/locale_facets.tcc: Workaround for compiler crash on
5728         ix86-*-mingw32.
5729
5730 1999-11-21  Mumit Khan  <khan@xraylith.wisc.edu>
5731
5732         * acinclude.m4: New file. New _GLIBCPP_CHECK_FLOAT_SUPPORT macro.
5733         * configure.in: Use.
5734         * acconfig.h: New _GLIBCPP_BUGGY_FLOAT_COMPLEX macro.
5735         * src/complexf.cc: New _GLIBCPP_FLOAT_SPECIALIZATION macro.
5736         * bits/std_complex.h: Use.
5737         * src/complex.cc: Use.
5738
5739 1999-11-19  Mumit Khan  <khan@xraylith.wisc.edu>
5740
5741         * testsuite/18_support/numeric_limits.cc: Add missing std:: prefix.
5742         * testsuite/21_strings/inserters_extractors.cc: Likewise.
5743         * testsuite/22_locale/ctype.cc: Likewise.
5744         * testsuite/23_containers/multiset.cc: Likewise.
5745         * testsuite/23_containers/vector_ctor.cc: Likewise.
5746         * testsuite/26_numerics/binary_closure.cc: Likewise.
5747         * testsuite/27_io/fpos.cc: Likewise.
5748         * testsuite/27_io/ios_base_callbacks.cc: Likewise.
5749         * testsuite/27_io/istream_extractor_arith.cc: Likewise.
5750         * testsuite/27_io/istream_extractor_char.cc: Likewise.
5751         * testsuite/27_io/istream_extractor_other.cc: Likewise.
5752         * testsuite/27_io/istream_sentry.cc: Likewise.
5753         * testsuite/27_io/ostream_inserter_char.cc: Likewise.
5754         * testsuite/27_io/ostream_inserter_other.cc: Likewise.
5755         * testsuite/27_io/streambuf.cc: Likewise.
5756         * testsuite/27_io/stringstream.cc: Likewise.
5757
5758 1999-11-19 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5759
5760         * bits/valarray_meta.h: Don't forget to define tanh
5761
5762 1999-11-18  Philip Martin  <pm@corris.dircon.co.uk>
5763  
5764        * src/stl-inst.cc: Use typedef to refer to iterator
5765        * stl/bits/stl_algobase.h: Add traits based dispatch for
5766        __normal_iterator in the copy()algorithm
5767        * stl/bits/type_traits.h: Add _Is_normal_iterator trait support
5768
5769 1999-11-18  Kevin Ediger  <kediger@licor.com>
5770
5771         * src/locale.cc (locale::_Imp::_Imp): Use auto_ptr to make
5772         constructors for locale::_Impl exception safe.
5773
5774 1999-11-18  Scott Snyder  <snyder@fnal.gov>
5775
5776         * stl/bits/stl_queue.h: The C++ standard gives the default for the
5777         _Sequence template argument of priority_queue<> as vector<>, not
5778         deque<>.
5779
5780 1999-11-18  Benjamin Kosnik  <bkoz@gnu.org>
5781
5782         * bits/std_sstream.h (stringbuf::_M_really_sync): Add __iend as a
5783         parameter.
5784         * bits/sstream.tcc: Adjust here too.
5785         
5786 1999-11-17  Benjamin Kosnik  <bkoz@gnu.org>
5787
5788         * bits/sbuf_iter.h (istreambuf_iter::equal): Tweak.
5789         * bits/istream.tcc (operator>>): Replace iostate(0) with
5790         iostate(ios_base::goodbit), which is the same thing, but hopefully
5791         a bit clearer.
5792         * bits/locale_facets.tcc (do_get(bool)): Streamline, deal with
5793         libraries issue list 17.
5794         (do_gets): Don't set goodbit explicitly, instead only set on
5795         failures as good bit is the default setting.
5796         * bits/ios_base.h (setf): Set correctly.
5797         * bits/fstream.tcc: Tweak.
5798         * bits/std_sstream.h (_M_really_sync): Fix ibuffer positioning for
5799         in|out bufs that are empty. . .
5800         * testsuite/27_io/istream_extractor_arith.cc (test03): Add.
5801         
5802 1999-11-16  Benjamin Kosnik  <bkoz@gnu.org>
5803
5804         * testsuite/27_io/streambuf.cc (class testbuf): Don't set _M_buf_size.
5805         * bits/std_streambuf.h (setp): Set _M_buf_size, _M_mode.
5806         Add comments "all about _M_buf."
5807         (setg): Set _M_mode.
5808
5809 1999-11-16  Kevin Ediger  <kediger@licor.com>
5810
5811         * bits/locale_facets.tcc (_S_build_float_format): New function.
5812         (_S_output_float): New function.
5813         (num_put::do_put(double)): Use 'em.
5814         (num_put::do_put(long double)): Use 'em.
5815         * testsuite/27_io/ostream_inserter_arith.cc: New file.
5816
5817 1999-11-15  Scott Snyder  <snyder@fnal.gov>
5818
5819         * bits/basic_file.h: Type of __off parm should be __c_streampos, to
5820         match how libio is calling us.
5821         * src/basic_file.cc (sys_seek): Likewise.
5822         * bits/std_fstream.h (basic_filebuf::sync): Restore sync call.
5823
5824 1999-11-15  Benjamin Kosnik  <bkoz@gnu.org>
5825
5826         * docs/17_intro/contribute.html: Add link to assignment form.
5827         * docs/17_intro/libstdc++-assign.txt: New file.
5828
5829         * mkcheck (TESTS_FILE): Move a copy of test files as well as
5830         output files.
5831
5832         * bits/std_streambuf.h (_M_buf_bump): New function.
5833         * bits/streambuf.tcc: Mods to support _M_buf_bump.
5834         (xsputn): Here. Also add checks for output valid.
5835         (xsgetn): Add checks for input valid.
5836         (sputc): Here.
5837         (sgetc): Set _M_in_end to _M_buf + _M_buf_end.
5838         * bits/std_sstream.h (_M_really_sync): Set _M_buf.
5839         Set _M_out_end to variable-length-end.
5840         * bits/sstream.tcc (overflow): Use _M_buf_bump.
5841         (seekpos): Same.
5842         (seekoff): Same.
5843         * bits/fstream.tcc (std): Tweak formatting.
5844         (filebuf::overflow): Simplify.
5845         (filebuf::showmanyc): Same.
5846         (filebuf::underflow): Same.
5847         * testsuite/27_io/filebuf.cc: Fix.
5848         * testsuite/27_io/ostream_inserter_other.cc: Fix.
5849         * testsuite/27_io/ostream_inserter_other-2.tst: New file.
5850         * testsuite/27_io/stringbuf.cc: Tweak.  
5851         * testsuite/27_io/streambuf.cc: Tweak.  
5852         * testsuite/27_io/istream_extractor_other.cc: Fix.
5853
5854 1999-11-11  Matthias Klose  <doko@cs.tu-berlin.de>
5855
5856         * stl_deque.h: Use static_casts<size_type>(signed_type).
5857
5858 1999-11-11  Benjamin Kosnik  <bkoz@gnu.org>
5859
5860         Cleanups for callbacks, more regression hunting. Remaining
5861         failures (1) due to last unresolved stringstream issues, not
5862         regressions per se.
5863         * bits/std_fstream.h: Revert. Disable call to _M_file->sync as
5864         killing 27_io/filebuf.cc tests. . . need another solution.
5865
5866         * bits/streambuf.tcc (_S_copy_streambufs): Fix.
5867         * testsuite/27_io/istream_extractor_other.cc: Tweak comments.
5868
5869         * bits/basic_ios.h: Add cached facets here. UGH. The standard
5870         foils all attempts at a graceful, minimal implementation.
5871         * bits/basic_ios.tcc: Tweaks.
5872         * bits/istream.tcc: Fix.
5873         * bits/ostream.tcc: Fix.
5874         * bits/std_istream.h: Fix.
5875         * bits/std_ostream.h: Fix.
5876         * src/ios.cc (ios_base::imbue): Set _M_locale_ios before calling
5877         callbacks.
5878         * bits/locale_facets.tcc (std): Minor, minor formatting tweak.
5879         (_S_pad_numeric): Make comprehensible.
5880
5881 1999-11-10  Benjamin Kosnik  <bkoz@cygnus.com>
5882
5883         * bits/std_ostream.h: Add callbacks for _M_fnumput.
5884         (_S_ostream_fcache): New function.
5885         Move functions out-of-line.
5886         * bits/ostream.tcc: Put here.
5887
5888         * bits/std_istream.h: Add callbacks for _M_fnumget.
5889         (_S_istream_fcache): New function.
5890         Move functions out-of-line.
5891         * bits/istream.tcc: Put here.
5892         
5893         * bits/basic_ios.tcc (basic_ios::imbue): Tweaks, remove call to
5894         _M_call_callbacks(), as ios_base::imbue does this already.
5895         * src/ios.cc (register_callback): Clean.
5896         (_M_call_callbacks): Same.
5897         * bits/ios_base.h: Callback work.
5898         * testsuite/27_io/ios_base_callbacks.cc (test01): New file.
5899         
5900 1999-11-10  Benjamin Kosnik  <bkoz@cygnus.com>  
5901             Matthias Klose  <doko@cs.tu-berlin.de>
5902
5903         * stl/ext/stl_rope.h: Fix initialization order.
5904
5905 1999-11-09  Scott Snyder  <snyder@fnal.gov>
5906
5907         * bits/std_fstream.h (basic_filebuf::sync): Unconditionally call
5908         _M_file->sync() so that redirection works correctly.
5909
5910 1999-11-09  Benjamin Kosnik  <bkoz@gnu.org>
5911
5912         * bits/istream.tcc: Re-order.
5913         * bits/std_istream.h: Fix getline problems.
5914         * testsuite/27_io/istream_unformatted.cc: New tests.
5915         
5916         Clean up regressions.
5917         * bits/std_sstream.h: Set initial stringbufs correctly.
5918
5919 1999-11-09  Scott Snyder <snyder@fnal.gov>
5920
5921         * stl_vector.h (_M_range_insert): Fix mixing pointers and
5922         vector::iterator.
5923         * testsuite/23_containers/vector_modifiers.cc (test01): New file,
5924         tests.
5925         
5926 1999-11-09  Benjamin Kosnik  <bkoz@cygnus.com>
5927
5928         * src/Makefile.am (CXXFLAGS): Add -Winline.
5929         * src/Makefile.in: Regenerate.
5930
5931 1999-11-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5932
5933         * bits/valarray_meta.h (_DEFINE_EXPR_UNARY_FUNCTION): When
5934         building meta-expressions don't forget to take the contained
5935         closures. 
5936
5937 1999-11-02  Benjamin Kosnik  <benjamin@cygnus.com>
5938
5939         * configure: Regenerate.
5940         
5941 1999-11-02  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5942
5943         * bits/valarray_meta.h (_Expr<>::sum): Tweak. Use copy-initialization
5944         syntax.
5945         * bits/valarray_meta.h (min): Likewise.
5946         * bits/valarray_meta.h (max): Likewise.
5947
5948 1999-11-01  Benjamin Kosnik  <bkoz@cygnus.com>
5949
5950         * bits/std_sstream.h (_M_really_sync): Take into account in | out bufs.
5951         * bits/std_streambuf.h (_S_copy_streambufs): New function.
5952         * bits/streambuf.tcc: Define.
5953         * bits/istream.tcc (istream::operator>>(streambuf)): Rewrite.
5954         * bits/ostream.tcc (ostream::operator<<(streambuf)): Rewrite.
5955         * testsuite/27_io/ostream_inserter_other.cc: Add tests.
5956         * testsuite/27_io/ostream_inserter_other-1.tst: New file.
5957
5958         * bits/basic_string.h: Explicitly cast npos to unsigned type,
5959         reported by Richard Atterer.
5960         * bits/char_traits.h: For consistency's sake, here too.
5961         
5962         * configure.in: Bump version to 2.90.7.
5963         
5964 1999-10-31  Benjamin Kosnik  <bkoz@cygnus.com>
5965
5966         * testsuite/27_io/ostream_inserter_char-1.tst: Check file output.
5967         * testsuite/27_io/ostream_inserter_char.cc (test05, test01): Add tests.
5968         * bits/streambuf.tcc (xsputn): Treat--size const char for long loops.
5969         (xsgetn): Same.
5970         * bits/sstream.tcc (seekpos): Tricks, mostly: check _M_mode before
5971         writing into buffer.
5972         (seekoff): Same.
5973         
5974 1999-10-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5975
5976         * bits/valarray_array.h (__valarray_sum): New function.
5977         * bits/valarray_array.h (__valarray_product): Same.
5978
5979         * bits/std_valarray.h (valarray<T>::product): Comment out.
5980         * bits/std_valarray.h (valarray<T>::sum): Use __valarray_sum
5981         instead of accumulate. 
5982
5983         * src/valarray-inst.cc: Remove explicit intantiation of
5984         class multiplies<size_t>, accumulate, valarray<size_t>::product. 
5985         * src/valarray-inst.cc (__valarray_product): Instantiate
5986         explicitly. 
5987         * src/valarray-inst.cc (__valarray_product(const
5988         valarray<size_t>&)): New function.   
5989         * src/valarray-inst.cc (gslice::_Indexer::_Indexer): Don't use
5990         valarray<size_t>::product. Use __valarray_product instead.
5991         
5992
5993 1999-10-25  Benjamin Kosnik  <bkoz@cygnus.com>
5994
5995         * bits/std_ostream.h (ostream.inserters.char): Correctly pad output.
5996         (_S_pad_char): New function. Not done: ios_base::internal.
5997         * bits/ostream.tcc: Clean for above.
5998         * bits/locale_facets.tcc (_S_fill): Remove ostreambufiterator
5999         specialization that was commented out, as ostreams now have to
6000         correctly deal with padding.
6001         * testsuite/27_io/ostream_inserter_char.cc (main): Add tests.
6002         
6003         * testsuite/21_strings/ctor_copy_dtor.cc(test02): Add test case
6004         from mailing list. This is a bug, and should be fixed.
6005         * testsuite/21_strings/inserters_extractors.cc (main): Tweak, fix typo.
6006         
6007 1999-10-22  Petter Urkedal  <petter@matfys.lth.se>
6008
6009         * stl/bits/stl_numeric.h (__power): Replaced argument name `__opr'
6010         to avoid conflict with gcc name mangling.
6011         * stl/bits/stl_algo.h (__transform): Same.
6012
6013 1999-10-21  Benjamin Kosnik  <bkoz@cygnus.com>
6014
6015         * bits/ios_base.h: Change argument names.
6016         * docs/17_intro/BADNAMES: Add __opr.
6017         
6018 1999-10-20  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
6019         
6020         Work on compilation slowdowns from 10-5 to 10-12, which are
6021         related to the _Callback_list inlining/merge-ifcation, which is
6022         still a pending issue, but this stuff is necessary cleanup anyway.
6023
6024         * src/ios.cc: Re-arrange.
6025         * bits/ios_base.h: Tweak.
6026         * bits/basic_ios.tcc: Move out of line definitions here, move
6027         small out-of-line definitions inline.
6028         * bits/basic_ios.h: From here.
6029         
6030         * bits/streambuf.tcc (pbackfail, overflow): Move back inline.
6031         * bits/std_streambuf.h: From here.
6032
6033 1999-10-19  Benjamin Kosnik  <bkoz@cygnus.com>
6034
6035         * testsuite/27_io/istream_extractor_char.cc: Add tests.
6036         * bits/std_istream.h: Tweaks--set eofbit on eof condition.
6037         * bits/istream.tcc (operator>>(istream&, string&): Remove
6038         vestigial issspace hacks and use ctype::is instead.
6039         (getline): Remove unnecessary loops, fortify and pasteurize.
6040         (ws): Same.
6041         
6042 1999-10-18  Benjamin Kosnik  <bkoz@cygnus.com>
6043
6044         * bits/istream.tcc (operator>>): Tweak.
6045         * bits/std_istream.h: Fix according to library issues list 68.
6046         Add typedefs.
6047
6048         * bits/locale_facets.h: Fix table_size to be non-zero.
6049
6050 1999-10-18  Vadim Egorov  <egorovv@HotPOP.com>
6051
6052         * src/basic_file.cc: ifdef instead of comment for binary mode
6053
6054 1999-10-18  Russell Davidson  <russell@qed.econ.queensu.ca>
6055
6056         * bits/std_sstream.h: Stringbuf initialization based on actual,
6057         not allocated, size.
6058         * testsuite/21_strings/inserters_extractors.cc (test06): Add test
6059         case.
6060         
6061 1999-10-17  Benjamin Kosnik  <bkoz@cygnus.com>
6062
6063         * testsuite/26_numerics/c_math.cc (test03): Tweak.
6064         * testsuite/27_io/istream_manip.cc (test01): Corrections due to
6065         sentry change.
6066         * testsuite/21_strings/inserters_extractors.cc (test01): Same.
6067
6068 1999-10-14  Benjamin Kosnik  <bkoz@cygnus.com>
6069
6070         * bits/std_istream.h: Tweaks.
6071         * bits/istream.tcc (istream::sentry::sentry()): Simplify, correct
6072         as per issues list addition--set failbit, eof on empty buffers.
6073         * testsuite/27_io/istream_sentry.cc: New file.
6074         
6075 1999-10-12  Chris Prince <prince@wcug.wwu.edu> 
6076
6077         * bits/std_cstdio.h: Remove Solaris hacks.
6078
6079 1999-10-12  Phil Edwards  <philip.edwards@sn.wpafb.af.mil>
6080
6081         * docs/index.html:  Fix minor typos and tweaks.
6082         * docs/17_intro/contribute.html:  Ditto.
6083         * docs/*/howto.html:  Ditto.  More "EGCS"->"GCC" conversion, notes on
6084         thread safety and binary I/O, links to external sites.
6085         * docs/faq/index.html: EGCS/GCC cleanup, new entries for Cygwin
6086         and MT.
6087
6088 1999-10-12  Petter Urkedal  <petter@matfys.lth.se>
6089
6090         * bits/std_cmath.h (abs(float)): When ::absf is not present, call
6091         ::fabs(double) rather than ::abs(int).
6092
6093 1999-10-11  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6094
6095         * bits/std_streambuf.h: Fix minor blip--should explicitly return
6096         *gptr(), not the result of underflow.
6097         (pbackfail): Conform to default behavior.
6098         (overflow): Same.
6099         * bits/streambuf.tcc: Add out-of-line streambuf members.
6100         (xsputn): Tweak.
6101         (xsgetn): Tweak.
6102         * testsuite/27_io/streambuf.cc: New file.
6103         * testsuite/27_io/filebuf.cc: Correct test.
6104
6105 1999-10-08  Benjamin Kosnik  <bkoz@haight.constant.com>
6106
6107         * bits/std_cmath.h: Correctly cast int to double.
6108         * testsuite/26_numerics/c_math.cc: Add test.
6109
6110         * mknumeric_limits (OUT_C): Tweaks.
6111         * src/gen-num-limits.cc: Checks for WCHAR_MIN, WCHAR_MAX before
6112         trying to instantiate type_traits<wchar_t>.
6113         * acconfig.h: Add _GLIBCPP_HAS_WCHAR_MIN_MAX.
6114         * configure.in (LIBS): Plus checks for WCHAR_MIN, WCHAR_MAX.
6115         * configure: Regenerate.
6116         
6117 1999-10-06  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6118
6119         * bits/streambuf.tcc (streambuf::xsgetn): Rewrite.
6120         (streambuf::xsputn): Put in break.
6121         Aiming for parity between these two (mostly) similar functions.
6122         Need to re-write tests.
6123         
6124         * bits/ios_base.h (ios_base::_M_copy_base): Remove declaration.
6125         Make data members protected, not private.
6126         * src/ios.cc (ios_base::_M_copy_base): Move _Callback_list into
6127         ios_base.h. As called only once, collapse into . . .
6128         * bits/basic_ios.h (basic_ios::copyfmt): Fix.
6129         (basic_ios::clear): Throw ios_base::failure on occasion.
6130         (basic_ios::exceptions): Fix.
6131         * testsuite/27_io/ios_members.cc (test02): Add tests.
6132         
6133         * bits/fpos.h: Default initialize.
6134         * testsuite/27_io/fpos.cc (test03): Add test.
6135
6136 1999-10-04  Russell Davidson <russell@qed.econ.queensu.ca> 
6137
6138         * src/basic_file.cc: Fix open modes.
6139         
6140 1999-10-04  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6141
6142         * bits/locale_facets.tcc (num_get<>::do_get): Fix typo.
6143
6144 1999-09-23  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6145
6146         * bits/streambuf.tcc: Yea. Fix this for real.
6147         * testsuite/27_io/ostream_inserter_other.cc: Add file.
6148         * src/Makefile.*: Regenerate.
6149
6150 1999-09-22  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6151
6152         * bits/std_cstdlib.h: Add more linux-specif hacks to the header
6153         files so that stdtof and strtold will be declared. Some hacks
6154         already exits in bits/std_cctype.h -- these should all be removed
6155         at a later date.
6156         * bits/locale_facets.tcc: Add cstring.h include.
6157         _S_format_long: Use long, not int.
6158         Add std_limits.h include, for numeric_limits.
6159         * testsuite/27_io/istream.cc: Make instantiations work when using
6160         -fhonor-std.  
6161         * testsuite/27_io/ostream.cc: Same.
6162         
6163 1999-09-21  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6164
6165         * bits/fpos.h (fpos::operator streamoff): Make const, don't return
6166         a reference. Same for operators == and !=.
6167         * testsuite/27_io/fpos.cc: Add tests.
6168
6169 1999-09-21  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6170
6171         * bits/valarray_array.h: Fix typo.
6172
6173         * mknumeric_limits: Make sure we are regenerating things from
6174         scratch.  Otherwise things get redefined.  Not good.
6175
6176 1999-09-20  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6177
6178         * bits/std_ostream.h: Fix typo.
6179         * bits/std_istream.h: Same.
6180         * bits/std_iomanip.h: Same.
6181
6182         * bits/istream.tcc (sentry::sentry()): Remove optional tie with
6183         ostream, as happens with underflow anyway.
6184         * testsuite/27_io/istream.cc (main): New file.
6185         * testsuite/27_io/ostream.cc (main): New file.
6186         * testsuite/27_io/istream_unformatted.cc: Add tests.
6187
6188         * src/Makefile.am (headers): Add new file.
6189         * src/Makefile.in (headers): Regenerated.
6190
6191         * bits/basic_ios.h: Remove local-related files.
6192         * bits/basic_ios.tcc: New file, add locale-related items.
6193         * src/misc-inst.cc: Add include of basic_ios.tcc, as a hack for now.
6194         * testsuite/27_io/ios_members_static.cc: Change to
6195         * testsuite/27_io/ios_base_members_static.cc: This.
6196         * testsuite/27_io/ios_members.cc: New file.
6197         * testsuite/27_io/stdios_basefield_manip: Change to
6198         * testsuite/27_io/ios_manip_basefield.cc: This.
6199         * testsuite/27_io/stdios_fmtflags_manip: Change to
6200         * testsuite/27_io/ios_manip_fmtflags.cc: This.
6201         
6202         * bits/fpos.h: Fix discarding qualifiers on this when
6203         using _M_position with a const fpos.
6204         * bits/std_iosfwd.h: Tweak.
6205         * testsuite/27_io/fpos.cc: New file.
6206
6207 1999-09-17  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6208
6209         * bits/streambuf.tcc (streambuf::xsputn): Tweak.
6210         * bits/ostream.tcc: Tweak.
6211         * testsuite/21_strings/inserters_extractors.cc (test04, test05):
6212         Add new regressions.
6213         
6214 1999-09-16  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6215
6216         * bits/basic_ios.h: Inline, tweak.
6217         * bits/fstream.tcc (basic_filebuf::_M_really_overflow): Tweak,
6218         pass back accurate return value to basic_filebuf::overflow.
6219         * bits/streambuf.tcc (streambuf::xsputn): Fix overflow accounting.
6220         This fixes sstream problems reported in libstdc++/9, but screws up
6221         filebufs. That solution is pending.
6222
6223 1999-09-15  Vadim Egorov  <egorovv@1c.ru>
6224
6225         * bits/streambuf.tcc (basic_streambuf::xsputn): Add check for 
6226         zero count puts.
6227         * testsuite/21_strings/inserters_extractors.cc (test01): Add test.
6228         
6229 1999-09-08  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6230
6231         * bits/c++config.h.in: Add emacs hints.
6232
6233         * stl/bits/stl_range_errors.h: Don't define here, for now define
6234         in stdexcept.cc along with string inlines __length_error, etc.
6235         * src/stdexcept.cc: Define here.
6236         * stl/bits/stl_config.h (__STL_CAN_THROW_RANGE_ERRORS): Enable, so
6237         at(size_t) will be declared/defined.
6238         (__STL_THREADS): Fix mess surrounding use of this, enable.
6239
6240 1999-08-31  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6241
6242         * testsuite/27_io/istream_extractor_arith.cc: Fix.
6243         * src/localename.cc: Tweak formatting, fix assignment to
6244         const compiler errors.
6245
6246 1999-08-25  Benjamin Kosnik  <bkoz@cygnus.com>
6247
6248         * acconfig.h: Add absf, cosf.
6249         * configure.in (use_builtin_sinf): Same.
6250         * configure: Regenerate.
6251         * bits/std_cmath.h: Add mess of defines.
6252         * testsuite/26_numerics/modf_float.cc: Change to
6253         * testsuite/26_numerics/c_math.cc: This.
6254         
6255         * src/locale.cc: Change.
6256         * bits/locale_facets.h: Fix.
6257         * testsuite/22_locale/ctype.cc: Add temporary tests.
6258         
6259 1999-08-24  Benjamin Kosnik  <bkoz@cygnus.com>
6260
6261         * bits/fpos.h: Test.
6262
6263         * docs/index.html: Add powerpc-linux-gnu results with gcc-2.95.1.
6264         Fix database name for "libstdc++".
6265
6266 1999-08-23  Benjamin Kosnik  <bkoz@cygnus.com>
6267
6268         * mknumeric_limits (numeric_limits): Add default definitions to
6269         member functions.
6270         * testsuite/18_support/numeric_limits.cc: New file.
6271
6272 1999-08-18  Benjamin Kosnik  <bkoz@cygnus.com>
6273
6274         * bits/std_istream.h: Correct initialization.
6275         * bits/std_ostream.h: Likewise.
6276         * bits/std_sstream.h: Likewise.
6277         * bits/std_fstream.h: Likewise. 
6278         * testsuite/27_io/stringstream.cc: Add test case.
6279         
6280         * bits/std_sstream.h: Replace ____string_type with __string_type.
6281         * bits/basic_ios.h (basic_ios::rdbuf(sb*): Call clear(), as required.
6282         * bits/std_ostream.h: Tweak dtor.
6283
6284 1999-08-17  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
6285
6286         * src/Makefile.am (CXXFLAGS): Add -O2.
6287         * src/Makefile.in: Likewise.
6288         
6289         * src/gen-num-limits.cc: Conditionally allow wchar_t. See what
6290         this breaks. . .
6291         * mknumeric_limits (numeric_limits): Uglify.
6292
6293         * bits/std_istream.h: Fix warnings.
6294         * bits/locale_facets.tcc: Collateral damage from
6295         char_traits<char>::int_type change.
6296
6297         * testsuite/27_io/istream_extractor_char.cc: Terminate strings.
6298
6299 1999-08-17  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
6300
6301         * docs/index.html: Add mailing list form.
6302         * docs/27_io/howto.html: Add link to iostreams_hierarchy.pdf.
6303
6304 1999-08-16  Benjamin Kosnik  <bkoz@cygnus.com>
6305
6306         * bits/streambuf.tcc (streambuf::xsputn): Allow copies to continue
6307         if overflow successfully allocates more space.
6308         * bits/std_sstream.h: Adjust comments.
6309         * bits/sstream.tcc (stringbuf::overflow): Copy buffer into string
6310         before overflow forces a resize.
6311         * testsuite/27_io/ostream_inserter_char.cc: New file.
6312         
6313         * bits/std_fstream.h: Remove declaration.
6314         * bits/fstream.tcc: Move uflow.
6315         * bits/std_streambuf.h: To here.
6316         * bits/streambuf.tcc: Make consistent.
6317         
6318         * src/Makefile.am (WERROR): Enable.
6319         * src/Makefile.in: Regenerate.
6320         * bits/sbuf_iter.h: Tweak.
6321         * bits/char_traits.h: (char_traits<wchar_t>::eof): Use WEOF.
6322         Use unsigned int as char_traits<char>::int_type.
6323
6324         * bits/ostream.tcc (ostream::putc(char)): Tweak.
6325         * testsuite/27_io/iostream_objects.cc: Terminate string.
6326         Move cin::operator>>(char*) test to extractor_char.cc.
6327         * testsuite/27_io/stringstream.cc: Add stringstream instantiation.
6328         * bits/std_istream.h (basic_iostream): Make explicit definition
6329         for default ctor.
6330         * bits/std_sstream.h: Fix typos.
6331         * bits/fstream.tcc (_M_init_filebuf): Set to indeterminate for
6332         basic_filebuf ctor with fileno open arguments. Thus, filebufs are
6333         initialized in a consistent manner, no matter if the underlying
6334         FILE/bit bucket is a tty or a text file or some other imaginary
6335         construct. This and setting _M_buf_size to 1 for cin allows
6336         istream::get(char) to work in a manner consistent with what others
6337         expect.
6338
6339         * docs/index.html: Link Stroustrup's C++ page.
6340         
6341 1999-08-12  Michael Cook  <cook@sightpath.com>
6342
6343         * bits/fstream.tcc: Fix signed/unsigned -Wall warning.
6344         * bits/istream.tcc: ditto.
6345         * bits/sbuf_iter.h: ditto.
6346         * bits/std_istream.h: ditto.
6347         * src/Makefile.am: Add -Wall to CXXFLAGS.
6348         * src/Makefile.in: ditto.
6349
6350 1999-08-12  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
6351             Russell Davidson <russell@ehess.cnrs-mrs.fr> 
6352
6353         * bits/locale_facets.tcc (_M_extract): Finish off patch from yesterday.
6354         * src/Makefile.am (myinstallheaders): Tweak, remove PHONY.
6355         
6356 1999-08-11  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
6357
6358         * testsuite/27_io/istream_unformatted.cc: New file.
6359
6360         * testsuite/27_io/istream_extractor_arith.cc (test02): Add more
6361         elaborate tests for int types with noskipws.
6362
6363         * testsuite/27_io/istream_extractor_other-1.txt: New file.
6364         * testsuite/27_io/istream_extractor_other-1.tst: New file.
6365         * testsuite/27_io/istream_extractor_other-2.tst: New file.      
6366         * testsuite/27_io/istream_extractor_other.cc: Add tests.
6367         * bits/istream.tcc: Fix operator>>(streambuf*).
6368
6369         * testsuite/23_containers/vector_ctor.cc (test01): Add.
6370
6371         * docs/index.html: Remove references to egcs.
6372         * docs/17_intro/DESIGN: Same.
6373         * docs/17_intro/contribute.html: Same.
6374         * docs/17_intro/RELEASE-NOTES: Ditto.
6375         * docs/17_intro/howto.html: Same here.
6376
6377         Russell Davidson <russell@ehess.cnrs-mrs.fr>
6378         * stl/bits/stl_vector.h (_M_insert_aux): 
6379         * bits/locale_facets.tcc (_M_extract): Tweaks for preliminary
6380         decimal/floating point support.
6381         * bits/locale_facets.h: Change _M_extract prototype.
6382         * bits/char_traits.h (char_traits::to_int_type): Cast to unsigned.
6383         * bits/std_istream.h (istream::read(char_type, streamsize)): Fix.
6384         
6385 1999-08-10  Michael Cook  <cook@sightpath.com>
6386
6387         * bits/fstream.tcc: Fix for unused variable warning (-Wall).
6388         * bits/ios_base.h: ditto.
6389         * bits/istream.tcc: ditto.
6390         * bits/locale_facets.h: ditto.
6391         * bits/locale_facets.tcc: ditto.
6392         * bits/std_streambuf.h: ditto.
6393         * src/basic_file.cc: ditto.
6394         * src/locale.cc: ditto.
6395         * src/localename.cc: ditto.
6396
6397 1999-08-10  Kirat Singh  <singhki@jany.gs.com> 
6398
6399         * bits/std_iomanip.h: Inline.
6400         
6401 1999-08-10  Alfred Minarik <a8601248@unet.univie.ac.at>
6402         
6403         * bits/std_streambuf.h: Correct member initialization order.
6404         * src/ios.cc: Add definitions for ios_base data members.
6405         
6406 1999-08-06  Phil Edwards  <pedwards@ball.com>
6407         
6408         * docs/index.html:  Seventh snapshot updates.  Minor tweaks.
6409         * docs/faq/index.html: Ditto.  Removed bugs sections that have
6410         been fixed for a long time...  Lots of "egcs" references still
6411         exist.
6412         * docs/faq/index.txt:  Regenerated.
6413
6414 1999-08-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6415             Andreas Amann <amann@physik.tu-berlin.de>
6416
6417         * testsuite/26_numerics/binary_closure.cc (main): new test.
6418
6419 1999-07-29  Andreas Amann <amann@physik.tu-berlin.de>
6420
6421         * bits/valarray_meta.h: (_BinClos<>::_Binclos): fix typo causing
6422         segmentation fault.
6423
6424 1999-08-04  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
6425
6426         * docs/index.html (host): Put in testing status.
6427
6428 1999-08-03  Benjamin Kosnik  <bkoz@cygnus.com>
6429
6430         * docs/index.html: Update for libstdc++-2.90.6 release.
6431         * docs/17_intro/RELEASE-NOTES (New): Update.
6432         * docs/17_intro/BUGS: Update.
6433         * bits/c++config.h.in (__GLIBCPP__): Bump version number.
6434         * README (file): Update.
6435
6436 1999-08-03  Benjamin Kosnik  <bkoz@cygnus.com>
6437
6438         * src/Makefile.am (generated_headers): Remove bits/c++config.h as
6439         a target.
6440         ($(generated_headers)): Same.
6441         * src/gen-c++config.cc: Remove, rename to
6442         * bits/c++config.h.in: New file. Bump version number.
6443         * configure.in: Generate bits/c++config.h at configure time. 
6444         * math/mathconf.h: include bits/c++config.h, not config.h.
6445         
6446         * bits/std_cmath.h: Fix remaining link error for solaris shared
6447         builds.  _GLIBCPP_HAS_BUILTIN_SINF has to be disabled for the time
6448         being, as on Solaris this silently calls sinf, which does not
6449         exist.
6450         
6451         * src/complex.cc: More tweaks.
6452
6453 1999-08-03  Benjamin Kosnik  <bkoz@cygnus.com>
6454
6455         * src/complex.cc: Same.
6456         * math/complex-stub.h: Change.
6457         * math/c_log10*.c: Change back to clog10*.c.
6458
6459         * configure.in (NEED_C_LOG10): Delete.
6460         * configure: Regenerate.
6461         * math/Makefile.am: Change.
6462         
6463 1999-07-30  Benjamin Kosnik  <bkoz@cygnus.com>
6464
6465         * math/Makefile.am: Fix, for real.
6466         * configure.in (use_builtin_sinf): Ok, make autoconf solution.
6467         * math/clog.c: Move to c_log.c.
6468         * math/clog*: Ditto.
6469         * math/c_log10l.c (c_log10l): Change function name.
6470         * math/c_log10f.c (c_log10f): Change function name.
6471         * math/c_log10.c (c_log10): Change function name.
6472         
6473         * math/complex-stub.h: Change to c_log* variants.
6474         * src/complex.cc: And here. 
6475         
6476 1999-07-29  Benjamin Kosnik  <bkoz@cygnus.com>
6477
6478         * testsuite/27_io/istream_extractor_other.cc: Correct last test.
6479         * bits/sstream.tcc (stringbuf::overflow): Don't update the input
6480         sequence, just the output sequence.
6481         * bits/std_sstream.h (stringbuf::str()): Only in stringbufs return
6482         the original string, all others use complicated heuristic.
6483
6484         * src/complex.cc: Assume c_log10.
6485         * math/Makefile.am (EXTRA_yes): Fix c_log/c_logf unresolved
6486         symbols in shared libraries by making c_log/c_log10 part of the
6487         "must cmpile" sources. This may not work on solaris, must check.
6488
6489 1999-07-29  Benjamin Kosnik <bkoz@cygnus.com>
6490
6491         * bits/istream.tcc (operator>>(streambuf*)): Re-do.
6492         * bits/std_istream.h: Fix char extractors.
6493         * testsuite/27_io/istream_extractor_char.cc: Change.
6494         * testsuite/27_io/istream_extractor_other.cc: Add tests.
6495         
6496 1999-07-28  Benjamin Kosnik <bkoz@cygnus.com>
6497
6498         * bits/std_cctype.h: Fix for solaris2.6 builds. 
6499
6500         * bits/istream.tcc: Fix, thanks Alfred.
6501         * bits/std_istream.h: Formatting changes.
6502
6503         * libio/Makefile.am (libio_la_SOURCES): Remove cleanup.c, so that
6504         _IO_cleanup will not be undefined.
6505         * libio/*: Regenerate.
6506         
6507         * bits/basic_string.h: More namespace-safety stuff.
6508         * testsuite/27_io/istream_extractor_char.cc: Fix.
6509         * testsuite/27_io/istream_extractor_arith.cc: Fix.
6510         * testsuite/27_io/iostream_objects.cc: Fix.
6511         * testsuite/27_io/ios_ctor.cc: Fix.
6512         * testsuite/27_io/istream_manip.cc: Make namespace safe.
6513         * testsuite/27_io/istream_extractor_other.cc: New file.
6514
6515         * mkcheck (TESTS_FILE): Tweaks.
6516
6517 1999-07-27  Benjamin Kosnik  <bkoz@cygnus.com>
6518
6519         * src/gen-c++config.cc: Note here, change version.
6520         * acconfig.h( _GLIBCPP_USE_CTYPE_ISBIT): New macro.
6521         * src/locale.cc: Used here.
6522         * configure.in (use_builtin_sinf): Check for _ISBit using autoconf.
6523
6524         * aclocal.m4: Regenerate by running `aclocal -I m4.`
6525         
6526         * bits/istream.tcc: Fix.
6527         * bits/std_istream.h: More changes to extractors.
6528
6529         * testsuite/27_io/istream_extractor_char.cc: More.
6530         * testsuite/21_strings/inserters_extractors.cc (test01): Fix logic
6531         error in testsuite construction.
6532
6533         * bits/std_istream.h: Partially revert.
6534         * bits/std_ostream.h: Same.
6535         * bits/std_sstream.h: Revert. 
6536
6537 1999-07-26  Benjamin Kosnik  <bkoz@cygnus.com>
6538
6539         * bits/std_sstream.h: Change initialization.
6540         * bits/std_ostream.h: Make default ctor/assign/operator= private.
6541         * bits/std_istream.h: Same, also correct sentry args.
6542         * bits/istream.tcc: Add correct sentry args.
6543         
6544         * testsuite/27_io/istream_extractor_char.cc: New file.
6545         * testsuite/27_io/istream_extractor_arith.cc: New file, old file,
6546         name changes making me dizzy.
6547
6548 1999-07-26  Ulrich Drepper  <drepper@happy.cygnus.com>
6549             Benjamin Kosnik  <bkoz@cygnus.com>
6550
6551         * aclocal.m4, config.guess, config.sub, ltconfig ltmain.sh: Update
6552         to libtool 1.3.3.
6553
6554 1999-07-26 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6555
6556         * bits/std_complex.h: Tweak. Make the primary template class
6557         complex work with user-defined numerical types.  Provide member
6558         definitions.  Restructure.
6559         (class complex<float>): Uglify.  Remove  __value().  Rename __val
6560         to _M_value.  Rename __complex_value_type to _ComplexT. Make it
6561         private.  Remove dependency on __value().  Fix various explicit
6562         specialization syntax.  Declare a some functions friend.  Now the
6563         implementation is nearly comforming.
6564         (class complex<double>): Likewise.
6565         (class complex<long double>): Likewise.
6566
6567         * src/complex.cc: Tweak.  Remove dependency on complex::__value().
6568         (sin, sinh, tan, than): Fix call to corresponding C9x function
6569         syntax. 
6570
6571 1999-07-24  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
6572
6573         * bits/istream.tcc (ws): Fix error with failbit being set.
6574
6575         Disabled due to egcs/gcc-2_95 internal compiler errors.
6576         * src/Makefile.am (CXXFLAGS): Add -fsquangle -fhonor-std
6577         -fnew-exceptions. Compiling with namespaces enabled will now be
6578         the default.
6579         * mkcheck (CXX_FLAG): Same.
6580         * src/gen-c++config.cc (_GLIBCPP_USE_NAMESPACES): Yup. New macro.
6581         * bits/std_cctype.h: Not enough to just define in namespace std if
6582         ctype-isms are macros. Need to also define in namespace std:: if
6583         the C functions are just plain functions.
6584
6585         * src/gen-num-limits.cc: Fix spelling inconsistencies.
6586         
6587 1999-07-24  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6588
6589         * docs/18_support/howto.html: Start documentation.  Need to keep
6590         track of the ongoing discussion in th LWG reflector.
6591
6592         * src/gen-num-limits.cc: Tweak.
6593         (class predicate): New class.
6594         (class value): Likewise.
6595         Make the whole machinery more flexible. Add comments.
6596
6597 1999-07-23  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
6598
6599         * bits/ios_base.h: Move state/exception functions into basic_ios. 
6600         * bits/basic_ios.h: Same.
6601         * src/ios.cc: And here. Callbacks don't attempt to reset
6602         state now.  
6603
6604         * bits/std_streambuf.h: Separate ios and streambuf locale data
6605         members and cached facets. Using this convention: _M_locale_buf for
6606         the streambuf-related classes, and _M_locale_ios for the ios
6607         hierarchy.
6608         * bits/fstream.tcc: And here.
6609         * bits/basic_ios.h: And here. Also, add cached ctype.
6610         * src/ios.cc: Ditto.
6611         * bits/ios_base.h: Ditto.
6612         * bits/std_istream.h: Use cached ctype facet.
6613         * docs/27_io/iostreams_hierarchy.pdf: Update for new data member
6614         arraignment.
6615
6616         * testsuite/27_io/ios_ctor.cc: New file.
6617         * src/ios.cc: Move _M_state init to basic_ios::init().
6618         * bits/basic_ios.h: To here.
6619         
6620         Attempt for some consistency in naming for testsuite/27_io/*.cc.
6621         * testsuite/27_io/boolfmt.cc: Rename to stdios_fmtflags_manip.cc
6622         * testsuite/27_io/octfmt.cc: Rename to stdios_basefield_manip.cc
6623         * testsuite/27_io/istream_manip.cc: Rename to istringstream_manip.cc.
6624         * testsuite/27_io/ostream_manip.cc: Rename to ostringstream_manip.cc.
6625         
6626 1999-07-22  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
6627         
6628         * src/ios.cc: Tweak initializations of standard iostream
6629         objects to closely match the standard. Tie cin/wcin, set flags on
6630         cerr/wcerr
6631         * bits/char_traits.h: Change from size_t to int_type, as per
6632         standard. As per wide streams.
6633         * bits/basic_ios.h: Infect with __ctype_type, as a preparation
6634         for caching a bunch of ctype info. For instance, ctype_base::space
6635         info needs to be stored somewhere, somehow.
6636         * bits/std_istream.h: Also here.
6637         * bits/std_ostream.h: Ditto.
6638         * bits/std_istream.h (operator>>(istream, char): Aggh. Fixup.
6639         * testsuite/27_io/iostream_objects.cacc (test01): Oh yeah. Fix
6640         stream states.
6641
6642         * bits/istream.tcc (ws): Fix.
6643         * testsuite/27_io/istream_manip.cc: New file, test ws.
6644         * testsuite/27_io/ostream_manip.cc: New file, test endl, ends, flush.
6645
6646         * bits/basic_string.h: Provide a specialized member function for
6647         _S_find<char> using strchr.
6648         * src/string-inst.cc: Put specializations here.
6649         * bits/string.tcc: Small fix for find, remove typo.
6650         * testsuite/21_strings/find.cc (test01): Add tests to catch this
6651         find bug. . .
6652
6653 1999-07-20  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>       
6654
6655         * bits/basic_ios.h: Put into basic_ios namespace.
6656         Tweak widen/narrow.
6657
6658 1999-07-19  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>       
6659
6660         * bits/std_sstream.h (stringbuf::sync): Change to _M_really_sync,
6661         adjust _M_*_cur pointers inside the function, so callee doesn't
6662         have to adjust.
6663         * bits/sstream.tcc (stringbuf::overflow): Tweak.
6664
6665         * mkcheck: Tweak. Add execution time field, even though it is not
6666         implemented yet. Simplify pass/fail status notation.
6667
6668 1999-07-18  Mumit Khan  <khan@xraylith.wisc.edu>
6669
6670         * configure.in: Check for float.h and underscored version of 
6671         math functions.
6672         * acconfig.h: Add @BOTTOM@ section for handling underscored
6673         math functions.
6674         * configure: Regenerate.
6675         * config.h.in: Regenerate. 
6676         * math/mathconf.h (float.h): Include conditionally.
6677         (M_PI): Define conditionally.
6678         (INFINITE_P): Define for Mingw.
6679         * bits/locale_facets.tcc: Workaround for compiler crash on
6680         ix86-*-mingw32.
6681         * bits/std_cwchar.h (bits/std_cstddef.h): Include.
6682         * src/locale.cc (bits/std_istream.h): Include.
6683         (bits/std_ostream.h): Likewise.
6684
6685 1999-07-18  Phil Edwards  <pedwards@ball.com>
6686
6687         * docs/faq/index.html:  Updated __black_count notes, fixed typos.
6688         * docs/faq/index.txt:  Regenerated.
6689
6690 1999-07-15  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
6691
6692         * testsuite/27_io/stringbuf.cc: Cccchanges, latent bugs.
6693
6694         * bits/sstream.tcc (stringbuf::overflow): Modify accounting of
6695         newly-allocated buffer.
6696         * bits/streambuf.tcc (streambuf::xsgetn): Aaaaaah. Fix final
6697         overflow condition bits.
6698
6699 1999-07-14  Benjamin Kosnik  <bkoz@cygnus.com>
6700
6701         * bits/std_sstream.h (stringbuf::_M_init_stringbuf): Set
6702         _M_buf_size to initial _M_string.size(), even though for
6703         ostringstreams it is pretty pointless. It's necessary for
6704         istringstreams.
6705         (stringbuf::str()): Adjust. 
6706         (stringbuf::str()): Adjust, call _M_init_stringbuf.
6707         * bits/streambuf.tcc (streambuf::xsgetn): Adjust return value for
6708         overflow's possible success.
6709         (streambuf::xsputn): Adjust.
6710         
6711         * testsuite/27_io/filebuf.cc: Adjust for the xsgetn re-write from
6712         yesterday.
6713         * testsuite/27_io/stringbuf.cc: Tweak.
6714         * testsuite/21_strings/inserters_extractors.cc (test01): Remove
6715         notes to myself.
6716         * testsuite/23_containers/vector_cons.cc: Rename to be consistent
6717         with other constructor tests to. . .
6718         * testsuite/23_containers/vector_ctor.cc: New file.
6719         
6720 1999-07-14  Alfred Minarik <a8601248@unet.univie.ac.at>
6721
6722         * testsuite/*: Changes to make the testsuit compilable with
6723         -fhonor-std. Contains direct qualification of library names with
6724         std::.
6725
6726 1999-07-13  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
6727
6728         * bits/streambuf.tcc: Tweaks.
6729         (streambuf::xsputn): Optimize, fix for sstreams.
6730         (streambuf::xsgetn): Same.
6731         * bits/sstream.tcc (stringbuf::overflow): Adjust _M_buf_size
6732         correctly, handle overflow/reallocate conditions correctly.
6733         * bits/std_sstream.h: Fix typo.
6734         _M_init_stringbuf(): Fix _M_buf_size initialization.
6735         (stringbuf::str()): Construct return string if output has occurred.
6736
6737         * bits/basic_string.h: Fix typo from yesterday's patch.
6738
6739 1999-07-12  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
6740
6741         * bits/string.tcc: _M_mutate - clear _M_state again.
6742         * bits/basic_string.h: In the three functions that return
6743         an iterator set _M_state to -1 before return.
6744         Also optimized two cases of operator+.
6745         
6746 1999-07-12  Phil Edwards  <pedwards@ball.com>
6747
6748         * docs/index.html:  Expand egcs-1.1.2 notes/links.
6749         * docs/faq/index.html:  And here.  Add links to LWG issues-list.
6750         * docs/faq/index.txt:  Regenerate.  (lynx rocks)
6751         * docs/21_strings/howto.html:  Fix notes on case conversion.
6752         * docs/21_strings/stringtok_h.txt:  Goodly spelling...
6753         * docs/23_containers/howto.html:  Stub for bitmasks.
6754         * docs/27_io/howto.html: Add section on buffering, stub binary.
6755         
6756 1999-07-12  Nathan Myers <ncm@cantrip.org>
6757
6758         * stl/bits/stl_tree.h (__black_count): Optimize.
6759
6760 1999-07-09  Vadim Egorov  <egorovv@1c.ru>
6761
6762         * src/basic_file.cc: Cleanup in __basic_file destructor.
6763
6764 1999-07-08  Benjamin Kosnik  <bkoz@cygnus.com>
6765
6766         * bits/std_streambuf.h: Changes. . .
6767         * bits/streambuf.tcc: Merge xsputn from filebuf into xsputn in
6768         basic_streambuf, to be used for both filebufs and streambufs.
6769         * bits/std_fstream.h (_M_init_filebuf): New function.
6770         Take out specialized xsputn, put into basic_streambuf.
6771         * bits/fstream.tcc: Define, call from both ctors.
6772         * bits/std_sstream.h (_M_init_stringbuf): New function.
6773         * bits/sstream.tcc: Tweak.
6774         
6775         * docs/27_io/iostreams_heirarchy.pdf: New file.
6776         
6777         * docs/17_intro/CHECKLIST (basic_string<char>): Validation and
6778         acceptance. Wooo-hoo!
6779
6780         * bits/char_traits.h: Change int_type for char_traits general
6781         template, so that 21_strings/capacity.cc will compile.
6782         * testsuite/21_strings/capacity.cc: Add operators.
6783         
6784         * bits/string.tcc (string::compare): Clean up, re-implement.
6785         * testsuite/21_strings/compare.cc: Tweak.
6786         
6787         * bits/string.tcc (string:_M_mutate): Keep leaked value in
6788         _M_state, which means that whenever begin() or end() has been
6789         called, the string is unshareable, period. By doing this, insert
6790         and erase member functions that return iterators can remain
6791         footloose and fancy free. 
6792         * testsuite/21_strings/invariants.cc: Update.
6793
6794         * bits/basic_string.h (string::append): Fix self-referential
6795         problems, ie when "this" is also an argument to a member function.
6796         * bits/string.tcc: Tweak, same.
6797         * testsuite/21_strings/append.cc: New file.
6798
6799 1999-07-07  Benjamin Kosnik  <bkoz@cygnus.com>
6800
6801         * bits/char_traits.h: Tweaks.
6802         * bits/basic_string.h: Tweak.
6803         * bits/fstream.tcc: Remove warning for _M_buf_size assignment.
6804
6805 1999-07-06  Benjamin Kosnik  <bkoz@cygnus.com>
6806
6807         * bits/std_streambuf.h: Absorb/acquire data members previously
6808         working in basic_filebuf.
6809         * bits/streambuf.tcc: Tweaks.
6810         * bits/fstream.tcc: Adjust.
6811         * bits/std_fstream.h: Move and rename the following functions:
6812         _M_set_ideterminate, _M_is_indeterminate, _M_set_determinate are
6813         now declared and defined in the base class, basic_streambuf.  Oh
6814         fuck it, move data members _M_buf, and _M_buf_size into
6815         basic_streambuf as well.
6816
6817         * bits/ostream.tcc: Tweak.
6818         * bits/locale_facets.tcc: Fix typo in comments.
6819
6820         * testsuite/21_strings/inserters_extractors.cc (test01): Change
6821         state from good to not good, as eof() is set.
6822
6823 1999-07-05  Benjamin Kosnik  <bkoz@cygnus.com>
6824
6825         * bits/char_traits.h (char_traits::compare). Fix.
6826
6827         * config.guess, config.sub: Update.
6828
6829 1999-07-02  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
6830
6831         * bits/string.tcc: Check the __res_arg for a length error.
6832
6833 1999-07-01  Benjamin Kosnik  <bkoz@nabi.net>
6834
6835         * bits/std_streambuf.h: Tweaks. Need to move _M_is_indeterminate
6836         and related functions into basic_streambuf, from basic_filebuf to
6837         take care of ostringstreams and empty strings. So that's groovy,
6838         or will be groovy.
6839         * bits/std_istream.h: Tweaks.
6840         * bits/istream.tcc: Implement ws, getline, operator>> for string.
6841         * bits/std_ostream.h: And here.
6842         * bits/ostream.tcc: Same.
6843         * src/misc-inst.cc: Add instantiations for ws.
6844         
6845         * src/string-inst.cc: Add instantiations for inserters and
6846         extractors (operators << and >>, getline).
6847
6848         * testsuite/21_strings/inserters_extractors.cc: Amazingly enough,
6849         a testcase for getline and operators << and >>. Ostream tests are
6850         failing right now, but istream tests should work. . .
6851
6852         * bits/string.tcc: Change _S_max_size, as GNU malloc won't budge.
6853         * bits/std_sstream.h: Revert.
6854
6855         * testsuite/17_intro: header_[iosfwd, ios, iostream, iomanip,
6856         istream, ostream, streambuf, fstream, sstream].cc: New files.
6857         
6858 1999-06-30  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
6859
6860         * bits/std_sstream.h (stringbuf::sync): Don't use string::begin()
6861         and string::end().
6862         
6863         * bits/basic_string.h (basic_string<>::_S_copy_chars): Add
6864         specializations for _CharT*, iterator and const_iterator.
6865         * src/string-inst.cc: Remove explicit instantiation, as
6866         now explicitly specialized.
6867
6868         * bits/basic_string.h: Add a size_type parameter to _M_clone with
6869         a default value set to 0.
6870         * bits/string.tcc: In _M_clone by the call of _S_create add the
6871         value of the new parameter to _M_length.  In reserve check
6872         _M_state and use _M_clone instead of _M_mutate.
6873
6874 1999-06-30  Benjamin Kosnik  <bkoz@happy.cygnus.com>    
6875
6876         * bits/basic_string.h: Fix _S_max_size.
6877         * bits/string.tcc: Add def here.
6878         * testsuite/21_strings/insert.cc: Fix.
6879         
6880         * bits/sbuf_iter.h: Remove detritus.
6881         * testsuite/24_iterators/istreambuf_iterator.cc: Add tests.
6882
6883         * src/locale-inst.cc: Elaborate iterator/locale instantiations
6884         to resolve alpha-osf4 build problems.
6885
6886 1999-06-29  Benjamin Kosnik  <bkoz@happy.cygnus.com>    
6887
6888         * bits/string.tcc: Fix signed/unsigned issues in compares.
6889         * stl/bits/stl_deque.h: And here.
6890         * stl/bits/stl_string_fwd.h: Remove __get_c_string.
6891
6892 1999-06-29  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
6893  
6894          * bits/string.tcc: New implementation and interface of _M_mutate.
6895            Adapt the change in all functions that call _M_mutate.
6896          * bits/basic_string.h: And here.
6897
6898 1999-06-29  Benjamin Kosnik  <bkoz@happy.cygnus.com>
6899
6900         * testsuite/21_strings/capacity.cc (test01): Fix.
6901
6902 1999-06-29  Phil Edwards  <pedwards@ball.com>
6903
6904         * mknumeric_limits:  Exit script if gen-num-limits isn't built.
6905         
6906 1999-06-29  Andreas Gruenbacher  <agruenba@pent224.infosys.tuwien.ac.at> 
6907
6908         * stl/bits/stl_vector.h: Fix.
6909         * testsuite/23_containers/vector_cons.cc: Add.
6910         
6911 1999-06-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6912
6913         * mknumeric_limits (LDFLAGS): fix.
6914
6915 1999-06-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6916
6917         * mknumeric_limits (LDFLAGS): set it according to the system.
6918
6919         * math/mathconf.h (NAN): Check whether host is running under
6920         Cygwin and make the appropriate definition.
6921         * math/complex-stub.h (nan): protect declaration.
6922
6923 1999-06-28  Benjamin Kosnik  <bkoz@haight.constant.com>
6924
6925         * bits/sbuf_iter.h: Rename internal data structure to prevent
6926         confusion between basic_ios and istreambuf_iterators internal
6927         basic_streambuf data member.
6928         * testsuite/24_iterators/istreambuf_iterator.cc: New file.
6929
6930         * bits/basic_string.h: Remove conditionals, add input_iterator
6931         version of S_construct again.
6932         * bits/string.tcc: Same.
6933         * src/string-inst.cc: And add explicit instantiation here.
6934         
6935         * src/gen-c++config.cc (_GNU_SOURCE): Take out both _GNU_SOURCE
6936         and __USE_GNU macro defines, as single __USE_GNU use leading to
6937         confusion on glibc2.1 systems (ie, RedHat 6.0).
6938         
6939         * src/Makefile.am (headers): Add std_utility to installed headers.
6940
6941 1999-06-25  John Potter  <jpotter@eagle.lhup.edu>
6942
6943         * stl/bits/stl_tree.h (insert_unique): Revert, just fix insert_equal.
6944
6945 1999-06-25  Gilles Zunino  <Gilles.Zunino@hei.fr>
6946
6947         * mknumeric_limits (LDFLAGS): Swap -lc and -lgcc.
6948
6949 1999-06-24  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
6950
6951         * src/gen-c++config.cc (_GLIBCPP_*): Change all
6952         macros to include _GLIBCPP as a distinct namespace.
6953         * bits/*: And here.
6954         * src/*: And here.
6955         
6956         * stl/bits/std_stdexcept.h: Forward-declare __Named_exception ctor.
6957         * bits/basic_string.h: Remove __get_c_string.
6958         * src/stdexcept.cc: Define ctor here.
6959         * bits/ios_base.h: And fix ios_base::failure as well.
6960         * src/ios.cc: Define here. 
6961         
6962         * bits/std_streambuf.h: Add a private copy ctor and assignment
6963         operator wrapped in _G_RESOLVE_LIB_DEFECTS.
6964         * bits/ios_base.h: And here too.
6965         
6966         * bits/basic_string.h: Tweak.
6967         * testsuite/21_strings/nonmember.cc: Add operator+ tests.
6968
6969         * src/valarray.cc: Rename to. . .
6970         * src/valarray-inst.cc: This.
6971         * src/Makefile.am (sources): Change here.
6972         * src/Makefile.in: Regenerated.
6973         
6974 1999-06-24  Vadim Egorov  <egorovv@1c.ru>
6975
6976         * bits/string.tcc(basic_string<>::_Rep::_S_create): Fixed
6977         allocated size
6978
6979 1999-06-24  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
6980             Tom Tromey  <tromey@cygnus.com>
6981         
6982         * configure.in (use_glibc2): Eek, correct for non-glibc systems.
6983         Use AM_CONDITIONAL to get us out of this jam. . 
6984         * libio/Makefile.am: Same.
6985         * */Makefile: Regenerated.
6986
6987 1999-06-24  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
6988             John Potter  <jpotter@eagle.lhup.edu>
6989
6990         * stl/bits/stl_tree.h (insert_equal): Fix.
6991         * testsuite/23_containers/multiset.cc: New file.
6992         
6993 1999-06-23  Benjamin Kosnik  <bkoz@cygnus.com>
6994
6995         * configure.in (test for glibc2): Correct AC_TRY_COMPILE so that
6996         this works correctly on glibc-2 systems. This should allow
6997         simplified linking on these systems, and successful linking on Red
6998         Hat 6.0 systems.
6999         * configure, Makefile: Regenerate.
7000         
7001         * bits/std_cwctype.h: Add missing 'w' to _S_iswpunct_helper name. 
7002         
7003         * testsuite/ext: New directory.
7004         * testsuite/ext/headers.cc: New file.
7005
7006 1999-06-23  Vadim Egorov  <egorovv@1c.ru>
7007
7008         * stl/ext/hash_set: include missing headers
7009         * stl/ext/hash_map: Same
7010         * stl/ext/slist: Same
7011
7012 1999-06-17  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7013
7014         * bits/std_cmath.h: comment out modf. Kills build on hpux10.20
7015
7016 1999-06-15  Benjamin Kosnik  <bkoz@cygnus.com>
7017
7018         * src/Makefile.am (sources): Regenerate.
7019         * mkcheck: Add TESTS_FILE as a way of controlling what testcases
7020         are run.
7021
7022 1999-06-14  Benjamin Kosnik  <bkoz@cygnus.com>
7023
7024         * src/string-inst.cc: Change _S_construct signature, to
7025         track requested allocation size versus valid input iterator range.
7026         * bits/basic_string.h: Here too.
7027         * bits/string.tcc: And here.
7028
7029 1999-06-12  Benjamin Kosnik  <bkoz@cygnus.com>
7030
7031         * mkcheck (LOG_FILE): Correctly append errors. 
7032
7033         * stl/bits/stl_iterator.h: Revert previous, delirious, change.
7034
7035         * bits/basic_string.h: Change _Rep::_M_data to _Rep::_M_refdata,
7036         to clarify differences between basic_string::_M_data() calls and
7037         _Rep::_M_data() calls.
7038         * bits/std_string.h: Fix.
7039         Put in check for out_of_range in substr.
7040         * bits/string.tcc:  Fix for _S_find.
7041
7042         * testsuite/21_strings/compare.cc: Add tests.
7043         * testsuite/21_strings/find.cc: New file.
7044         * testsuite/21_strings/substr: New file.
7045         * testsuite/21_strings/replace.cc: New file.
7046         
7047 1999-06-11  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7048
7049         * bits/valarray_array.h: __restrict__ify pointers.
7050
7051         * bits/std_valarray.h: Tweak.
7052         (valarray<T>::cshift, valarray<T>::shift): use __builtin_alloca.
7053
7054         * bits/gslice_array.h: Tweak. Reflect changes in bits/gslice.h
7055
7056         * bits/gslice.h: Tweak.
7057         (class gslice::_Indexer): new class.
7058         (gslice::gslice(const gslice&)): implement copy-ctor to support
7059         ref-counted index. 
7060         (gslice::operator=(const gslice&)): support ref-counted index.
7061         (gslice::_M_convert_to_index): delete.
7062
7063         * src/valarray.cc: New file.
7064         (__gslice_to_index): turn a gslice into a valarray<size_t>
7065         (ctor gslice::_Indexer::_Indexer): implement.
7066
7067         * src/Makefile.am (sources): add valarray.cc
7068         * src/Makefile.in: regenerate.
7069
7070 1999-06-08  Benjamin Kosnik  <bkoz@cygnus.com>
7071
7072         * stl/bits/stl_iterator.h (__normal_iterator::const_iterator
7073         ctor): Put in a const_cast.
7074
7075         * testsuite/21_strings/invariants.cc: New file.
7076
7077         * testsuite/21_strings/insert.cc: Add exception handling bits.
7078         * testsuite/21_strings/ctor_copy_dtor.cc: Same.
7079
7080         * src/wstring-inst.cc: Add c++config.h include.
7081
7082         * bits/basic_string.h: Fix const operator[] for size == pos.
7083         Add _M_leak for rbegin, non-const.
7084         Add _M_leak for rend, non-const.
7085         Make member function at standards conformant.
7086         Add _S_terminal to _Rep for operator[] const, add this into
7087         c_str() as well.
7088         * bits/string.tcc: Add static member definition here,
7089         temporarily.
7090         
7091         * testsuite/21_strings/element_access.cc: Add tests.
7092
7093 1999-06-08  Vadim Egorov  <egorovv@1c.ru>
7094
7095          * bits/fstream.tcc (_M_really_overflow): Fixed size of
7096          conversion buffer.
7097
7098 1999-06-08  Phil Edwards  <pedwards@ball.com>
7099
7100         * bits/fstream.tcc (basic_filebuf::xsputn):  Fix off-by-one count
7101           caused when __testinit is true.
7102         * bits/ostream.tcc (basic_ostream::op<<(streambuf*)):  Write buffer
7103           using rdbuf()->sputn rather than _M_fnumput->put.
7104
7105 1999-06-08  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7106
7107         * testsuite/23_containers/bitset_ctor.cc: New file.
7108         * stl/bits/std_bitset.h (__BITSET_WORDS): Fix integration bug.
7109
7110 1999-06-08  Phil Edwards  <pedwards@ball.com>
7111
7112         * bits/fstream.tcc (basic_filebuf::underflow):  Fix, rename local vars.
7113
7114 1999-06-07  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7115
7116         * testsuite/21_strings/element_access.cc: Finish off these tests.
7117         * testsuite/21_strings/insert.cc (test01): Uncomment.
7118         * testsuite/21_strings/ctor_copy_dtor.cc (test01): Finish off ctors.
7119         * bits/basic_string.h: Tweak, okay, fix for real this time.
7120         * bits/string.tcc: Same.
7121         * bits/char_traits.h: Tweak.
7122
7123 1999-06-07  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7124
7125         * bits/std_cmath.h: Example of how to use the generated macro.
7126         * acconfig.h: Add macro for sinf here.
7127         * configure.in (LIBS): Add test for builtin math function sinf.
7128         * configure: Regenerated.
7129         
7130         * bits/basic_string.h: Fix _S_max_size.
7131
7132 1999-06-06  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7133
7134         * bits/basic_string.h: Fixes for out-of-memory segv for large strings.
7135         Remove _S_construct signature for forward_iterator_tag and
7136         input_iterator_tag.
7137         Clean _M_fold.
7138         * src/string-inst.cc: Same, tweaks. 
7139         * bits/string.tcc: Same, tweaks.
7140
7141         * testsuite/21_strings/ctor_copy_dtor.cc: Add/clarify tests.
7142         * mkcheck (LOG_FILE): Fix filebuf-[2,3].tst checks.
7143         * mknumeric_limits (LD_FLAGS): Add -nodefaultlibs -lc -lgcc as per
7144         Gaby.
7145
7146         * src/locale.cc: Final separation for char/wchar_t bits.
7147
7148 1999-06-05  Phil Edwards  <pedwards@ball.com>
7149
7150         * docs/index.html:  Added link to book upon request'n'agreement.
7151         * docs/23_containers/wrappers_h.txt:  Added.
7152         * docs/{23_containers,27_io}/howto.html:  Added sections.
7153
7154         * bits/std_fstream.h: Tweak.
7155         
7156 1999-06-05  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7157
7158         * src/ios.cc: Same here.
7159         * bits/std_iosfwd.h: More wchar_t defines.
7160
7161         * bits/basic_string.h: Tweaks. 
7162         * bits/string.tcc: Tweak. Fix _S_construct to check for max_size
7163         when doing error checking, as per LWG defect #83.
7164         
7165         * src/gen-c++config.cc: Fix comment.
7166         
7167         * testsuite/21_strings/ctor_copy_dtor.cc: New file, checks ctors,
7168         assignments, dtors.
7169         * testsuite/21_strings/element_access.cc: New file, checks for
7170         operator[], at(...).
7171         * testsuite/21_strings/insert.cc: New file, tests string::insert.
7172         * testsuite/21_strings/char_traits.cc: New file, tests
7173         for char_traits<char>.
7174         
7175         * bits/utility.h: Remove, again.
7176         * src/Makefile.am (std_headers): Remove utility.h.
7177         * src/Makefile.in (std_headers): Regenerate.
7178
7179         Alfred Minarik <a8601248@unet.univie.ac.at>
7180         * bits/basic_string.h: Move __out_of_range and __length_error into
7181         namespace std.
7182
7183 1999-06-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7184
7185         * testsuite/26_numerics/modf_float.cc: New file.
7186
7187         * bits/std_cmath.h (modf(float, float*)): Fix signature. Correct
7188         typo: use ::modff, not ::modf.
7189
7190 1999-06-03  Vadim Egorov  <egorovv@1c.ru>
7191
7192         * bits/string.tcc (basic_string::_M_mutate): Fixed memory
7193         allocation error
7194         * testsuite/21_strings/capacity.cc (test01): Test.
7195         
7196 1999-06-03  Phil Edwards  <pedwards@ball.com>
7197
7198         * bits/fstream.tcc:  Re-order inits to stop warnings.  Comment/move
7199           unused variables to within #if 0 blocks to do the same.
7200         * bits/std_fstream.h:  Fix typos (one prevents compilation).
7201
7202 1999-06-03  Benjamin Kosnik <bkoz@pacifica.cygnus.com>
7203
7204         * src/wstring-inst.cc: Fix.
7205
7206 1999-06-02  Benjamin Kosnik <bkoz@madcow.cygnus.com>
7207
7208         * bits/char_traits.h: Add _G_USE_WCHAR_T macro guards.
7209         * stl/bits/stl_string_fwd.h: Same.
7210         * bits/locale_facets.h: Same.
7211         * bits/locale_facets.tcc: Same.
7212         * src/wstring-inst.cc: And here.
7213         
7214         * src/gen-c++config.cc: Comment _G_USE_WCHAR_T. Leading to
7215         problems on HPUX 10.20.  
7216         * your-build-directory-here/bits/c++config.h: Just kidding, do it
7217         here as a temporary hack till the compiler/host problems get
7218         worked out.
7219
7220         * bits/locale_facets.tcc (num_get::do_get): Change from ifdef
7221         HAVE_STRTOLD to HAVE_STRTOLD && !(__hpux). Apparently, problems
7222         converting "long double" to struct long_double. Probably should be
7223         done with one macro (HAVE_STRTOLD) at configure time.
7224
7225         * bits/std_cmath.h: Comment out pow(double, int) defintion as
7226         gives re-declaration under hpux10.20. Revert previous change, as
7227         kills linux/x86, solaris 2.7, hpux builds. These should be done
7228         using autoconf, see std_cctype.h and the solutions started in
7229         configure.in (see config.h for the generated file.)
7230
7231         * mknumeric_limits (LDFLAGS): Remove '-nodefaultlibs -lc', as
7232         -nodefaultlibs prevents linking under HPUX 10.20 as __main is not
7233         defined.
7234
7235         * docs/index.html: Add some useful links.
7236         * docs/17_intro/contribute.html: Fix broken links.
7237
7238 1999-06-02  Benjamin Kosnik <bkoz@rhino.cygnus.com>
7239
7240         * mkcheck (LOG_FILE): Add !/bin/bash instead of cygnus-style
7241         paths. The rest of the world should be able to run this script
7242         now.
7243
7244         * src/Makefile.am ($(generated_headers)): Remove comment.
7245         * Makefile*: Regenerate.
7246         
7247         * bits/std_locale.h: Remove detritus.
7248         * bits/localefwd.h: Add <cctype> include to undefine the isspace
7249         macro.
7250
7251 1999-06-01  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7252
7253         * src/gen-c++config.cc: New file. Making c++config.h at configure
7254         time by catting this file (nee bits/config.h) with the build
7255         directories config.h. This is not a complete or perfect solution
7256         but is better than what was in place previously. 
7257         * bits/c++config.h: Rename/move to above.
7258         * src/Makefile.am (headers): Remove c++config.h.
7259         (myinstallheaders). Add.
7260         * Makefile*: Regenerated.
7261
7262         * bits/std_cwchar.h: Add include of c++config.h for HAVE_*
7263         definitions, so that wmemcmp, wcslen, wmemchr, etc are properly
7264         declared only if not present in the host's wchar.h.
7265
7266         * bits/locale_facets.tcc (std): Change _G_USE_STRTO* to HAVE_STRTO*.
7267         
7268         * bits/std_cmath.h: Define out, for the moment. Linux has no
7269         __buitin_fsqrtl? Probably need some kind of configure trickery
7270         here as well.
7271
7272         * src/Makefile.*: Regenerate.
7273         * bits/c++config.h: Add config.h include.
7274
7275         * bits/std_cwchar.h: Remove remaining #error guard.
7276         
7277         * acconfig.h: Add bits for HAVE_LC_MESSAGES.
7278
7279         * configure.in (LIBS): Replace previous effort for mbstate_t and
7280         strtold/strtof with this implementation.
7281
7282 1999 06-01  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7283
7284         * bits/std_cmath.h: Tweak. Add more functions. Use __builtin_xxx
7285         whenever possible.
7286
7287 1999-05-28  Benjamin Kosnik  <bkoz@cygnus.com>
7288
7289         * bits/locale_facets.tcc (std): Eek: this left in. Autoconf bits
7290         for determining mbstate_t differences across various hosts not
7291         finished. 
7292
7293 1999-05-26  Benjamin Kosnik  <bkoz@nabi.net>
7294
7295         * bits/locale_facets.tcc: Change to ifdef.
7296
7297         * bits/std_sstream.h (stringbuf::setbuf): Remove dynamic_cast.
7298         * bits/std_fstream.h (filebuf::setbuf): Same.
7299
7300         * bits/std_istream.h: Add ws declaration.
7301         * bits/istream.tcc: Stub out definition.
7302         
7303         * docs/index.html: Fix broken link for design.txt.
7304
7305         * configure.in: Test for mbstate_t. If wchar.h doesn't have it,
7306         then set _G_NEED_MBSTATE_T.
7307         * configure: Regenerate.
7308         * bits/c++config.h: Move mbstate_t define.
7309         * bits/std_cwchar.h: To here.
7310
7311 1999-05-25  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
7312
7313         * bits/std_sstream.h:
7314           basic_stringbuf<>::basic_stringbuf: fix.
7315           basic_stringbuf<>::setbuf: 
7316           remove the temporary __string_type object,
7317           remove the unnecessary dynymic_cast in the return value,
7318           change the type of the returned value from __streambuf_type*
7319           to basic_stringbuf<_CharT, _Traits, _Alloc>*.
7320
7321 1999-05-25  Phil Edwards  <pedwards@ball.com>
7322
7323         * bits/std_streambuf.h (streambuf::setbuf): Always return streambuf*. 
7324
7325 1999-04-25  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7326
7327         * bits/std_cmath.h: Tweak. Add float versions of the math functions
7328         in <math.h>.  <cmath> still incomplete and incorrekt.
7329
7330 1999-05-24  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7331
7332         * mknumeric_limits (LDFLAGS): set appropriate link flags.
7333         
7334 1999-05-23  Phil Edwards  <pedwards@ball.com>
7335
7336         * docs/17_intro/howto.html:  Added links to text docs,
7337         e.g., BUGS. 
7338         * docs/21_strings/howto.html:  Updated sections and links.
7339         * docs/21_strings/{gotw29a.txt,stringtok_h.txt}:  Added.
7340         * docs/faq/index.html:  Updated what-works for sixth
7341         snapshot. Also a number of "internal" links have been
7342         fixed, now that the web pages are the docs directory...
7343         * docs/faq/index.txt: Regenerated.
7344         
7345 1999-05-21   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7346
7347         * bits/basic_string.h: Add Nathan's documentation on the string class.
7348
7349         * testsuite/27_io/ios_members_static.cc: New file, for testing
7350         ios_base::sync_with_stdio.
7351
7352 1999-05-21   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7353
7354         * bits/std_locale.h: Simplify includes.
7355         * bits/loccore.h: Delete.
7356         * bits/localefwd.h: Renamed, trimmed.
7357         * bits/locfacets.h: Delete.
7358         * bits/locale_facets.h: Rename, expanded.
7359         * bits/loccore.tcc: Deleted.
7360         * bits/locfacets.tcc: Deleted.
7361         * bits/locale_facets.tcc: Resultant merge.
7362         * bits/std_fstream.h: Modify include.
7363         * bits/ostream.tcc: Same.
7364         * bits/istream.tcc: Same.
7365
7366         * src/locale-inst.cc: And here.
7367         * src/locale.cc: Ditto. 
7368         * src/Makefile.am: Updated.
7369         * src/Makefile.in: Rengenerated.
7370
7371         * bits/std_istream.h: Move istream::sentry ctor definition.
7372         * bits/istream.tcc: Move istream::sentry ctor here.
7373         Add more detailed locale include here for ctype member functions.
7374         * bits/ostream.tcc (std): And here.
7375
7376         * bits/sbuf_iter.h: Include std_streambuf.h
7377
7378         * bits/locfacets.h: Start separating this into a localeimp.h file.
7379         * bits/loccore.h: Start separating this into a localefwd.h file.
7380         Add std_climits for CHAR_BIT.
7381         
7382         * bits/ios_base.h (ios_base::sync_with_stdio): Stub in.
7383
7384         * bits/char_traits.h: Tweak.
7385
7386         * bits/ios_base.h: Remove INT_MAX, use 1<<16.
7387
7388         * bits/std_ostream.h: Remove c++config.h include.
7389         * bits/std_istream.h: Same.
7390         * bits/std_streambuf.h: Same.
7391         * bits/std_fstream.h: Same.
7392         * bits/std_sstream.h: And here.
7393         
7394         * bits/std_iosfwd.h: Add _G_RESOLVE_LIB_DEFECTS here for streampos.
7395         * bits/char_traits.h: Add include of std_cwchar.h for mbstate_t.
7396         * bits/fpos.h: Tweak, format.
7397
7398         * std/ciso646: New file.
7399         * bits/std_ciso646.h: New file.
7400         * src/Makefile.am (std_headers): Add ciso646.
7401         (headers): Add bits/std_ciso646.h.
7402         * src/Makefile.in: Regenerate.
7403         * testsuite/17_intro/header_ciso646.cc: New file, disable
7404         equivalance tests.
7405         
7406         * bits/fpos.h: Remove libio.h include.
7407         * bits/basic_file.h: And here.
7408         * bits/std_ios.h: Put here.
7409
7410         * src/ios.cc: Simplify includes, tweak.
7411         * bits/std_ios.h: Simplify include order. 
7412         * bits/ios_base.h: Modify ios_base::failure.
7413
7414         * stl/bits/std_numeric.h: Change include from stl_iterator to
7415         std_iterator.
7416         
7417 1999-05-19  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7418
7419         * std/iostream: Remove static member __ioint.
7420         * bits/std_iostream.h: Put here.
7421
7422         * stl/bits/std_numeric.h: Remove unneccessary std_iostream.h include.
7423         * stl/bits/stl_algobase.h: Same.
7424         * testsuite/27_io/iostream_objects.cc: Regression tests.
7425         * testsuite/27_io/hello.cc: Remove, subset of above.
7426         
7427 1999-05-19  Phil Edwards  <pedwards@ball.com>
7428         
7429         * docs/index.html: Tweak, update.
7430
7431 1999-05-18  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7432
7433         * docs/17_intro/RELEASE-NOTES: remove outdated
7434         documentation about numeric_limits. Correct CXXINCLUDE setting
7435         documentation.
7436
7437 1999-05-18  Phil Edwards  <pedwards@ball.com>
7438
7439         * docs/{17_intro,18_support,19_diagnostics,20_util,21_strings,
7440           22_locale,23_containers,24_iterators,25_algorithms,26_numerics,
7441           27_io}/howto.html:  Created, with some initial entries.
7442         * docs/faq/index.html:  Fixed some links.
7443         * docs/faq/index.txt:  Regenerated.
7444
7445 1999-05-18  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7446
7447         * bits/c++config.h (__GLIBCPP__): Set version to 19990518.
7448
7449         * docs/17_intro/RELEASE-NOTES: Update.
7450         * docs/index.html: Correct link to mailing list help page, update News.
7451         * docs/faq/index.html: Change fifth to sixth for snapshot.
7452         
7453         * src/Makefile.am (myinstallheaders): Bring over Gaby's changes to
7454         install $(top_builddir)/bits/std_limits.h into
7455         $(myincludepfx)/bits. This was mistakenly omitted from yesterday's
7456         Makefile.am changes.
7457         * *Makefile*: Regenerate using automake.
7458
7459         * mkcheck (LOG_FILE): Fix filebuf directory oddness.
7460         * testsuite/27_io/filebuf.cc: Same.
7461
7462 1999-05-18  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7463
7464         * docs/17_intro/CHECKLIST: update.
7465         * docs/17_intro/TODO: update.
7466
7467 1999-05-17  Phil Edwards  <pedwards@ball.com>
7468
7469         * docs/{17_intro,18_support,19_diagnostics,20_util,21_strings,
7470           22_locale,23_containers,24_iterators,25_algorithms,26_numerics,
7471           27_io}/howto.html:  Created, with some initial entries.
7472         * docs/faq/index.html:  Fixed some links.
7473         * docs/faq/index.txt:  Regenerated.
7474         
7475 1999-05-17  Benjamin Kosnik  <bkoz@unhappy.cygnus.com>
7476
7477         * src/Makefile.am (myinstallheaders): Missed removing missing.h. 
7478         * Makefile.in*: Regenerate.
7479
7480 1999-05-17  Benjamin Kosnik  <bkoz@happy.cygnus.com>
7481
7482         * bits/std_streambuf.h: Same.
7483
7484         * bits/loccore.h (_Bad_use_facet): Remove bits warned about.
7485         * bits/locfacets.h (std): Same.
7486         * bits/sstream.tcc: Same.
7487         * testsuite/27_io/stringstream.cc: Tweak.
7488
7489         * testsuite/27_io/filebuf.cc: Adjust.
7490         * testsuite/21_strings/capacity.cc (test01): Add more
7491         string::reserve tests.
7492
7493         * bits/c++config.h: Remove broken CCTYPE.
7494         * bits/std_cctype.h: Tweak, remove de-macroization, enable
7495         sequestered topper implementation.      
7496         * bits/std_cwctype.h: Same.
7497         
7498         * bits/missing.h: Remove.
7499         * bits/std_locale.h: Remove missing.h include.
7500         
7501         * stl/bits/std_bitset.h (bitset::bitset(string): Tweak to compile.
7502         
7503         * src/Makefile.am (headers): Add bits/std_cwctype.h.
7504         INCLUDES: Add top_builddir. 
7505         * src/Makefile.in: Regenerate.
7506
7507         * Makefile.am: Add check and check-install as new targets.
7508         * testsuite/make_check_libfree++: Move to. . .
7509         * mkcheck: Here.
7510         * configure.in: Tweak versions.
7511         * mknumeric_limits: Set paths correctly.
7512         
7513 1999-05-17  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7514         
7515         * src/Makefile.in (myinstallheaders): add rule to install
7516         std_limits.h. 
7517         
7518         * bits/slice.h (class slice): don't const-qualify data members
7519         since the copy and assignment operator is implicitly used. The
7520         valarray specification is definitively a bad one.
7521         
7522         * Makefile.in (generate-limits-sources): fix typo.
7523         
7524         * docs/text/TODO: update.
7525         * docs/text/CHECKLIST: update.
7526
7527         * bits/gslice.h (gslice): fix bugglet.
7528         (gslice::gslice): set _M_index_size to 0 whenever given lengths
7529         (lj) of size zero.
7530
7531         * src/Makefile.am (libstdc___la_SOURCES): add gen-num-limits.
7532         * src/Makefile.in (libstdc___la_SOURCES): keep in sync.
7533         [Note: **/Makefile.in should be generated from the corresponding
7534         Makefile.am.  The current situation is a litte chaotic.  ]
7535
7536 1999-05-16 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7537
7538         * mknumeric_limits: tweak.
7539
7540         * Makefile.in (all): add target generate-limits-sources.
7541         (generate-limits-sources): make a directory bits/ in top_builddir
7542         where the generated std_limits.h is put; generate limitsMEMBERs.cc
7543         directly under $(top_builddir)/src. Remains to put the appropriate
7544         rule for installing std_limits.h.
7545         
7546         * src/Makefile.in (headers): remove bits/std_limits.h to this list.
7547         (INCLUDES): add -I$(top_builddir) for bits/std_limits.h which is
7548         now generated at build-time in the build directory
7549         (libstdc___la_SOURCES): remove limitsMEMBERS.cc form this list
7550         * src/Makefile.am: reflect changes in src/Makefile.in
7551
7552 1999-05-12  Phil Edwards  <pedwards@ball.com>
7553
7554         * docs/faq/index.html: Add more entries (5.4,5.5), finish
7555         all but one empty entry.  Add links for HOWTOs, but no files yet.
7556         (Corrected HOWTO links are for bkoz's new scheme.)
7557         * docs/faq/index.txt: Regenerated.
7558         
7559 1999-05-12  Benjamin Kosnik  <bkoz@happy.cygnus.com>
7560
7561         * testsuite/17_intro/headers.cc: New file.
7562         * stl/bits/std_queue.h: Change stl_bvector.h include path.
7563         * bits/std_cwctype.h: New file.
7564         
7565         * testsuite/27_io/filebuf.cc: Need to tweak directory structure.
7566
7567 1999-05-11  Benjamin Kosnik  <bkoz@loony.cygnus.com>
7568
7569         * stl/bits/stl_config.h (__USE_MALLOC): Change underlying allocator.
7570         Check __USE_MALLOC before defining specializations containing
7571         __default_alloc_template.
7572         * src/stl-inst.cc: Here too.
7573
7574         * bits/basic_string.h: Change.
7575
7576         * testsuite/make_check_libfree++: More tweaks.
7577         * testsuite/21/capacity.cc: New file.
7578         
7579         * src/string.cc: Rename to be consistent with other inst files. 
7580         Rename to string-inst.cc.
7581         * src/string*.cc: Change include.
7582         * src/wstring.cc: Rename to wstring-inst.cc.
7583         * src/wstring*.cc: Ditto.
7584         * src/Makefile.in: Also here.
7585         * src/Makefile.am: Ditto.
7586
7587         * src/traits.cc: Remove.
7588         * src/wtraits.cc: Same.
7589
7590         Try a new way of organizing documentation, one with synchronicity
7591         between testsuites and docs subdirectories, and see who yelps.
7592         * docs/html: Remove, use chapter and subject specific directories
7593         instead of forcing things immediately into format of
7594         documentation.
7595         * docs/text: Same.
7596         * docs/image: Same.
7597         * docs/faq/text, docs/faq/html: Remove, put in the docs/faq
7598         directory and sort by filename and extension.
7599         * docs/17_intro, 18_support, 19_diagnostics, 20_util, 21_strings,
7600         22_locale, 23_containers, 24_iterators, 25_algorithms,
7601         26_numerics, 27_io: Add.
7602         * docs/17_intro/*: Populate with all the text files. . .
7603         * docs/index.html: Construct.
7604         
7605         * testsuite/*: Update with same names as the docs subdir.
7606         * testsuite/results: Where to stash conformance results for the
7607         different snapshots, so that progress/size/speed issues can be
7608         tracked over time.
7609         
7610 1999-05-10  Benjamin Kosnik  <bkoz@loony.cygnus.com>
7611         
7612         * src/string.cc: Add _S_copy_chars instantiation, as well as
7613         string::binary operators !=, ==, etc.
7614
7615         * src/Makefile.am (CXXFLAGS): Remove -fvtable-thunks.
7616         * src/Makefile.in (CXXFLAGS): Same here.
7617         * testsuite/make_check_libfree++ (CXX_FLAG): And here.
7618         
7619 1999-05-07  Benjamin Kosnik  <bkoz@cygnus.com>
7620
7621         * src/string.cc:  Add missing member functions to instantiation list.
7622
7623 1999-05-07  Benjamin Kosnik  <bkoz@cygnus.com>
7624
7625         * src/misc-inst.cc: Remove unused string instantiations.
7626
7627         * bits/string.tcc: Tweak, fix.
7628         * bits/basic_string.h: Format. Fix reported error with c_str().
7629
7630         * testsuite/make_check_libfree++: Tweak for shared builds.
7631         * testsuite/21/operations.cc: New file for testing c_str() etc.
7632
7633 1999-05-06  Benjamin Kosnik  <bkoz@cygnus.com>
7634             Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
7635
7636         * stl/bits/stl_vector.h: Fix the code of vector<> for usage with
7637         an iterator class.  Delineate pointer versus iterator differences
7638         in implementation.
7639         * 23/vector_capacity.cc: New file, tests for above.
7640         
7641 1999-05-06 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7642
7643         * mknumeric_limits: Fix typo. 'unsigned lont' should read
7644         'unsigned long'.
7645         * src/Makefile.am (libstdc___la_SOURCES): add limitsMEMBERS.cc,
7646         generated by mknumeric_limits to the list. Now std_limits.h is
7647         basically working. 
7648         * src/Makefile.in (generate-numeric-limits): new target to handle
7649         automatic generation of bits/std_limits.h and src/limitsMEMBERS.cc.
7650         (all): add target generate-numeric-limits.
7651         (libstdc___la_OBJECTS): add limitsMEMBERS.lo
7652         (libstdc___la_SOURCES): add limitsMEMBERS.cc
7653
7654 1999-05-05  Benjamin Kosnik  <bkoz@cygnus.com>
7655
7656         Irix build issues.
7657         * bits/c++config.h (_G_USE_CTYPE_ISBIT): Defines new macro for
7658         mask values in ctype_base. Move hacks for _ISBit to locfacets.h.
7659         * bits/locfacts.h: Here.
7660
7661 1999-05-05  Benjamin Kosnik  <bkoz@cygnus.com>
7662             Ulrich Drepper <drepper@cygnus.com> 
7663
7664         Solaris build issues.
7665         * bits/c++config.h: Define new macros, _G_USE_STRTOF and
7666         _G_USE_STRTOLD.
7667         
7668         * bits/locfacets.tcc (num_get::do_get): Tweak long double and
7669         float overloads to use the above macros. Account for the lack of
7670         strtold on some systems, and revert back to using sscanf.
7671
7672 1999-05-04  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
7673
7674         * bits/locfacets.tcc (num_get::do_get): Check the errno variable.
7675         Use strtoul/strtoull for unsigned types.  Check the ranges for
7676         short/unsigned short and if necessary for int/unsigned int.
7677
7678 1999-05-04  Benjamin Kosnik  <bkoz@cygnus.com>
7679
7680         * src/gen-num-limits.cc (round_style): Need to use mknumericlimits
7681         to generate bits/std_limits.h now, as the SGI std_limits.h is
7682         being depricated. Not done, but should be done immediately: need
7683         to make sure this script is run as part of the configuration
7684         process, because without it "make" in a configured build directory
7685         will fail. Also tweaked: added a space for float_round_style, and
7686         used static_cast of zero to default-initialize, which should be ok
7687         according to the standard. (see 8.5 p5 and 20.1.3).
7688         * mknumeric_limits (OUT_C): Need this for x86 long
7689         double extensions.
7690         
7691         * bits/basic_file.h: Include libio.h, not libioP.h.
7692         * src/basic_file.cc: And add libioP.h include here, so that
7693         _IO_init, et. al are well-declared.
7694
7695         * testsuite/make_check_libfree++ (LIB_PATH): Test installed
7696         headers, not source directory headers.
7697
7698         * src/Makefile.am (headers): Add stl_range_errors.h, also adjust
7699         for ext/*.  Also add basic_file.h.
7700         * src/Makefile.in (headers): Same.
7701         
7702         * bits/std_string.h: Reduce dependencies for faster
7703         pre-processing. Move istream and ostream specific defines into
7704         istream.tcc and ostream.tcc respectively.
7705         * bits/string.tcc: And here.
7706         * bits/basic_string.h: Move getline inline out-of-line, and to
7707         istream.tcc.
7708         * bits/istream.tcc: Move string::getline and operator>> here.
7709         * bits/ostream.tcc: And here too.
7710
7711         * bits/utility.h: Remove, as clashes with a standard header. Put
7712         __OUTOFRANGE and __LENGTHERROR macros into string.tcc for the time
7713         being, until this can be combined with SGI's approach.
7714         * bits/string.tcc: Add macros, as above.
7715         * bits/loccore.h: Add _Count_ones defines.
7716         * bits/std_string.h: And here too.
7717         * bits/std_locale.h: And here.
7718         * bits/std_ios.h: Take out include here.
7719         * src/Makefile.am (headers): Remove utility.h
7720         * src/Makefile.in (headers): Remove utility.h
7721
7722         * stl/bits/*: Update to SGI STL 3.20.
7723         * stl/ext/pthread_alloc: Delete this file.
7724         
7725 1999-05-04 Phil Edwards <pedwards@ball.com>
7726
7727         * docs/faq/html/index.html: Add more entries
7728         * docs/faq/html/index.txt: regenerated.
7729
7730 1999-05-04 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7731
7732         * src/gen-num-limits.cc (DO_DEFINE_MIN_MAX): fix typo.
7733
7734 1999-04-29  Benjamin Kosnik  <bkoz@haight.cygnus.com>
7735
7736         * bits/locfacets.tcc (num_get::do_get): Re-implement, with input
7737         from Ulrich and Nathan. Remove extraneous string class usage,
7738         tweak, clean, simplify and consolidate with a eye towards removing
7739         duplcate code. Use strto[l, ll, f, d, ld] instead of sscanf.
7740         Not done: dealing with leading zeros, wchar_t work.
7741         * bits/locfacets.h: And here too.
7742
7743         * doc: Remove.
7744         
7745 1999-04-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7746
7747         * docs/: add a FAQ.
7748         * docs/faq/: New directory.
7749         * docs/faq/html/: Likewise.
7750         * docs/faq/text/: Likewise.
7751         * docs/faq/html/index.html: New file.
7752         * docs/faq/html/index.txt: Likewise. Generated from 
7753         docs/faq/html/index.html by lynx.
7754
7755 1999-04-28  Benjamin Kosnik  <bkoz@happy.cygnus.com>
7756             Ryszard Kabatek and Branko Cibej 
7757
7758         * bits/locfacets.tcc: Modify.
7759
7760 1999-04-27  Benjamin Kosnik  <bkoz@happy.cygnus.com>
7761
7762         * bits/sbuf_iter.h: Clean, fix istreambuf_iterator, make
7763         conformant to 14882, wrap non-standard extensions with
7764         _G_RESOLVE_LIB_DEFECTS, remove detritus and cruft, rennovate.
7765         * bits/locfacets.tcc (num_get::do_get(bool)): Return correct iterator.
7766         
7767         * testsuite/27/istringstream_formatted.cc: Add tests.
7768         
7769         * bits/locfacets.h: Remove cruft from _Format_cache, continue
7770         commenting, simplify.
7771         * bits/locfacets.tcc: Same.
7772
7773         1999-04-27  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
7774         * bits/locfacets.tcc (num_get::do_get):
7775         Fix the sscanf format parameter 
7776         for long long 'll' (as in C9X) instead of 'l'.
7777         Fix the order of sscanf format parameters: "%dl" --> "%ld".
7778         Change the type of the local variable '__conv' from 'string'
7779         to 'const char*' and adapt the change.
7780         
7781 1999-04-26  Benjamin Kosnik  <bkoz@happy.cygnus.com>
7782
7783         * bits/locfacets.h: Document _Format_cache, and name data members
7784         after the corresponding functions in numpunct. For instance:
7785         _M_grsep -> _M_thousands_sep, and _M_decsep -> _M_decimal_point.
7786         Break apart _M_boolnames{2] into _M_truename and _M_falsename.
7787         * bits/locfacets.tcc: Same.
7788
7789         * bits/locfacets.h (num_get::_M_extract): Don't allow groupings to
7790         stop parsing--store for later analysis.
7791         * testsuite/27/istringstream_formatted.cc: Add cases.
7792         
7793 1999-04-25  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7794
7795         * bits/valarray_meta.h: tweak.
7796         (_UnFunBase, _BinFunBase, _BinFunBase1, _BinFunBase2, _BinBase1,
7797         _BinFunBase2): rename typedef-name _Tp to _Vt to keep the compiler
7798         happy -- boggus warning.
7799         * bits/std_valarray.h: Fix.
7800         (valarray<T>::shift): Fix. Update comment.
7801         (valarray<T>::cshift): Fix. 
7802
7803 1999-04-23  Benjamin Kosnik  <bkoz@cygnus.com>
7804         
7805         * testsuite/27filebuf-2.txt: Delete.
7806         * testsuite/27/filebuf.cc: Put output files directly into the
7807         correct subdirectory (27).
7808
7809         Alexandre Petit-Bianco <apbianco@cygnus.com>
7810         * testsuite/make_check_libfree++: Check generated (*.txt) file
7811         against stored results file (*.tst).
7812
7813 1999-04-22  Benjamin Kosnik  <bkoz@nabi.net>
7814
7815         * bits/locfacets.tcc: Fix.
7816
7817         * bits/fstream.tcc (filebuf::seekoff): Output current out pointer.
7818         (filebuf::overflow): Simplify.
7819         (filebuf::xsputn): Correctly handle indeterminate state.
7820
7821         * testsuite/27/istringstream_formatted.cc: Tweak.
7822         * testsuite/27/filebuf.cc: Tweak.
7823         * testsuite/27/filebuf-3.tst: Correct: this is the canonical
7824         results file, please use this in the future to guarantee filebuf
7825         positioning accuracy.
7826         * testsuite/27/filebuf-2.tst: Same.
7827         
7828 1999-04-21  Benjamin Kosnik  <bkoz@cygnus.com>
7829
7830         * bits/fstream.tcc (filebuf::xsputn): Add.
7831         * bits/std_fstream.h: Declare.
7832         
7833         * src/basic_file.cc (__basic_file::open): Add O_CREAT to open
7834         calls using ios_base::trunc.
7835
7836         * bits/sstream.tcc (streambuf::overflow): Fix crasher.
7837         
7838         * testsuite/make_check_libfree++ (LOG_FILE): Ugh. Another fix.
7839         * testsuite/27/27stringstream.cc: Same.
7840         * testsuite/27/27stringbuf.cc: More tweaks.
7841         * testsuite/27/27filebuf-2.txt: Remove.
7842
7843         * testsuite/27/27filebuf-1.tst: Append, to force byte size over
7844         BUFSIZE so that overflows/underflow can be tested with default
7845         buffer setting.  
7846         * testsuite/27/27filebuf-1.tst: Add.
7847
7848         * testsuite/*/*: Remove pre-pended chapter names, as they
7849         duplicate the chapter info contained in the enclosing directory
7850         anyway.
7851         
7852 1999-04-20  Benjamin Kosnik  <bkoz@cygnus.com>
7853
7854         * bits/streambuf.tcc (streambuf::xsputn): Re-implement to conform
7855         to sputc conditions.
7856
7857         * bits/ios_base.h: Define here.
7858         * src/ios.cc (ios_base::_M_clear): Remove hack.
7859         * bits/basic_ios.h: Fix rdstate().
7860
7861         * bits/sstream.tcc (streambuf::seekoff): Fix.
7862         * bits/fstream.tcc (filebuf::seekoff): Tweak comments.
7863
7864         * testsuite/make_check_libfree++ (LOG_FILE): More c-c-c-changes.
7865         * testsuite/24/24iterator.cc: Add/Fixes for DEBUG_ASSERT.
7866         * testsuite/27/27stringstream.cc: Same. 
7867         * testsuite/27/27stringbuf.cc: Same.
7868         * testsuite/27/27istringstream_formatted.cc: Same.
7869         * testsuite/27/27filebuf.cc: Same.
7870         
7871         * bits/locfacets.h: Remove specializations for messages<char> and
7872         messages<wchar_t> ctors. Same for moneypunct. Not required, not used.
7873         * src/locale.cc: Remove definitions for above.
7874         * src/misc-inst.cc: Revert, take out iomanip.h include. 
7875         * bits/std_iomanip.h: Tweak, format.
7876         
7877 1999-04-19  Benjamin Kosnik  <bkoz@cygnus.com>
7878
7879         * bits/loccore.h: Format, move inline.
7880         * bits/locfacets.tcc: Same.
7881         * bits/locfacets.h: Same.
7882
7883         Ulrich Drepper  <drepper@cygnus.com>
7884         * aclocal.m4: Re-generate.
7885         * configure, configure.in: Same.
7886         * m4/lc_messages.m4: New file.
7887
7888 1999-04-18  Benjamin Kosnik  <bkoz@cygnus.com>
7889
7890         * bits/std_ostream.h: Fix typedef for wchar_t instantiations.
7891         * bits/sstream.tcc: Tweak.
7892
7893         * std/iostream: Put __ioinit inside macro guards.
7894         
7895         * src/stlinst.cc: Delete and move to . . .
7896         * src/stl-inst.cc: New file, plus wrapping in namespace std.
7897         * src/Makefile.in: Change.
7898         * src/Makefile.am: Same.
7899         * src/misc-inst.cc: Add istringstream/ostringstream instantiations.
7900
7901         * testsuite/make_check_libfree++: Efficiently format for minimal
7902         space. Enforce stricter execution tests by enabling
7903         -DDEBUG_ASSERT.
7904         
7905 1999-04-16  Benjamin Kosnik  <bkoz@cygnus.com>
7906
7907         * docs/text/RELEASE-NOTES: Fix include typo.
7908
7909         * src/Makefile.am (headers): Add istream.tcc. 
7910         * src/Makefile.in (headers): Add istream.tcc. 
7911
7912         * ltconfig, ltmain.sh, libtool: Update to libtool-1.2g.
7913         
7914 1999-04-16  Benjamin Kosnik  <bkoz@cygnus.com>
7915
7916         * bits/locfacets.tcc (num_get::do_get(long)): Finish roughing in.
7917         * bits/locfacets.h (num_get::_M_extract): New functin:
7918         consolidate logic for do_get(...) members.
7919
7920         * bits/sbuf_iter.h (istreambuf_iterator::operator++()): Fix.
7921         * testsuite/27/27istringstream_formatted.cc: Add.
7922
7923 1999-04-16  Martin v. Loewis  <martin@mira.isdn.cs.tu-berlin.de>
7924
7925         * src/basic_file.cc (__basic_file::open): Fix thinko in
7926         _G_HAVE_IO_FILE_OPEN bits.
7927         * bits/std_istream.h (sentry::sentry(istream, bool)): Fix isspace bug.
7928         * bits/std_cmath.h: Add stdlib.h include for ldiv_t.
7929         * src/complex.cc (FCT): Qualify all functions with global namespace.
7930         * src/locale.cc: Don't qualify memcpy and setlocale.
7931         * src/stdexcept.cc (__out_of_range): Qualify out_of_range with std::.
7932         (__length_error): Likewise, for length_error.
7933         * src/stlinst.cc: Qualify instantiations with std::.
7934
7935 1999-04-15   Benjamin Kosnik  <bkoz@cygnus.com>
7936
7937         * C++STYLE: Add ChangeLog guidelines for member functions.
7938
7939         * doc/* : Delete.  
7940         * BADNAMES, BUGS, C++STYLE, CHECKLIST, COPYING,
7941         DESIGN, HEADER_POLICY, PROBLEMS, RELEASE-NOTES, TODO: Moved into
7942         docs/text and made less strident.
7943         
7944         * bits/fstream.tcc: Change non-standard ctor to match Sun's sematics.
7945         * bits/std_fstream.h: Same.
7946         * src/ios.cc: Same.
7947
7948         * bits/locfacets.h: Touch. 
7949         
7950 1999-04-15  Ulrich Drepper  <drepper@cygnus.com>
7951
7952         * math/cexp.c (cexp): Use NAN instead of nan("").
7953         Reported by joel reed <joelreed@yahoo.com>.
7954
7955         * libio/libioP.h: Define _IO_seek_fpos_t and _IO_seek_off_t based on
7956         _G_IO_IO_FILE_VERSION.  Use these types in the prototypes.
7957         * libio/fileops.c: Use _IO_seek_fpos_t and _IO_seek_off_t types
7958         instead of #if cascades.
7959         * libio/genops.c: Likewise.
7960         * libio/ioseekoff.c: Likewise.
7961         * libio/ioseekpos.c: Likewise.
7962         * libio/strops.c: Likewise.
7963         Patch by Chip Salzenberg <chip@perlsupport.com>.
7964
7965 1999-04-15  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7966
7967         * docs: New directory.
7968         * docs/html: Likewise.
7969         * docs/text: Likewise.
7970         * docs/image: Likewise.
7971
7972         * bits/std_cmath.h: Add new functions.
7973         (abs): overload for long and double.
7974         (div): overload for long.
7975
7976         * bits/valarray_array.h: Fix.
7977         * bits/gslice.h: Adjust friend.
7978         * bits/slice_array.h: likewise.
7979         * bits/valarray_meta.h: likewise.
7980
7981 1999-04-13   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7982
7983         * bits/locfacets.h: More changes, for num_get for insertion
7984         operators for integral types. Comment fields in _Format_cache.
7985         * bits/locfacets.tcc: And here too: add preliminary long version.
7986         * testsuite/27/27istringstream_formatted.cc: Add cases.
7987
7988 1999-04-13   Mark Elbrecht  <snowball3@usa.net>
7989
7990         * configure.in: Add locale.h to AC_CHECK_HEADERS argument. Call
7991         AC_LC_MESSAGES macro.
7992         * aclocal.m4 (AC_LC_MESSAGES): New. Determines if a target
7993         supports LC_MESSAGES.
7994         * config.h.in: Add entry for HAVE_LC_MESSAGES.
7995         * src/locale.cc (locale::_S_normalize_category): Use the
7996         HAVE_LC_MESSAGES macro to check for LC_MESSAGES support instead of
7997         _G_NO_CLOCALE_HAS_MESSAGES.
7998         * aclocal.m4 (AM_PROG_LD): For DOS style paths, simplify test to
7999         '?:' from '?:\\' so any path beginning with a drive name matches.
8000
8001 1999-04-12   Mark Elbrecht  <snowball3@usa.net>
8002
8003         * src/basic_file.cc(sys_open) [O_BINARY]: Declare __testb.
8004
8005 1999-04-12   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
8006
8007         * bits/locfacets.h: Tweak.
8008         * bits/locfacets.tcc(do_get): Clean/fix bool method.
8009
8010         * testsuite/21/21nonmember.cc: Same.
8011         * testsuite/21/21compare.cc: Fix license.
8012         * testsuite/27/27istringstream_formatted.cc: New file.
8013
8014 1999-04-12  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8015
8016         * bits/valarray_meta.h: _BinFunBase1, _BinFunBase2, _BinBase1,
8017         _BinBase2: new template classes; put in there to work around a
8018         compiler limitation. The whole valarray architecture is now
8019         working.
8020
8021 1999-04-08  Benjamin Kosnik  <bkoz@haight.constant.com>
8022
8023         * bits/locfacets.tcc: Fix, format.
8024         * bits/locfacets.h: Fix.
8025         * src/locale.cc: Same, plus format.
8026
8027         * bits/basic_string.h: Re-add definition here.
8028         * src/string.cc: Take out.
8029
8030 1999-04-08  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8031
8032         * bits/std_valarray.h: tweak.
8033         * bits/valarray_array.h tweak. use _Expr.
8034         * bits/slice_array.h: likewise.
8035         * bits/gslice_array.h: likewise.
8036         * bits/mask_array.h: likewise.
8037         * bits/indirect_array.h: likewise.
8038         * bits/valarray_meta.h: tweak.
8039         _UnFunBase, _UnFunClos, _BinFunBase, _FunBase, _ValFunClos,
8040         _RefFunClos, _UnBase, _UnClos, _BinBase, _BinClos, _SClos, _GClos,
8041         _IClos: new template classes.
8042         _Meta: renamed to _Expr. Made template with args.
8043         _Constant: made template with two args.
8044
8045 1999-04-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8046
8047         * bits/valarray_array.h: tweak.
8048
8049 1999-04-06  Benjamin Kosnik  <bkoz@cygnus.com>
8050
8051         * bits/basic_string.h: Whoops--fix blip.
8052
8053 1999-04-06  Benjamin Kosnik  <bkoz@cygnus.com>
8054
8055         Update to SGI STL 3.13
8056         * bits/basic_string.h: Add __get_c_string definition.
8057         * stl/bits/stl_range_errors.h: New file.
8058         * stl/bits/std_bvector.h: Same.
8059         * stl/bits/*: Update.
8060
8061 1999-04-04 1999  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8062
8063         * bits/slice_array.h: tweak.
8064         * bits/gslice_array.h: tweak.
8065         * bits/mask_array.h: tweak.
8066         * bits/indirect_array.h: tweak.
8067         * bits/valarray_array.h: tweak.
8068         (__valarray_copy): replace copy with memcpy.
8069         * bits/std_valarray.h: use __valarray_copy whenever possible.
8070         use __valarray_fill instead of fill.
8071
8072 1999-04-02  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8073
8074         * src/gen-num-limits.cc: new file
8075         * mknumeric_limits: Ditto.
8076
8077 1999-03-30  Benjamin Kosnik  <bkoz@cygnus.com>
8078
8079         * bits/locfacets.tcc: Do a stub version of num_get for short, int,
8080         and long types.
8081         * bits/locfacets.h: Add num_get::get methods overloaded for int
8082         and short, to resolve ambiguous overloads in istream insertion
8083         operators.
8084
8085 1999-03-30  Benjamin Kosnik  <bkoz@cygnus.com>
8086
8087         * bits/std_istream.h: Fix.
8088         * bits/istream.tcc: Fix.
8089
8090 1999-03-30  Philip Martin  <pm@corris.dircon.co.uk>
8091
8092         * testsuite/24/24iterator.cc: fix ++/-- tests
8093
8094 1999-03-29  Benjamin Kosnik  <bkoz@cygnus.com>
8095
8096         * bits/std_ostream.h: Looks like this, actually: Fix up eh-isms.
8097         * bits/ostream.tcc: Same.
8098
8099         * bits/std_istream.h: Bring over ostream changes, implement member
8100         functions. Baseline.
8101         * bits/istream.tcc: New file.
8102
8103 1999-03-26  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8104
8105         * bits/gslice.h (class gslice): fix friends template.
8106
8107 1999-03-23  Benjamin Kosnik  <bkoz@cygnus.com>
8108
8109         * bits/std_ostream.h: Fix sentry objects, implement seekp, tellp,
8110         delete cruft, etc.
8111         * bits/ostream.tcc: Same.
8112
8113         * bits/std_istream.h: Minor tweaks.
8114
8115 1999-03-18  Benjamin Kosnik  <bkoz@cygnus.com>
8116
8117         * src/locale-inst.cc: Remove duplicate instantiations.
8118         * bits/locfacets.tcc: Tweak definitions of static member.
8119
8120 1999-03-18  Benjamin Kosnik  <bkoz@cygnus.com>
8121
8122         * bits/std_fstream.h: Format: prepend "__" in front of
8123         non-standard typedefs.
8124         * bits/fstream.tcc: Match.
8125         * bits/std_streambuf.h: Format: prepend "__" in front of
8126         non-standard typedefs.
8127
8128         * bits/sstream.tcc: Match.
8129         * bits/std_istream.h: Format.
8130         * src/locale-inst.cc: Add num_get instantiations.
8131
8132         * bits/std_sstream.h: Fix crash in stringstreams. Remove member
8133         _M_sb, a basic_stringbuf object, and use the basic_ios pointer
8134         _M_streambuf instead. Make initializations sane. Fix
8135         allocation/deallocation of _M_streambuf.
8136         * bits/std_ostream.h: Fix initialization code.
8137         (ctor): Eliminate redundant this->init(), let base class initialize.
8138         (default ctor): New. Assume base classes already initialzed.
8139         * bits/std_istream.h: Parallel work to ostream.
8140         (ctor): Eliminate redundant this->init(), let base class initialize.
8141         (default ctor): New. Assume base classes already initialzed.
8142         Fix initialization of basic_iostream.
8143
8144         * bits/std_fstream.h: While we're at it, make initializations sane
8145         here too. Now matches sstream.h.
8146
8147         * bits/string.tcc: Fix crash in basic_string::compare.
8148         * bits/basic_string.h: And here.
8149         * bits/c++config.h: Add comment about _G_USE_EXCEPTIONS.
8150
8151         * testsuite/make_check_libfree++: Check shared as well.
8152         * testsuite/27/27stringstream.cc: Add bits.
8153         * testsuite/27/27boolfmt.cc: Add bits.
8154         * testsuite/27/27octfmt.cc: Add bits.
8155
8156 1999-03-17  Benjamin Kosnik  <bkoz@happy.cygnus.com>
8157
8158         * configure.in (USE_LONG_DOUBLE): signbitl link error.
8159
8160         * bits/locfacets.h: Fix errors that cause build problems
8161         with current egcs (template parameters have class scope).
8162         * bits/locfacets.tcc: Same.
8163         * src/locale-inst.cc: Same, clean.
8164         * src/misc-inst.cc: Same, clean.
8165
8166 1999-03-17  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
8167
8168         * stl/bits/std_memory.h:  Modify auto_ptr::reset to reflect the
8169         standard. Re-apply this previous patch.
8170
8171 1999-03-17  Philip Martin  <pm@corris.dircon.co.uk>
8172
8173         * bits/basic_string.h: Use __normal_iterator<> for iterators.
8174         * bits/std_sstream.h: Support __normal_iterator<> iterators.
8175         * bits/string.tcc: Ditto.
8176         * src/misc-inst.cc: Ditto.
8177         * src/locale-inst.cc: Ditto.
8178         * stl/bits/stl_iterator.h: Add __normal_iterator<>.
8179         * stl/bits/stl_vector.h: Use __normal_iterator<> for iterators.
8180         * testsuite/24/24iterator.cc: Add test cases for basic_string and
8181         vector iterators.
8182
8183 1999-03-16  Benjamin Kosnik  <bkoz@cygnus.com>
8184
8185         * bits/locfacets.tcc: Remove macro hack.
8186         * bits/locfacets.h: Tweaks.
8187         * src/misc-inst.cc: Weed out locale-related instantiations.
8188         * src/locale-inst.cc: Same.
8189
8190         * RELEASE-NOTES: Make more changes.
8191         * bits/c++config.h: Bump version number.
8192
8193         * testsuite/make_check_libfree++: Collect diagnostics.
8194
8195         * bits/std_ostream.h: Fix ostream initialization/destruction
8196         problem, related to dtor cleanup and new cached facets, agggggggh.
8197         * bits/ostream.tcc: Tweak.
8198         * bits/locfacets.h: Remove all friends of iostream classes.
8199         * bits/ios_base.h: Same.
8200         * bits/streambuf.tcc: Tweak.
8201         * bits/std_streambuf.h: Tweak.
8202         * bits/std_fstream.h: Tweak.
8203         * bits/fstream.tcc: Tweak.
8204         * src/stdstreams.cc: Tweak.
8205         * src/ios.cc: Close streams.
8206
8207         * math/Makefile.in: Add missing files for shared link errors.
8208         * math/Makefile.am: Same.
8209
8210 1999-03-15  Benjamin Kosnik  <bkoz@cygnus.com>
8211
8212         * src/locale-inst.cc: More wchar_t instantiations.
8213         * src/misc-inst.cc: Missed a few bits.
8214         * testsuite/make_check_libfree++: Add static and shared runs.
8215         * src/ios.cc: Add clarity to ios_base::Init::~Init().
8216
8217 1999-03-15  Benjamin Kosnik  <bkoz@cygnus.com>
8218
8219         * bits/std_ostream.h: Format, expunge, simplify. Add cached
8220         facets. Resolve link errors.
8221         * bits/ostream.tcc: Same.
8222         * src/misc-inst.cc: Add ostream, wostream instantiations.
8223         * src/Makefile.am: Add missing bits for stdstreams.cc.
8224         * src/Makefile.in: Same.
8225         * bits/std_iosfwd.h: Format.
8226         * bits/locfacets.h (num_put): Add basic_ostream as a friend to
8227         num_put so that cached _M_fnumput pointer can be deleted in
8228         basic_ostream's dtor. Now everybody plays nice.
8229
8230 1999-03-12  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8231
8232         * bits/gslice.h (class gslice): Make friends valarray,
8233         gslice_array and _GliceExpression.
8234
8235 1999-03-11  Benjamin Kosnik  <bkoz@cygnus.com>
8236
8237         * RELEASE-NOTES: Update.
8238         * src/ios.cc: Use do proper init.
8239         * bits/std_streambuf.h: Tweak.
8240         * bits/std_iostream.h: Take out static member.
8241         * std/iostream: Put here.
8242         * bits/std_ostream.h: Non-default ctor shouldn't smash _M_streambuf.
8243         * bits/std_istream.h: Ditto.
8244         * bits/basic_ios.h: Format.
8245         * bits/ostream.tcc(write): Fix.
8246         * bits/fstream.tcc: Fix stdstreams ctor to do a proper
8247         initialization of the fstream class.
8248         * src/stdstreams.cc: I'm baaaaaaaack.
8249
8250 1999-03-10  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
8251
8252         * bits/ios_base.h: Correct comments. Add ios_base::init()
8253         functionality. Format, tweak, expunge, clean, bathe, and hang to dry.
8254         * src/misc-inst.cc: Add instantiations here.
8255         * src/ios.cc: Clean.
8256         * bits/std_iostream.h: Add wrappers, global ios_base::Init object.
8257         * src/stdstreams.cc: Delete this file, as now unnecessary.
8258         * bits/fstream.tcc: Add missing initialization bits for ctor.
8259         * src/Makefile.am (libstdc___la_SOURCES): Delete here as well.
8260         * src/Makefile.in (libstdc___la_OBJECTS): And here.
8261
8262         * bits/streambuf.tcc: Tweak.
8263         * bits/sstream.tcc: Here too.
8264
8265         * bits/fstream.tcc: And change definition as well.
8266         * bits/std_fstream.h: Change ctor.
8267         * src/basic_file.cc (sys_open): Add call that opens a specific fileno.
8268         * bits/basic_file.h: Add declarations.
8269
8270         * testsuite/27/27hello.cc: New file.
8271
8272         * bits/std_ostream.h: Move flush() inline.
8273         * bits/ostream.tcc: From here.
8274
8275         * bits/char_traits.h: Add include of fpos.h for streamoff/streampos.
8276         * bits/std_ios.h: Change include libio to only when necessary.
8277         * bits/fpos.h: Like here.
8278         * ios_base.h: And here.
8279
8280         * bits/locfacets.h: Change _Iostate to _Ios_Iostate.
8281         * bits/locfacets.tcc: Same.
8282         * bits/std_locale.h: Include std_ios.h not std_iosfwd.h.
8283         * bits/std_iosfwd.h: Move _Ios_Iostate to ios_base.h
8284
8285 1999-03-09  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
8286
8287         * bits/basic_ios.h: Change _M_ctype to _M_fctype.
8288
8289         * bits/std_streambuf.h: Clean, tweak.
8290         * bits/std_fstream.h: Same.
8291         * bits/std_sstream.h: Same.
8292         * bits/streambuf.tcc: Move most member functions out-of-line.
8293         * bits/fstream.tcc: Same.
8294         * bits/streambuf.tcc: Same.
8295
8296         * bits/basic_file.h(filepos_cur): Set correctly.
8297         (filepos_beg): Same.
8298         (seekpos): Change to __c_streampos.
8299         * src/basic_file.cc (std): Change to __c_streampos.
8300
8301         * testsuite/27/27filebuf.cc: Round one is finished.
8302         * testsuite/27/27filebuf-2.tst: New file, final output should match.
8303         * testsuite/27/27filebuf-3.tst: Same.
8304
8305 1999-03-08  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
8306
8307         * bits/basic_file.h: Fix typo, add comments about what to expect
8308         from the various member functions in __basic_file.
8309
8310         * bits/std_fstream.h: Re-do sync/underflow to work
8311         together. Change from sys_read to xsgetn and from sys_write to
8312         xsputn. As it should have been from the beginning. . .
8313
8314 1999-03-06  Benjamin Kosnik  <bkoz@haight.constant.com>
8315
8316         * bits/c++config.h (__GLIBCPP__): Add versioning macro.
8317
8318         * bits/basic_file.h(file_beg): New function.
8319         (file_cur): Ditto.
8320
8321         * testsuite/27/27filebuf.cc: Test in, out, in | out.
8322         * bits/std_fstream.h: More _M_mode refinements.
8323         (synch): Add bits for out mode only.
8324         * bits/std_streambuf.h(xsputn): Correct for filebufs.
8325         * bits/std_sstream.h: Ditto.
8326
8327 1999-03-03  Benjamin Kosnik  <bkoz@cygnus.com>
8328
8329         * bits/std_fstream.h: Fix _M_mode AND with ios_base::openmode.
8330         * testsuite/27/27filebuf.cc: Modify.
8331         * bits/c++config.h: Fix.
8332
8333 1999-03-02  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
8334
8335         * bits/c++config.h: New macro, _G_RESOLVE_LIB_DEFECTS, used to put
8336         code in place that diverges from the final standard, but has been
8337         brought up on the library mailing list.
8338
8339         * bits/std_fstream.h(underflow): Position all three internal
8340         buffer pointers at the same initial position. Re-implement with
8341         basic_filebuf abstraction.
8342         (overflow): Ditto.
8343         (seekoff): Ditto.
8344         (seekpos): Ditto.
8345         * bits/std_sstream.h: Move _M_mode down into base class
8346         basic_streambuf.
8347         * bits/sstream.tcc: Ditto.
8348         * bits/std_streambuf.h: Ditto.
8349
8350         * testsuite/27/27filebuf.cc: Tweak.
8351
8352 1999-02-27  Benjamin Kosnik  <bkoz@slap-happy.cygnus.com>
8353
8354         * bits/std_sstream.h: Ditto.
8355         * bits/std_fstream.h: Fix blip.
8356
8357 1999-02-26  Benjamin Kosnik  <bkoz@happy.cygnus.com>
8358
8359         * C++STYLE: Add cases.
8360         * bits/std_fstream.h: Format.
8361         * bits/std_streambuf.h: Ditto.
8362         * bits/std_sstream.h: Ditto.
8363
8364         * src/basic_file.cc(sys_seek): Fix stack delirium, by keeping
8365         return type for _IO_file_seek and __basic_file::seek the same size.
8366         * bits/basic_file.h: Ditto.
8367
8368 1999-02-26  Benjamin Kosnik  <bkoz@happy.cygnus.com>
8369
8370         * bits/fstream.tcc: Add include guards.
8371         * src/misc-inst.cc: Add instantiations for shared libes.
8372         * src/locale-inst.cc: Add instantiaions for use_facet.
8373         * bits/loccore.h: Remove specialization foward decls for
8374         use_facet<ctype>: perhaps add the whole lot of them later on.
8375         * bits/std_fstream.h: Fix.
8376         * bits/locfacets.h: Ditto.
8377         * src/stdstreams.cc: Disable wide streams for now.
8378
8379         * src/Makefile.am (CXXFLAGS): Change up.
8380         * src/Makefile.in (CXXFLAGS): Ditto.
8381
8382 1999-02-25  Benjamin Kosnik  <bkoz@happy.cygnus.com>
8383
8384         * src/basic_file.cc: Change to ios_base::seekdir from int.
8385         * bits/basic_file.h: Ditto.
8386         * bits/locfacets.h : Fix blip with new guard macros.
8387
8388 1999-02-25  Benjamin Kosnik  <bkoz@cygnus.com>
8389
8390         * stl/bits/stl_config.h (__STL_USE_STD_ALLOCATORS): Minor tweaking.
8391         * bits/c++config.h: Clean. Remove _G_NO_STREAMBUF_ITERATORS and
8392         _G_USE_NAMESPACE.
8393         * amm1/locale: Remove unused defines.
8394         * generic/locale: Ditto.
8395         * src/ios.cc: Ditto.
8396         * src/locale.cc: Ditto.
8397         * src/locale-inst.cc: Ditto.
8398         * src/localename.cc: Ditto.
8399         * src/stdstreams.cc: And here.
8400
8401         * bits/c++config.h (_G_USE_WCHAR_T): Fix.
8402         * bits/loccore.h: Simplify, clean, add wchar_t guards.
8403         * bits/loccore.tcc: Ditto.
8404         * bits/locfacets.h: Ditto.
8405         * src/locale-inst.cc: Ditto.
8406         * bits/locfacets.tcc: Add do_put long long here.
8407
8408 1999-02-24  Benjamin Kosnik  <bkoz@cygnus.com>
8409
8410         * bits/std_streambuf.h: Add cached ctype facet, _M_ctype.
8411         * bits/basic_ios.h: Clean. Replace _M_strbuf with
8412         _M_streambuf. Use cached _M_cvt in basic_streambuf.
8413         * bits/std_istream.h: Replace _M_strbuf with _M_streambuf.
8414         * bits/std_fstream.h: Tweak.
8415
8416         * bits/char_traits.h: Remove fpos definitions from here. . .
8417         * bits/fpos.h: New file, put them here. Eventually, this may allow
8418         the severing of char_traits and fpos dependancies.
8419         * src/Makefile.in: Add fpos.h.
8420         * src/Makefile.am: Ditto.
8421         * bits/std_string.h: Add fpos.h include here.
8422         * bits/std_ios.h: And here.
8423
8424         * bits/std_streambuf.h: Change _M_init to _M_initialized.
8425         * bits/ios_base.h: Remove cstdio include.
8426         * bits/std_ios.h: ... Place here.
8427
8428 1999-02-23  Benjamin Kosnik  <bkoz@loony.cygnus.com>
8429
8430         * src/Makefile.in (CXXFLAGS): Re-add -fvtable-thunks.
8431         * src/Makefile.am (CXXFLAGS): Re-add -fvtable-thunks.
8432
8433         * bits/basic_file.h: Comment, adjust arguments.
8434         * src/basic_file.cc: Ditto.
8435
8436         * bits/std_fstream.h(seekoff): Error is of fpos type, not integral
8437         type: check and convert accordingly. Re-interpet "resultant stream
8438         position" to indicate external byte sequence location, not internal
8439         buffer info.
8440
8441 1999-02-22  Benjamin Kosnik  <bkoz@loony.cygnus.com>
8442
8443         * mkcshadow: And change copyright here.
8444         * src/Makefile.am (CXXFLAGS): Add -g -O2. Add new header
8445         dependencies for stl_pthread_alloc.h, pthread_allocimpl.h,
8446         stl_thread.h, and stl_iterator_base.h.
8447         * src/Makefile.in (CXXFLAGS): Ditto.
8448         * stl/backward/pthread_alloc.h: Remove.
8449
8450 1999-02-19  Benjamin Kosnik  <bkoz@loony.cygnus.com>
8451
8452         * bits/std_streambuf.h (sungetc): Use standard defs for putback
8453         position.
8454         * bits/std_fstream.h (pbackfail): Correct.
8455         (sungetc): Test.
8456         (seekoff): Implement.
8457         (seekpos): Re-do.
8458         * testsuite/27/27filebuf.cc: Add test cases.
8459
8460 1999-02-18  Benjamin Kosnik  <bkoz@loony.cygnus.com>
8461
8462         * bits/std_fstream.h: Go with basic_file's interfaces for dealing
8463         with the external buffers, and stop mucking around with setting
8464         and re-setting the external buf's pointers. Aka, clarity and
8465         simplicity rule the day.
8466         * src/locale.cc: Use memcpy in codecvt::do_in and codecvt::do_out.
8467         Remove partial result and support code.
8468
8469 1999-02-18  Ulrich Drepper  <drepper@cygnus.com>
8470
8471         * configure.in: Add hypot, hypotf, atan2f, expf, and copysignf to
8472         list of function which have to be replaced.
8473         Remove expf from list of functions to test for.
8474         Define USE_LONG_DOUBLE in case the libm has partial support for long
8475         doubles.
8476         * Makefile.in: Regenerated.
8477         * config.h.in: Likewise.
8478         * configure: Likewise.
8479         * libio/Makefile.am (LIBIO_SRCS): Add missing backslash.
8480         * libio/Makefile.in: Regenerated.
8481         * src/Makefile.in: Regenerated.
8482         * string/Makefile.in: Regenerated.
8483         * math/Makefile.am (EXTRA_DIST): Add hypot.c, hypotf.c, hypotl.c,
8484         atan2f.c, expf.c, and $(EXTRA_yes).
8485         (EXTRA_yes): Add signbitl.c mycabsl.c.
8486         (libmath_la_LIBADD): Add $(EXTRA_$(USE_LONG_DOUBLE)).
8487         (libmath_la_SOURCES): remove long double versions.
8488         * math/Makefile.in: Regnerated.
8489         * math/atan2f.c: New file.
8490         * math/copysignf.c: New file.
8491         * math/expf.c: New file.
8492         * math/hypot.c: New file.
8493         * math/hypotf.c: New file.
8494         * math/hypotl.c: New file.
8495         * math/cargf.c: Use correct function and macro names.
8496         * math/ccos.c: Likewise.
8497         * math/ccosh.c: Likewise.
8498         * math/ccoshf.c: Likewise.
8499         * math/ccoshl.c: Likewise.
8500         * math/cexp.c: Likewise.
8501         * math/cexpf.c: Likewise.
8502         * math/cexpl.c: Likewise.
8503         * math/clog.c: Likewise.
8504         * math/clog10.c: Likewise.
8505         * math/clog10f.c: Likewise.
8506         * math/clog10l.c: Likewise.
8507         * math/clogf.c: Likewise.
8508         * math/clogl.c: Likewise.
8509         * math/copysignf.c: Likewise.
8510         * math/csin.c: Likewise.
8511         * math/csinf.c: Likewise.
8512         * math/csinh.c: Likewise.
8513         * math/csinhf.c: Likewise.
8514         * math/csinhl.c: Likewise.
8515         * math/csinl.c: Likewise.
8516         * math/csqrt.c: Likewise.
8517         * math/csqrtf.c: Likewise.
8518         * math/csqrtl.c: Likewise.
8519         * math/ctan.c: Likewise.
8520         * math/ctanf.c: Likewise.
8521         * math/ctanh.c: Likewise.
8522         * math/ctanhf.c: Likewise.
8523         * math/ctanhl.c: Likewise.
8524         * math/ctanl.c: Likewise.
8525
8526 1999-02-17  Benjamin Kosnik  <bkoz@cygnus.com>
8527
8528         * testsuite/27/27filebuf.cc: Add cases.
8529         * testsuite/27/27filebuf-1.txt: Remove inadvertent garbage.
8530         * bits/std_streambuf.h: Simplify, always have one return statement.
8531         * bits/std_fstream.h: Tweak comments in underflow.
8532
8533 1999-02-17  Ulrich Drepper  <drepper@cygnus.com>
8534
8535         * ltmain.sh: Update from libtool 1.2d and fix Solaris problems.
8536         * ltconfig: Likewise.
8537
8538 1999-02-16  Christophe Pierret  <cpierret@businessobjects.com>
8539
8540         * src/locale.cc: Fix assert.
8541
8542 1999-02-16  Benjamin Kosnik  <bkoz@cygnus.com>
8543
8544         FIXME: Still need some kind of solution for undefined math symbols.
8545         * src/Makefile.in (locale-inst.lo): Compile with
8546         -fimplicit-templates to fix Solaris link problem.
8547         * src/Makefile.am: Ditto.
8548         * libio/Makefile.in: Add stdfiles.c so that _IO_list_all is defined.
8549         * libio/Makefile.am: Ditto.
8550         * src/locale.cc: Provide some kind of def for _S_tolower.
8551         * bits/locfacets.h: Fix declarations of ctype<wchar_t> to
8552         match ctype<char> for _S_tolower, _S_toupper, _S_table.
8553
8554 1999-02-10  Benjamin Kosnik  <bkoz@cygnus.com>
8555
8556         * bits/loccore.tcc: Move member-template ctor inline...
8557         * bits/loccore.h: ...here.
8558         * src/locale-inst.cc: Add instantiation here.
8559
8560         * testsuite/27/27stringstream.cc: Tweak.
8561
8562         * bits/ostream.tcc: Include sbuf_iter.h.
8563
8564         * bits/ostream.tcc: Convert *this to ostreambuf_iterator before
8565         passing to num_put, as num_put's first argument is an interator,
8566         not basic_ostream.
8567
8568         * testsuite/make_check_libfree++: New file, runs through the
8569         existing test files in the testsuite directory and makes sure
8570         they link.
8571
8572 1999-02-10  Brendan Kehoe  <brendan@cygnus.com>
8573
8574         * testsuite/21/21compare.cc: Fix typo.
8575         * src/locale.cc (ctype<wchar_t>::_S_{toupper,tolower,table}):
8576         Don't try to provide non-linux versions, since it's impossible to
8577         initialize their const references with the integer 0, no matter
8578         how we try to cast it.
8579
8580 1999-02-10  Benjamin Kosnik  <bkoz@cygnus.com>
8581
8582         * bits/std_locale.h: Move std_vector.h dependency.
8583         * bits/std_ios.h: ...from here.
8584         * bits/std_string.h: ...and here.
8585         * src/locale.cc: ..to here.
8586         * bits/loccore.h: Ditto, add vector forward declaration,
8587         make locale::_Impl data members pointers not containers.
8588         * bits/loccore.tcc: Move out-of-line for now.
8589         * bits/locfacets.h: Move vector dependency from here...
8590         * bits/locfacets.tcc: ...to here.
8591         * src/localename.cc: ..and here.
8592         * src/locale-inst.cc: Add include of locfacets.tcc here.
8593
8594         * stl/bits/stl_string_fwd.h: Make __get_c_string non-static.
8595         * bits/basic_string.h: Can't use sizeof on an incomplete type.
8596         * bits/string.tcc: Tweak.
8597         * src/string.cc: And add __get_c_string def here.
8598
8599         * bits/std_fstream.h: Yeah, comment the fill_n idea out as impractical.
8600
8601         * src/stlinst.cc: Add include of stl_config.h.
8602
8603 1999-02-09  Benjamin Kosnik  <bkoz@cygnus.com>
8604
8605         * stl/bits/std_bitset.h: Update to SGI STL 3.12.
8606         * stl/bits/stl_config.h: Tweak, update.
8607         * stl/bits/std_stdexcept.h: Ditto, change stl_exception to
8608         std_exception.
8609         * stl/bits/std_memory.h: Reconstructed auto_ptr, Ditto.
8610         * stl/bits/std_functional.h: Ditto.
8611
8612         * stl/bits/stl_string.h: New file, SGI's string
8613         implementation. For reference only, corresponding to string in
8614         3.12 source.
8615         * stl/bits/stl_char_traits.h: As above.
8616
8617         * stl/bits/pthread_allocimpl.h: New file corresponding to
8618         pthread_alloc.
8619         * stl/bits/stl_pthread_alloc.h: New file corresponding to
8620         pthread_alloc.h
8621         * stl/bits/stl_threads.h: New file.
8622
8623         Note that SGI STL 3.12's file iterator.h is not used.
8624         * stl/bits/std_iterator.h: Ditto.
8625         * stl/bits/stl_iterator.h: Drop in replace.
8626         * stl/bits/stl_iterator_base.h: New file, drop in replace.
8627
8628         * stl/bits/stl_queue.h, stl_rope.h, stl_set.h, stl_stack.h,
8629         stl_string_fwd.h, stl_tempbuf.h, stl_tree.h, stl_vector.h,
8630         stl_pair.h, stl_multimap.h, stl_multiset.h, stl_list.h,
8631         stl_hashtable.h, stl_hash_set.h, stl_hash_map.h, stl_function.h,
8632         stl_deque.h, stl_alloc.h, stl_algo.h, stl_algobase.h, ropeimpl.h:
8633         Drop-in replace (ie, stop changing __SGI_STL_* to _CPP_BITS_* for
8634         preprocessor guards, but fixup include paths and names according
8635         to new directory layout).
8636
8637 1999-02-05  Benjamin Kosnik  <bkoz@cygnus.com>
8638
8639         * bits/std_fstream.h: Remove _M_open data member.
8640         * bits/fstream.tcc: Ditto.
8641
8642         * src/locale.cc: Tweak.
8643
8644         * bits/std_sstream.h: Simplify.
8645
8646         * bits/std_streambuf.h: Simplify.
8647         (sputc): Use correct definition of "write area."
8648
8649         * bits/std_fstream.h: Fix uflow.
8650         * src/basic_file.cc: Tweak.
8651         * testsuite/27/27filebuf.cc: Add tests.
8652         * testsuite/27/27filebuf-3.txt: Rename to *-2.txt.
8653
8654 1999-02-02  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
8655
8656         * bits/ios_base.h: Make protected.
8657
8658 1999-02-01  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
8659
8660         * bits/ios_base.h: Changes in the class ios_base:
8661         Rename _M_exceptions member to _M_exceptions_data.
8662         Make the member functions rdstate(), clear(), exceptions()
8663         and exceptions(iostate) protected and add the "_M_" prefix.
8664         * src/ios.cc: Ditto.
8665         * bits/basic_ios.h: Adapt the changes from ios_base.
8666
8667 1999-01-29  Benjamin Kosnik  <bkoz@cygnus.com>
8668
8669         * bits/std_fstream.h: Remove _M_flags, _M_equilibrate  as unnecessary.
8670         * bits/fstream.tcc: Ditto.
8671
8672         * bits/std_fstream.h (underflow): Resize deallocates memory and
8673         resets pointers in the internal cache according to new _M_buf. . dooh!
8674         * src/locale.cc: Mas changes with codecvt::do_in, do_out.
8675
8676 1999-01-29  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
8677
8678         * stl/bits/std_memory.h:  Modify auto_ptr::reset to reflect the
8679         standard.
8680
8681 1999-01-28  Benjamin Kosnik  <bkoz@cygnus.com>
8682
8683         * src/locale.cc (codecvt::do_in): Finer-grained tuning to take
8684         into account partial returns.
8685         (codecvt::do_out): Likewise.
8686
8687         * bits/char_traits.h: Change streamsize to be a signed type, as
8688         required by 27.4.1 Types p 2. (Changing to _IO_ssize_t.)
8689         * bits/std_streambuf.h: Make
8690         in_avail() and showmanyc() have streamsize as return types, so
8691         that showmanyc()'s return of eof won't underflow in_avail's return
8692         value and give a bogus result.
8693         * src/misc-inst.cc: And more changes. . .
8694
8695         * bits/std_streambuf.h (basic_streambuf): Add _M_buf_unified to keep
8696         track of joint in/out pointers into the internal buffer.
8697         (sbumpc): Add check for _M_buf_unified.
8698         (sputbackc): Ditto.
8699         (sungetc): Ditto.
8700
8701         * testsuite/27/27filebuf.cc: Add cases.
8702         * testsuite/27/27stringbuf.cc: Add showmanyc case.
8703
8704         * bits/std_fstream.h (close): Fix logic error.
8705         (open): Initialize internal pointers based on _M_buf and _M_buf_size.
8706         (showmanyc): Add underflow component, to match the standard.
8707
8708         * bits/fstream.tcc: Ditto.
8709
8710 1999-01-27  Benjamin Kosnik  <bkoz@cygnus.com>
8711
8712         * bits/basic_file.h: Match vtables w/ _IO_FILE_plus.
8713         * src/basic_file.cc: Ditto.
8714         * src/Makefile.in: Add -fvtable-thunks to CXXFLAGS: preferred
8715         format for dealing with _IO_file in libio.
8716
8717 1999-01-27  Ulrich Drepper  <drepper@cygnus.com>
8718
8719         * src/basic_file.cc: Include fcntl.h.
8720
8721 1999-01-27  Benjamin Kosnik  <bkoz@cygnus.com>
8722
8723         * libio/Makefile.in: Add fileops.lo, genops.lo to objects to debug
8724         libio calls.
8725         * bits/std_streambuf.h: Redefine read posion.
8726
8727         * bits/std_fstream.h: Temporary hack to get vtables working again.
8728         * bits/basic_file.h: Revert.
8729         * src/basic_file.cc: Ditto.
8730         * testsuite/27/27filebuf.cc: Tweak.
8731
8732 1999-01-26  Benjamin Kosnik  <bkoz@cygnus.com>
8733
8734         * bits/basic_file.h: Add showmanyc, underflow. .
8735         * src/basic_file.cc: Ditto.
8736
8737         * bits/std_fstream.h (showmanyc): Add bits to ping libio to see if more
8738         chars can be read.
8739
8740         * testsuite/27/27filebuf.cc: Add testcases.
8741         * src/basic_file.cc: Add O_CREAT to open calls with
8742         ios_base::trunc as part of the open mode.
8743
8744 1999-01-26  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
8745
8746         * bits/basic_ios.h: fix basic_ios::exceptions(iostate)
8747
8748 1999-01-25  Benjamin Kosnik  <bkoz@nabi.net>
8749
8750         * src/ios.cc (clear): Correct typo.
8751         * bits/ios_base.h: Tweak spacing.
8752
8753 1999-01-25  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
8754
8755         * bits/basic_ios.h: fix basic_ios::fail()
8756
8757 1999-01-25  Benjamin Kosnik  <bkoz@loony.cygnus.com>
8758
8759         * bits/basic_file.h: Include libioP.h from libio instead of here.
8760         * bits/iolibio.h: Remove.
8761         * bits/libio.h: Remove.
8762
8763 1999-01-22  Benjamin Kosnik  <bkoz@lunatic.cygnus.com>
8764
8765         * bits/std_fstream.h: Tweak cvt-> in call for newer egcs compilers.
8766
8767 1999-01-22  Ulrich Drepper  <drepper@cygnus.com>
8768
8769         * Makefile.am (SUBDIRS): Add libio.
8770         * configure.in: Add rule to test for glibc2.
8771
8772         * src/Makefile.am (INCLUDES): Add -I to libio subdir.
8773         (libstdc___la_LIBADD): Add libio.la.
8774
8775 1999-01-21  Benjamin Kosnik  <bkoz@cygnus.com>
8776
8777         * bits/basic_file.h: Make new abstraction for underlying C library
8778         FILE, named __basic_file.
8779         * src/basic_file.cc: New file.
8780         * bits/os_raw.h: Delete.
8781         * src/os_raw.cc: Delete.
8782         * src/Makefile.in: Tweak.
8783         * src/Makefile.am: Tweak.
8784         * bits/iolibio.h: Add this here, for the time being.
8785         * bits/libioP.h: Ditto.
8786
8787         * bits/ios_base.h: Delete unused defines.
8788         * src/locale.cc (codecvt<char, char, mbstate_t>::do_in): Use
8789         strcpy to copy between the two buffers.
8790
8791         * testsuite/27/27stringbuf.cc: Change license, fix in_avail tests.
8792         * testsuite/27/27filebuf.cc: New file.
8793         * testsuite/27/27filebuf-1.txt: Data file for above test.
8794         * testsuite/27/27filebuf-2.txt: Ditto.
8795
8796         * bits/std_streambuf.h (uflow): Re-implement default.
8797         * bits/std_fstream.h: Set _M_buf_size based on cstdio's BUFSIZ.
8798         Re-implement virtual functions.
8799         * bits/fstream.tcc: Delete unused mf's.
8800
8801 1998-12-31  Benjamin Kosnik  <bkoz@lunatic.cygnus.com>
8802
8803         * bits/fstream.tcc: Add fstream ctor for cin/cout/etc.
8804         * bits/std_fstream.h: Ditto.
8805         * src/stdstreams.cc: Ditto.
8806
8807         * math/cpowl.c: Fix header typo with last change.
8808
8809 1998-12-31  Benjamin Kosnik  <bkoz@loony.cygnus.com>
8810
8811         * COPYING: New file (GPL v 2).
8812         * LICENSE.STD: Remove.
8813         * ./*: Change license.
8814
8815 1998-12-30  Benjamin Kosnik  <bkoz@haight.constant.com>
8816
8817         * bits/std_streambuf.h (std): Remove static on _M_init.
8818         * bits/streambuf.tcc (std): Ditto.
8819
8820         * bits/std_fstream.h: Add changes as discussed with Nathan, including
8821         state_type and codecvt_type members, the allocation of an internal
8822         buffer, the streamlined codecvt calls, etc.
8823
8824 1998-12-21  Benjamin Kosnik  <bkoz@haight.constant.com>
8825
8826         * bits/std_sstream.h: Tweak.
8827         * bits/fstream.tcc: Remove unused stubs.
8828         * bits/std_fstream.h: Tweak.
8829
8830 1998-12-17  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
8831
8832         * bits/std_streambuf.h: Move _IO_file_flags into basic_filebuf.
8833         Remove unused _IO_* members, possibly put into filebuf, which may
8834         need them.
8835         * bits/std_fstream.h: Add _M_flag.
8836         * bits/sbuf_iter.h: Tweak.
8837
8838         * bits/std_cstdio.h: Add SEEK_SET, SEEK_END, SEEK_CUR.
8839         * bits/ios_base.h: Use.
8840
8841         * src/stdstreams.cc: Modify to reflect standard ctors for
8842         filebuf.
8843         * src/misc-inst.cc: Ditto.
8844
8845         * bits/os_raw.h: Wrap in std namespace. Model parameters on
8846         underlying C library calls instead of the underlying unix
8847         filesystem.
8848         * src/os_raw.cc (_S_os_open): Use fopen, and compute a mode
8849         string as per p.659.
8850         (_S_os_close): Model on fopen.
8851         (_S_os_read): Model on fread.
8852         (_S_os_write): Model on fwrite.
8853         (_S_os_seek): Model on fseek.
8854
8855         * bits/ios_base.h: Tweak.
8856         * bits/std_iosfwd.h: Wrap libio.h include with extern "C".
8857         * bits/std_sstream.h: Tweak.
8858         * bits/sstream.tcc: Remove old, uncalled code.
8859         * bits/std_fstream.h: Major reconstruction.
8860         * bits/fstream.tcc: Disable for the time being.
8861
8862 1998-12-11  Benjamin Kosnik  <bkoz@haight.constant.com>
8863
8864         * bits/basic_string.h: Fix insert method.
8865         * stl/bits/stl_iterator.h: Remove previous hack.
8866         * bits/std_streambuf.h (sbumpc): Correct increment/return oddness.
8867         * bits/std_sstream.h: Fix more regressions.
8868         * testsuite/27/27stringbuf.C: Add (almost) complete tests.
8869
8870 1998-12-09 Benjamin Kosnik  <bkoz@loony.cygnus.com>
8871
8872         * bits/basic_string.h: Tweak.
8873
8874         * stl/bits/stl_iterator.h: Specialize iterator_traits for int so
8875         that string::append can be instantiated. HACK--checkin
8876         basic_string::iterator class.
8877
8878 1998-12-07  Benjamin Kosnik  <bkoz@haight.constant.com>
8879
8880         * bits/std_sstream.h: Tweak.
8881         * bits/sstream.tcc: Tweak ctors.
8882
8883         FIXME invalid friend defs. . WHERE ARE THEY??
8884
8885         * bits/sbuf_iter.h (istreambuf_iterator::equal): Change to new
8886         names for basic_streambuf data members.
8887
8888         * bits/std_streambuf.h: Add getloc() initialization bits.
8889         basic_streambuf(): Initialize with global locale data.
8890         imbue(): Set _M_init.
8891
8892         * bits/std_streambuf.h(seekoff, seekpos): Complete with invalid
8893         stream pos == pos_type(off_type(-1)).
8894         in_avail(): Complete default implementation.
8895         snextc, sbumpc, sputbackc, sungetc, sputc, setg, xsputn,
8896         underflow, uflow, xsgetn, showmany, sync: Ditto.
8897
8898         * bits/std_streambuf.h: _M_snextc_helper(): Remove.
8899
8900         * bits/streambuf.tcc (sputbackc): Temporarily remove, need to
8901         re-populate with in-line member functions that are too big.  Add
8902         initialization for _M_init.
8903
8904 1998-12-03  Benjamin Kosnik  <bkoz@cygnus.com>
8905
8906         * bits/sstream.tcc: Convert _Allocator to _Alloc.  Add typedefs
8907         for basic_string and basic_streambuf. Scope _IO_buf_* pointers to
8908         streambuf_type.
8909
8910         * src/stdstreams.cc (std): Disable wchar_t instantiations.
8911
8912         * bits/c++config.h (_G_DEPRICATED): Add.
8913         (_G_USE_WCHAR_T): Add.
8914         * bits/std_streambuf.h: Radical reconstruction of basic_streambuf.
8915         Take out _Streambuf_base. Put _IO_FILE data member in basic_filebuf.
8916         * bits/streambuf.tcc (sputbackc): Remove ctor anti-def, Tweak.
8917         * bits/std_fstream.h: Add comment for implementation.
8918         * src/streambuf.cc: Remove.
8919         * src/Makefile.in: Remove streambuf.lo.
8920         * src/misc-inst.cc: Tweak.
8921
8922 1998-12-02  Benjamin Kosnik  <bkoz@cygnus.com>
8923
8924         * bits/std_sstream.h: Add const_cast to rdbuf returns.
8925         * testsuite/27stringstream.C: Modify.
8926
8927 1998-11-25  Benjamin Kosnik  <bkoz@haight.constant.com>
8928
8929         * src/Makefile.in (libstdc___la_OBJECTS): Add streambuf.lo.
8930         (libstdc___la_SOURCES): Ditto.
8931
8932         * bits/streambuf.tcc: Tweak.
8933
8934         * src/streambuf.cc: New file, add out-of-line definitions for
8935         _Streambuf_base.
8936
8937         * src/misc-inst.cc: Remove _Streambuf_base instantiations.
8938         Comment out wchar_t versions of the buffer instantiations, for now.
8939
8940         * bits/std_streambuf.h: Wrap libio.h include with extern "C".
8941         Remove template wrapper around _Streambuf_base.
8942         Move IO_* data members into _Streambuf_base.
8943         Move _Streambuf_base members into streambuf.tcc.
8944
8945         * bits/c++config.h (_G_USE_LIBIO): Enable.
8946
8947 1998-11-02  Nathan Myers <ncm@cantrip.org>
8948
8949         * CHECKLIST: downgrade iterator implementations
8950         * DESIGN: fill out notes about unimplemented features
8951
8952 1998-10-31  Nathan Myers <ncm@cantrip.org>
8953
8954         * CHECKLIST: itemized list of all interfaces, and status of each.
8955
8956 1998-10-30  Nathan Myers  <ncm@cantrip.org>
8957
8958         * RELEASE-NOTES: add notes about optional includes, linking, running
8959         * src/Makefile.am: handle header installs properly
8960         * src/Makefile.in: regenerate from new src/Makefile.am
8961
8962 1998-10-30  Benjamin Kosnik  <bkoz@loony.cygnus.com>
8963
8964         * bits/basic_string.h: Revert npos pending ciso646.
8965         * src/Makefile.am: Revert CXX flags for now.
8966         * src/Makefile.in: Ditto.
8967
8968 1998-10-30  Brendan Kehoe  <brendan@cygnus.com>
8969
8970         * bits/std_sstream.h: Re-order ctors to put base before member
8971         inits.
8972
8973 1998-10-30  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
8974
8975         * stl/bits/std_memory.h: Fix typo.
8976
8977 1998-10-30  Nathan Myers <ncm@cantrip.org>
8978
8979         * src/string[A-Z]+.cc: change back to include "string.cc".
8980         * src/Makefile.am: revert filename changes.  We need a different
8981         way to keep filenames in std/ from confusing Make.
8982         * bits/basic_string.h: define _S_max_size right, return it from
8983         string::max_size(); churn definition of npos again.
8984         * bits/string.tcc: fix _S_frob_size to avoid uint overflow.
8985         * bits/ios.cc: remove #ifdef on ios_base locale member initialization
8986         * BUGS: clear cruft.
8987         * C++STYLE: Touchup for release.
8988         * CHECKLIST: Touchup for release.
8989         * DESIGN: New file.
8990         * LICENSE.STD: Add requirement to retain copyrights and to provide
8991         the license with any copies.
8992         * README: Update for release.
8993         * TODO: Minor touchup for release.
8994         * RELEASE-NOTES: prepare for release
8995
8996 1998-10-29  Ulrich Drepper  <drepper@cygnus.com>
8997
8998         * src/string[A-Z]+.cc: Include stdstring.cc, not string.cc.
8999
9000         * src/Makefile.am (CXXFLAGS): Define _GNU_SOURCE.
9001
9002         * src/Makefile.am (CXXLINK): New variable.  Make sure we don't use
9003         CXX to generate the shared object.
9004
9005         * src/Makefile.am (headers): Remove duplicated char_traits.h.
9006
9007 1998-10-29  Brendan Kehoe  <brendan@cygnus.com>
9008
9009         * bits/basic_string.h (basic_string<>::max_size): Subtract 1, not
9010         2, from npos, solving infinite loop problems.
9011
9012 1998-10-29 18:41  Ulrich Drepper  <drepper@cygnus.com>
9013
9014         * src/Makefile.am: Add rules to install headers.
9015
9016 1998-10-29  Nathan Myers <ncm@cantrip.org>
9017
9018         * bits/std_ostream.h: Remove #ifdef on operator<< for long double
9019         * bits/ostream.tcc:   Remove #ifdef on operator<< for long double
9020         * shadow/libio.h:
9021         * shadow/unistd.h:
9022         * shadow/bits/wrap_libio.h:
9023         * shadow/bits/wrap_unistd.h: New files.
9024
9025 1998-10-29  Brendan Kehoe  <brendan@cygnus.com>
9026
9027         * bits/ostream.tcc (operator<<): Wrap with #ifdef
9028         _G_HAVE_LONG_DOUBLE_IO, to match bits/std_ostream.h.
9029
9030 1998-10-29  Ulrich Drepper  <drepper@cygnus.com>
9031
9032         * src/Makefile.am: Add temporarily rules to make sure misc-inst.cc
9033         is not compiled with -fno-implicit-templates in effect.
9034
9035         * src/Makefile.am (EXTRA_SOURCES): Add string.cc and wstring.cc here.
9036         (libstdc___la_SOURCES): Add all the string*.cc and wstring*.cc files.
9037         * src/stringADDCS.cc: Wrapper around string.cc to define individual
9038         function.
9039         * src/stringADDPS.cc: Likewise.
9040         * src/stringADDSC.cc: Likewise.
9041         * src/stringADDSP.cc: Likewise.
9042         * src/stringADDSS.cc: Likewise.
9043         * src/stringBIST.cc: Likewise.
9044         * src/stringBOST.cc: Likewise.
9045         * src/stringCHTR.cc: Likewise.
9046         * src/stringEQPS.cc: Likewise.
9047         * src/stringEQSP.cc: Likewise.
9048         * src/stringEQSS.cc: Likewise.
9049         * src/stringEXTRA.cc: Likewise.
9050         * src/stringGEPS.cc: Likewise.
9051         * src/stringGESP.cc: Likewise.
9052         * src/stringGESS.cc: Likewise.
9053         * src/stringGETLI.cc: Likewise.
9054         * src/stringGTPS.cc: Likewise.
9055         * src/stringGTSP.cc: Likewise.
9056         * src/stringGTSS.cc: Likewise.
9057         * src/stringINSER.cc: Likewise.
9058         * src/stringLEPS.cc: Likewise.
9059         * src/stringLESP.cc: Likewise.
9060         * src/stringLESS.cc: Likewise.
9061         * src/stringLTPS.cc: Likewise.
9062         * src/stringLTSP.cc: Likewise.
9063         * src/stringLTSS.cc: Likewise.
9064         * src/stringMAIN.cc: Likewise.
9065         * src/stringNEPS.cc: Likewise.
9066         * src/stringNESP.cc: Likewise.
9067         * src/stringNESS.cc: Likewise.
9068         * src/stringSCOPY.cc: Likewise.
9069         * src/wstringADDCS.cc: Wrapper around wstring.cc to define individual
9070         functions.
9071         * src/wstringADDPS.cc: Likewise.
9072         * src/wstringADDSC.cc: Likewise.
9073         * src/wstringADDSP.cc: Likewise.
9074         * src/wstringADDSS.cc: Likewise.
9075         * src/wstringBIST.cc: Likewise.
9076         * src/wstringBOST.cc: Likewise.
9077         * src/wstringCHTR.cc: Likewise.
9078         * src/wstringEQPS.cc: Likewise.
9079         * src/wstringEQSP.cc: Likewise.
9080         * src/wstringEQSS.cc: Likewise.
9081         * src/wstringEXTRA.cc: Likewise.
9082         * src/wstringGEPS.cc: Likewise.
9083         * src/wstringGESP.cc: Likewise.
9084         * src/wstringGESS.cc: Likewise.
9085         * src/wstringGETLI.cc: Likewise.
9086         * src/wstringGTPS.cc: Likewise.
9087         * src/wstringGTSP.cc: Likewise.
9088         * src/wstringGTSS.cc: Likewise.
9089         * src/wstringINSER.cc: Likewise.
9090         * src/wstringLEPS.cc: Likewise.
9091         * src/wstringLESP.cc: Likewise.
9092         * src/wstringLESS.cc: Likewise.
9093         * src/wstringLTPS.cc: Likewise.
9094         * src/wstringLTSP.cc: Likewise.
9095         * src/wstringLTSS.cc: Likewise.
9096         * src/wstringMAIN.cc: Likewise.
9097         * src/wstringNEPS.cc: Likewise.
9098         * src/wstringNESP.cc: Likewise.
9099         * src/wstringNESS.cc: Likewise.
9100         * src/wstringSCOPY.cc: Likewise.
9101         * src/string.cc: Remove now unneeded #defines now.
9102
9103 1998-10-29 Nathan Myers <ncm@cantrip.org>
9104
9105         * bits/locfacets.tcc: Define num_put::put(... const void*), improve
9106         integer formatting.
9107         * bits/ostream.tcc: Delete cruft, rewrite various op<< as members,
9108         add definitions for double, long double, const void*.
9109         * bits/std_ostream.h: Move op<<'s back into class ostream,
9110         define some in-line.
9111         * bits/string.tcc: fix unnecessary-copying bug in op[], typos in
9112         string construction from input iterators that Brendan reported.
9113
9114
9115 1998-10-28  Brendan Kehoe  <brendan@cygnus.com>
9116
9117         * stl/bits/stl_pair.h (op!=, op>, p<=, op>=): Add missing definitions.
9118
9119         * bits/valarray_meta.h (class _Constant): Move declaration to the
9120         top, so the rest of the file can grok it.
9121         (_ApplyBinaryFunction::operator[]): Add missing parenthesis.
9122
9123         * bits/std_sstream.h (basic_ostringstream::str): Fix typo of extra
9124         semicolon.
9125         (basic_stringstream::str, both instances): Likewise.
9126
9127 1998-10-28 Nathan Myers <ncm@cantrip.org>
9128
9129         * bits/locfacets.h: fix num_put<>::falsename()
9130         * bits/locfacets.tcc: fix _Format_cache<>::_M_populate bool name init
9131         * testsuite/27/27octfmt.C, testsuite/27/27octfmt.C: new tests
9132         * bits/locfacets.tcc: touch up _S_group_digits.
9133         * src/misc-inst.cc: adjust _S_group_digits insts to match.
9134
9135 1998-10-27 Nathan Myers <ncm@cantrip.org>
9136
9137         * stl/bits/stl_config.h: Turn off long long support, for now.
9138         * src/locale-inst.cc: Instantiate num_put<> only for
9139         ostreambuf_iterator, num_get only for istreambuf_iterator.
9140         * src/misc-inst.cc: Delete duplicate locale-related instantiations,
9141         add lots of new instantiations for num_put support function templates;
9142         remove junk about __match_parallel for ostreambuf_iterator.
9143
9144 1998-10-27 Nathan Myers <ncm@cantrip.org>
9145
9146         * bits/locfacets.tcc: Make num_put's digit grouping work.
9147         * bits/string.tcc: More uglification.
9148         * src/ios.cc: initialize format cache right
9149
9150 1998-10-26 Nathan Myers <ncm@cantrip.org>
9151
9152         * bits/basic_string.h: Uglify more names.
9153         * bits/fstream.tcc: Rewrite some filebut output handling.
9154         * bits/ios_base.h: Cosmetic.
9155         * bits/locfacets.h: Changes to _Format_cache for support of num_put.
9156         Also, specialize its default ctor for optimal default case.
9157         #ifdef out "long long" prototypes for now.
9158         * bits/locfacets.tcc: Do complete, optimized num_put<>::do_put
9159         implementation for integer types.  (Still needs optimized
9160         std::copy() applied to ostreambuf_iterator to be optimal.)
9161         * bits/ostream.tcc: Write operator<< for long, bool types.
9162         Make other operators<< non-members, per spec.  (Many still
9163         not implemented.)  Identify those that fail to create a sentry.
9164         * bits/sbuf_iter: Cosmetic.
9165         * bits/std_fstream.h: Add some filebuf members.
9166         * bits/std_locale.h: Include <limits> for use in bits/locfacets.h
9167         * bits/std_ostream.h: Make member operators<< global, per spec.
9168         (Should do the same in std_istream.h.)
9169         * bits/std_string.h: Include <limits> for use in bits/locfacets.h
9170         * bits/string.tcc: Uglify names
9171         * shadow/bits/std_cstdlib.h: Optimize std::div and std::ldiv.
9172         * src/ios.cc: Specialize _Format_cache<> for char and wchar_t,
9173         for optimal default behavior.
9174
9175 1998-10-26  Benjamin Kosnik  <bkoz@loony.cygnus.com>
9176
9177         * src/Makefile.in (libstdc___la_SOURCES): Add misc-inst.cc again.
9178
9179 1998-10-21 Nathan Myers <ncm@cantrip.org>
9180
9181         * src/locale.cc: make ctype operations actually work for glibc
9182         * CHECKLIST: add a comprehensive (i.e. huge) implementation
9183         checklist of stdlib facilities.  Not filled in yet.
9184
9185 1998-10-20 Nathan Myers <ncm@cantrip.org>
9186
9187         * bits/string.tcc: fix patching NULs on string ends.
9188
9189 1998-10-19 Nathan Myers <ncm@cantrip.org>
9190
9191         * bits/std_iosfwd.h: eliminate "basic_" prefix on streambuf
9192         iterator forward declarations
9193         * bits/sbuf_iter.h: eliminate default template argument definitions
9194         on streambuf iterators (rely on <iosfwd> decls).
9195         * TODO: add note about lazy facet construction
9196         * bits/basic_ios.h: hit operator void* again.  This should be the
9197         last time we need to touch it.
9198         * bits/basic_ios.h: copyfmt now returns *this.
9199         * bits/basic_string.h: fix npos again.  npos cannot be defined as zero.
9200         * bits/basic_string.h: put back overloaded constructors; adjust
9201         behavior for default allocator on copy constructor.
9202         * bits/char_traits.h: make not_eof return correct type.
9203         * bits/loccore.h: remove call to bits/std_stdexcept.h; subincludes
9204         cannot be in non-standard headers or we get include loops (bad)
9205         * bits/loccore.h: delete ifdef'd out workarounds for old compiler bugs.
9206         * bits/loccore.h: add apparatus to support lazy construction of
9207         facets.
9208         * bits/locfacets.tcc: Uglify names in __match_parallel decl.
9209         * bits/std_ios.h: add include of <typeinfo> to get bad_cast for
9210         locale use_facet<> failure.
9211         * bits/std_locale.h: same.
9212         * bits/std_string.h: same.
9213         * bits/std_stdexcept.h: change exception member __msg from a
9214         reference to a regular object.
9215         * bits/string.tcc: add pasting a NUL on the end of strings after
9216         each operation. We had already left room for it, but previously
9217         plugged it only on a call to c_str(), but the WG changed the
9218         requirement when I wasn't looking.  (Can't leave them alone for
9219         a second without they break something else.)
9220         * bits/valarray_meta.h: add Gaby's changes from 981018.
9221         * src/locale.cc: add new type _Bad_use_facet to be thrown on
9222         failure of use_facet<>().
9223         * src/stdexcept.cc: remove pragma, remove bkoz's #if 0,
9224         comment out leftover member definitions
9225
9226 1998-10-16  Ulrich Drepper  <drepper@cygnus.com>
9227
9228         * string/Makefile.am: Revert last change.
9229         * math/Makefile.am: Likewise.
9230
9231 1998-10-15  Benjamin Kosnik  <bkoz@haight.constant.com>
9232
9233         * bits/std_sstream.h: Fix typo.
9234
9235 1998-10-15  Benjamin Kosnik  <bkoz@haight.constant.com>
9236
9237         * src/Makefile.am (libstdc___la_SOURCES): Add misc-inst.cc.
9238
9239         * bits/std_sstream.h: Add typedefs, member definitions. Clean.
9240         * bits/std_stdexcept.h: Remove.
9241
9242 1998-10-15  Benjamin Kosnik  <bkoz@haight.constant.com>
9243
9244         * src/misc-inst.cc: Tweak again.
9245
9246         * bits/std_sstream.h: Move out-of-line definitions to sstream.tcc.
9247         * bits/sstream.tcc: New file.
9248
9249 1998-10-15  Ulrich Drepper  <drepper@cygnus.com>
9250
9251         * configure.in: Test for machine/param.h, sys/machine.h and fp.h.
9252         Don't run AC_C_BIGENDIAN if machine/param.h or sys/machine.h are
9253         available.
9254
9255         * math/mathconf.h: Include sys/machine.h, machine/param.h and fp.h
9256         if available.
9257         (INFINITE_P): Use IS_INF macro if available.
9258
9259 1998-10-15  Ulrich Drepper  <drepper@cygnus.com>
9260
9261         * math/Makefile.am (EXTRA_LTLIBRARIES): Renamed from
9262         noinst_LTLIBRARIES.
9263         * string/Makefile.am: Likewise.
9264
9265 1998-10-15  Ulrich Drepper  <drepper@cygnus.com>
9266
9267         * configure.in (AC_CHECK_FUNCS): Add finite, qfinite, fpclass, and
9268         qfpclass.
9269         (AC_CHECK_HEADERS): Add machine/endian.h.  If no header specifying
9270         endianess is available run AC_C_BIGENDIAN.
9271
9272         * math/clog10l.c: Add ugly hack around bug in Irix 6.2 header until
9273         fixincludes is fixed.
9274         * math/clogl.c: Likewise.
9275         * math/csqrtl.c: Likewise.
9276         * math/mycabsl.c: Likewise.
9277
9278         * math/mathconf.h: Include machine/endian.h if possible.  If no
9279         header describing endianess is available rely on WORDS_BIGENDIAN
9280         macro.
9281         (FINITE_P, FINITEF_P, FINITEL_P): Use finite functino if available.
9282         (INFINITE_P, INFINITEF_P, INFINITEL_P): Use fpclass function if
9283         available.
9284
9285         * src/complex.cc (polar): Don't use sincos on OSF machines.
9286
9287 1998-10-09  Benjamin Kosnik  <bkoz@loony.cygnus.com>
9288
9289         * src/locale-inst.cc: Don't instantiate time_get for
9290         ostreambuf_iterators as time_get::do_get_weekday and
9291         time_get::do_get_monthname use __match_parallel, which is illegal
9292         for ostreambuf_iterators to use, as they don't have operator== or
9293         operator!=.
9294         * bits/std_stdexcept.h: Add dtor definitions.
9295         Use stl/bits/std_stdexcept.h instead of this file?
9296         * bits/sbuf_iter.h : Tweak.
9297         * src/misc-inst.cc: Tweak.
9298
9299 1998-10-09  Benjamin Kosnik  <bkoz@haight.constant.com>
9300
9301         * bits/std_stdexcept.h: New file.
9302         * src/stdexcept.cc: Define the following:
9303         logic_error::what()
9304         runtime_error::what()
9305
9306         * src/misc-inst.cc: New file.
9307         * src/Makefile.in (libstdc___la_SOURCES): Add misc-inst.cc.
9308         (libstdc___la_OBJECTS): Add misc-inst.lo.
9309
9310         * bits/basic_string.h: Disable non-standard ctor declarations.
9311         * bits/string.tcc: Disable definitions as well.
9312         * src/string.cc: Disable <ios> dependancies.
9313         * bits/sbuf_iter.h (std): Add default to template parameter for
9314         ostreambuf_iterator and istreambuf_iterator.
9315         * bits/std_iosfwd.h: Change istreambuf_iterator to
9316         basic_istreambuf_iterator. Likewise for ostreambuf.
9317         * bits/locfacets.tcc (__match_parallel): Fix typo.
9318         * src/ios.cc (imbue): Remove the _G_HAVE_LOCALE guards around
9319         ios_base::imbue.
9320         * bits/std_streambuf.h: Define _Streambuf_base::getloc().
9321         * bits/std_istream.h: Define the following:
9322         get (basic_streambuf<char_type,_Traits>& __sb, char_type __delim)
9323         get (char_type* __s, streamsize __n, char_type __delim);
9324         getline (char_type* __s, streamsize __n, char_type __delim)
9325         * bits/loccore.h : FIXME friend template code for use_facet.
9326         Add std_stdexcept.h include so that range_error will be defined.
9327         Add explicit conversion to string for range_error throws. (HACK?)
9328
9329 1998-10-8  Ulrich Drepper  <drepepr@cygnus.com>
9330
9331         * configure.in: Check for sincos, sincosf, and sincosl.
9332         * src/complex.cc (polar): Use sincos if available.
9333
9334         * bits/c++config.h: Fix hack to get LONG_LONG* definitions on Linux.
9335         * stl/bits/std_limits.h: Include bits/c++config.h.  HACK!!!
9336
9337         * math/clog10.c: Fix typo (FP_INIFITE_P -> INFINITE_P).
9338
9339         * math/cpow.c: Use c_log, not clog.
9340         * math/cpowf.c: Likewise.
9341         * math/cpowl.c: Likewise.
9342
9343         * math/cexp.c: Remove unused fpclassify calls.  Use FINITE_P instead
9344         of isfinite call.
9345
9346         * math/mathconf.h (FINITE_P, FINITEF_P, FINITEL_P): Define using
9347         isfinite macro if it is available.
9348         (INFINITE_P, INFINITEF_P, INFINITEL_P): Define using isinf macro.
9349
9350         * math/ccosf.c: Use appropriate test macros for this type.
9351         * math/ccoshf.c: Likewise.
9352         * math/ccoshl.c: Likewise.
9353         * math/ccosl.c: Likewise.
9354         * math/cexpf.c: Likewise.
9355         * math/cexpl.c: Likewise.
9356         * math/clog10f.c: Likewise.
9357         * math/clog10l.c: Likewise.
9358         * math/clogf.c: Likewise.
9359         * math/clogl.c: Likewise.
9360         * math/csinf.c: Likewise.
9361         * math/csinhf.c: Likewise.
9362         * math/csinhl.c: Likewise.
9363         * math/csinl.c: Likewise.
9364         * math/csqrtf.c: Likewise.
9365         * math/csqrtl.c: Likewise.
9366         * math/ctanf.c: Likewise.
9367         * math/ctanhf.c: Likewise.
9368         * math/ctanhl.c: Likewise.
9369         * math/ctanl.c: Likewise.
9370
9371 1998-10-06  Benjamin Kosnik  <bkoz@bliss.nabi.net>
9372
9373         * bits/basic_ios.h: Fix previous change.
9374
9375 1998-10-06  Benjamin Kosnik  <bkoz@bliss.nabi.net>
9376
9377         * bits/basic_ios.h: Add const_cast<basic_ios&>
9378         (operator void*): As per 5.2.9 p 2, make sure static_cast is
9379         well-formed.
9380         * bits/char_traits.h: No _CharT for specialization, change to 0.
9381         * bits/basic_string.h: As per 9.4.2 p4, initialize with
9382         constant-initializer.
9383         * bits/locfacets.tcc: Add template parameter to initialization list.
9384
9385 1998-10-02  Benjamin Kosnik  <bkoz@loony.cygnus.com>
9386
9387         * bits/basic_string.h: Should just be <, not <=.
9388
9389 1998-10-01  Benjamin Kosnik  <bkoz@bliss.nabi.net>
9390
9391         * bits/string.tcc (compare): Fix for strings that are similar, but
9392         not the same length.
9393
9394 1998-09-04  Brendan Kehoe  <brendan@cygnus.com>
9395
9396         * bits/c++config.h: For __linux__, define _GNU_SOURCE.  This is
9397         required for us to get LONG_LONG_{MIN,MAX} out of gcc's limits.h.
9398         We can't check for __GLIBC__ here, since this header can be read
9399         before any system one (that would lead to features.h) being used.
9400
9401         * stl/bits/stl_config.h (__STL_LONG_LONG): Re-enabled
9402
9403         * stl/bits/std_limits.h [__STL_LONG_LONG]: Fix usage to use
9404         LONG_LONG_MIN, LONG_LONG_MAX, and ULONG_LONG_MAX.
9405
9406         * stl/bits/stl_config.h: Don't do __STL_LONG_LONG, it uses
9407         LONGLONG_{MIN,MAX} which I can't find the origin of.
9408
9409 1998-09-03  Brendan Kehoe  <brendan@cygnus.com>
9410
9411         * stl/bits/stl_iterator.h: Add extern decl of cin for now; where
9412         should this come from, if not iostream.h?
9413         (class istream_iterator): Make the new operator!= a friend also.
9414
9415         * stl/bits/stl_config.h: Define __STL_HAS_WCHAR_T,
9416         __STL_MEMBER_TEMPLATE_CLASSES, and __STL_LONG_LONG.  Don't include
9417         _G_config.h like the egcs one does.
9418
9419 1998-09-01  Brendan Kehoe  <brendan@cygnus.com>
9420
9421         * bits/string.tcc: Call `_M_destroy' instead of `destroy'.
9422
9423         * bits/valarray_meta.h: Throughout, rename _Expr typedefs to be
9424         _Expr1 (or _Expr_def if it's taken), and change definitions.
9425         Avoids redecl of the template parm.
9426
9427         * bits/string.tcc (basic_string copy ctor): Fix typo in declaration.
9428         (operator>>): Initialize __ERROR with ios_base::goodbit, not 0.
9429
9430         * bits/std_streambuf.h (_POSIX_SOURCE): Only define if it's not
9431         already done.
9432
9433         * src/locale-inst.cc: New file, **TOTAL HACK**.  There has GOT to
9434         be a better way to do this.
9435
9436         * src/stlinst.cc: New file.
9437
9438         * BUGS: New file, with various discovered bugs that need to be
9439         fixed.
9440
9441         * Makefile.in, math/Makefile.in, string/Makefile.in,
9442         src/Makefile.in: Reran automake.
9443
9444         Workarounds, these may not all be the final fixes:
9445
9446         * bits/basic_ios.h (class basic_ios): Make _M_strbuf be protected,
9447         not private, for basic_istream::get() in std_istream.h to be able
9448         to use it.
9449         (basic_ios::operator void*): Don't use static_cast for the false
9450         case.
9451         (basic_ios::copyfmt): Fix `rhs.except' to be `rhs.exceptions ()'.
9452         This appears to have been in sep94, but didn't get corrected
9453         afterwards.
9454
9455         * bits/basic_string.h (npos): Don't init here.
9456         * bits/string.tcc: Instead, do initialization here, to -1 instead
9457         of the size_type destructor.
9458
9459         * src/traits.cc, src/wtraits.cc: New files.
9460         * bits/char_traits.h: For char_traits<char> and
9461         char_traits<wchar_t>, declare static, but define over in the src
9462         files.
9463
9464         * bits/gslice.h: Comment out forward decls of _Array, valarray,
9465         gslice_array, and _GsliceExpression.
9466
9467         * bits/std_cstdio.h [__sparc__ && __svr4__]: #undef all of
9468         clearerr, feof, ferror, getc, getchar, putc, putchar, stdin,
9469         stdout, and stderr.  Note we do get unresolved refs to stdin, but
9470         that'll get fixed by the "true" solution.
9471
9472         * bits/std_ios.h: Include <bits/std_streambuf.h> to get the
9473         definition of basic_streambuf.h, which is used in basic_ios.h to
9474         call pubimbue.
9475
9476         * bits/std_streambuf.h: Don't include libio.h for now.
9477         (class basic_streambuf): Define missing methods pubimbue and
9478         getloc.
9479
9480         * src/Makefile.am (libstdc___la_SOURCES): Add stdexcept.cc,
9481         ios.cc, os_raw.cc, stdstreams.cc, locale.cc, localename.cc,
9482         locale-inst.cc, stlinst.cc, traits.cc, wtraits.cc.
9483
9484         * src/ios.cc: Instantiate basic_ios<char> and basic_ios<wchar_t>.
9485
9486         * src/locale.cc: Come up with munged versions of _S_toupper,
9487         _S_tolower, and _S_table instead of the glibc-specific ones, so
9488         they're at least defined, if not necessarily usable.  The glibc
9489         ones on any other system will yield unresolved refs to
9490         __ctype_{b,toupper,tolower}.
9491
9492         * src/string.cc: Define all of ADDCS, ADDPS, et al.  Add
9493         basic_ios, basic_istream, basic_ostream.  Don't do char_traits
9494         anymore cuz of the explicit specialization in char_traits.h.
9495         Also add _S_string_copy, but this doesn't fix it -- cf the BUGS
9496         file for the details.
9497
9498         * stl/bits/stl_algobase.h (equal): Fix to do `! (x==y)'.
9499         * stl/bits/stl_iterator.h (__distance): Likewise.
9500
9501         * stl/bits/stl_iterator.h: As with 8/18 set, define missing op!=,
9502         op>, op<=, and op>= for reverse_iterator.  Also add op!= for
9503         istream_iterator.
9504
9505 1998-08-26  Brendan Kehoe  <brendan@cygnus.com>
9506
9507         * bits/string.tcc (basic_string::compare (const char*)): Fix to
9508         return 0, not 1.
9509
9510 1998-08-25  Brendan Kehoe  <brendan@cygnus.com>
9511
9512         This should really be fixed with __asm__ directives renaming the
9513         symbol, but keeping the function.
9514         * math/clogf.c (c_logf): Renamed from `clogf'.
9515         * math/clogl.c (c_logl): Renamed from `clogl'.
9516         * math/complex-stub.h (c_logf, c_logl): Change decls.
9517
9518         * bits/locfacets.h (class _Numeric_get): For friend decls, rename
9519         _CharT and _InIter parms, since they duplicate the enclosing ones.
9520
9521 1998-08-19  Brendan Kehoe  <brendan@cygnus.com>
9522
9523         Deal with conflict of the iostreams `clog' and our internal
9524         complex number `clog'.
9525         * src/complex.cc: Call `c_log' instead of `clog'.
9526         * math/clog.c (c_log):: Renamed from clog.
9527         * math/complex-stub.h (c_log): Renamed from clog decl.
9528
9529         * bits/locfacets.h (class _Numeric_get): Tweak fwd decls of the
9530         get/put classes.
9531         (num_put::put): #if 0 long long version, since we don't declare or
9532         define the long long version of do_put.
9533
9534 1998-08-18 Nathan Myers <ncm@cantrip.org>
9535
9536         * bits/basic_string.h: add basic_string<>::push_back(), fix return
9537         type of get_allocator (thanks to Ryszard Kabatek).
9538         * bits/char_traits.h: make init order of fpos<> members
9539         match decl order.
9540         * bits/ios_base.h: fix decls of ios_base bitmask & enum types, add
9541         flags _S_fd_in etc. for special filebuf ctor.
9542         * bits/locfacets.h: make _Numeric_get and _Format_cache public
9543         to work around problems in friend declarations.
9544         * bits/locfacets.tcc: qualify _S_get_cache in num_get<>::get(..bool&),
9545         fix random type errors & typos
9546         * bits/std_fstream.h: major refitting to bypass libio (for now),
9547         instrument to use bits/fstream.tcc template definitions
9548         * bits/std_iosfwd.h: mess with wrappers
9549         * bits/std_istream.h: remove meaningless comment
9550         * bits/std_ostream.h: instrument to work with ostream.tcc.
9551         * bits/std_streambuf.h: instrument to work with streambuf.tcc
9552         * bits/fstream.tcc: template defs for <fstream>
9553         * bits/ostream.tcc: template defs for <ostream>
9554         * bits/streambuf.tcc: template defs for <streambuf>
9555         * bits/os_raw.h: thin OS interface wrapper, to bypass libio (for now).
9556         * Delete .cc files, replace with bits/*.tcc
9557         src/fstream.cc
9558         src/istream.cc
9559         src/ostream.cc
9560         src/streambuf.cc
9561         * Add files:
9562         src/os_raw.cc: thin interface to OS, to bypass libio (for now).
9563         src/stdstreams.cc: cout, cin, etc. definitions
9564         (these still need work: must be init'd before user statics.)
9565
9566
9567 1998-08-18  Brendan Kehoe  <brendan@cygnus.com>
9568
9569         Sent to SGI before checkin:
9570         * stl/bits/stl_vector.h (operator!=, operator>, operator<=,
9571         operator>=): Define.
9572         * stl/bits/stl_bvector.h (vector<bool>::flip): Define method.
9573         * stl/bits/stl_deque.h (operator!=, operator>, operator<=,
9574         operator>=): Define.
9575         (operator==, operator<): Add inline.
9576         * stl/bits/stl_map.h (operator!=, operator<, operator<=,
9577         operator>=): Define.
9578         * stl/bits/stl_multimap.h (operator!=, operator<, operator<=,
9579         operator>=): Define.
9580         * stl/bits/stl_list.h (operator!=, operator<, operator<=,
9581         operator>=): Define.
9582         * stl/bits/stl_set.h (operator!=, operator<, operator<=,
9583         operator>=): Define.
9584         * stl/bits/stl_multiset.h (operator!=, operator<, operator<=,
9585         operator>=): Define.
9586
9587         * bits/std_valarray.h (_Shift_left, _Shift_right): Inherit from
9588         unary_function.
9589
9590 1998-08-15 Nathan Myers <ncm@cantrip.org>
9591
9592         * bits/ios_base.h: change nominal bitmask and enum types to real enums
9593         * bits/locfacets.h: make _Format_cache bool names usable by num_get
9594         * bits/locfacets.tcc: make num_get<>::get(... bool&) use _Format_cache
9595         * bits/std_fstream.h: minor cleanups: ctors delegate to open()
9596         * bits/std_iosfwd.h: more bitmask changes, for ios_base::iostate
9597         * bits/std_sstream.h: formatting cleanups
9598
9599 1998-08-14 Nathan Myers <ncm@cantrip.org>
9600
9601         * bits/locfacets.tcc: implement num_get<>::do_get(..., bool&)
9602         * bits/locfacets.tcc: implement time_get<>::do_get_weekday
9603         * bits/locfacets.tcc: implement time_get<>::do_get_monthname
9604         * bits/locfacets.h:   fix missing argument in do_get_monthname
9605         (this is a bug in the standard, ref. 36 in my list.)
9606         * bits/locfacets.h: make month and day name caches mutable
9607         * bits/locfacets.tcc: various typos in get() functions
9608         * bits/sbuf_iter.h: fix omission in istreambuf_iterator::op++().
9609         * bits/std_streambuf.h: fix typo in sgetn (Brendan)
9610
9611 1998-08-12 Nathan Myers <ncm@cantrip.org>
9612         * move streambuf iterators to bits/sbuf_iter.h
9613         * optimize streambuf iterators
9614         * begin generalizing streambuf
9615         * begin implementing num_get<>::get (starting with bool)
9616         * patch stl/bits/stl_config.h so that relops operators are
9617         contained properly, out of the way.
9618
9619 1998-07-24 Nathan Myers <ncm@cantrip.org>
9620         * Fold in SGI 3.11 changes (uglified names, some algorithm
9621           improvements, very minor bug fixes.)
9622         * Uglify names elsewhere to match (s/_T/_Tp/).
9623         * Begin work on optimized streambuf
9624         * Put complex.cc in namespace std:: (thanks Martin)
9625
9626 1998-07-17 Nathan Myers <ncm@cantrip.org>
9627
9628         * bits/char_traits.h: add _Char_traits_match template.
9629         * bits/string.tcc: fix bugs in various find_last* members.
9630         * bits/basic_string.h: redeclare member _S_find.
9631         * stl/bits/stl_iterator.h: change member names in nonstandard
9632           templates bidirectional_reverse_iterator and
9633           random_access_reverse_iterator to match expected changes
9634           in upstream source.
9635         * src/string.cc: fix definitions of stream operators.
9636
9637 1998-07-14 16:06  Ulrich Drepper  <drepper@cygnus.com>
9638
9639         * Makefile.am (SUBDIRS): Add string.
9640
9641         * configure.in: Test for long double functions separately.  Test for
9642         ISO C 89 float functions.  Test for endian.h and sys/isa_defs.h.
9643         Generate string/Makefile.
9644
9645         * bits/c++config.h: Define mbstate_t for Solaris.
9646
9647         * bits/char_traits.h: Remove unused #if.
9648
9649         * bits/std_cwchar.h: Declare wide char string functions.
9650
9651         * m4/stringfcts.m4: New file.
9652
9653         * math/complex-stub.h: Declare nan.
9654         * math/nan.c: New file.
9655
9656         * math/mathconf.h: Hack around missing endian.h file.
9657         Handle missing NAN definition.
9658         Handle missing float math functions.
9659
9660         * src/Makefile.am (libstdc___la_LIBADD): Add libstring.la.
9661         (libstdc___la_LDFLAGS): Set version information.
9662
9663         * src/complexl.cc: Don't compile any code if no long double functions
9664         are available.
9665
9666         * string/Makefile.am: New file.
9667         * string/dummy.c: New file.
9668         * string/wmemchr.c: New file.
9669         * string/wmemcmp.c: New file.
9670         * string/wmemcpy.c: New file.
9671         * string/wmemmove.c: New file.
9672         * string/wmemset.c: New file.
9673
9674 1998-07-14 10:45  Ulrich Drepper  <drepper@cygnus.com>
9675
9676         * configure.in: Make it work.
9677         * install-sh: New file.
9678         * missing: New file.
9679         * mkinstalldirs: New file.
9680         * m4/mathfcts.m4: New file.
9681         * math/Makefile.am: New file.
9682
9683         * bits/std_complex.h (conj): Mark specializations as inline.
9684
9685         * math/carg.c: New file.
9686         * math/cargf.c: New file.
9687         * math/cargl.c: New file.
9688         * math/mycabs.c: New file.
9689         * math/mycabsf.c: New file.
9690         * math/mycabsl.c: New file.
9691         * math/signbit.c: New file.
9692         * math/signbitf.c: New file.
9693         * math/signbitl.c: New file.
9694
9695         * math/ccos.c: Avoid ISO C 9x functionality.
9696         * math/ccosf.c: Likewise.
9697         * math/ccosh.c: Likewise.
9698         * math/ccoshf.c: Likewise.
9699         * math/ccoshl.c: Likewise.
9700         * math/ccosl.c: Likewise.
9701         * math/cexp.c: Likewise.
9702         * math/cexpf.c: Likewise.
9703         * math/cexpl.c: Likewise.
9704         * math/clog.c: Likewise.
9705         * math/clog10.c: Likewise.
9706         * math/clog10f.c: Likewise.
9707         * math/clog10l.c: Likewise.
9708         * math/clogf.c: Likewise.
9709         * math/clogl.c: Likewise.
9710         * math/cpow.c: Likewise.
9711         * math/cpowf.c: Likewise.
9712         * math/cpowl.c: Likewise.
9713         * math/csin.c: Likewise.
9714         * math/csinf.c: Likewise.
9715         * math/csinh.c: Likewise.
9716         * math/csinhf.c: Likewise.
9717         * math/csinhl.c: Likewise.
9718         * math/csinl.c: Likewise.
9719         * math/csqrt.c: Likewise.
9720         * math/csqrtf.c: Likewise.
9721         * math/csqrtl.c: Likewise.
9722         * math/ctan.c: Likewise.
9723         * math/ctanf.c: Likewise.
9724         * math/ctanh.c: Likewise.
9725         * math/ctanhf.c: Likewise.
9726         * math/ctanhl.c: Likewise.
9727         * math/ctanl.c: Likewise.
9728
9729         * math/complex-stub.h: New file.
9730
9731         * math/mathconf.h: New file.
9732
9733         * src/Makefile.am: New file.
9734
9735         * src/complex.cc: Use mathconf.h instead of complex.h.
9736         Don't use cabs, always use __mycabs.
9737
9738 1998-02-13  Brendan Kehoe  <brendan@cygnus.com>
9739
9740         * iterator (class reverse_iterator): Do some tweaks to be in sync
9741         w/ the FDIS.