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