OSDN Git Service

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