OSDN Git Service

47c905ecc8d3aa30260fdc4066c7ea250784bd8a
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2001-01-01  Benjamin Kosnik  <bkoz@fillmore.redhat.com>
2         
3         * include/c_std/bits/std_cwchar.h: Same.
4         * testsuite/17_intro/header_cwchar.cc: Same.
5         * include/c_std/bits/std_ctime.h: Same.
6         * testsuite/17_intro/header_ctime.cc: Same.
7         * include/c_std/bits/std_cstdlib.h: Same.
8         Clean up undefs, make consistent with cwchar and cmath, etc.
9         * testsuite/17_intro/header_cstdlib.cc: Same.
10         * include/c_std/bits/std_cstdio.h: Same here.
11         * testsuite/17_intro/header_cstring.cc: Same.
12         * include/c_std/bits/std_cstring.h: Include std_cstddef.h for size_t.
13         * testsuite/17_intro/header_cstring.cc: New file. Check for
14         size_t in namespace std.
15
16         * include/c_std/bits/std_cwchar.h: Explicit checks for mbstate_t.
17         * acconfig.h (HAVE_MBSTATE_T): Add.
18         * config.h.in: Regenerate.
19         * acinclude.m4(GLIBCPP_CHECK_WCHAR_T_SUPPORT): Always test for
20         mbstate_t.
21         * aclocal.m4: Regenerate.
22         * configure: Regenerate.
23         * testsuite/17_intro/headers_c++.cc: New file.
24         * testsuite/17_intro/headers_c.cc: Small changes.
25
26 2001-01-01  David Billinghurst <David.Billinghurst@riotinto.com>
27
28         * tests_flags.in: Fix typo in usage.
29
30         * tests_flags.in: Set target specific LIBS for cygwin.
31
32 2000-12-31  Alexandre Oliva  <aoliva@redhat.com>
33
34         * include/c_std/bits/std_cstdlib.h (mblen): Protect against macro.
35
36 2000-12-23  Benjamin Kosnik  <bkoz@redhat.com>
37
38         * src/Makefile.am (CSTD_INCLUDES): Change from CSHADOW_INCLUDES.
39         (strstream.cc): Add special rule for deprecated files.
40         * libsupc++/Makefile.am (INCLUDES): Sync.
41         * acinclude.m4 (GLIBCPP_EXPORT_INCLUDES): And here.
42
43         Reported by Fred Fish  <fnf@ninemoons.com>
44         * include/backward/iomanip.h: Remove backward from include
45         * include/backward/strstream.h: Same.
46         * include/backward/stream.h: Same.
47         * include/backward/ostream.h: Same.
48         * include/backward/istream.h: Same.
49         * src/strstream.cc: And here.
50
51         Reported by  Brad Garcia  <bgarcia@laurelnetworks.com>
52         * src/string-inst.cc (_S_find): Use generic template.
53         * include/bits/string.tcc (_S_find): Remove specializations
54         
55 2000-12-22  Benjamin Kosnik  <bkoz@fillmore.redhat.com>
56
57         Attempt to make locale visible in gdb.
58         * include/bits/std_locale.h: Remove codecvt.h include.
59         * include/bits/locale_facets.h: Add here, after ctype decls.
60         * include/bits/codecvt.h: Remove std namespace, as assumed to be
61         in std now.
62
63         * include/bits/locale_facets.h: Consistently move generic static
64         member definitions directly after generic facet declarations.
65         * include/bits/locale_facets.tcc: From here.
66
67         * src/locale.cc: Organize locale::id static definitions for
68         required facets.
69         * src/codecvt.cc (codecvt<char...>): Remove locale::id definition.
70         (codecvt<wchar_t...>): Same.
71         * src/localename: And here.
72         
73         * include/bits/localefwd.h (_Count_ones): Change _S_count to _M_count.
74         Same for _M_halfcount.
75
76 2000-12-22  Alexandre Oliva  <aoliva@redhat.com>
77
78         * mknumeric_limits: Output to temporary files, and rename them at
79         the end.
80
81 2000-12-21  Benjamin Kosnik  <bkoz@redhat.com>
82
83         * configure.in: Change GLIBCPP_ENABLE_SHADOW to
84         GLIBCPP_ENABLE_CHEADERS.
85         * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Change to
86         ENABLE_CHEADERS.  C_INCLUDE_DIR defaults to c_std from c. 
87         * aclocal.m4: Regenerate.
88         * configure: Regenerate.
89         * include/c: Move to ...
90         * include/c_std: ...here.
91         * include/c_std: Move to ...
92         * include/c_shadow: ...here.
93         * include/c: Repopulate, with simple headers.
94         * docs/html/configopts.html: Adjust docs.
95         
96 2000-12-21  Joseph S. Myers  <jsm28@cam.ac.uk>
97
98         * acinclude.m4, configure.in, mkcheck.in,
99         testsuite/21_strings/ctor_copy_dtor.cc,
100         testsuite/21_strings/inserters_extractors.cc,
101         testsuite/23_containers/map_operators.cc,
102         testsuite/23_containers/vector_element_access.cc,
103         testsuite/25_algorithms/lower_bound.cc,
104         testsuite/27_io/ifstream_members.cc,
105         testsuite/27_io/istream_extractor_arith.cc,
106         testsuite/27_io/istream_unformatted.cc,
107         testsuite/27_io/ofstream_members.cc,
108         testsuite/27_io/ostream_inserter_char.cc,
109         testsuite/27_io/ostream_inserter_other.cc,
110         testsuite/27_io/ostream_manip.cc, testsuite/27_io/streambuf.cc:
111         Change sourceware.cygnus.com and sources.redhat.com URLs for
112         libstdc++ web pages and list archives to point to gcc.gnu.org
113         * aclocal.m4, configure: Regenerate.
114
115 2000-12-21  Gabriel Dos Reis  <gdr@codesourcery.com>
116
117         * src/Makefile.am (sources): Remove complex.cc, complexf.cc and
118         complexl.cc from list.
119         * src/Makefile.in: Regenerate.
120         * src/complex.cc: Remove.
121         * src/complexf.cc: Likewise.
122         * src/complexl.cc: Likewise.
123
124         * libmath/Makefile.am (EXTRA_LONG_DOUBLE_yes): Remove csqrtl.c
125         (EXTRA_DIST): Remove csqrt.c and csqrtf.c.
126         * libmath/Makefile.in: Regenerate.
127         * libmath/complex-stub.h: Remove.
128         * libmath/csqrt.c: Likewise.
129         * libmath/sqrtf.c: Likewise.
130         * libmath/sqrtl.c: Likewise.
131         * libmath/mathconf.h: Remove <complex.h> and "complex-stub.h"
132         #inclusion. 
133         
134         * include/bits/std_complex.h (sqrt<>): Define primary template.
135         (complex<>): Remove sqrt friend declarations.
136
137         * configure.in: Initialize with src/ios.cc.
138         * configure: Regenerate.
139         * acinclude.m4: Remove check for csqrt* and <complex.h>
140         * aclocal.m4: Regenerate.
141         * config.h.in: Regenerate.
142         * Makefile.in: Regenerate.
143
144 2000-12-20  Phil Edwards  <pme@sources.redhat.com>
145
146         * acinclude.m4 (SECTION_FLAGS, OPT_LDFLAGS):  Fix minor thinko.
147         * aclocal.m4:  Regenerate.
148         * configure:  Ditto.
149         * Makefile.in:  Ditto.
150         * libio/Makefile.in:  Ditto.
151         * libmath/Makefile.in:  Ditto.
152         * libsupc++/Makefile.in:  Ditto.
153         * src/Makefile.in:  Ditto.
154
155         * include/bits/istream.tcc:  Fix clause reference in comment.
156
157 2000-12-20  Benjamin Kosnik  <bkoz@fillmore.constant.com>
158
159         * testsuite/17_intro/headers_c.cc (main): New file.
160
161         * acinclude.m4 (SECTION_FLAGS): Only set if --enable-debug is not
162         passed.
163         (OPT_LDFLAGS): And here.
164         * aclocal.m4: Regenerate.
165         * configure: Regenerate.
166         
167 2000-12-19  Curtis Janssen  <cljanss@ca.sandia.gov>
168
169         * src/ios.cc (ios_base::_M_grow_words(int ix)): Fix libstdc++/1089.
170         * testsuite/27_io/ios_base_storage.cc (test01): New file.
171
172 2000-12-19  Benjamin Kosnik  <bkoz@fillmore.constant.com>
173
174         * configure.in: Don't turn on long long by default.
175         (gxx_target_include_dir): Adjuse comment.
176         * configure: Regenerate.
177         * include/c/bits/std_cstdio.h: Remove c++config.h include.
178         * src/locale.cc: Formatting tweaks.
179         * testsuite/22_locale/ctype.cc (char<unsigned char>): Provide
180         member functions.
181
182 2000-12-19  Loren J. Rittle  <ljrittle@acm.org>
183
184         * testsuite/22_locale/ctype.cc (test01): Correct ~ operator usage.
185
186 2000-12-19  Mark Kettenis  <kettenis@gnu.org>
187
188         * configure.target: Support the Hurd.
189
190 2000-12-19  Benjamin Kosnik  <bkoz@fillmore.redhat.com>
191
192         * config/os/solaris/solaris2.5/bits/ctype_inline.h (is): Same.
193         * config/os/solaris/solaris2.6/bits/ctype_inline.h (is): Same.
194         * config/os/solaris/solaris2.7/bits/ctype_inline.h (is): Same.
195         * config/os/newlib/bits/ctype_inline.h (is): Same.
196         * config/os/irix/bits/ctype_inline.h (is): Same.
197         * config/os/bsd/netbsd/bits/ctype_inline.h (is): Same.
198         * config/os/bsd/freebsd/bits/ctype_inline.h (is): Same.
199         * config/os/aix/bits/ctype_inline.h (is): Same.
200         * config/os/gnu-linux/bits/ctype_inline.h (is): Revert.
201         * config/os/generic/bits/ctype_inline.h (is): Non-table based
202         implementation.
203
204         * testsuite/22_locale/ctype_char_members.cc (test01): Use binary
205         operator correctly.
206         (test01): Check 'A' for alnum, upper, alpha.
207
208 2000-12-19  Gabriel Dos Reis  <gdr@codesourcery.com>
209
210         * include/bits/std_complex.h (complex<float>::operator-=): Fix
211         thinko. 
212
213 2000-12-18  Benjamin Kosnik  <bkoz@redhat.com>
214
215         * configure.in: Set os_include_dir for cross_compiles.
216         * configure: Regenerate.
217         * configure.target (l_glibcpp_cxxflags): Don't try to be clever
218         when assigning ATOMICITYH. Only special case the special cases...
219
220 2000-12-18  Joseph S. Myers  <jsm28@cam.ac.uk>
221
222         * docs/html/17_intro/COPYING: Update to current
223         ftp://ftp.gnu.org/pub/gnu/Licenses/COPYING-2.0 (fixes references
224         to 19yy as example year in copyright notice).
225
226 2000-12-15  Benjamin Kosnik  <bkoz@redhat.com>
227
228         * configure.in (gxx_target_include_dir): Install target-dependent
229         include files in a target-dependent place.
230         * configure: Regenerate.
231         * src/Makefile.am: Add in support here.
232         * src/Makefile.in: Regenerate.
233
234 2000-12-14  Benjamin Kosnik  <bkoz@fillmore.redhat.com>
235
236         * src/Makefile.am (myinstallheaders): Install backwards headers in
237         prefix, not prefix/backward.
238         * src/Makefile.in: Regenerate.
239
240 2000-12-14  Benjamin Kosnik  <bkoz@haight.redhat.com>
241
242         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Revert changes
243         touching copysignf, atan2f, expf.
244         (GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT): Add it back here.
245         * aclocal.m4: Regenerate.
246         * configure: Regenerate.
247         
248 2000-12-14  Benjamin Kosnik  <bkoz@fillmore.redhat.com>
249
250         * configure.in (CXX): Exit out if mknumeric_limits fails.
251         * mknumeric_limits (CXX): Use BUILD_DIR/g++, not g++ in
252         path. Consistency with tests_flags.in.
253
254 2000-12-14  Benjamin Kosnik  <bkoz@haight.redhat.com>
255
256         * include/c/bits/*.h: Remove include_next, replace with include,
257         as include_next does not work host-x-host, and include_next not
258         necessary.
259
260 2000-12-13  Benjamin Kosnik  <bkoz@redhat.com>
261
262         * include/bits/locale_facets.h (ctype<char>): Remove throw specs not in
263         base class signature.
264         * config/os/*/bits/ctype_inline.h (is): Same.
265         
266 2000-12-13  Benjamin Kosnik  <bkoz@redhat.com>
267
268         * config/os/generic/bits/ctype_base.h (ctype_base): Consistency
269         with linux.
270         * config/os/generic/bits/ctype_inline.h (is): Same.
271         * config/os/solaris/solaris2.5/bits/ctype_inline.h (is): Same.
272         * config/os/solaris/solaris2.5/bits/ctype_base.h: Same.
273         * config/os/solaris/solaris2.6/bits/ctype_inline.h (is): Same.
274         * config/os/solaris/solaris2.6/bits/ctype_base.h: Same.
275         * config/os/solaris/solaris2.7/bits/ctype_inline.h (is): Same.
276         * config/os/solaris/solaris2.7/bits/ctype_base.h: Same.
277         * config/os/irix/bits/ctype_inline.h (is): Same.
278         * config/os/irix/bits/ctype_base.h (ctype_base): Same.
279         * config/os/aix/bits/ctype_inline.h (is): Same.
280         * config/os/aix/bits/ctype_base.h (ctype_base): Same.
281         * config/os/bsd/netbsd/bits/ctype_inline.h (is): Same.
282         * config/os/bsd/netbsd/bits/ctype_base.h (ctype_base): Same.
283         * config/os/bsd/freebsd/bits/ctype_base.h (ctype_base): Same.
284         * config/os/bsd/freebsd/bits/ctype_inline.h (is): Same.
285         * config/os/newlib/bits/ctype_inline.h (is): Same.
286         * config/os/newlib/bits/ctype_base.h (ctype_base): Same.
287
288         * testsuite/22_locale/ctype_char_members.cc (test01): Add tests, fix.
289         * testsuite/22_locale/ctype.cc (test01): Add tests for
290         ctype_base::mask bitmask features.
291         * src/locale.cc: Define const static data for ctype_base.
292         * config/os/gnu-linux/bits/ctype_base.h (ctype_base): Make
293         ctype_base::mask type an integer type, not an enum.
294         * config/os/gnu-linux/bits/ctype_inline.h (is): Implement correctly.
295         * include/bits/locale_facets.h: Tweaks.
296         
297         * include/bits/ios_base.h: Formatting tweaks.
298
299         * docs/html/17_intro/C++STYLE: Add.
300
301 2000-12-12  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
302
303         * acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Don't link ctype
304         files here...
305         * configure.in: Rather, do it once for all targets here. Clean up
306         canadian cross and cross compile targets for linux-targeted
307         crosses.
308         * configure: Regenerate.
309         * aclocal.m4: Regnerate.
310         * acconfig.h: Add more defines.
311         * config.h.in: Regenerate.
312         
313 2000-12-12  Angela Marie Thomas <angela@cygnus.com>
314
315         * configure.in: Fix case for host-x-linux
316         * configure: Regenerate.
317
318 2000-12-10  Alexandre Petit-Bianco  <apbianco@cygnus.com>
319
320         * src/Makefile.am (libstdc++.INC:): 2000-12-05 reverted to include
321         2000-11-12 hunk.
322         * src/Makefile.in: Rebuilt.
323
324 2000-12-09  Jason Merrill  <jason@redhat.com>
325
326         * testsuite/20_util/auto_ptr.cc (test07): Remove test that tries
327         to copy-initialize an auto_ptr<Base> from an auto_ptr<Derived>; it
328         isn't supposed to work anymore.
329
330 2000-12-09  Phil Edwards  <pme@sources.redhat.com>
331
332         Move the HTML-containing subdirs from 'docs' to 'docs/html'.
333         * README:  Update the locations of instructions.
334         * docs/doxygen/run_doxygen:  New file, stub.
335
336         * docs/Makefile:  Moved...
337         * docs/configopts.html:  Likewise.
338         * docs/documentation.html:  Likewise.
339         * docs/install.html:  Likewise.
340         * docs/lib3styles.css:  Likewise.
341         * docs/17_intro/BADNAMES:  Likewise.
342         * docs/17_intro/BUGS:  Likewise.
343         * docs/17_intro/C++STYLE:  Likewise.
344         * docs/17_intro/CHECKLIST:  Likewise.
345         * docs/17_intro/COPYING:  Likewise.
346         * docs/17_intro/DESIGN:  Likewise.
347         * docs/17_intro/HEADER_POLICY:  Likewise.
348         * docs/17_intro/PROBLEMS:  Likewise.
349         * docs/17_intro/RELEASE-NOTES:  Likewise.
350         * docs/17_intro/TODO:  Likewise.
351         * docs/17_intro/contribute.html:  Likewise.
352         * docs/17_intro/headers_cc.txt:  Likewise.
353         * docs/17_intro/howto.html:  Likewise.
354         * docs/17_intro/libstdc++-assign.txt:  Likewise.
355         * docs/17_intro/organization:  Likewise.
356         * docs/17_intro/porting-howto.html:  Likewise.
357         * docs/18_support/howto.html:  Likewise.
358         * docs/19_diagnostics/howto.html:  Likewise.
359         * docs/20_util/howto.html:  Likewise.
360         * docs/21_strings/gotw29a.txt:  Likewise.
361         * docs/21_strings/howto.html:  Likewise.
362         * docs/21_strings/stringtok_h.txt:  Likewise.
363         * docs/21_strings/stringtok_std_h.txt:  Likewise.
364         * docs/22_locale/codecvt.html:  Likewise.
365         * docs/22_locale/ctype.html:  Likewise.
366         * docs/22_locale/howto.html:  Likewise.
367         * docs/22_locale/locale.html:  Likewise.
368         * docs/23_containers/howto.html:  Likewise.
369         * docs/23_containers/wrappers_h.txt:  Likewise.
370         * docs/24_iterators/howto.html:  Likewise.
371         * docs/25_algorithms/howto.html:  Likewise.
372         * docs/26_numerics/howto.html:  Likewise.
373         * docs/27_io/howto.html:  Likewise.
374         * docs/27_io/iostreams_hierarchy.pdf:  Likewise.
375         * docs/ext/howto.html:  Likewise.
376         * docs/faq/index.html:  Likewise.
377         * docs/faq/index.txt:  Likewise.
378         * docs/html/Makefile:  ...to here.
379         * docs/html/configopts.html:  Likewise.
380         * docs/html/documentation.html:  Likewise.
381         * docs/html/install.html:  Likewise.
382         * docs/html/lib3styles.css:  Likewise.
383         * docs/html/17_intro/BADNAMES:  Likewise.
384         * docs/html/17_intro/BUGS:  Likewise.
385         * docs/html/17_intro/C++STYLE:  Likewise.
386         * docs/html/17_intro/CHECKLIST:  Likewise.
387         * docs/html/17_intro/COPYING:  Likewise.
388         * docs/html/17_intro/DESIGN:  Likewise.
389         * docs/html/17_intro/HEADER_POLICY:  Likewise.
390         * docs/html/17_intro/PROBLEMS:  Likewise.
391         * docs/html/17_intro/RELEASE-NOTES:  Likewise.
392         * docs/html/17_intro/TODO:  Likewise.
393         * docs/html/17_intro/contribute.html:  Likewise.
394         * docs/html/17_intro/headers_cc.txt:  Likewise.
395         * docs/html/17_intro/howto.html:  Likewise.
396         * docs/html/17_intro/libstdc++-assign.txt:  Likewise.
397         * docs/html/17_intro/organization:  Likewise.
398         * docs/html/17_intro/porting-howto.html:  Likewise.
399         * docs/html/18_support/howto.html:  Likewise.
400         * docs/html/19_diagnostics/howto.html:  Likewise.
401         * docs/html/20_util/howto.html:  Likewise.
402         * docs/html/21_strings/gotw29a.txt:  Likewise.
403         * docs/html/21_strings/howto.html:  Likewise.
404         * docs/html/21_strings/stringtok_h.txt:  Likewise.
405         * docs/html/21_strings/stringtok_std_h.txt:  Likewise.
406         * docs/html/22_locale/codecvt.html:  Likewise.
407         * docs/html/22_locale/ctype.html:  Likewise.
408         * docs/html/22_locale/howto.html:  Likewise.
409         * docs/html/22_locale/locale.html:  Likewise.
410         * docs/html/23_containers/howto.html:  Likewise.
411         * docs/html/23_containers/wrappers_h.txt:  Likewise.
412         * docs/html/24_iterators/howto.html:  Likewise.
413         * docs/html/25_algorithms/howto.html:  Likewise.
414         * docs/html/26_numerics/howto.html:  Likewise.
415         * docs/html/27_io/howto.html:  Likewise.
416         * docs/html/27_io/iostreams_hierarchy.pdf:  Likewise.
417         * docs/html/ext/howto.html:  Likewise.
418         * docs/html/faq/index.html:  Likewise.
419         * docs/html/faq/index.txt:  Likewise.
420
421 2000-12-08  Phil Edwards  <pme@sources.redhat.com>
422
423         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO):  New conditional,
424           GLIBCPP_BUILD_LIBIO, true iff building libio.
425         * libio/Makefile.am:  Use; set noinst_LTLIBRARIES empty if false.
426         * aclocal.m4:  Regenerated.
427         * config.h.in:  Regenerated.
428         * configure:  Regenerated.
429         * libio/Makefile.in:  Regenerated.
430         * libmath/Makefile.in:  Regenerated.
431
432 2000-12-08  Gabriel Dos Reis  <gdr@codesourcery.com>
433
434         * libmath/Makefile.am (EXTRA_LONG_DOUBLE_yes): Remove ccosl,
435         cexpl, clog10l, csinhl, ctanhl, ctanl.
436         (EXTRA_DIST): Remove ccos, ccosf, csin, csinf, ccosh, ccoshf,
437         csing, csinhf, clog10, clog10f, ctan, ctanf, ctanh, ctanhf.
438         * libmath/Makefile.in: Regenarate.
439         * libmath/ccos.c: Remove.
440         * libmath/ccosf.c: Likewise.
441         * libmath/ccosl.c: Likewise.
442         * libmath/csin.c: Likewise.
443         * libmath/csinf.c: Likewise.
444         * libmath/csinl.c: Likewise.
445         * libmath/ctan.c: Likewise.
446         * libmath/ctanf.c: Likewise.
447         * libmath/ctanl.c: Likewise.
448         * libmath/ccosh.c: Likewise.
449         * libmath/ccoshf.c: Likewise.
450         * libmath/ccoshl.c: Likewise.
451         * libmath/csinh.c: Likewise.
452         * libmath/csinhf.c: Likewise.
453         * libmath/csinhl.c: Likewise.
454         * libmath/ctanh.c: Likewise.
455         * libmath/ctanhf.c: Likewise.
456         * libmath/ctanhl.c: Likewise.
457         * libmath/cexp.c: Likewise.
458         * libmath/cexpf.c: Likewise.
459         * libmath/cexpl.c: Likewise.
460         * libmath/clog10.c: Likewise.
461         * libmath/clog10f.c: Likewise.
462         * libmath/clog10l.c: Likewise.
463         * libmath/complex-stub.h: Remove forward declaration of functions
464         mentioned above.
465
466         * include/bits/std_complex.h(tan, tanh): Define primary templates. 
467         (complex<>): Remove friend declarations for tan<> and tanh<>.
468         * src/complex.cc(tan, tanh): Remove specializations.
469
470         * acinclude.m4: Remove check for ccos, ccosf, ccosl, ccosh,
471         ccoshf, ccoshl, csin, csinf, csinl, csinh, csinhf, csinhl, cexp,
472         cexpf, cexpl, ctan, ctanf, ctanl, ctanh, ctanhf, ctanhl.
473         * aclocal.m4: Regenarate.
474         * configure: Regenarate.
475
476 2000-12-08  Gabriel Dos Reis  <gdr@codesourcery.com>
477
478         * acinclude.m4: Don't forget to remove check for cpowl as it is no
479         longer needed, nor is the corresponding stub existent.
480         * aclocal.m4: Regenarate.
481         * configure: Regenarate.
482
483 2000-12-07  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
484
485         * config/os/generic/bits/ctype_base.h (ctype_base): Change space mask.
486
487         * config/os/generic/bits/ctype_noninline.h (ctype): Remove default
488         arguments in definition.
489         * config/os/solaris/solaris2.7/bits/ctype_noninline.h (ctype): Same.
490         * config/os/solaris/solaris2.6/bits/ctype_noninline.h (ctype): Same.
491         * config/os/solaris/solaris2.5/bits/ctype_noninline.h (ctype): Same.
492         * config/os/newlib/bits/ctype_noninline.h (ctype): Same.
493         * config/os/irix/bits/ctype_noninline.h (ctype): Same.
494         * config/os/hpux/bits/ctype_noninline.h (ctype): Same.
495         * config/os/bsd/netbsd/bits/ctype_noninline.h (ctype): Same.
496         * config/os/bsd/freebsd/bits/ctype_noninline.h (ctype): Same.
497         * config/os/aix/bits/ctype_noninline.h (ctype): Same.
498
499         * include/bits/locale_facets.h: Tweak.
500         
501 2000-12-06  Benjamin Kosnik  <bkoz@kredhat.com>
502
503         * include/bits/locale_facets.h (ctype): Remove _Ctype_nois and
504         _Ctype and replace with common __ctype_abstract_base.
505         (ctype<wchar_t>::_M_convert_to_wmask): Move to locale.cc.
506         * config/os/gnu-linux/bits/ctype_noninline.h (ctype<char>::ctype):
507         And here.
508         * config/os/solaris/solaris2.7/bits/ctype_noninline.h (ctype): Same.
509         * config/os/solaris/solaris2.6/bits/ctype_noninline.h (ctype): Same.
510         * config/os/solaris/solaris2.5/bits/ctype_noninline.h (ctype): Same.
511         * config/os/newlib/bits/ctype_noninline.h (ctype): Same.
512         * config/os/irix/bits/ctype_noninline.h (ctype): Same.
513         * config/os/hpux/bits/ctype_noninline.h (ctype): Same.
514         * config/os/generic/bits/ctype_noninline.h (ctype): Same.
515         * config/os/aix/bits/ctype_noninline.h (ctype): Same.
516         * config/os/bsd/netbsd/bits/ctype_noninline.h (ctype): Same.
517         * config/os/bsd/freebsd/bits/ctype_noninline.h (ctype): Same.
518         * src/locale-inst.cc: Clean instantiations.
519         * src/locale.cc (ctype<char>): Add definitions here. 
520         (ctype<wchar_t>::_M_wmask): Move definitions here.
521         
522         * config/os/generic/bits/ctype_inline.h (ctype<char>::is):
523         Implement in a generic way, with only "C" functionality and no
524         knowlege of the target os.
525         * config/os/generic/bits/os_defines.h: Change comments to C++ style.
526         * testsuite/22_locale/ctype_char_members.cc (test01): Add tests.
527         
528         * include/bits/codecvt.h (ctype_byname): Remove specializations,
529         as not required.
530         * include/bits/localefwd.h (codecvt_byname): And here.
531         * src/codecvt.cc: Remove codecvt_byname specializations.
532         
533         * include/c/bits/std_cstdio.h: Include c++config.h.
534
535 2000-12-06  Phil Edwards  <pme@sources.redhat.com>
536
537         * acinclude.m4 (GLIBCPP_CHECK_*_DECL_AND_LINKAGE_*):  Pre-test
538           whether the cached result is present.
539         * aclocal.m4:  Regenerate.
540         * configure:  Regenerate.
541         * Makefile.in:  Regenerate.
542         * libio/Makefile.in:  Regenerate.
543         * libmath/Makefile.in:  Regenerate.
544         * libsupc++/Makefile.in:  Regenerate.
545         * src/Makefile.in:  Regenerate.
546
547 2000-12-06  Richard Earnshaw  <rearnsha@arm.com>
548
549         * configure.target (*-*-freebsd, *-*-netbsd): Correct paths to 
550         os_include_dir.
551
552 2000-12-05  Jeffrey A Law  <law@cygnus.com>
553
554         * configure.target (hpux): Set os_include_dir.
555         * config/os/hpux/bits/ctype_base.h: New file
556         * config/os/hpux/bits/ctype_inline.h: New file
557         * config/os/hpux/bits/ctype_noinline.h: New file
558         * config/os/hpux/bits/os_defines.h: New file
559
560 2000-12-05  Alexandre Petit-Bianco  <apbianco@redhat.com>
561
562         * src/Makefile.am (libstdc++.INC): Revert for libjava builds.
563         * src/Makefile.in: Regenerate.
564         
565 2000-12-05  Benjamin Kosnik  <bkoz@haight.redhat.com>
566
567         * acinclude.m4 (EXTRA_CXX_FLAGS): And here.
568         * include/c/bits/std_cstdlib.h (std ): Change macro to
569         _GLIBCPP_NEED_LLDIV_T.
570         * acconfig.h: Remove unused MBSTATE_T bits.
571         * configure.in: Same.
572         * aclocal.m4: Regenerate.
573         * configure: Regenerate.
574         * config.h.in: Regenerate.
575         
576 2000-12-05  Benjamin Kosnik  <bkoz@fillmore.redhat.com>
577
578         * acinclude.m4: Change up to reflect new directory organization.
579         Add in bits for NetBSD.
580         * aclocal.m4: Regenerate.
581         * configure: Regenerate.
582         * config/os/bsd: New directory.
583         * config/os/netbsd: Move to...
584         * config/os/bsd/netbsd: ...here.
585         * config/os/freebsd: Move to...
586         * config/os/bsd/freebsd: ...here.
587
588 2000-12-05  Benjamin Kosnik  <bkoz@haight.redhat.com>
589
590         * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Check for
591         lldiv_t. Allow the use of os-specific defines while checking for
592         long-long functions by the inclusion of os_defines.h.
593         * aclocal.m4: Regenerate.
594         * configure.in: Add comments.
595         * configure: Regenerate.
596         * acconfig.h: Add _GLIBCPP_HAVE_LLDIV_T.
597         * config.h.in: Regenerate.
598         * config/os/gnu-linux/bits/os_defines.h: Fix typos and
599         duplications in comments.
600
601 2000-12-05  Richard Earnshaw  <rearnsha@arm.com>
602
603         * config/os/freebsd/bits/ctype_base.h: Update comments about other
604         BSD variants.
605
606 2000-12-05  Richard Earnshaw  <rearnsha@arm.com>
607
608         * config/os/freebsd/bits/*.h: Move here from config/os/bsd/bits.
609         * aclocal.m4: Adjust accordingly.
610         * configure.target: Likewise.
611         * configure: Regenerate.
612
613 2000-12-05  Richard Earnshaw  <rearnsha@arm.com>
614
615         * config/cpu/arm/bits/atomicity.h: Add support for compiling Thumb
616         code.
617
618 2000-12-05  Richard Earnshaw  <rearnsha@arm.com>
619
620         Support for NetBSD.
621         * aclocal.m4: Add test for NetBSD's ctype support.
622         * configure: Regenerate.
623         * configure.target: Support NetBSD.
624         * config/os/netbsd/bits/ctype_base.h: New file.
625         * config/os/netbsd/bits/ctype_inline.h: New file.
626         * config/os/netbsd/bits/ctype_noinline.h: New file.
627         * config/os/netbsd/bits/os_defines.h: New file.
628
629 2000-12-05  Gabriel Dos Reis  <gdr@codesourcery.com>
630
631         * src/complex.cc (pow): Remove definitions for explicit
632         specializations. 
633         * libmath/mathconf.h: Remove declarations for c_log, c_logf,
634         c_logl. 
635         * libmath/complex-stub.h: Remove declarations for cpow, cpowf,
636         cpowl. 
637         * libmath/cpow.c: Remove.
638         * libmath/cpowf.c: Remove.
639         * libmath/cpowl.c: Remove.
640         * libmath/Makefile.am (EXTRA_LONG_DOUBLE_yes): Remove c_logl,
641         cpowl, 
642         (EXTRA_DIST): Remove c_log, c_logf, carg, cargf.
643         * libmath/Makefile.in: Regenarate.
644         * libmath/c_log.c: Remove
645         * libmath/c_logf.c: Likewise.
646         * libmath/c_logl.c: Likewise.
647         * libmath/carg.c: Likewise.
648         * libmath/cargf.c: Likewise.
649         * libmath/cargl.c: Likewise.
650         * include/bits/std_complex.h (pow): Define primary templates.
651         (complex<>): Remove friend declarations for pow<>().
652         * acinclude.m4: Remove check for c_log, c_logf, c_logl, carg,
653         cargf.
654         * aclocal.m4: Regenarate.
655         * configure: Regenarate.
656
657 2000-12-03  Joseph S. Myers  <jsm28@cam.ac.uk>
658
659         * docs/configopts.html, docs/documentation.html,
660         docs/install.html, docs/17_intro/BADNAMES,
661         docs/17_intro/contribute.html, docs/17_intro/howto.html,
662         docs/18_support/howto.html, docs/19_diagnostics/howto.html,
663         docs/20_util/howto.html, docs/21_strings/howto.html,
664         docs/22_locale/howto.html, docs/23_containers/howto.html,
665         docs/24_iterators/howto.html, docs/25_algorithms/howto.html,
666         docs/26_numerics/howto.html, docs/27_io/howto.html,
667         docs/ext/howto.html, docs/faq/index.html, docs/faq/index.txt: Sync
668         with wwwdocs.
669
670 2000-12-01  Phil Edwards  <pme@sources.redhat.com>
671
672         * docs/download.html:  Remove.
673         * docs/footer.ihtml:  Remove.
674         * docs/header.ihtml:  Remove.
675         * docs/index.html:  Remove.
676         * docs/links.html:  Remove.
677         * docs/mail.html:  Remove.
678         * docs/status.html:  Remove.
679         * docs/thanks.html:  Remove.
680
681 2000-12-01  Phil Edwards  <pme@sources.redhat.com>
682
683         * mkcheck.in:  Count static and shared results separately.
684
685 2000-12-01  Loren J. Rittle  <ljrittle@acm.org>
686
687         * mkcheck.in:  Correct typo.
688
689 2000-12-01  Gabriel Dos Reis  <gdr@codesourcery.com>
690
691         * src/cmath.cc: Remove.
692         * src/Makefile.am (c_base_headers): Add bits/cmath.tcc.
693         (sources): Remove cmath.cc
694         * src/Makefile.in: Regenerate.
695
696         * include/c/bits/std_cmath.h (__cmath_power<>): Declare.
697         (__cmath_abs<>): New function.
698         (abs, fabs): Use __cmath_abs when no direct support is available.
699         (__pow_helper<>): New function.
700         (pow): Define here.  Use __pow_helper<>.
701
702         * include/c/bits/cmath.tcc: New file.
703
704 2000-11-29  Benjamin Kosnik  <bkoz@redhat.com>
705
706         Fixes for build directories with colons, AIX build problems.
707         * src/Makefile.am: Cleanups, add documentation.
708         (libstdc++.INC): Simplify rule.
709         (myinstallheaders): Consolidate install rules.
710         (myinstalldirs): New, make directores.
711         (base_headers): Subdivide based on install directory.
712         (ext_headers): New.
713         (backward_headers): New.
714         (headers): Remove.
715         (c_headers): Remove, unused.
716         (c_shadow_headers): Split up, deal with conditional usage in a
717         sane manner.
718         * src/Makefile.in: Regenerate.
719         
720 2000-11-29  Phil Edwards  <pme@sources.redhat.com>
721
722         Sync with the documentation from wwwdocs.
723         * docs/Makefile:  New file (rebuilds FAQ text version).
724         * docs/configopts.html:  Update.
725         * docs/documentation.html:  Update.
726         * docs/download.html:  Update.
727         * docs/index.html:  Update.
728         * docs/install.html:  Update.
729         * docs/links.html:  Update.
730         * docs/mail.html:  Update.
731         * docs/status.html:  Update.
732         * docs/thanks.html:  Update.
733         * docs/27_io/howto.html:  Update.
734         * docs/faq/index.html:  Update for 2.91.
735         * docs/faq/index.txt:  Update for 2.91.
736         * docs/footer.html:  Removed.
737         * docs/footer.ihtml:  New file.
738         * docs/gccrebuild.html:  Removed.
739         * docs/header.html:  Removed.
740         * docs/header.ihtml:  New file.
741
742 2000-11-29  Loren J. Rittle  <ljrittle@acm.org>
743
744         * tests_flags.in: Correct typo.
745
746 2000-11-29  Gabriel Dos Reis  <gdr@codesourcery.com>
747
748         * tests_flags (SH_FLAGS, ST_FLAGS): Move them back to ...
749         * mkcheck.in (SH_FLAGS, ST_FLAGS): ...here
750
751 2000-11-29  Gabriel Dos Reis  <gdr@codesourcery.com>
752
753         * src/Makefile.am (sources): Add bitset.cc
754         * src/Makefile.in: Regenrate.
755
756         * include/bits/std_bitset.h (_GLIBCPP_BITSET_BITS_PER_WORD): New
757         macro. Replace __BITS_PER_WORDS throughout.
758         (__BITS_PER_WORDS): Remove.
759         (bitset<>::_M_do_find_first, bitset<>::_M_do_find_next): Move
760         definitions to src/bitset.cc.
761
762         * src/bitset.cc (bitset<>::_M_do_find_first,
763         bitset<>::_M_do_find_next):  Define here.
764         (_Bit_count<>::_S_bit_count, _Find_one<>::_S_first_one): Define
765         here. Explicitly instantiate definitions.
766
767 2000-11-28  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
768
769         * config/cpu/powerpc/bits/atomicity.h (__exchange_and_add): Silence
770         preprocessor multi-line string warnings.
771         (__atomic_add): Likewise.
772         (__compare_and_swap): Likewise.
773         (__always_swap): Likewise.
774         (__test_and_set): Likewise.
775         * config/cpu/arm/bits/atomicity.h (__exchange_and_add): Likewise.
776         (__atomic_add): Likewise.
777         (__compare_and_swap): Likewise.
778         (__always_swap): Likewise.
779         (__test_and_set): Likewise.
780
781 2000-11-28  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
782
783         Update for 2.91 release.
784         * include/bits/c++config (__GLIBCPP__): Update.
785         * docs/17_intro/RELEASE-NOTES: Update.
786         * docs/status.html: Update, remove bogus autotools disinformation.
787         
788 2000-11-27  Benjamin Kosnik  <bkoz@redhat.com>
789
790         * tests_flags.in (LTCXX): Change CXX_FLAG to CXXFLAGS.
791
792         * testsuite/22_locale/ctor_copy_dtor.cc: Adjust formatting.
793         * testsuite/27_io/istream_extractor_arith.cc (test11): New
794         testcase, based on libstdc++/90.
795         
796 2000-11-27  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
797
798         * config/cpu/arm/bits/atomicity.h (__exchange_and_add): Add
799         __volatile__ to asm.
800         (__atomic_add): Likewise.
801         (__compare_and_swap): Likewise.
802         (__always_swap): Likewise.
803         (__test_and_set): Likewise.
804         
805         * config/cpu/powerpc/bits/atomicity.h: Replace '__ATOMICITY_INLINE'
806         with 'inline'.
807         (__exchange_and_add): Add __volatile__ to asm.
808         (__atomic_add): Likewise.
809         (__compare_and_swap): Likewise.
810         (__always_swap): Likewise.
811         (__test_and_set): Likewise.
812         
813 2000-11-27  Gabriel Dos Reis  <gdr@codesourcery.com>
814
815         * tests_flags.in: Update documentation to reflect the change
816         below.
817
818 2000-11-26  Benjamin Kosnik  <bkoz@fillmore.constant.com>
819
820         * tests_flags.in: Export CXX, CXXFLAGS.
821         * mkcheck.in: Grab them.
822
823 2000-11-26  David Billinghurst  <David.Billinghurst@riotinto.com>
824             Benjamin Kosnik  <bkoz@redhat.com>
825         
826         * mkcheck.in: Add exe extension to printnow executable, abstract
827         out call to this with TIMER_COMMAND.
828         * configure.target (l_glibcpp_cxxflags): Add cygwin support.
829         * acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Correct paths.
830         * aclocal.m4: Regenerate.
831         * configure: Regenerate.
832         
833 2000-11-26  Benjamin Kosnik  <bkoz@redhat.com>
834
835         * testsuite/27_io/istream_unformatted.cc (test05): Fixup.
836
837 2000-11-26  Benjamin Kosnik  <bkoz@redhat.com>
838
839         * acinclude.m4: Only sanity check for compiler version when
840         configuring. More fixes for 'make clean'.
841         * aclocal.m4: Regenerate.
842         * configure: Regenerate.
843         
844 2000-11-26  Gabriel Dos Reis  <gdr@codesourcery.com>
845
846         * libmath/Makefile.am (EXTRA_LONG_DOUBLE_yes): Remove cabsl.c 
847         * libmath/Makefile.in: Regenerate.
848         * libmath/cabs.c: Remove.
849         * libmath/cabsf.c: Likewise.
850         * libmath/cabsl.c: Likewise.
851         * libmath/complex-stub.h: Remove declarations for cabs*.
852
853         * acinclude.m4: Remove check for cabs*. 
854         * aclocal.m4: Regenerate.
855
856         * Makefile.in: Regenerate.
857
858 2000-11-26  Gabriel Dos Reis  <gdr@codesourcery.com>
859
860         * tests_flags.in: New file. Split out of ...
861         * mkcheck.in: ... this. Move flags computation into
862         tests_flags.in. 
863         * configure.in: Add support for tests_flags.
864         * confiigure: Regenerate.
865
866 2000-11-25  Joseph S. Myers  <jsm28@cam.ac.uk>
867
868         * acinclude.m4: Change C9X references to refer to C99.
869         * aclocal.m4, configure: Regenerate.
870         * config/os/gnu-linux/bits/os_defines.h, src/complex.cc,
871         testsuite/22_locale/codecvt_wchar_t_char.cc,
872         include/bits/stl_config.h, include/c/bits/std_cwchar.h,
873         libmath/mathconf.h: Change C9X references to refer to C99.
874
875 2000-11-25  Benjamin Kosnik  <bkoz@redhat.com>
876             Richard Earnshaw  <rearnsha@arm.com> 
877
878         * src/Makefile.am (INCLUDES): Remove unconditional use of
879         _GNU_SOURCE and _ISOC99_SOURCE macros.
880         * src/Makefile.in: Regenerate.
881         
882 2000-11-24  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
883
884         * testsuite/22_locale/codecvt_wchar_t_char.cc (main): Add
885         _GLIBCPP_USE_WCHAR_T guards.
886
887         * configure.in (AC_OUTPUT_COMMANDS): Remove, just run scripts as
888         is, so that checks for existence of generated files actually work.
889         * configure: Regenerate.
890
891 2000-11-23  Hans-Peter Nilsson  <hp@bitrange.com>
892
893         * config/os/gnu-linux/bits/os_defines.h: Include <features.h>.
894         If not glibc 2.1 or higher, include <gnu/types.h> and define
895         __off64_t as __loff_t and #define __THROW as empty.
896
897         * libio/libio.h [__P]: Move __THROW and __PMT into their own
898         ifndef:s.
899
900 2000-11-23  David Edelsohn  <edelsohn@gnu.org>
901
902         * porting.texi: Expand libtool information.
903
904 2000-11-23  Gabriel Dos Reis  <gdr@codesourcery.com>
905
906         * include/bits/ios_base.h (ios_base::failure::~failure,
907         ios_base::failure::what): Move defintion to ...
908
909         * src/ios.cc (ios_base::failure::~failure): ... here.
910         src/ios.cc (ios::failure::what): Likewise.
911
912 2000-11-22  Benjamin Kosnik  <bkoz@redhat.com>
913
914         Make deprecated strstream header consistent with new and new.h.
915         * include/backward/strstream.h: Add. Use using declarations to
916         scope strstreambuf, istrstream, ostrstream, strstream to global
917         scope.
918         * include/backward/strstream: Remove using declarations.
919         * src/Makefile.am (base_headers): Add strstream.
920         * src/Makefile.in: Regenerate.
921
922         * include/backward/new.h (_CPP_BACKWARD_NEW_H): Change macro guard
923         to be consistent with other headers.
924
925 2000-11-22  Richard Henderson  <rth@redhat.com>
926
927         * config/os/bsd/bits/ctype_inline.h (is): Fix order of expressions.
928         
929 2000-11-22  Phil Edwards  <pme@sources.redhat.com>
930
931         * porting.texi:  Minor tweaks to vocabulary.
932
933 2000-11-22  Loren J. Rittle  <ljrittle@acm.org>
934
935         * include/backward/strstream.h: Reinstate the `using'
936         statements.
937
938 2000-11-22  Loren J. Rittle  <ljrittle@acm.org>
939
940         * src/Makefile.am (base_headers): Add missing backwards headers.
941         * src/Makefile.in: Regenerate.
942
943 2000-11-21  scott snyder  <snyder@fnal.gov>
944
945         * config/c_io_stdio.cc (seekoff): Fix return value.
946         (seekpos): Likewise.
947         (sys_seek): Likewise.
948
949 2000-11-21  Loren J. Rittle  <ljrittle@acm.org>
950
951         * mkcheck.in (explanation): Retain output of all failing
952         compiles.  Don't add gratuitous space to the log file.
953
954 2000-11-21  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
955
956         * src/strstream.cc: Adjust includes.
957         * src/Makefile.am (base_headers): Remove std_strstream.h, add
958         backwards/strstream.h.
959         (std_headers): Remove strstream.
960         * src/Makefile.in: Regenerate.
961         * libsupc++/Makefile.am (headers): Remove new.h
962         * libsupc++/Makefile.in: Regenerate.
963         * include/std/strstream: Remove.        
964         * include/backward/strstream.h: Replace with...
965         * include/bits/std_strstream.h: ...this. Move.
966         * include/backward/complex.h: Remove SGIisms.
967         * include/backward/streambuf.h: Same.
968         * include/backward/stream.h: Same.
969         * include/backward/ostream.h: Same.
970         * include/backward/istream.h: Same.
971         * include/backward/iostream.h: Same.
972         * include/backward/iomanip.h: Same.
973         * include/backward/fstream.h: Same.
974         * libsupc++/new.h: Add using declarations for bad_alloc,
975         nothrow_t, and nothrow, move to ...
976         * include/backward/new.h: ...here.
977
978 2000-11-21  Mark Mitchell  <mark@codesourcery.com>
979
980         * porting.texi: New file.
981
982 2000-11-21  Branko Cibej  <brankoe@xbc.nu>
983
984         * config/os/solaris/solaris2.6/bits/os_defines.h: Define
985         _XOPEN_SOURCE, _LARGEFILE64_SOURCE, __EXTENSIONS__, __off_t,
986         __off64_t and __ssize_t.
987         * config/os/solaris/solaris2.5/bits/os_defines.h: For now, use the
988         same configuration as above.
989         
990 2000-11-21  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
991
992         * acinclude.m4 (AC_LC_MESSAGES): Check for locale.h.
993         * aclocal.m4: Regenerate.
994         * configure: Renerate.
995
996 2000-11-20  Benjamin Kosnik  <bkoz@redhat.com>
997
998         * mkcheck.in (explanation): Don't paste output of passing compiles
999         into log file. Use -static. Get version info.
1000
1001         * testsuite/23_containers/vector_ctor.cc (test02): Fix thinko.
1002
1003 2000-11-20  Gabriel Dos Reis  <gdr@codesourcery.com>
1004
1005         * include/bits/std_complex.h (complex<double>): Constructor
1006         complex<double>::complex(const complex<float>&) is not explicit;
1007         since it is a promotion.
1008         (complex<long double>): Constructors taking complex<float> and
1009         complex<double> are not explicit.
1010
1011 2000-11-20  Benjamin Kosnik  <bkoz@redhat.com>
1012
1013         * include/bits/std_complex.h: Tweaks, include cmath for abs overloads.
1014         * src/complex.cc: Remove cmath include, formatting tweaks, remove
1015         dead code.
1016         * include/c/bits/std_cmath.h: Formatting tweaks.
1017         * testsuite/26_numerics/complex_value.cc: New file, for catching
1018         bits gleaned from libstdc++/106.
1019
1020         * testsuite/23_containers/vector_ctor.cc (test02): Add test from
1021         libstdc++/102.
1022         
1023 2000-11-20  Joseph S. Myers  <jsm28@cam.ac.uk>
1024
1025         * include/bits/c++config, include/bits/ios_base.h,
1026         include/bits/std_streambuf.h: Correct spelling of "deprecated".
1027
1028 2000-11-19  Mark Mitchell  <mark@codesourcery.com>
1029
1030         * libsupc++/exception_support.cc (__throw_bad_cast): Name it 
1031         __cxa_bad_cast under the new ABI.
1032         (__throw_bad_typeid): Name it __cxa_bad_typeid under the new ABI.
1033         * libsupc++/pure.cc (__pure_virtual): Name it __cxa_pure_virtual
1034         under the new ABI.
1035
1036 2000-11-18  Mark Mitchell  <mark@codesourcery.com>
1037
1038         * libsupc++/exception_support.h: New header file.
1039         * libsupc++/vec.cc: Include it.
1040         (__cxa_vec_new2): Recatch exceptions before rethrows.
1041         (__cxa_vec_new3): Likewise.
1042         (__cxa_vec_ctor): Likewise.
1043         (__cxa_vec_cctor): Likewise.
1044         (__cxa_vec_dtor): Likewise.
1045         (__cxa_vec_delete2): Likewise.
1046         (__cxa_vec_delete3): Likewise.
1047
1048 2000-11-17  Theodore Papadopoulo  <Theodore.Papadopoulo@sophia.inria.fr>
1049
1050         * include/bits/stl_tree.h: Overload operators == and != to be able
1051         to handle the case (const_iterator,iterator) and
1052         (iterator,const_iterator), thus fixing libstdc++/737 and the like.
1053         * testsuite/23_containers/map_operators.cc (test02): New tests.
1054         
1055 2000-11-17  Loren J. Rittle  <ljrittle@acm.org>
1056
1057         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Correct last patch
1058           to ``make --enable-cstdio=stdio the default''.
1059         * libstdc++-v3/aclocal.m4: Rebuilt.
1060         * libstdc++-v3/configure: Rebuilt.
1061
1062 2000-11-17  Phil Edwards  <pme@sources.redhat.com>
1063
1064         * acinclude.m4 (GLIBCPP_ENABLE_ATOMICITY):  Move switch statement
1065           contents to...
1066         * configure.target:  ...here.  Enable generic atomic ops, and warn.
1067         * aclocal.m4:  Regenerated.
1068         * configure:  Ditto.
1069         * Makefile.in:  Ditto.
1070         * libio/Makefile.in:  Ditto.
1071         * libmath/Makefile.in:  Ditto.
1072         * libsupc++/Makefile.in:  Ditto.
1073         * src/Makefile.in:  Ditto.
1074
1075 2000-11-16  Loren J. Rittle  <ljrittle@acm.org>
1076
1077         * include/bits/locale_facets.tcc (num_get<_CharT,
1078           _InIter>::do_get(...)): Add missing typename keyword.
1079
1080 2000-11-16  Mark Mitchell  <mark@codesourcery.com>
1081
1082         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Make 
1083         --enable-cstdio=stdio the default.  Disable wide character support
1084         in that event.
1085         * configure.in: Move GLIBCPP_ENABLE_C_MBCHAR after
1086         (GLIBCPP_ENABLE_CSTDIO).
1087         * config/c_io_stdio.h: Don't include <libio.h>, don't define
1088         __c_wfile_type.
1089         * aclocal.m4: Regenerated.
1090         * configure: Likewise.
1091         * Makefile.in: Likewise.
1092         * libio/Makefile.in: Likewise.
1093         * libmath/Makefile.in: Likewise.
1094         * libsupc++/Makefile.in: Likewise.
1095         * src/Makefile.in: Likewise.
1096         
1097 2000-11-16  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
1098
1099         * config/c_io_stdio.h: Include stddef.h.
1100
1101 2000-11-16  Mark Mitchell  <mark@codesourcery.com>
1102
1103         * config/c_io_stdio.h (streamsize): Make it a typedef for
1104         ptrdiff_t.
1105         (wstreamsize): Likewise.
1106
1107         * config/c_io_stdio.h: Include libio.h.
1108
1109 2000-11-15  Mark P Mitchell  <mark@codesourcery.com>
1110
1111         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Substitute libio_la.
1112         * src/Makefile.am (libstdc___la_LIBADD): Use it.
1113         * aclocal.m4: Regenerated.
1114         * configure: Likewise.
1115         * Makefile.in: Likewise.
1116         * libio/Makefile.in: Likewise.
1117         * libmath/Makefile.in: Likewise.
1118         * libsupc++/Makefile.in: Likewise.
1119         * src/Makfile.in: Likewise.
1120         
1121 2000-11-15  Mark Mitchell  <mark@codesourcery.com>
1122
1123         * mkcheckin.in: Move check for bash version 2 later in the file.
1124
1125         * include/bits/basic_string.h (basic_string::_Rep::_S_max_size):
1126         Make it const.
1127         (basic_string::_Rep::_S_terminal): Likewise.
1128         * include/bits/string.tcc (basic_string::_Rep::_S_max_size):
1129         Likewise.
1130         (basic_string::_Rep::_S_terminal): Likewise.
1131         
1132 2000-11-15  David Billinghurst  <David.Billinghurst@riotinto.com>
1133
1134         * mkcheck.in:  Add function size_command() for irix.
1135
1136 2000-11-14  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1137
1138         * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPOR): Set LIBS back to
1139         initial value.
1140         (GLIBCPP_EXPORT_INCLUDES): Only export TOPLEVEL_INCLUDES if
1141         building a canadian cross. This should fix the remaining java
1142         build issues.
1143         * aclocal.m4: Regenerate.
1144         * configure: Regenerate.
1145         
1146         * include/bits/c++config (__GLIBCPP__): Set release version for 2.91.
1147
1148 2000-11-14  Phil Edwards  <pme@sources.redhat.com>
1149
1150         * mkcheck.in: On a platform where we don't know how to extract
1151         section sizes, just set them to zero.  Use old method of reading
1152         file contents.
1153
1154 2000-11-13  Loren J. Rittle  <ljrittle@acm.org>
1155
1156         * config/c_io_stdio.h: Don't define __c_wfile_type
1157         when _GLIBCPP_USE_WCHAR_T is not defined.
1158
1159 2000-11-13  Phil Edwards  <pme@sources.redhat.com>
1160
1161         * acinclude.m4 (GLIBCPP_CHECK_TARGET):  New macro, replacing
1162         GLIBCPP_CHECK_CPU and GLIBCPP_CHECK_OS, sourcing configure.target.
1163         (GLIBCPP_CONFIGURE):  Call new macro here.
1164         * configure.host:  Cleanup.
1165         * configure.in:  Remove those two macros.
1166         * configure.target:  New file.
1167         * aclocal.m4:  Regenerated.
1168         * configure:  Ditto.
1169         * Makefile.in:  Ditto.
1170         * libio/Makefile.in:  Ditto.
1171         * libmath/Makefile.in:  Ditto.
1172         * libsupc++/Makefile.in:  Ditto.
1173         * src/Makefile.in:  Ditto.
1174
1175         * mkcheck.in:  Use libtool.  Split things out into functions.
1176
1177 2000-11-12  Alexandre Petit-Bianco  <apbianco@cygnus.com>
1178
1179         * Makefile.am (tmp-libstdsc++.INC:): Do not use -I$(top_builddir).
1180         * Makefile.in: Regenerate.
1181
1182 2000-11-12  David Edelsohn  <edelsohn@gnu.org>
1183
1184         * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Add test for
1185         libiconv.a providing wchar_t support functions.
1186         * aclocal.m4: Regenerate.
1187         
1188 2000-11-12  Loren J. Rittle  <ljrittle@acm.org>
1189
1190         * acinclude.m4 (GLIBCPP_ENABLE_ATOMICITY): Handle FreeBSD.
1191         * aclocal.m4, configure: Rebuilt.
1192
1193 2000-11-12  Brent Verner  <brent@rcfile.org>
1194
1195         * include/c_std/bits/wrap_langinfo.h: New file.
1196         * include/c_std/langinfo.h: New file.
1197         * include/bits/codecvt.h (__enc_trants::__enc_traits()): Bring in
1198         CODESET from _C_legacy::CODESET if using shadow headers.
1199         * src/Makefile.am: Add new files.
1200         * src/Makefile.in: Regenerate.
1201         
1202 2000-11-12  Mark Mitchell  <mark@codesourcery.com>
1203
1204         * include/c/bits/std_cmath.h (abs): Change extern "C" declaration
1205         of `abs (double)' to ...
1206         (fabs): this.
1207
1208         * config/os/solaris/solaris2.7/bits/os_defines.h: Define
1209         __EXTENSIONS__.
1210
1211 2000-11-11  Mark P Mitchell  <mark@codesourcery.com>
1212
1213         * include/bits/basic_file.h (__basic_file): Don't use __c_wfile_type
1214         when _GLIBCPP_USE_WCHAR_T is not defined.
1215
1216 2000-11-10  Phil Edwards  <pme@sources.redhat.com>
1217
1218         * include/bits/codecvt.h (__iconv_adaptor):  New adaptor function,
1219           courtesy of Alexandre Oliva, to handle const/non-const signatures.
1220           (codecvt::do_out):  Use.
1221           (codecvt::do_in):  And here.
1222
1223 2000-11-10  Gabriel Dos Reis  <gdr@codesourcery.com>
1224
1225         * include/bits/cpp_type_traits.h: Fix typos.  Adjust formatting.
1226
1227 2000-11-10  Gabriel Dos Reis  <gdr@codesourcery.com>
1228
1229         * include/bits/localefwd.h (_Count_ones<>::_S_halfcount,
1230         _Count_ones<>::_S_count): Turn into enumerators.
1231
1232 2000-11-08  Mark Mitchell  <mark@codesourcery.com>
1233
1234         * include/bits/codecvt.h (codecvt::do_out): Make it const-correct.
1235         (codecvt::do_in): Likewise.
1236
1237 2000-11-08  David Edelsohn  <edelsohn@gnu.org>
1238
1239         * src/locale-inst.cc: Add explicit instantiations of
1240         _M_fill_insert and fill_n<..., unsigned long,...> .
1241
1242 2000-11-06  Gabriel Dos Reis  <gdr@codesourcery.com>
1243
1244         * include/bits/std_complex.h (conj): Undo double removal.
1245
1246 2000-11-06  Alexandre Oliva  <aoliva@redhat.com>
1247
1248         * acinclude.m4 (LIB_AC_PROG_CXX): Remove CXX from the list of
1249         alternatives for CXX_libstdcxx, now that it is useless.
1250         * aclocal.m4, configure: Rebuilt.
1251
1252 2000-11-04  Mark Mitchell  <mark@codesourcery.com>
1253
1254         * acinclude.m4 (LIB_AC_PROG_CXX): Set CXX_libstdcxx from CXX.
1255         * aclocal.m4: Regenerated.
1256         * configure: Likewise.
1257
1258         * acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Fix punctuation in
1259         use of `test'.
1260         * aclocal.m4: Regenerated.
1261         * configure: Likewise.
1262
1263 2000-11-04  Alexandre Oliva  <aoliva@redhat.com>
1264
1265         * acinclude.m4 (CXX): Prevent it from being cached.
1266         * aclocal.m4, configure, */Makefile.in: Rebuilt.
1267
1268 2000-11-03  David Edelsohn <dje@watson.ibm.com>
1269
1270         * acinclude.m4 (GLIBCPP_CHECK_OS): Add AIX target selecting threads
1271           flag based on multilib definition of $CXX.
1272         * mknumeric_limits (LDFLAGS): Add AIX target linking with pthreads
1273           based on multilib definition of $CXX.
1274         * config/os/aix/bits/os_defines.h (_G_USING_THUNKS): Define as 0.
1275
1276 2000-11-03  Phil Edwards  <pme@sources.redhat.com>
1277
1278         * acinclude.m4:  Cleanups.
1279         * aclocal.m4:  Regenerated.
1280         * configure:  Ditto.
1281         * Makefile.in:  Ditto.
1282         * libio/Makefile.in:  Ditto.
1283         * libmath/Makefile.in:  Ditto.
1284         * libsupc++/Makefile.in:  Ditto.
1285         * src/Makefile.in:  Ditto.
1286
1287         * docs/install.html:  Removal of EGCS.
1288         * docs/23_containers/wrappers_h.txt:  Likewise.
1289         * docs/faq/index.html:  Likewise.
1290         * docs/faq/index.txt:  Regenerated.
1291         * docs/thanks.html:  More people.
1292
1293 2000-11-03  David Edelsohn  <edelsohn@gnu.org>
1294
1295         * include/c/bits/std_cwchar.h: Undefine macro that conflicts
1296         with function name defined in this file.
1297
1298 Thu Nov  2 23:19:20 2000  Mark P Mitchell  <mark@codesourcery.com>
1299
1300         * include/c/bits/std_cctype.h: Undefine macros that conflict
1301         with function names defined in this file.
1302         * include/c/bits/std_cstdio.h: Likewise.
1303
1304 2000-11-02  Mark Mitchell  <mark@codesourcery.com>
1305
1306         * acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Fix typo.
1307
1308 Thu Nov  2 10:11:45 2000  Mark P Mitchell  <mark@codesourcery.com>
1309
1310         * acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Add support for IRIX.
1311         * aclocal.m4: Regenerated.
1312         * Makefile.in: Regenerated.
1313         * libio/Makefile.in: Likewise.
1314         * libmath/Makefile.in: Likewise.
1315         * libsupc++/Makefile.in: Likewise.
1316         * src/Makefile.in: Likewise.
1317         * configure: Likewise.
1318         * config/os/irix/bits/ctype_base.h: Revise.
1319         * config/os/irix/bits/ctype_inline.h: Likewise.
1320         * config/os/irix/bits/ctype_noninline.h: Likewise.
1321
1322         * testsuite/22_locale/codecvt_unicode_char.cc: Don't run it
1323         if not _GLIBCPP_USE_WCHAR_T.
1324         * testsuite/22_locale/codecvt_unicode_wchar_t.cc: Likewise.
1325         * testsuite/22_locale/ctor_copy_dtor.cc: Likewise.
1326         * testsuite/22_locale/ctype_wchar_t_members.cc: Likewise.
1327         
1328         * mkcheck.in: Fix echoing of -rpath option.
1329         
1330         * config/os/irix/bits/atomicity.h (_Atomic_word): Make it a
1331         signed type.
1332         (__exchange_aand_add): Adjust accordingly.
1333         (__atomic_add): Likewise.
1334         
1335 2000-11-02  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1336
1337         * src/locale.cc: Match orderings for static members.
1338         * include/bits/fstream.tcc: Fixes for cin.
1339
1340 2000-11-02  Gabriel Dos Reis  <gdr@codesourcery.com>
1341
1342         * include/bits/std_complex.h (complex<>): Remove (cos<>, cosh<>,
1343         exp<>, log<>, log<>, sin, sinh<>) friend declarations.
1344         (cos, cosh, sin, sinh): Define primary templates.
1345
1346         * src/complex.cc (cos<>, cosh<>, sin<>, sinh<>): Comment out
1347         definitions. 
1348
1349 2000-11-01  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1350
1351         * bits/basic_file.h (_M_open_mode): Change signature, move
1352         specializations to..
1353         * config/c_io_libio.cc: ...here.
1354         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Add sdtio option, remove wince.
1355         * aclocal.m4: Regenerate.
1356         * configure: Regenerate.
1357         * config/c_io_stdio.h: New file.
1358         * config/c_io_stdio.cc: New file.
1359         * docs/configopts.html: Modify documentation.
1360         
1361 2000-10-31  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1362
1363         * include/c/bits/std_cwctype.h: Add more undefs.
1364
1365 2000-10-31  Gabriel Dos Reis  <gdr@codesourcery.com>
1366
1367         * include/bits/std_complex.h (norm): Forward declare.
1368         (complex<>): Comment out friend declaration of conj<>.
1369         (conj<>): Comment out specialization.
1370         (exp, log, log10): Define primary templates.
1371
1372         * src/complex.cc (exp<>, log<>, log10<>): Comment out
1373         specializations. 
1374
1375 2000-10-31  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1376
1377         * include/bits/std_complex.h: Remove duplicate definition of conj.
1378         * include/c/bits/std_cwctype.h: Consistent placement of undefs.
1379         
1380 2000-10-31  Gabriel Dos Reis  <gdr@codesourcery.com>
1381
1382         * src/complex.cc (arg, polar): Comment out specializations.
1383
1384         * include/bits/std_complex.h (complex<>): Remove arg<> friend
1385         declaration. 
1386         (arg): Define primary template.
1387         (polar): Likewise.
1388         (conj): Likewise.
1389
1390 2000-10-31  Gabriel Dos Reis  <gdr@codesourcery.com>
1391
1392         * include/c/bits/std_cwctype.h: #undef possible function-like
1393         macro definitions of iswxxx functions, which might be brought in
1394         by <wctype.h>.  Those macro definitions prevent build on some
1395         linux-based systems.
1396         
1397         * include/bits/std_complex.h (complex<>): Comment out friend
1398         declarations of abs<> specializations.
1399         (abs): Define primary template.
1400
1401         * src/complex.cc (abs): Comment out specialization definition.
1402
1403 2000-10-30  Phil Edwards  <pme@sources.redhat.com>
1404
1405         * acinclude.m4 (GLIBCPP_ENABLE_DEBUG):  Raise debugging level from
1406           the default of 2 to 3.
1407         * configure.in:  Fix minor typos.  SUBST the values of enable_shared
1408           and enable_static so that mkcheck will be aware of them.  Put the
1409           test for gconv.h in with all the other header tests.
1410         * aclocal.m4:  Regenerate.
1411         * configure:  Ditto.
1412         * Makefile.in:  Ditto.
1413         * libio/Makefile.in:  Ditto.
1414         * libmath/Makefile.in:  Ditto.
1415         * libsupc++/Makefile.in:  Ditto.
1416         * src/Makefile.in:  Ditto.
1417
1418         * config/os/solaris/solaris2.7/bits/os_defines.h:  Define
1419           _G_USING_THUNKS to 0.
1420
1421 2000-10-30  Benjamin Kosnik  <bkoz@redhat.com>
1422
1423         * src/complex_io.cc : Remove ancient defines.
1424         * config/os/gnu-linux/bits/os_defines.h: Add defines.
1425         * libsupc++/tinfo2.cc: Change to cstddef.
1426
1427         * include/bits/codecvt.h: Add include of c++config.h, so that
1428         __USE_GNU gets defined. (Important for alpha.)
1429
1430         * include/c/bits/std_cwctype.h: Same.
1431         * include/c/bits/std_ctime.h: And here.
1432         * include/c/bits/std_cstdarg.h: Same.
1433         * include/c/bits/std_csignal.h: Same.
1434         * include/c/bits/std_csetjmp.h: Same.
1435         * include/c/bits/std_clocale.h: Same.
1436         * include/c/bits/std_climits.h: Touch.
1437         * include/c/bits/std_cfloat.h: Same.
1438         * include/c/bits/std_cerrno.h: Same.
1439         * include/c/bits/std_cwchar.h: Same.
1440         * include/c/bits/std_cassert.h: Same.
1441         * include/c/bits/std_cctype.h: Same.    
1442         * include/c/bits/std_cstddef.h: And here.
1443         * include/c/bits/std_cstdlib.h: And here.
1444         * include/c/bits/std_cstdio.h: Same.
1445         * include/c/bits/std_cstring.h: Add names to namespace std::.
1446
1447         * include/bits/c++config (_GNU_SOURCE): Move linux-specific macros
1448         from here...
1449         (_ISOC99_SOURCE): And this one....
1450         * config/os/gnu-linux/bits/os_defines.h: ...to here.
1451         
1452         * include/bits/codecvt.h (codecvt<_InternT, _ExternT,
1453         __enc_traits>::do_in): Don't cast to const, this is a bug in glibc
1454         prior to 2.2.
1455         (codecvt<_InternT, _ExternT, __enc_traits>::do_out): Same.
1456         * include/c/bits/std_cwchar.h: Add using declarations for mbstate_t.
1457         
1458 2000-10-30  Steven King  <sxking@uswest.net>
1459
1460         * include/bits/codecvt.h: Add cast.
1461         * include/c_std/stdio.h: Re-add printf using declaration.
1462         * include/c_std/bits/std_cstdio.h: Same
1463         * testsuite/22_locale/codecvt_wchar_t_char.cc: Fixup testsuite.
1464         * testsuite/22_locale/ctor_copy_dtor.cc: Same.
1465         * testsuite/22_locale/facet.cc: Same.
1466         * testsuite/22_locale/global_templates.cc: Same.
1467         * testsuite/22_locale/operators.cc: Same.
1468         * testsuite/22_locale/static_members.cc: Same.
1469         * testsuite/26_numerics/c_math.cc: Same.
1470         * testsuite/26_numerics/complex_inserters_extractors.cc: Same.
1471         * testsuite/27_io/fpos.cc: Same.
1472         * testsuite/27_io/istream_extractor_arith.cc: Same.
1473         * testsuite/27_io/istream_unformatted.cc: Same.
1474         * testsuite/27_io/ostream_inserter_arith.cc: Same.
1475         * testsuite/27_io/streambuf.cc: Same.
1476
1477 2000-10-30  Mark Mitchell  <mark@codesourcery.com>
1478
1479         * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT): Check 
1480         for cabs, cabsf, and cabsl, too.
1481         * aclocal.m4: Regenerated.
1482         * config.h.in: Likewise.
1483         * configure: Likewise.
1484         * libmath/Makefile.am (libmath_la_SOURCES): Remove cabs.c and
1485         cabsf.c.
1486         * libmath/Makefile.in: Regenerated.
1487         * libmath/complex-stub.h (cabs): Don't declare if the system
1488         already provides this function.
1489         (cabsf): Likewise.
1490         (cabsl): Likewise.
1491         * src/complex.cc (abs): Directly use `hypot' since we can't call
1492         cabs on IRIX.
1493
1494 2000-10-30  Joseph S. Myers  <jsm28@cam.ac.uk>
1495
1496         * acinclude.m4: Update URL on egcs.cygnus.com to point to
1497         gcc.gnu.org.
1498         * aclocal.m4, configure: Regenerate.
1499         * src/gen-num-limits.cc, include/bits/c++config,
1500         include/bits/stl_config.h: Remove EGCS references.
1501
1502 2000-10-29  Mark Mitchell  <mark@codesourcery.com>
1503
1504         * mkcheck.in (test_file): Use -rpath, rather than --rpath, when
1505         building shared executables.
1506
1507 2000-10-29   Mark Harig <mharig@landmark.com>
1508
1509         * src/Makefile.am: Change logic for include dir options.
1510         * src/Makefile.in: Regenerate.
1511         * libsupc++/Makefile.am: Ditto.
1512         * libsupc++/Makefile.in: Regenerate.
1513         
1514 2000-10-29  Benjamin Kosnik  <bkoz@redhat.com>
1515
1516         * configure.in: Simplify use of AC_CACHE_SAVE.  Put linked files
1517         in $(top_builddir)/include/bits, not $(top_builddir)/bits, to help
1518         with libgcj build issues and improve consistency with the source
1519         directory's include directory setup.
1520         * configure: Regenerate.
1521         * acinclude.m4: Same here.
1522         * aclocal.m4: Regenerate.
1523         * mknumeric_limits (OUT_H): Also change paths here.
1524         * mkcheck.in (C_DIR): And here.
1525         * mkc++config (OUT_H): And here.
1526         * libmath/Makefile.am (INCLUDES): And here.
1527         * src/Makefile.am (INCLUDES): Change to $(top_builddir)/include.
1528         * libio/Makefile.am: Ditto.
1529         * libsupc++/Makefile.am (INCLUDES): Ditto.
1530
1531 2000-10-29  Mark Mitchell  <mark@codesourcery.com>
1532
1533         * config/c_io_libio.cc (basic_file<char>::__basic_file): 
1534         Don't pass a NULL _IO_wide_data to _IO_no_init when
1535         _GLIBCPP_USE_WCHAR_T is not defined.
1536         * config/c_io_libio.h (_IO_codecvt): Don't declare when 
1537         _GLIBCPP_USE_WCHAR_T is not defined.
1538         * config/c_io_libio_codecvt.c: Don't compile it 
1539         when _GLIBCPP_USE_WCHAR_T is not defined.
1540         * include/bits/codecvt.h (codecvt<_InternT, _ExternT, __enc_traits):
1541         Don't define this specialization when _GLIBCPP_USE_WCHAR_T 
1542         is not defined.
1543         * include/bits/locale_facets.h (<bits/std_cwctype.h>): Don't
1544         include it when _GLIBCPP_USE_WCHAR_T is not defined. 
1545         * src/codecvt.cc (__enc_traits::_S_max_size): Don't define
1546         when _GLIBCPP_USE_WCHAR_T is not defined.
1547         * src/localename.cc (locale::_Impl::_M_construct_collate):
1548         Don't call wide-character functions when _GLIBCPP_USE_WCHAR_T is 
1549         not defined.
1550         (locale::_Impl::_M_construct_ctype): Likewise.
1551         (locale::_Impl::_M_construct_monetary): Likewise.
1552         (locale::_Impl::_M_construct_numeric): Likewise.
1553         (locale::_Impl::_M_construct_time): Likewise.
1554         (locale::_Impl::_M_construct_messages): Likewise.
1555         
1556         * acinclude.m4 (GLIBCPP_ENABLE_ATOMICITY): Handle IRIX.
1557         * aclocal.m4: Regenerated.
1558         * configure: Likewise.
1559         * config/os/irix/bits/atomicity.h: New file.
1560         * config/os/irix/bits/os_defines.h (_POSIX_SOURCE): Undefine.
1561         (__off_t): Define.
1562         (__off64_t): Likewise.
1563         (__ssize_t): Likewise.
1564         (_G_USING_THUNKS): Define to zero.
1565         
1566 2000-10-28  Mark Mitchell  <mark@codesourcery.com>
1567
1568         * src/string-inst.cc (basic_string<C>::npos): Explicitly
1569         instantiate it.
1570
1571 2000-10-26  Benjamin Kosnik  <bkoz@redhat.com>
1572
1573         * include/c/bits/std_cmath.h: Fix double declarations in namespace std.
1574
1575         Clean up naming, consistency in "C" library autoconf testing.
1576         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): For consistency, change to
1577         GLIBCPP_CHECK_CTYPE_SUPPORT.
1578         (GLIBCPP_CHECK_STDLIB_SUPPORT): Add.
1579         * aclocal.m4: Regenerate.
1580         * configure.in: And here. 
1581         Add call to GLIBCPP_CHECK_STDLIB_SUPPORT.
1582         * configure: Regenerate.
1583         
1584 2000-10-26  David Edelsohn  <edelsohn@gnu.org>
1585
1586         * acinclude.m4 (GLIBCPP_CHECK_STDLIB_DECL_AND_LINKAGE_2): New macro.
1587         (GLIBCPP_CHECK_MATH_SUPPORT): Use it to test for strtold.
1588         
1589 2000-10-26  Phil Edwards  <pme@sources.redhat.com>  
1590             David Edelsohn  <dje@watson.ibm.com>
1591
1592         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Comment out
1593         --gc-sections stuff entirely to avoid misleading people.
1594         (GLIBCPP_ENABLE_CSTDIO): Merge need_libio and need_xtra_libio.
1595         * libio/Makefile.am (LIBIO_SRCS,LIBIO_WSRCS,LIBIO_XTRA_SRCS):
1596         Rearrange and merge.
1597         * libio/libio.h: Simplify, make fewer assumptions.  Define those
1598         macros which must be defined.
1599         * config/os/solaris/solaris2.7/bits/os_defines.h: Simplify as a
1600         result.
1601
1602 2000-10-26  Mark Mitchell  <mark@codesourcery.com>
1603
1604         * include/backward/streambuf.h: New file.
1605
1606 2000-10-26  David Edelsohn  <dje@watson.ibm.com> 
1607         
1608         * config/os/aix/bits/ctype_inline.h (is): Use __OBJ_DATA directly.
1609         * config/os/aix/bits/ctype_noninline.h (do_tolower): Fix typo.
1610         * config/os/aix/bits/os_defines.h: Add AIX defines.
1611
1612 2000-10-26  Benjamin Kosnik  <bkoz@redhat.com>
1613
1614         * acinclude.m4 (GLIBCPP_ENABLE_LONG_DOUBLE): Remove.
1615         * aclocal.m4: Regenerate.
1616         * configure.in: Remove GLIBCPP_ENABLE_LONG_DOUBLE.
1617         * configure: Regenerate.
1618         * docs/configopts.html: Remove.
1619         * src/complexl.cc: Revert.
1620         * config.h.in: Remove.
1621         * include/c_std/bits/std_cmath.h: Remove guards based on
1622         _GLIBCPP_USE_LONG_DOUBLE.
1623         * include/c/bits/std_cmath.h: Same. Format. Match c_std behavior
1624         with respect to long double signatures.
1625
1626         * config/os/aix/bits/ctype_noninline.h (ctype): Remove throw
1627         specification.
1628         * config/os/newlib/bits/ctype_noninline.h (ctype): And here.
1629         * config/os/solaris/solaris2.6/bits/ctype_noninline.h (ctype): Same.
1630         * config/os/solaris/solaris2.5/bits/ctype_noninline.h (ctype): Same.
1631         * config/os/generic/bits/ctype_noninline.h (ctype): Same.
1632         * config/os/bsd/bits/ctype_noninline.h (ctype): Same.
1633
1634 2000-10-26  Gabriel Dos Reis  <gdr@codesourcery.com>
1635
1636         * include/bits/std_valarray.h (valarray::valarray): Fix thinko.
1637         Use __valarray_copy_construct only where appropriate.
1638
1639 2000-10-25  Mark Mitchell  <mark@codesourcery.com>
1640
1641         * Makefile.in (check): Don't make mkcheck executable.
1642         (check-install): Likewise.
1643         * configure.in (AC_OUTPUT): Make mkcheck executable.
1644         * mkcheck.in (top_srcdir): New variable.
1645         (INC_PATH): Set the path to the backward and ext directories
1646         correctly.
1647         
1648 2000-10-25  Phil Edwards  <pme@sources.redhat.com>
1649
1650         * configure.in:  Check for gconv.h.
1651         * libio/wfileops.c:  Wrap gconv.h in HAVE_GCONV_H.
1652
1653         * config/c_io_libio_codecvt.c:  Change __mbstate_t to __c_mbstate_t.
1654         * libio/_G_config.h:  And here.
1655         * libio/iofwide.c:  And here.
1656         * libio/libio.h:  And here.
1657
1658         * config/os/solaris/solaris2.7/bits/ctype_noninline.h:  Remove
1659           exception specification to match declaration.
1660         * include/bits/locale_facets.tcc:  Include bits/std_clocale.h.
1661
1662 2000-10-24   Mark Harig <mharig@landmark.com>
1663
1664         * docs/configopts.html: Added documentation for the
1665         "--enable-version-specific-runtime-libs" and
1666         "--with-gxx-include-dir" configuration switches.
1667
1668 2000-10-24  Benjamin Kosnik  <bkoz@redhat.com>
1669
1670         * include/bits/stl_pair.h (make_pair): Add LWG solution.
1671
1672         * testsuite/21_strings/compare.cc (test01): Inject namespace std
1673         into the mix.
1674
1675         * mkcheck.in (MAX_MEM_USAGE): Bump up to 3072. Strangely enough,
1676         this works. 
1677
1678 2000-10-24  Levente Farkas  <lfarkas@mindmaker.hu>
1679
1680         * include/bits/std_bitset.h (_M_do_find_next): Fix typo.
1681
1682 2000-10-24  Phil Edwards  <pme@sources.redhat.com>
1683
1684         * acconfig.h:  List _GLIBCPP_USE_THREADS.
1685         * acinclude.m4:  General formatting cleanup (tabs/spaces), typo
1686           correction, etc.  Add comments about following *real* changes
1687           where they are used.
1688           (GLIBCPP_ENABLE_C_MBCHAR):  New test...
1689           (GLIBCPP_CHECK_WCHAR_T_SUPPORT):  ...results used here.
1690           (GLIBCPP_ENABLE_CSTDIO):  Define need_wlibio iff wide characters
1691           are requested.
1692           (GLIBCPP_ENABLE_THREADS):  If threads are used, define new
1693           macro _GLIBCPP_USE_THREADS in c++config.h.
1694           (GLIBCPP_ENABLE_SHADOW):  For C_INCLUDE_DIR, change () to {} as
1695           this is used in both makefiles and shell scripts (mkcheck).
1696         * configure.in:  Call GLIBCPP_ENABLE_C_MBCHAR.
1697
1698         * libio/_G_config.h:  Wrap _IO_MTSAFE_IO in _GLIBCPP_USE_THREADS.
1699         * config/c_io_libio.h:  In nonthreaded case, typedef __c_lock to
1700           something harmless, like int.
1701
1702         * config/os/aix/bits/os_defines.h:  Guard with _GLIBCPP_OS_DEFINES,
1703           add comment/instructions.
1704         * config/os/bsd/bits/os_defines.h:  Ditto.
1705         * config/os/generic/bits/os_defines.h:  Ditto.
1706         * config/os/gnu-linux/bits/os_defines.h:  Ditto.
1707         * config/os/irix/bits/os_defines.h:  Ditto.
1708         * config/os/newlib/bits/os_defines.h:  Ditto.
1709         * config/os/solaris/solaris2.5/bits/os_defines.h:  Ditto.
1710         * config/os/solaris/solaris2.6/bits/os_defines.h:  Ditto.
1711
1712         * mkcheck.in:  Limit the available heap size for testsuite
1713           binaries, initially at 2MB.
1714
1715 2000-10-23  Benjamin Kosnik  <bkoz@redhat.com>
1716
1717         * testsuite/21_strings/compare.cc (test01): Add using declarations.
1718
1719         * include/c_std/bits/std_cerrno.h: And here.
1720         * include/c_std/bits/std_cassert.h: Tweaks.
1721
1722         * mkcheck.in: Simplify.
1723         
1724         * acinclude.m4 (GLIBCPP_ENABLE_LONG_DOUBLE): Simplify.
1725         (GLIBCPP_ENABLE_LONG_LONG): Same.
1726         * aclocal.m4: Regenerate.
1727
1728         * src/Makefile.am (c_shadow_headers): Add features.h,
1729         bits/wrap_features.h.
1730         * src/Makefile.in: Regenerate.
1731         * include/c_std/features.h: New file.
1732         * include/c_std/bits/wrap_features.h (_CPP_WRAP_FEATURES_H): New
1733         file. Need to have c++config.h included before this file so
1734         _ISOC99_SOURCE around.
1735
1736         * include/c_std/sys/cdefs.h: Hack.
1737         * include/c_std/stdlib.h: Same, use c++config.h.
1738         * include/c_std/bits/std_cstdlib.h: Use _GLIBCPP_HAVE_STRTOLD.
1739
1740         * include/c_std/bits/std_cassert.h: Fix.
1741         * include/c_std/bits/std_cerrno.h: Make consistent.
1742
1743         * include/c_std/bits/std_csetjmp.h (setjmp): Unscope global
1744         declaration from ::_C_legacy to _C_legacy.
1745
1746         * include/c_std/bits/std_cstdio.h: same with printf.
1747         * include/c_std/stdio.h: And here.
1748
1749         * include/c_std/bits/std_cstdlib.h: abort, exit comment.
1750         * include/c_std/stdlib.h: Same here.
1751         
1752 2000-10-23  Benjamin Kosnik  <bkoz@redhat.com>
1753
1754         * testsuite/21_strings/compare.cc (test01): Add using declarations.
1755
1756         * include/c_std/bits/std_cerrno.h: And here.
1757         * include/c_std/bits/std_cassert.h: Tweaks.
1758
1759         * mkcheck.in: Simplify.
1760         
1761         * acinclude.m4 (GLIBCPP_ENABLE_LONG_DOUBLE): Simplify.
1762         (GLIBCPP_ENABLE_LONG_LONG): Same.
1763         * aclocal.m4: Regenerate.
1764
1765         * src/Makefile.am (c_shadow_headers): Add features.h,
1766         bits/wrap_features.h.
1767         * src/Makefile.in: Regenerate.
1768         * include/c_std/features.h: New file.
1769         * include/c_std/bits/wrap_features.h (_CPP_WRAP_FEATURES_H): New
1770         file. Need to have c++config.h included before this file so
1771         _ISOC99_SOURCE around.
1772
1773         * include/c_std/sys/cdefs.h: Hack.
1774         * include/c_std/stdlib.h: Same, use c++config.h.
1775         * include/c_std/bits/std_cstdlib.h: Use _GLIBCPP_HAVE_STRTOLD.
1776
1777         * include/c_std/bits/std_cassert.h: Fix.
1778         * include/c_std/bits/std_cerrno.h: Make consistent.
1779
1780         * include/c_std/bits/std_csetjmp.h (setjmp): Unscope global
1781         declaration from ::_C_legacy to _C_legacy.
1782
1783         * include/c_std/bits/std_cstdio.h: same with printf.
1784         * include/c_std/stdio.h: And here.
1785
1786         * include/c_std/bits/std_cstdlib.h: abort, exit comment.
1787         * include/c_std/stdlib.h: Same here.
1788         
1789 2000-10-21  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1790
1791         * acinclude.m4 (GLIBCPP_ENABLE_LONG_DOUBLE): New macro.
1792         * aclocal.m4: Regenerate.
1793         * configure.in: Use it.
1794         * configure: Regenerate.
1795         * src/complexl.cc: Fixup.
1796         * include/c_std/bits/std_cmath.h: Fixup.
1797         * include/c/bits/std_cmath.h: Fixup.
1798         * docs/configopts.html: Add docs.
1799         
1800         * docs/links.html: Add links to defects list, standards FAQ.
1801
1802         * testsuite/21_strings/ctor_copy_dtor.cc (test01): Disable tests
1803         with string creation that allocate huge ammounts of memory.
1804
1805         * include/c/bits/std_cstddef.h: Put size_t, ptrdiff_t in
1806         namepace std.
1807
1808 2000-10-21  Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
1809
1810         * libsupc++/exception.cc: Use namespace std.
1811         * libsupc++/new: DITTO.
1812         * libsupc++/new_op.cc: DITTO.
1813         * libsupc++/new_opnt.cc: DITTO.
1814         * libsupc++/new_opv.cc: DITTO.
1815         * libsupc++/new_opvnt.cc: DITTO.
1816         * libsupc++/tinfo.cc: DITTO.
1817         * libsupc++/tinfo.h: DITTO.
1818         * libsupc++/vec.cc: DITTO.
1819         * libsupc++/Makefile.am: Blank lines removal.
1820
1821 2000-10-21  Joseph S. Myers  <jsm28@cam.ac.uk>
1822
1823         * docs/configopts.html, docs/install.html, docs/17_intro/BADNAMES,
1824         docs/17_intro/howto.html, docs/18_support/howto.html,
1825         docs/19_diagnostics/howto.html, docs/20_util/howto.html,
1826         docs/21_strings/howto.html, docs/22_locale/howto.html,
1827         docs/23_containers/howto.html, docs/24_iterators/howto.html,
1828         docs/25_algorithms/howto.html, docs/26_numerics/howto.html,
1829         docs/27_io/howto.html, docs/ext/howto.html, docs/faq/index.html:
1830         Remove many EGCS references; use current absolute URLs on
1831         gcc.gnu.org or sources.redhat.com for messages in list archives.
1832         * docs/faq/index.txt: Regenerate.
1833
1834 2000-10-19  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1835
1836         * testsuite/22_locale/codecvt_unicode_char.cc (test01): Adjust
1837         creation of state_type for unicode_codecvt to take into account
1838         the byte order markings. Add distinct tests for UCS-2BE and UCS-2LE.
1839         * testsuite/22_locale/codecvt_unicode_wchar_t.cc (test01): Same.
1840         * include/bits/codecvt.h (__enc_traits): Add support for encodings
1841         that need a byte order marker. Needed for correct unicode support.
1842
1843         * src/locale.cc: Remove explicit qualification std::.
1844         (locale::locale(const char* __name)): Revert, as named locale
1845         support not finished.
1846         * src/localename.cc (locale::_Impl:: _Impl(size_t __numfacets,
1847         size_t __refs, bool __has_name = false, string __name): Move
1848         default argument...
1849         * include/bits/localefwd.h: Here.
1850         
1851 2000-10-18  Chip Salzenberg  <chip@valinux.com>
1852
1853         * libio/libio.h (_IO_USER_LOCK): Define.
1854
1855 2000-10-18  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1856
1857         * libsupc++/Makefile.am (exception): Change exception.cc to
1858         exception_support.cc.
1859         (CXXLINK): Remove bogus --tag CC.
1860         * libsupc++/Makefile.in: Regenerate.
1861         * libsupc++/exception.cc: Move to...
1862         * libsupc++/exception_support.cc: ...here.
1863
1864         * src/Makefile.am: Remove bogus --tag CC.
1865         * src/Makefile.in: Regenerate.
1866         
1867         * include/bits/locale_facets.tcc (use_facet): Simplify.
1868         * include/bits/locale_facets.h (use_facet<ctype<char> >): Correct
1869         use_facet declaration. Replace 'const ctype<T>' with ctype<T>.
1870         (use_facet<ctype<wchar_t> >): Same.
1871         * src/locale-inst.cc: Remove explicit instantiation.
1872         * src/locale.cc: Correct signature here too.
1873         (_Bad_use_facet::what()): Correct error string.
1874         * include/bits/localefwd.h: Correct comment.
1875
1876         * mkcheck.in (C_DIR): Change libsupc++/include to libsupc++.
1877
1878 2000-10-17  Martin Buchholz <martin@xemacs.org>
1879
1880         * testsuite/27_io/istream_seeks.cc: Fix spelling typo.
1881         * testsuite/27_io/ostream_seeks.cc: Similarly.
1882
1883 2000-10-17  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1884
1885         via Alexandre Oliva  <aoliva@redhat.com>
1886         * libsupc++/Makefile.am: Add --tag CXX, --tag CC, comments.
1887         * libsupc++/Makefile.in: Regenerate.
1888         * src/Makefile.am: Duplicate code.
1889         * src/Makefile.in: Regenerate.
1890         
1891         * acinclude.m4 (GLIBCPP_ENABLE_RELIBGCC): Take this out.
1892         * aclocal.m4: Regenerate.
1893         * configure.in: And here.
1894         * configure: Regenerate.
1895
1896         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Disable
1897         test for SECTION_LDFLAGS.
1898
1899 2000-10-16  Benjamin Kosnik  <bkoz@gnu.org>
1900
1901         Shadow headers would work if libsupc++ was strict about namespaces.
1902         This only possible if g++ maps std::size_t -> size_t. (Hint hint.)
1903         * include/c_std/assert.h: Add guards.
1904         * include/c_std/bits/std_climits.h: Correct typo.
1905         * include/c_std/ctype.h: Remove #error.
1906
1907         * libio/libioP.h: Break up extern "C" bits around includes.
1908         * libio/libio.h: Only include C headers, or else _C_legacy namespaces
1909         will be nested.
1910         * libio/libioP.h: Same here.
1911
1912 2000-10-15 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
1913
1914         * include/c_std/unistd.h: Define some types only when defined in
1915         the original unistd.h.
1916         * include/c_std/bits/std_cstddef.h: Explicitly ask for the
1917         definition of size_t, ptrdiff_t and NULL.
1918         * include/c_std/bits/wrap_unistd.h: Blank lines removal.
1919
1920 2000-10-15  Phil Edwards  <pme@sources.redhat.com>
1921
1922         * docs/configopts.html:  Remove libgcc-rebuild; HTML formatting.
1923
1924 2000-10-13  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1925             Mark Harig  <markh@landmark.com>
1926
1927         * src/Makefile.am (toolexeclibdir): Add support fo
1928         VERSION_SPECIFIC_LIBS and --with-gxx-include-dir.
1929         * src/Makefile.in: Regenerate.
1930         * libsupc++/Makefile.am: Same.
1931         (glibcppinstalldir): Adjust.
1932         * libsupc++/Makefile.in: Regenerate.
1933         * Makefile.am: Remove gxx_include_dir. Remove INCLUDE. 
1934         * Makefile.in: Regenerate.
1935         * docs/configopts.html: Add descriptions of flags.
1936         
1937 2000-10-11  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1938
1939         * libsupc++/Makefile.am: Use it.
1940         * libio/Makefile.am: Use it.
1941         * libmath/Makefile.am: Use it.
1942         * src/Makefile.am: Use it.
1943         * Makefile.am (AM_MAKEFLAGS): Remove includes.
1944
1945         * acinclude.m4 (GLIBCPP_EXPORT_INCLUES): Move include macros here.
1946         (GLIBCPP_EXPORT_FLAGS): Move CXX flag setting here.
1947         * configure.in: Use it.
1948
1949         * mkcheck.in (SRC_DIR): Use C_INCLUDE_DIR.
1950
1951         * src/Makefile.am (CXXCOMPILE): Remove.
1952         * src/Makefile.in: Regenerate.
1953         * libsupc++/Makefile.am (CXXCOMPILE): Same here.
1954         * libsupc++/Makefile.in: Regenerate.
1955
1956         * include/c_std/*: Merge with shadow.
1957         * include/c_std/bits/*: Same.
1958
1959         * shadow: Remove directory.
1960         * shadow/*: De-populate.
1961         
1962 2000-10-11  Phil Edwards  <pme@sources.redhat.com>
1963
1964         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES):  Comment out
1965           exception-throwing code for linker test.
1966         * aclocal.m4:  Regenerate.
1967         * configure:  Regenerate.
1968
1969 2000-10-10  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1970
1971         * Makefile.am (LIBSUPCXX_INCLUDES): Adjust.
1972         * libsupc++/include: Remove
1973         * libsupc++/include/*: Move to ...
1974         * libsupc++: Here.
1975         * libsupc++/Makefile.am (glibcppinstall_HEADERS): Install headers.
1976         (glibcppinstalldir): New.
1977         
1978         * src/Makefile.am (c_base_headers): New.
1979         (c_shadow_headers): New
1980         (c_headers): New.
1981         (myinstallheaders): Correct install issues.
1982         * src/Makefile.in: Regenerate.
1983         
1984         * Makefile.am (CSHADOW_INCLUDES): Simplify.
1985         * Makefile.in: Regenerate.
1986         * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Add c_include_dir.
1987         * aclocal.m4: Regenerate.
1988         * mkcheck.in (SRC_DIR): Use it.
1989         
1990         * include/bits/std_stdexcept.h: And here.
1991         * include/bits/std_ios.h: Change std_exception.h to exception.
1992         * src/locale.cc: And here.
1993         * src/locale-inst.cc: And here.
1994         
1995         * include/bits/valarray_array.h: And here.
1996         * include/bits/stl_alloc.h: And here.
1997         * include/bits/stl_algobase.h: And here.
1998         * include/bits/pthread_allocimpl.h: And here.
1999         * include/bits/stl_construct.h: Change to std_new.h to new.
2000
2001         * include/bits/locale_facets.h: Change std_typeinfo.h to typeinfo.
2002
2003         * src/Makefile.am (INCLUDES): Add LIBSUPCXX_INCLUDES.
2004         (headers): Remove duplicated headers.
2005         (std_headers): And here.
2006         * src/Makefile.in: Regenerate.
2007         * libsupc++/Makefile.am (LIBSUPCXX_INCLUDES): Remove.
2008         * libsupc++/Makefile.in: Regenerate.
2009         * Makefile.am (LIBSUPCXX_INCLUDES): Add here.
2010         (AM_MAKEFLAGS): And here.
2011         * Makefile.in: Regenerate.
2012         * include/bits/std_typeinfo.h: Remove.
2013         * include/bits/std_new.h: Remove
2014         * include/bits/std_exception.h: Remove.
2015         * std/new: Remove.
2016         * std/typeinfo: Remove.
2017         * std/exception: Remove.
2018
2019         * libio/_G_config.h (__need_ptrdiff_t): Add.
2020         
2021         * libsupc++/include/new: Change stddef.h to cstddef.
2022         * libsupc++/tinfo.h: Change limits.h to climits.
2023         * libsupc++/pure.cc: Comment out _GNU_LIBRARY_ bits, as this
2024         renders the file uncompilable. Add copyright.
2025
2026         * include/c_std/bits/std_cstddef.h: Don't bring wchar_t into std
2027         namespace, as it is a fundamental type.
2028
2029 2000-10-09  Richard Henderson  <rth@cygnus.com>
2030
2031         * libsupc++/pure.cc: New file.
2032         * libsupc++/Makefile.am (INCLUDES): Add top_builddir.
2033         (sources): Add pure.cc.
2034         * libsupc++/Makefile.in: Regenerate.
2035
2036 2000-10-09  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2037
2038         * docs/configopts.html: Edit.
2039
2040         * libio/Makefile.am (INCLUDES): Remove duplicates, simplify.
2041         * libio/Makefile.in: Regenerate.
2042         * libmath/Makefile.am (INCLUDES): Remove duplicates, simplify.
2043         * libmath/Makefile.in: Regenerate.
2044         * libsupc++/Makefile.am (INCLUDES): Remove duplicate.
2045         * libsupc++/Makefile.in: Regenerate.
2046
2047         * Makefile.am (AM_MAKEFLAGS): Add GLIBCPP_INCLUDES,
2048         TOPLEVEL_INCLUDES, LIBMATH_INCLUDES, LIBIO_INCLUDES,
2049         CSHADOW_INCLUDES up here.
2050         * Makefile.in: Regenerate.
2051         * src/Makefile.am (CSHADOW_INCLUDES): Add include/c_std, include/c
2052         for shadow headers.
2053         (myinstallheaders): Change glibcpp_includedir to GLIBCPP_INCLUDES.
2054         Move GLIBCPP_INCLUDES, TOPLEVEL_INCLUDES, LIBMATH_INCLUDES,
2055         LIBIO_INCLUDES, CSHADOW_INCLUDES up Makefile hierarchy.
2056         * src/Makefile.in: Regenerate.
2057         
2058         * include/c: New directory.
2059         * include/c/bits/(std_cassert.h, std_cctype.h, std_cerrno.h,
2060         std_cfloat.h, std_climits.h, std_clocale.h, std_cmath.h,
2061         std_csetjmp.h, std_csignal.h, std_cstdarg.h, std_cstddef.h,
2062         std_cstdio.h, std_cstdlib.h, std_cstring.h, std_ctime.h,
2063         std_cwchar.h, std_cwctype.h): Add, moving from...
2064         * include/bits: ...here.
2065         * include/c_std: New directory.
2066         * include/c_std/bits/*: Populate from...
2067         * shadow: ...here. Remove directory.
2068         
2069 2000-10-08   Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2070
2071         * libsupc++/Makefile.am (INCLUDES): Add toplevel include directory.
2072         (INCLUDES): Add glibcpp_includedir.
2073         * libsupc++/Makefile.in: Regenerate.
2074
2075         * acinclude.m4 (GLIBCPP_CHECK_OS): Link to os_defines.h.
2076         * aclocal.m4: Regenerate.
2077         * config/os/*/bits/os_defintes: Adjust copyright dates.
2078         
2079 2000-10-08  Phil Edwards  <pme@sources.redhat.com>
2080
2081         * include/bits/c++config:  Include <bits/os_defines.h>
2082         * config/os/aix/bits/os_defines.h:  New file.
2083         * config/os/bsd/bits/os_defines.h:  Ditto.
2084         * config/os/generic/bits/os_defines.h:  Ditto.
2085         * config/os/gnu-linux/bits/os_defines.h:  Ditto.
2086         * config/os/irix/bits/os_defines.h:  Ditto.
2087         * config/os/newlib/bits/os_defines.h:  Ditto.
2088         * config/os/solaris/solaris2.5/bits/os_defines.h:  Ditto.
2089         * config/os/solaris/solaris2.6/bits/os_defines.h:  Ditto.
2090         * config/os/solaris/solaris2.7/bits/os_defines.h:  Ditto.
2091
2092 2000-10-07  David Edelsohn  <dje@watson.ibm.com> 
2093         
2094         * config/os/aix/bits/atomicity.h: New file.
2095
2096 2000-10-07  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2097         
2098         * acinclude.m4: Remove CPU_FLAGS
2099         * libio/Makefile.am: Here too.
2100         * Makefile.am: Here too.
2101         
2102         * src/Makefile.am (CONFIG_INCLUDES): Remove.
2103         (INCLUDES): Remove CONFIG_INCLUDES.
2104         (cpu_headers): Remove.
2105         (myinstallheaders): Remove cpu_headers.
2106         (generated_headers): Rename to build_headers.
2107         (build_headers): Add atomicity.h, ctype_base.h,
2108         ctype_specializations.h.
2109         
2110         * config/os: New directory.
2111         * config/aix: Move to...
2112         * config/bsd: Move to...
2113         * config/generic: Move to...
2114         * config/gnu-linux: Move to...
2115         * config/irix: Move to...
2116         * config/newlib: Move to...
2117         * config/solaris: Move to...
2118         * config/os/*: Here.
2119
2120 2000-10-07  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2121
2122         * acinclude.m4: Remove CPU_FLAGS
2123         * libio/Makefile.am: Here too.
2124         * Makefile.am: Here too.
2125         
2126         * src/Makefile.am (CONFIG_INCLUDES): Remove.
2127         (INCLUDES): Remove CONFIG_INCLUDES.
2128         (cpu_headers): Remove.
2129         (myinstallheaders): Remove cpu_headers.
2130         (generated_headers): Rename to build_headers.
2131         (build_headers): Add atomicity.h, ctype_base.h,
2132         ctype_specializations.h.
2133
2134         * config/os: New directory.
2135         * config/aix: Move to...
2136         * config/bsd: Move to...
2137         * config/generic: Move to...
2138         * config/gnu-linux: Move to...
2139         * config/irix: Move to...
2140         * config/newlib: Move to...
2141         * config/solaris: Move to...
2142         * config/os/*: Here.
2143         
2144 2000-10-06  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2145
2146         * src/Makefile.am: Remove OPTIMIZE_CXXFLAGS, WARN_CXXFLAGS,
2147         CONFIG_CXXFLAGS from here, and move to...
2148         * src/Makefile.in: Regenerate.
2149         * Makefile.am: ... here. Clean.
2150         (OPTIMIZE_CXXFLAGS): Move up Makefile hierarchy to here.
2151         (WARN_CXXFLAGS): Same.
2152         (CONFIG_CXXFLAGS): Same.
2153         * Makefile.in: Regenerate.
2154         * libsupc++/Makefile.am: Use top-level OPTIMIZE_CXXFLAGS,
2155         WARN_CXXFLAGS, CONFIG_CXXFLAGS as part of local AM_CXXFLAGS.
2156         * libsupc++/Makefile.in: Regenerate.
2157                 
2158         Change math to libmath.
2159         * math: Move to libmath, delete.
2160         * libmath: New directory.
2161         * libmath/*: Populate.
2162         * src/Makefile.am (LIBMATH_INCLUDES): Change to libmath.
2163         (libstdc___la_LIBADD): Same.
2164         * src/Makefile.in: Regenerate.
2165         * configure.in: Add AC_OUTPUT for libmath/Makefile.
2166         * configure: Regenerate.
2167         * Makefile.am (SUBDIRS): Add libmath.
2168         * Makefile.in: Regenerate.
2169         * README (file): Change name.
2170         
2171 2000-10-06  Benjamin Kosnik  <bkoz@cygnus.com>
2172             Richard Henderson  <rth@cygnus.com>
2173             Alexandre Oliva  <aoliva@redhat.com>
2174         
2175         * libsupc++: New directory.
2176         * libsupc++/*: Populate.
2177         * libsupc++/Makefile.am (INCLUDES): Add -I../../gcc for
2178         eh-common.h, gansidecl.h.
2179         * configure.in: Add in libsupc++/Makefile to AC_OUTPUT.
2180         * configure: Regenerate.
2181         * Makefile.am (SUBDIRS): Add libsupc++.
2182         * Makefile.in: Regenerate.
2183         * src/Makefile.am (libstdc___la_LIBADD): Add in libsupc++.la
2184         * src/Makefile.in: Regenerate.
2185         * libio/Makefile.am: Remove extraneous, confusing bits.
2186         * libio/Makefile.in: Regenerate.
2187         
2188 2000-10-05  Brent Verner  <brent@rcfile.org>
2189
2190         * bits/istream.tcc [basic_istream::get(basic_streambuf&)]: Removed
2191         test for _M_gcount < in_avail(), as in_avail() only reports info
2192         for current buffer, causing method to return at end of buffer.
2193         * testsuite/27_io/istream_unformatted.cc [test07()]: New test.
2194         * testsuite/27_io/istream_unformatted-3.txt: New file.
2195         * testsuite/27_io/istream_unformatted-3.tst: New file.
2196
2197 2000-10-05  Benjamin Kosnik  <bkoz@fillmore.constant.com>
2198
2199         * README (file): Adjust directory structures.
2200         * mkcheck.in (INC_PATH): Adjust for header changes.
2201
2202 2000-10-05  Phil Edwards  <pme@sources.redhat.com>
2203
2204         * acinclude.m4 (GLIBCPP_CHECK_CTYPE):  Tweaks to message texts
2205           for public relations purposes.
2206         * aclocal.m4:  Regenerated.
2207         * configure:  Regenerated.
2208
2209         * docs/ext/howto.html:  Additional explanation about hashing.
2210
2211 2000-10-05  Benjamin Kosnik  <bkoz@cygnus.com>
2212
2213         * include: New directory.
2214         * include/backward: New directory.
2215         * include/bits: New directory.
2216         * include/ext: New directory.
2217         * include/std: New directory.
2218         * include/*/*: Populate.
2219
2220         * backwards: Move to include/backwards, delete.
2221         * bits: Move to include/bits, delete.
2222         * ext: Move to include/ext, delete.
2223         * std: Move to include/std, delete.
2224         
2225         * src/complex.cc: Adjust include of mathconf.
2226
2227         * mkc++config (BASE_H): Add include.
2228
2229         * src/Makefile.am: Support for topleve sources include directory.
2230         (INCLUDES): Add LIBMATH_INCLUDE.
2231         * src/Makefile.in: Regenerate.
2232         * math/Makefile.am (INCLUDES): Append /include.
2233         * math/Makefile.in: Regenerate.
2234         * libio/Makefile.am (INCLUDES): Add glibcpp_includedir.
2235         * libio/Makefile.in: Regenerate.
2236         
2237 2000-10-04  Benjamin Kosnik  <bkoz@gnu.org>
2238
2239         * libio/_G_config.h : Re-guard the __mbstate_t declaration.
2240
2241 2000-10-03  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2242
2243         * docs/22_locale/howto.html: Add link to proto-documentation on
2244         locales.
2245         * docs/documentation.html: Rename links for clarity.
2246
2247         * src/Makefile.am (headers): Remove unistd.h, wrap_unistd.h. Add
2248         fcntl.h, iolibio.h, libioP.h, pthread.h, iconv.h. 
2249         * src/Makefile.in: Regenerate.
2250         
2251 2000-10-02  Steven King  <sxking@uswest.net>
2252
2253         * mkcshadow: Fixed script to output proper include guard.
2254         * bits/char_traits.h: Cleaned up types in char_traits<char> functions.
2255         * libio/_G_config.h: Hacked to make work with shadow heraders.
2256         * shadow/*: Hacked to make shadow headers work. 
2257
2258 2000-10-02  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2259
2260         Self-compile with shadow headers.
2261         * acconfig.h (_GLIBCPP_USE_SHADOW_HEADERS): Define. Eventually,
2262         like _GLIBCPP_USE_NAMESPACES before it, this macro will die when
2263         it becomes the default way the library is built.
2264         * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): New macro.
2265         * config/gnu-linux/bits/ctype_base.h (ctype_base): Use it.
2266         * config/gnu-linux/ctype.cc (ctype): Use it.
2267         
2268         * src/localename.cc (locale::_Impl::_M_replace_categories): Remove
2269         call to assert.
2270         * src/locale.cc: Explicitly cast mbstate_t to void* in calls to
2271         memset. This should not be necessary, but an ambiguous overload
2272         with it in.
2273
2274         * shadow/bits/std_cwchar.h: Fix.
2275         * shadow/wchar.h: Fix.
2276
2277         * config/gnu-linux/bits/ctype_base.h (ctype_base): Inject ctype
2278         enums into namespace std:: for ctype_base enum. Other OS types
2279         will have to do this as well.
2280         * config/gnu-linux/ctype.cc (ctype): Inject ctype data into
2281         namespace std, in particular __ctype_toupper, __ctype_tolower,
2282         __ctype_b.
2283
2284         * shadow/iolibio.h: New file.
2285         * shadow/bits/wrap_iolibio.h: New file.
2286         * shadow/libioP.h: New file.
2287         * shadow/bits/wrap_libioP.h: New file.
2288         * shadow/bits/wrap_fcntl.h: New file.
2289         * shadow/fcntl.h: New file.
2290         * shadow/iconv.h: New file. Inject iconv names into the global
2291         namespace, unmangled for the moment.
2292         * shadow/bits/wrap_iconv.h: New file.
2293         * shadow/unistd.h: Remove. Useless.
2294         * shadow/bits/wrap_unistd.h: Remove.
2295         
2296         * src/Makefile.am: Take out machine-ansi.h, add fcntl.h unistd.h.
2297         * src/Makefile.in: Regenerate.
2298         
2299         * config/c_io_libio.h (_IO_codecvt): Change to normal C++ decl.
2300         
2301         * shadow/libio.h: Fix.
2302         * shadow/bits/wrap_libio.h: Fix.
2303
2304         * shadow/bits/std_clocale.h: Remove typedef struct construct,
2305         which will not compile.
2306         * shadow/bits/std_ctime.h: Same.
2307         
2308         * shadow/pthread.h: New file. Put pthreads types and functions
2309         into global scope, which is probably not the correct long-term
2310         solution but has to be done at the moment before libio wrappers
2311         can even be started.
2312         * shadow/bits/wrap_pthread.h: New file.
2313
2314         * bits/std_ios.h: Formatting tweak.
2315         * shadow/bits/std_cstdio.h: Format. Remove extraneous bits.
2316
2317         * acinclude.m4 (GLIBCPP_CHECK_COMPILER_FEATURES): Add -Werror to
2318         tests for compiler features.
2319         * aclocal.m4: Regenerate.
2320         * configure: Regenerate.
2321         
2322         * config/c_io_libio.cc: Remove fcntl.h include, as SEEK_SET
2323         redefined.
2324         * libio/libioP.h: Comment out fcntl.h include.
2325
2326         * shadow/math.h: Add in float and long declarations, as per ISO C9X.
2327
2328         * bits/c++config: Define _ISOC99_SOURCE.
2329
2330         * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Add -fno-builtins to
2331         CSHADOWFLAGS, as well as _ISOC99_SOURCE.
2332         * aclocal.m4: Regenerate.
2333         * configure: Regenerate.
2334         * src/Makefile.am (CSHADOW_INCLUDES): Enable, again.
2335         (CSHADOW_INCLUDES): Add -I$(top_srcdir)/std before shadow include dir.
2336         (CXXCOMPILE): Remove $(DEFS), which searches $(top_srcdir) before
2337         std or shadow directories.
2338         (LTCXXCOMPILE): Same.
2339         (INCLUDES): Add $(top_builddir) before $(top_srcdir).
2340         (AC_CXXFLAGS): Add CSHADOWFLAGS.
2341         * src/Makefile.in: Regenerate.
2342
2343         * src/complex.cc (FCT): Change ::name to name.
2344         * src/complexl.cc (FCT): Same. Use _GLIBCPP_USE_LONG_LONG here.
2345         * src/complexf.cc (FCT): Same.
2346
2347         * src/complexf.cc: Remove FCT define, as things are properly
2348         overloaded in the std namespace with the shadow headers.
2349         * src/complexl.cc: Same.
2350         * src/complex.cc: Same.
2351         
2352 2000-09-25  Phil Edwards  <pme@sources.redhat.com>
2353
2354         * docs/documentation.html:  Add link to...
2355         * docs/ext/howto.html:  ...this.  New dir/file, describing library
2356           extensions (both ours and SGI's).
2357         * docs/faq/index.html:  Small updates.
2358         * docs/faq/index.txt:  Regenerate.
2359
2360 2000-09-25 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
2361
2362         * bits/basic_file.h (_M_open_mode): Remove extra qualifier.
2363
2364 2000-09-25  Levente Farkas  <lfarkas@mindmaker.hu>
2365
2366         * ext/stl_hashtable.h (_M_copy_from): Change __copy to __local_copy.
2367         
2368 2000-09-19  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2369
2370         * src/localename.cc (locale::_Imp) : Remove typedefs.   
2371         * bits/localefwd.h (locale::locale(const locale& __other, _Facet*
2372         __f): Consistency check, call _Imp ctor with reference argument
2373         of 1.
2374         * bits/localefwd.h: Change _S_num_categories to
2375         _S_categories_num. Add new data member, _S_facets_num, which is
2376         the number of standard facets.
2377
2378 2000-09-19  Phil Edwards  <pme@sources.redhat.com>
2379
2380         * docs/21_strings/howto.html:  Fix editor lossage from last commit.
2381
2382 2000-09-19  Phil Edwards  <pme@sources.redhat.com>
2383
2384         * docs/thanks.html:  More thanks.
2385         * docs/18_support/howto.html:  Fix thinko.
2386         * docs/21_strings/howto.html:  Minor tweaks and updates to URLs.
2387           Redo the string transformation notes and link to...
2388         * docs/22_locale/howto.html:  ...here.
2389
2390 2000-09-18  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2391
2392         * src/locale-inst.cc: Add time_put_byname and
2393         time_get_byname instantiations.
2394         * bits/locale_facets.h: Correct default, private derivation to
2395         public derivation in _byname declarations.
2396         * src/locale.cc (locale::classic()): Simplify.
2397         * src/localename.cc (locale::_Impl:: _Impl(const _Impl& __other,
2398         const string& __name, category __cat, size_t __refs): Re-work for
2399         named locales.
2400         (_M_normalize_category_names): Remove.
2401
2402         * testsuite/22_locale/global_templates.cc (test01): Tweaks.
2403         * testsuite/22_locale/ctor_copy_dtor.cc (test01): More tests.
2404
2405 2000-09-18  Yuri V. Baskakov  <yuribsk@lab.sun.mcst.ru>
2406
2407         * bits/std_bitset.h (operator>>): Change to char_type.
2408
2409 2000-09-15  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2410
2411         * src/locale.cc (locale::locale(const char* __name)): Consolidate
2412         name setting. Add checks for NULL __name pointers. Remove calls to
2413         _S_initialize() as initial locale initialization can either be
2414         assumed, or needs to be made consistent throughout locale
2415         constructors.
2416         (locale::locale(const locale& __other, const char* __name,
2417         category __cat): Add checks for NULL name. Add checks for
2418         assignment to self.
2419         * src/localename.cc (locale::_Impl:: _Impl(const _Impl& __other,
2420         const string& __name, category __cat, size_t __refs)): Set correct
2421         name, has_name values.
2422         * testsuite/22_locale/ctor_copy_dtor.cc (test01): More tests.
2423         * docs/22_locale/locale.html: New file, more unfinished docs...
2424         
2425 2000-09-14  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2426
2427         * src/locale.cc (locale::name()): Implement.
2428         (_Impl(size_t __numfacets, size_t __refs, bool __namep = false,
2429         string __name = "*")): Change signature.
2430         (locale::classic): Initialize the "C" locale as a named locale.
2431         * bits/localefwd.h (locale): Change _M_num_references to
2432         _M_references. Eliminate _M_cached_name_ok. Rename _M_cached_name
2433         to _M_name.
2434         * bits/localefwd.h: Tweaks.
2435         * src/localename.cc: Tweaks.
2436         * testsuite/22_locale/ctor_copy_dtor.cc (test01): Add tests.
2437         (test01): Fix.
2438
2439         * bits/basic_string.h: Consistency check, change _M_state ->
2440         _M_references.
2441
2442 2000-09-14  Brendan Kehoe  <brendan@zen.org>
2443
2444         * bits/string.tcc (_Rep::_S_max_size): Use typename for its size_type
2445         return type.
2446
2447         * src/Makefile.an (headers): Also install backward/fstream.h.
2448         * src/Makefile.in: Regenerate.  
2449
2450         * bits/char_traits.h (char_traits<_CharT>::get_state,
2451         char_traits<char>::get_state, char_traits<wchar_t>::get_state): Pass
2452         argument in by reference, not by value. Uglify to _S_get_state.
2453         (char_traits<*>::__eos): Uglify to _S_eos.
2454         * bits/std_ostream.h (ends(basic_ostream<_CharT, _Traits>& __os)):
2455         Change __eos to _S_eos.
2456         
2457 2000-09-13  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2458
2459         * testsuite/22_locale/static_members.cc: New file.
2460         * testsuite/22_locale/ctor_copy_dtor.cc: New file.
2461         * src/locale.cc: Minor formatting tweaks.
2462
2463 2000-09-12  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2464
2465         * testsuite/22_locale/global_templates.cc (test01): Add negative
2466         tests for use_facet.
2467
2468         * bits/localefwd.h (locale::operator()): Minor tweaks.
2469         * bits/locale_facets.tcc (locale::operator()): Same.
2470         * testsuite/22_locale/operators.cc: New file.
2471
2472         * testsuite/22_locale/facet.cc (output_iterator): Remove
2473         gnu_input_iterator, gnu_output_iterator.
2474
2475 2000-09-11  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2476
2477         * acinclude.m4 (GLIBCPP_CHECK_GNU_MAKE): Remove test != "0". 
2478         * aclocal.m4: Regenerate.
2479         * configure: Regenerate.
2480
2481         * bits/c++config (__GLIBCPP__): Update, in the hopes of making a
2482         snapshot release soon.
2483         (_GNU_SOURCE): Define this in the header files, as ISO C99 support
2484         is pretty much assumed.
2485
2486         * testsuite/22_locale/global_templates.cc: New file. Add tests for
2487         use_facet and has_facet.
2488
2489         * bits/codecvt.h (codecvt<_InT, _ExT, __enc_traits>::do_out):
2490         Modify/correct iconv signatures for glibc2.2.
2491
2492 2000-09-10  Branko Cibej  <branko.cibej@hermes.si>
2493
2494         * acinclude.m4 (GLIBCPP_CHECK_GNU_MAKE): Replace "grep -q" with
2495           "grep -c".
2496
2497 2000-09-09  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2498
2499         * bits/localefwd.h (locale::_Impl): Scope out types to public.
2500         (locale): Make _Impl declaration public.
2501
2502 2000-09-08  Felix Natter  <fnatter@gmx.net>
2503
2504         * docs/17_intro/porting-howto.html:  New version.
2505
2506 2000-09-07  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2507
2508         * config/cpu/i386/bits/atomicity.h (__exchange_and_add): Change unused
2509         to __unused__.
2510         * config/cpu/ia64/bits/atomicity.h (__exchange_and_add): And here.
2511         * config/cpu/i486/bits/atomicity.h (__exchange_and_add): And here.
2512
2513 2000-09-07  Phil Edwards  <pme@sources.redhat.com>
2514
2515         Add bits for --enable-maintainer-mode:
2516         - turns on enable_debug
2517           (doing "--enable-maint --disable-debug" will DTRT)
2518         - turns on -Werror, now off by default
2519         * acinclude.m4: Add bits.
2520         * aclocal.m4: Regenerate.
2521         * configure.in: Add defaults for GLIBCPP_ENABLE_DEBUG.
2522         * configure: Regenerate.        
2523         
2524 2000-09-07  Benjamin Kosnik  <bkoz@cygnus.com>
2525
2526         * bits/std_cwctype.h: Remove yesterday's hacks.
2527
2528 2000-09-07  Brad Garcia  <bgarcia@laurelnetworks.com>
2529
2530         * bits/stl_tree.h: Make operators !=, == type safe for map, set.
2531         * testsuite/23_containers/set_operators.cc: New file. Should not
2532         compile.  
2533         * testsuite/23_containers/map_operators.cc: New file. Ditto.
2534         
2535 2000-09-06  Richard Henderson  <rth@cygnus.com>
2536             Benjamin Kosnik  <bkoz@cygnus.com>
2537
2538         * acinclude.m4 (GLIBCPP_CHECK_CPU): Add ia64 support.
2539         * aclocal.m4: Regenerate.
2540         * configure: Regenerate.
2541         * config/cpu/ia64: New directory.
2542         * config/cpu/ia64/bits: New directory.
2543         * config/cpu/ia64/bits/atomicity.h: New file.
2544         
2545 2000-09-06  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2546         
2547         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Force glibc_satisfactory
2548         to no, so that libstdc++-v3's libio will be built on glibc-2.2
2549         systems. 
2550         * aclocal.m4: Regenerate.
2551         * configure: Regenerate.
2552         * */Makefile.in: Regenerate.
2553
2554         * bits/std_cwctype.h: Put in temporary hack to work around -O2 +
2555         glibc 2.1.x unsigned errors. Or disable -Werror by default...
2556
2557         * testsuite/23_containers/vector_element_access.cc: New file.
2558         * bits/stl_config.h (__STL_THROW_RANGE_ERRORS): Define.
2559
2560 2000-09-06  Levente Farkas  <lfarkas@mindmaker.hu>
2561
2562         * bits/string.tcc: Fix up more parameter names.
2563
2564 2000-09-06  Alexandre Oliva  <aoliva@redhat.com>
2565
2566         * configure: Rebuilt with new libtool.m4.
2567
2568 2000-09-01  Benjamin Kosnik  <bkoz@cygnus.com>
2569
2570         * src/locale-inst.cc: Remove pre-instantiation of unicode
2571         codecvt types. Now unnecessary, as locale header now correct.
2572
2573 2000-08-31  Benjamin Kosnik  <bkoz@cygnus.com>
2574
2575         * bits/locale_facets.tcc (_S_build_float_format): Move ...      
2576         * src/locale.cc: Here.          
2577         * bits/locale_facets.tcc (num_get::_M_extract): Clean up generic
2578         definition. Move specialization to ...
2579         * src/locale.cc: Here.  
2580         * bits/locale_facets.tcc: Move _Format_cache specializations to ...
2581         * src/locale.cc: Here.
2582         * bits/locale_facets.tcc: Move use_facet<ctype> specializations to ...
2583         * src/locale.cc: Here.
2584
2585         * bits/std_locale.h: Note that locale_facets.tcc should be
2586         included here, for standards conformance. It may increase
2587         compile times though. For the time being, enable.
2588         * testsuite/22_locale/facet.cc: New file, some parts commented out
2589         for the time being.
2590
2591         * mkcheck.in: Append total time to test summary file.
2592
2593         * bits/sbuf_iter.h : Formatting tweaks.
2594
2595         Clean up static const data member definitions.
2596         * src/locale.cc: Add definitions for all missing locale,
2597         locale::_Imp, and locale::id static data members.
2598         (ctype<char>): Add table_size define.
2599         (money_base): Add _S_default_pattern, uglify.
2600         * bits/localefwd.h: Add definitions for static members of _Count_ones.
2601         * bits/locale_facets.h: Tweaks.
2602         * bits/locale_facets.tcc: Tweaks.       
2603         * bits/string.tcc: Add definition for npos.
2604         * bits/ios_base.h: Tweaks.
2605         * bits/ios_base.h (ios_base::Init::_M_ios_base_init): Change to
2606         _S_ios_base_init.
2607         * src/ios.cc: And here. Add _S_local_words definition.
2608         Add definitions for __ios_flags const static data.
2609         * src/codecvt.cc: Same for __enc_traits.
2610         * src/locale-inst.cc: Remove money_base data member definition
2611         here.
2612
2613 2000-08-30  Benjamin Kosnik  <bkoz@redhat.com>
2614
2615         * testsuite/22_locale/ctype_wchar_t_members.cc (test01): New file.
2616
2617         * docs/22_locale/codecvt.html: Re-number.
2618         * docs/22_locale/howto.html: Add entry for ctype
2619         documentation. Add entry for Nathan's introduction to locales
2620         paper.
2621         * docs/22_locale/ctype.html: New file. In progress...
2622
2623         * docs/22_locale/codecvt.html: Formatting cleanups.
2624         * src/locale.cc (ctype<wchar_t>::do_is): Fix thinko.
2625
2626 2000-08-30  Phil Edwards  <pme@sources.redhat.com>
2627
2628         * docs/22_locale/codecvt.html:  Behind-the-scenes ASCII->HTML
2629           tweaks for certain browsers.
2630
2631 2000-08-29  Benjamin Kosnik  <bkoz@redhat.com>
2632
2633         * bits/locale_facets.h (ctype<char>): Remove __table_type.
2634         Add include for bits/std_cwctype.h, for wctype_t.
2635         * src/locale.cc (ctype<wchar_t>): Implement.
2636         * config/gnu-linux/bits/ctype_base.h (ctype_base): Remove mask
2637         typedef, instead name enum.
2638         * config/gnu-linux/bits/ctype_specializations.h: Tweak.
2639         * config/gnu-linux/ctype.cc: Tweak.     
2640         * testsuite/22_locale/ctype.cc: Tweak.
2641         
2642         * bits/codecvt.h (__enc_traits): Uglify names.
2643         
2644 2000-08-28  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2645
2646         * docs/22_locale/codecvt.html: Add more bits, format. 
2647         * bits/codecvt.h: Add copy ctor, rename types.
2648         * testsuite/22_locale/codecvt_unicode_char.cc: Tweak.
2649         
2650         * libio/iofwide.c: Tweak.
2651         
2652 2000-08-28  Phil Edwards  <pme@sources.redhat.com>
2653
2654         * docs/configopts.html:  Mention new options.
2655         * docs/install.html:  Formatting changes for platform-specific
2656           pre-reqs, previously only Cygwin.
2657         * docs/mail.html:  Fix new link.
2658         * docs/thanks.html:  A couple more people.
2659         * docs/26_numerics/howto.html:  Fix typo.
2660
2661 2000-08-24  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2662
2663         * docs/22_locale/howto.html: Add notes on codecvt implementation.
2664         * docs/22_locale/codecvt.html: New file. In progress.
2665         
2666 2000-08-24  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2667
2668         * acconfig.h: Revert.
2669         * acinclude.m4: Revert.
2670         * libio/_G_config.h: Revert.
2671         * libio/libio.h: Revert.
2672         
2673 2000-08-23  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>      
2674
2675         * bits/codecvt.h: Tweaks.
2676         * testsuite/22_locale/codecvt_unicode_wchar_t.cc (test01): Fix up
2677         initial string literals for UCS4.
2678
2679 2000-08-23  Phil Edwards  <pme@sourceware.cygnus.com>
2680
2681         * acconfig.h:  _GLIBCPP_USING_THREADS and some workaround types added.
2682         * acinclude.m4:  New macro, GLIBCPP_ENABLE_WCHAR.  Set the threads
2683           definition as well, and some minor spelling/spacing fixes.  If
2684           building libio, check for certain typedefs.
2685         * libio/_G_config.h:  Wrap _IO_MTSAFE_IO in _GLIBCPP_USING_THREADS.
2686           Conditionally define _LARGEFILE64_SOURCE, otherwise the 64-bit types
2687           will never be there.
2688         * libio/libio.h:  In the null case, _IO_lock_t can't just be void.
2689         * src/string-inst.cc:  Use _GLIBCPP_USE_WCHAR_T.
2690
2691         * configure.in:  Update the cache a bit more often.
2692
2693         * mkcheck.in:  For check-install, also need to -I the testsuite dir.
2694
2695 2000-08-22  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2696
2697         * src/locale-inst.cc: Add codecvt<unicode_t, wchar_t,
2698         __enc_traits> instantiations for has_facet and use_facet.
2699         * testsuite/22_locale/codecvt_unicode_wchar_t.cc: New file, for
2700         testing two-byte unicode encodings converted to four-byte UCS4
2701         encodings.
2702
2703         * bits/codecvt.h (codecvt<__enc_traits>): Fix do_unshift.
2704         * testsuite/22_locale/codecvt_unicode_char.cc (test01): Add
2705         correct state/encoding information.
2706
2707         * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Add wcsrtombs,
2708         mbsrtowcs checks as codecvt<wchar_t, char, mbstate_t> needs them
2709         now.
2710         Add checks for langinfo.h, nl_langinfo function call.
2711         * libio/iofwide.c (_IO_fwide): Simplify, as nl_langinfo is assumed.
2712
2713 2000-08-22  Richard B. Kreckel  <Richard.Kreckel@Uni-Mainz.DE>
2714
2715         * config/cpu/alpha/bits/atomicity.h: Change __attribute__
2716         ((unused)) to __attribute__ ((__unused__)).
2717         * config/cpu/arm/bits/atomicity.h: Same.
2718         * config/cpu/generic/bits/atomicity.h: Same.
2719         * config/cpu/i386/bits/atomicity.h: Same.
2720         * config/cpu/i486/bits/atomicity.h: Same.
2721         * config/cpu/powerpc/bits/atomicity.h: Same.
2722         * config/cpu/sparc/sparc32/bits/atomicity.h: Same.
2723         * config/cpu/sparc/sparc64/bits/atomicity.h: Same.
2724
2725 2000-08-22  Levente Farkas  <lfarkas@mindmaker.hu>
2726
2727         * bits/basic_string.h: Fix up parameter names.
2728
2729 2000-08-22  Brent Verner <brent@rcfile.org>
2730
2731         * src/Makefile.am (INCLUDES): Put $(CSHADOW_INCLUDES) before
2732         $(top_srcdir)
2733         * src/Makefile.in: Regenerate.
2734         
2735 2000-08-21  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2736
2737         * bits/codecvt.h: Implement codecvt<wchar_t, char, mbstate_t>. Fix
2738         up __enc_traits template so as to be marginally useful.
2739         * src/codecvt.cc: And here.
2740         * bits/char_traits: Tweak.
2741         * bits/locale_facets.h: Tweak.
2742         * bits/locale_facets.tcc: Tweak.
2743         * bits/localefwd.h: Tweak.
2744         * src/locale-inst.cc: Add use_facet/has_facet instantiations here.
2745         * testsuite/22_locale/codecvt_wchar_t_cc.cc: New file.
2746         * testsuite/22_locale/codecvt_char_char.cc: New file.
2747         * testsuite/22_locale/codecvt_unicode_char.cc: New file.
2748         
2749 2000-08-21  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>
2750
2751         * bits/std_cmath.h (std::abs): Overload for int and long.
2752
2753 2000-08-20  Benjamin Kosnik  <bkoz@gnu.org>
2754
2755         * src/string-inst.cc: Tweak instantiations for new-gxx-abi.
2756
2757 2000-08-19  Gabriel Dos Reis  <gdr@codesourcery.com>
2758
2759         * bits/valarray_array.h (__valarray_min, __valarray_max): Fix
2760         thinko. Diagnostic messages really need to be improved for
2761         template argument deduction.
2762
2763 2000-08-18  Benjamin Kosnik  <bkoz@gnu.org>
2764
2765         * bits/valarray_meta.h: Fix typos...
2766
2767 2000-08-18  Gabriel Dos Reis  <gdr@codesourcery.com>
2768
2769         * bits/valarray_meta.h (_Expr<>::shift, _Expr::cshift,
2770         _Expr<>::apply): Implement. 
2771
2772 2000-08-18  Gabriel Dos Reis  <gdr@codesourcery.com>
2773
2774         * bits/valarray_meta.h (_Expr<>::min, _Expr<>::max): Implement.
2775
2776         * bits/valarray_array.h (__valarray_min, __valarray_max): New
2777         function. 
2778
2779 2000-08-17  Mark Mitchell  <mark@codesourcery.com>
2780
2781         * bits/localefwd.h (std::locale): Use explicit `class' specified
2782         when declaring friends.
2783         * bits/std_fstream.h (std::basic_filebuf): Likewise.
2784
2785 2000-08-16  Alexandre Oliva  <aoliva@redhat.com>
2786
2787         * src/Makefile.am (libstdc++.INC): Renamed from INCLUDES.
2788         * src/Makefile.in: Regenerate.
2789
2790 2000-08-15  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2791
2792         * bits/codecvt.h: New file.
2793         * src/codecvt.cc: New file.
2794         * bits/std_locale.h: Add include here.
2795         * src/Makefile.am (headers): Add codecvt.h
2796         (sources): Add codecvt.cc.
2797         * src/Makefile.in: Regenerate.
2798         * bits/locale_facets.h (codecvt): Re-implement. Rename _Codecvt to
2799         __codecvt_abstract_base in an attempt to point some light this way...
2800         Move __enc_traits and codecvt bits to codecvt.h.
2801         * src/locale-inst.cc: Remove codecvt<wchar_t, wchar_t, mbstate_t>
2802         explicit instantiation. Separate out codecvt instantations, simplify.
2803         * src/locale.cc: Move codecvt bits to codecvt.cc
2804
2805 2000-08-15  Alexandre Oliva  <aoliva@redhat.com>
2806
2807         * src/Makefile.am (INCLUDES): New target file, with all -I flags.
2808         * src/Makefile.in: Regenerate.
2809
2810 2000-08-14  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2811
2812         C/C++ io merge/sync.
2813         * libio/fileops.c
2814         * libio/genops.c
2815         * libio/iofclose.c
2816         * libio/iofopen.c
2817         * libio/iofwide.c
2818         * libio/libio.h
2819         * libio/libioP.h
2820         * libio/stdio.c
2821         * libio/wfileops.c
2822         * libio/wgenops.c
2823         * config/c_io_libio.cc (__basic_file): Add hacky casts to
2824         ((struct _IO_FILE_plus *) in ctors.
2825         (__basic_file<wchar_t>): Adjust _wide_data->_codecvt to just _codecvt.
2826         * libio/Makefile.am: Fix copyright. Remove cleanup.c.
2827         * libio/cleanup.c: Remove.
2828         * libio/filedoalloc.c (_IO_file_doallocate): Don't call
2829         _IO_cleanup_registration_needed, even if not libc.
2830                 
2831         * testsuite/27_io/stringstream.cc (test02): Fix.
2832
2833 2000-08-14  Brent Verner <brent@rcfile.org>
2834
2835         * testsuite/debug_assert.h: new file
2836         * testsuite/*/*.cc: s/test\s*&=([^;]+);/VERIFY($1);/g
2837         changed conditional #include <c?assert.?h?> to
2838         unconditional #include <debug_assert.h>
2839         * mkcheck.in: added $SRC_DIR/testsuite to include search path
2840         for testsuite compile command.
2841
2842 2000-08-14  Levente Farkas  <lfarkas@mindmaker.hu>
2843
2844         * bits/std_fstream.h: Remove duplicate typdefs for ofstream and
2845         wofstream, filebuf, wfilebuf, fstream, wfstream.
2846         * bits/std_streambuf.h: Same for streambuf, wstreambuf.
2847         * bits/std_sstream.h: Same for stringstream and wstringstream.
2848         Same for stringbuf, wstringbuf, istringstream, wistringstream,
2849         ostringstream, wostringstream.
2850         
2851         * testsuite/26_numerics/valarray.cc: Add test.
2852
2853 2000-08-14  Zack Weinberg  <zack@wolery.cumb.org>
2854
2855         * configure: Regenerate after change to ../libtool.m4.
2856
2857 2000-08-10  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2858
2859         * bits/locale_facets.tcc: Formatting tweaks.
2860         * bits/locale_facets.h (__enc_traits): Start integrating this
2861         into codecvt, ctype. Formatting tweaks.
2862
2863 2000-08-09  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2864
2865         Preliminary wchar_t implementation, with trivial encodings.
2866         * docs/configopts.html: Add bits about canonical configure option
2867         checking.
2868
2869         * testsuite/27_io/iostream_objects.cc: Replace this file (which
2870         has newly-declared-illegal mixing of wide/narrow stdstreams) with...
2871         * testsuite/27_io/narrow_stream_objects.cc: New file.
2872         * testsuite/27_io/wide_stream_objects.cc: New file.
2873
2874         * bits/fstream.tcc (underflow): Temporarily hack a solution
2875         together that writes from the external file to the internal
2876         buffers. This removes codecvt from the loop, and is incorrect.
2877         (_M_really_overflow): Same here.
2878
2879         * testsuite/21_strings/inserters_extractors.cc (test05): Tweaks.
2880         
2881 2000-08-08  Benjamin Kosnik  <bkoz@cygnus.com>
2882             Ulrich Drepper  <drepper@cygnus.com>
2883
2884         * config/c_io_libio.h: Tweak.
2885         * config/c_io_libio_codecvt.c: New file.
2886         * libio/Makefile.am: Add c_codecvt.c.
2887         * libio/Makefile.in: Regenerate.
2888         * libio/genops.c (_IO_unbuffer_write): Don't call _IO_SETBUF if the
2889         stream is not orientated.
2890
2891         * acinclude.m4: Add config/c_io_libio_codecvt.c dummy file, until
2892         encoding gets fleshed out.
2893
2894         * bits/basic_file.h: Add specialization declarations.
2895         * config/c_io_libio.cc: Add specializations for pbackfail, uflow.
2896
2897         * config/c_io_libio.h: Add __c_wfile_type.
2898         * bits/basic_file.h: Add _M_wfile.
2899
2900         * config/c_io_libio.cc (__basic_file<char>): Initialize the
2901         streams without setting the orientation of the underlying FILE to
2902         either wide or narrow.
2903         (__basic_file<wchar_t>)): Enable tricky wchar_t io bits.
2904
2905 2000-08-07  Felix Natter  <fnatter@gmx.net>
2906
2907         * docs/17_intro/porting-howto.html:  New version.
2908
2909 2000-08-03  Mark Mitchell  <mark@codesourcery.com>
2910
2911         * bits/locale_facets.h (ctype::ctype): Don't name unused
2912         parameters.
2913
2914 2000-08-01  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2915
2916         * docs/install.html: Edit bits about requiring a special version
2917         of the autotools.
2918
2919 2000-07-31  Benjamin Kosnik  <bkoz@cygnus.com>
2920
2921         * libio/fileops.cc: Update to current glibc sources.
2922         * libio/genops.c: Same.
2923         * libio/iofwide.c: Same.
2924         * libio/libio.h: Same.
2925         * libio/libioP.h: Same.
2926         * libio/wfiledoalloc.c: Same.
2927         * libio/wgenops.c: Same.
2928         
2929 2000-07-28  Alexandre Oliva  <aoliva@redhat.com>
2930
2931         * acinclude.m4: Include ../libtool.m4.
2932         * aclocal.m4, configure: Rebuilt.
2933         
2934 2000-07-26  Phil Edwards  <pme@sourceware.cygnus.com>
2935
2936         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES):  Test for GNU ld
2937           before trying to use any of its options.
2938           (CHECK_MATH_DECL*,CHECK_BUILTIN_MATH_DECL*):  Cache tests.
2939         * aclocal.m4:  Regenerate.
2940         * configure.in:  Having found GNU make, name it.
2941         * configure:  Regenerate.
2942         * docs/install.html:  Mention possible problems with caching.
2943         * src/Makefile.am (CXXLINK):  Use new OPT_LDFLAGS.
2944         * src/Makefile.in:  Regenerate.
2945         * libio/Makefile.in:  Regenerate.
2946         * math/Makefile.in:  Regenerate.
2947         * Makefile.in:  Regenerate.
2948
2949 2000-07-26  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2950
2951         * src/misc-inst.cc (std): Remove instantiations.
2952
2953         * acinclude.m4: Add forward-looking bits for autoconf.
2954         * aclocal.m4: Regenerate.
2955
2956         * bits/ostream.tcc (ostream::operator<<): Fix const char* case.
2957
2958 2000-07-25  Benjamin Kosnik  <bkoz@gnu.org>
2959
2960         * configure.in: Change AM_PROG_LIBTOOL to AC_PROG_LIBTOOL. Change
2961         it back for current versions of maintainer-tools...
2962         * acinclude.m4: Some cleanups...
2963         * aclocal: Regenerated.
2964         * configure: Regenerated.
2965         
2966         * src/Makefile.am (CXXLINK): Add -Wl,-01 to the link line for
2967         optimizing/adapting the hash table using GNU ld.
2968         * src/Makefile.in: Regenerate.
2969         
2970 2000-07-24  H.J. Lu  <hjl@gnu.org>
2971
2972         * src/Makefile.am (LIBIO_INCLUDES): Set to -I$(top_srcdir)/libio
2973         even if GLIBCPP_NEED_LIBIO is false. The installed glibc header
2974         files don't include private libio header files needed by
2975         libstdc++ v3.
2976         * src/Makefile.in: Rebuild.
2977
2978 2000-07-24  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2979
2980         * bits/std_fstream.h: Parameterize __basic_file.
2981         * config/c_io_libio.cc: Add wchar_t methods for parameterization.
2982         * bits/basic_file.h: Same here.
2983
2984         * bits/istream.tcc (getline): Tweaks.
2985
2986         * bits/fstream.tcc: Shorten __retval to __ret.
2987         * bits/ostream.tcc: Same.
2988         * bits/sbuf_iter.h: Same.
2989         * bits/sstream.tcc: Same.
2990         * bits/streambuf.tcc: Same.
2991         * bits/std_fstream.h: Same.
2992         * src/string-inst.cc: Same.
2993         * src/ios.cc: Same.
2994         * config/c_io_libio.cc: Same.
2995         * bits/string.tcc: Same.
2996         * bits/std_streambuf.h: Same.
2997
2998 2000-07-23  Brent Verner <brent@rcfile.org>
2999
3000         * bits/istream.tcc: istream::getline(char_type*, streamsize,
3001         char_type) make compliant
3002         * testsuite/27_io/istream_unformatted.cc: test for compliant behavior
3003
3004 2000-07-23  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3005
3006         * acinclude.m4 (enable_cshadow_headers): Fix problems with blddir
3007         and srcdir used to define CSHADOW_INCLUDES..
3008
3009         * configure.in: For consistency, change .sanity_warned to
3010         stamp-sanity-warned.
3011
3012         * acinclude.m4: Tweak formatting.
3013         * Makefile.am (check): Call mkcheck with full pathname for build
3014         directory...
3015         (check-install): And here.
3016         * Makefile.in: Regenerate.
3017         
3018 2000-07-22  Gabriel Dos Reis  <gdr@codesourcery.com>
3019
3020         Line up with libstdc++-v2 version of valarray.
3021         * bits/valarray_array.h (__valarray_product): Make inline.
3022         * src/valarray-inst.cc (__valarray_product): Remove explicit
3023         instantiation. 
3024
3025 2000-07-21  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3026
3027         * src/stl-inst.cc: Change __sink_unused_warning to unsigned int
3028         for alpha.
3029
3030         * testsuite/26_numerics/complex_inserters_extractors.cc (testall):
3031         Change return type to void.
3032         * testsuite/25_algorithms/lower_bound.cc: Add return values.
3033         * testsuite/17_intro/header_ciso646.cc: Modify.
3034         * bits/locale_facets.h: Add return values for the generic cases.
3035
3036 2000-07-21  H.J. Lu  (hjl@gnu.org)
3037
3038         * acinclude.m4: Include <features.h> for glibc testing.
3039         * aclocal.m4: Likewise.
3040
3041         * configure: Rebuild.
3042
3043 2000-07-20  H.J. Lu  (hjl@gnu.org)
3044
3045         * acinclude.m4: Change "#pragma system_header" to
3046         "#pragma GCC system_header".
3047         * aclocal.m4: Likewise.
3048         * bits/std_cmath.h: Likewise.
3049         * bits/std_cassert.h: Likewise.
3050         * bits/std_cctype.h: Likewise.
3051         * bits/std_cerrno.h: Likewise.
3052         * bits/std_cfloat.h: Likewise.
3053         * bits/std_climits.h: Likewise.
3054         * bits/std_clocale.h: Likewise.
3055         * bits/std_cwchar.h: Likewise.
3056         * bits/std_csetjmp.h: Likewise.
3057         * bits/std_csignal.h: Likewise.
3058         * bits/std_cstdarg.h: Likewise.
3059         * bits/std_cstddef.h: Likewise.
3060         * bits/std_cstdio.h: Likewise.
3061         * bits/std_cstdlib.h: Likewise.
3062         * bits/std_cstring.h: Likewise.
3063         * bits/std_ctime.h: Likewise.
3064         * bits/std_cwctype.h: Likewise.
3065         * bits/std_exception.h: Likewise.
3066         * bits/std_new.h: Likewise.
3067         * bits/std_typeinfo.h: Likewise.
3068         * shadow/bits/std_cassert.h: Likewise.
3069         * shadow/bits/std_cctype.h: Likewise.
3070         * shadow/bits/std_cerrno.h: Likewise.
3071         * shadow/bits/std_cfloat.h: Likewise.
3072         * shadow/bits/std_climits.h: Likewise.
3073         * shadow/bits/std_clocale.h: Likewise.
3074         * shadow/bits/std_cmath.h: Likewise.
3075         * shadow/bits/std_csetjmp.h: Likewise.
3076         * shadow/bits/std_csignal.h: Likewise.
3077         * shadow/bits/std_cstdarg.h: Likewise.
3078         * shadow/bits/std_cstddef.h: Likewise.
3079         * shadow/bits/std_cstdio.h: Likewise.
3080         * shadow/bits/std_cstdlib.h: Likewise.
3081         * shadow/bits/std_cstring.h: Likewise.
3082         * shadow/bits/std_ctime.h: Likewise.
3083         * shadow/bits/std_cwchar.h: Likewise.
3084         * shadow/bits/std_cwctype.h: Likewise.
3085         * shadow/bits/wrap_libio.h: Likewise.
3086         * shadow/bits/wrap_unistd.h: Likewise.
3087         * shadow/sys/cdefs.h: Likewise.
3088
3089         * configure: Rebuild.
3090
3091 2000-07-20  Jakub Jelinek  <jakub@redhat.com>
3092
3093         * config/cpu/sparc/sparc64/bits/atomicity.h (__exchange_and_add):
3094         Use extended word instructions to match 64bit _Atomic_word.
3095         (__atomic_add): Likewise.
3096         * math/clog10l.c (clog10l): Use M_PIl if defined.
3097         * math/c_logl.c (c_logl): Likewise.
3098         * math/signbitl.c (__signbitl): Adapt for IEEE quad long doubles.
3099         * math/mathconf.h (ieee_quad_double_shape_type): New type.
3100         (GET_LDOUBLE_MSW64): New define.
3101
3102 2000-07-20  Benjamin Kosnik  <bkoz@cygnus.com>
3103
3104         * bits/std_streambuf.h: Add bits for pback buffers here, so that
3105         in_avail, etc can use them.
3106         * bits/std_fstream.h: Ditto.
3107         * bits/fstream.tcc: Ditto.
3108         * testsuite/27_io/filebuf.cc: Tweaks.
3109         * testsuite/27_io/filebuf-3.tst: Correct for pbackfail bits.
3110
3111 2000-07-19  Benjamin Kosnik  <bkoz@cygnus.com>
3112
3113         * src/localename.cc: Same.
3114         * src/locale.cc: Same.
3115         * bits/localefwd.h: _M_init_facet to _M_facet_init.
3116
3117         * bits/locale_facets.h: _M_init_boolnames to _M_boolnames_init.
3118
3119         * bits/std_sstream.h: Change _M_init_stringbuf to _M_stringbuf_init.
3120
3121         * bits/fstream.tcc: Change _M_init_filebuf to _M_filebuf_init.
3122         * bits/std_fstream.h: Same.
3123
3124         * bits/basic_string.h: Tweaks.
3125         
3126 2000-07-19  Phil Edwards  <pme@sourceware.cygnus.com>
3127
3128         * docs/18_support/howto.html:  Update.
3129
3130 2000-07-19  Benjamin Kosnik  <bkoz@milou.soma.redhat.com>
3131
3132         Internal consistency checks.....
3133         * bits/ios_base.h: Change _M_locale_ios to _M_ios_locale.
3134         * src/ios.cc: Same.
3135         
3136         * bits/basic_ios.h: Change _M_fctype_ios to _M_ios_fctype.
3137         * bits/basic_ios.tcc: Same.
3138         
3139         * bits/std_streambuf.h: Change _M_locale_buf to _M_buf_locale.
3140         Change _M_fctype_buf to _M_buf_fctype.
3141         * bits/fstream.tcc: Same.
3142
3143         * bits/std_streambuf.h: Change _M_buf_bump to _M_out_cur_move.
3144         Change _M_locale_set to _M_buf_locale_init.
3145         * bits/streambuf.tcc: Same.
3146         * bits/sstream.tcc: Same.
3147         * bits/fstream.tcc: Same.
3148
3149         * bits/std_streambuf.h: Make typedefs consistent.
3150         (_M_buf_bump): Be more careful with input sequence.
3151
3152         * bits/std_sstream.h: Same.
3153         * bits/std_fstream.h: Same.
3154
3155 2000-07-18  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3156
3157         * acinclude.m4: Tweaks.
3158         * config/c_io_libio.cc: Tweaks.
3159         * bits/sstream.tcc (stringbuf::pbackfail): Simplify.
3160         * libio/_G_config.h: Don't define _G_HAVE_ST_BLKSIZE.
3161         * libio/[iofwide.c, wfiledoalloc.c, wfiteopos.c, wgenops.c]: New files.
3162         * libio/iofclose.c iofopen.c, stdio.c: New files.
3163         * libio/Makefile.am: Add files, add flags, etc.
3164         * src/Makefile.am (sources): Add filebuf.cc.
3165         * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT):
3166         (GLIBCPP_ENABLE_CSTDIO): Versioning testing, etc etc.
3167
3168 2000-07-17  Phil Edwards  <pme@sourceware.cygnus.com>
3169
3170         * acinclude.m4:  Import CHECK_GNU_MAKE from autoconf macro archive.
3171         * configure.in:  Use it.  Also print reminders one time.
3172         * aclocal.m4:  Regenerate.
3173         * configure:  Regenerate.
3174
3175 2000-07-15  Gabriel Dos Reis  <gdr@codesourcery.com>
3176
3177         * bits/valarray_array.h (__valarray_get_storage): New function.
3178         (_Array<>::Array): Use it.
3179         * bits/std_valarray.h (valarray<>::valarray): Likewise.
3180         (valarray<>::resize): Likewise.  Tweak.
3181         * src/valarray-inst.cc (__valarray_product): Tweak.
3182
3183 2000-07-11  Phil Edwards  <pme@sourceware.cygnus.com>
3184
3185         * docs:  Update sourceware->sources in every HTML file.  Minor updates.
3186
3187 2000-07-07  Benjamin Kosnik  <bkoz@soma.redhat.com>
3188
3189         Clean up configure/build longstanding issues.
3190         * src/Makefile.am (AC_CXXFLAGS): Don't set @SECTION_LDFLAGS@ here.
3191         (CXXLINK): Add here, instead.
3192
3193         * Makefile.am (check-install): Make sure mkcheck has execute privs.
3194         (check): Same here.
3195         * configure.in (AC_OUTPUT_COMMANDS): Remove hacks here.
3196
3197         * configure.in (AC_OUTPUT_COMMANDS): Link c_io_libio.h and
3198         c_io_libio.cc instead of copying.
3199         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Do link here.
3200
3201         * configure.in (AC_OUTPUT_COMMANDS): Link $THREADS.h and
3202         c++threads.h instead of copying.
3203         * acinclude.m4 (GLIBCPP_ENABLE_THREADS): Do link here.
3204         Tweaks.
3205         
3206         * config/c_io_libio.cc (__basic_file::_M_open_mode): Consolidate.
3207         * bits/basic_file.h: Declare.
3208
3209         * mkcheck.in (TESTS_FILE): Use -v instead of --version.
3210
3211 2000-07-07   brent verner  <brent@rcfile.org> 
3212
3213         * testsuite/27_io/istream_unformatted.cc (test05): New test.
3214
3215 2000-07-07  Benjamin Kosnik  <bkoz@gnu.org>
3216
3217         * bits/istream.tcc (istream::getline): Minor tweaks.
3218
3219 2000-07-07  Phil Edwards  <pme@sourceware.cygnus.com>
3220
3221         * docs/download.html:  Mention gcc_update.
3222         * docs/configopts.html:  Minor updates.
3223         * docs/gccrebuild.html:  Ditto.
3224         * docs/18_support/howto.html:  More tips, explanations, and reminders.
3225         * docs/19_diagnostics/howto.html:  Ditto.
3226         * docs/21_strings/howto.html:  Ditto.
3227         * docs/24_iterators/howto.html:  Ditto.
3228         * docs/25_algorithms/howto.html:  Ditto.
3229         * docs/26_numerics/howto.html:  Ditto.
3230
3231 2000-07-05  brent verner  <brent@rcfile.org> 
3232
3233         * testsuite/27_io/ifstream_members.cc (test01): Add tests.
3234         * testsuite/27_io/ofstream_members.cc (test01): Add tests.
3235         * config/c_io_libio.cc (__basic_file::open): Unset
3236         ~_IO_DELETE_DONT_CLOSE.
3237
3238 2000-07-05  Zack Weinberg  <zack@wolery.cumb.org>
3239         
3240         * bits/gslice_array.h, bits/indirect_array.h, bits/mask_array.h,
3241         bits/slice_array.h, bits/std_valarray.h, bits/valarray_meta.h:
3242         Do not paste anything after 'operator' keyword.
3243
3244 2000-07-03  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3245
3246         * bits/std_memory.h: Revert.
3247
3248 2000-07-03  Brendan Kehoe  <brendan@zen.org>
3249
3250         * bits/std_complex.h: Fix parens. Format.
3251         
3252 2000-07-03  scott snyder  <snyder@fnal.gov>
3253
3254         * bits/locale_facets.tcc (_M_extract): Only figure out the base
3255         from the input if base == 0.
3256         * testsuite/27_io/istream_extractor_arith.cc: Test reading a
3257         number with a leading `0' in hex mode.
3258
3259         * shadow/bits/std_cmath.h: Fix typo in _GLIBCPP_HAVE_CEILL test.
3260
3261         * mkinclosure: Change `==' to `=' in test.
3262
3263 2000-07-03  Chip Salzenberg  <chip@valinux.com>
3264
3265         * src/Makefile.am (libio_headers): _G_config.h is found in srcdir,
3266         not builddir.
3267         * src/Makefile.in: Regenerate.
3268
3269 2000-07-01  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3270             Ulrich Drepper  <drepper@purist.soma.redhat.com>
3271
3272         Sync libio to glibc-2.2 current CVS. 
3273         * libio/_G_config.h: New file.
3274         * libio/wfileops.c: New file.
3275         * libio/wfiledoalloc.c: New file.
3276         * libio/wgenops.c: New file.
3277         * libio/iofwide.c: New file.
3278         * libio/Makefile.am: Tweaks.
3279         * libio/Makefile.in: Regenerate.
3280         * libio/gen-params: Remove. Generic replacement for this yet undone.
3281         * libio/[filedoalloc.c, fileops.c, genops.c, iolibio.h, libio.h,
3282         libioP.h, stdfiles.c]: Update.
3283         * config/c_io_libio.cc: Tweaks.
3284         * acinclude.m4: Complete hacks to test wide io.
3285         * aclocal.m4: Regenerate.
3286         * configure: Regenerate.
3287         * src/Makefile.am: Update.
3288         * src/Makefile.in: Regenerate.
3289
3290         * math/cargl.c: Remove underscores.
3291         
3292         * bits/locale_facets.h: Tweaks. Start adding iconv details
3293         and notes.
3294         * bits/locale_facets.tcc: Tweaks.
3295         * bits/std_cwchar.h: Tweaks.
3296         
3297 2000-06-29  scott snyder  <snyder@fnal.gov>
3298
3299         * bits/concept_checks.h
3300         (__less_then_comparable_requirement_violation): Only check for <.
3301         * testsuite/25_algorithms/lower_bound.cc: New file.
3302         
3303 2000-06-29  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3304
3305         * testsuite/27_io/ostream_manip.cc (test02): Add tests.
3306         * bits/ostream.tcc: Tweak.
3307         * bits/std_fstream.h (basic_filebuf::setbuf): Reset
3308         _M_buf_size_opt too.
3309         * bits/std_streambuf.h (basic_streambuf::~basic_streambuf): Zero
3310         out _M_buf_size_opt.
3311         * bits/std_sstream.h (basic_stringbuf::_M_init_stringbuf): Set
3312         _M_buf_size_opt out here.
3313         * bits/char_traits.h (char_traits::eos): Non standard member
3314         function, uglify to __eos. Return char_type().
3315         * bits/std_ostream.h: Change.
3316
3317         * testsuite/27_io/ostream_seeks.cc: New file.
3318         * testsuite/27_io/ostream_seeks-1.tst: New file.
3319         * testsuite/27_io/istream_unformatted.cc (main): Move test04 and
3320         test05 to...
3321         * testsuite/27_io/istream_seeks.cc: New file.
3322
3323 2000-06-29  Branko Cibej  <branko.cibej@hermes.si>
3324
3325         * bits/std_memory.h (auto_ptr_ref): Reworked and defined only if
3326         _GLIBCPP_RESOLVE_LIB_DEFECTS.
3327         (auto_ptr): _M_ptr changed to void*.
3328         (suto_ptr::get): Cast _M_ptr to element type.
3329         (auto_ptr::auto_ptr(auto_ptr<Tp1>)): Test implicit convetsion.
3330         (auto_ptr::~auto_ptr): Use this->get() instead of _M_ptr.
3331         (auto_ptr::operator*): Likewise.
3332         (auto_ptr::operator->): Likewise.
3333         (auto_ptr::release): Likewise.
3334         (auto_ptr::reset): Likewise.
3335         (auto_ptr::auto_ptr(auto_ptr_ref)): Initialize from __ref._M_release.
3336         (auto_ptr::operator auto_ptr_rev<_Tp1>): Updated.
3337         Define nested auto_ptr_ref unless _GLIBCPP_RESOLVE_LIB_DEFECTS.
3338         Define operator=(auto_ptr_ref) if _GLIBCPP_RESOLVE_LIB_DEFECTS.
3339
3340 2000-06-28  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3341
3342         * testsuite/27_io/filebuf.cc: Tweak.
3343         * testsuite/27_io/filebuf_members.cc (test_01): Fix.
3344         * config/c_io_libio.cc (__basic_file::~__basic_file): Match libio
3345         filebuf dtor.
3346         (__basic_file::basic_file): Clean, add calls similar to
3347         _IO_file_attach.
3348         (__basic_file::open): Clean.
3349         (__basic_file::sys_open): Clean.
3350
3351         * bits/std_fstream.h: Revert.
3352         * bits/fstream.tcc (filebuf::close()): Revert.
3353         (filebuf::basic_filebuf()): Revert.
3354
3355 2000-06-27  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3356
3357         Update to SGI STL 3.3
3358         * ext/hash_map, ext/hash_set, ext/slist, ext/stl_bvector.h,
3359         ext/stl_rope.h, ext/ropeimpl.h: Update.
3360         * bits/std_bitset.h, bits/std_map, bits/std_memory.h,
3361         bits/stl_algo.h, bits/stl_algobase.h, bits/stl_alloc.h,
3362         bits/stl_config.h, bits/stl_construct.h, bits/stl_deque.h,
3363         bits/stl_function.h, bits/stl_heap.h, bits/stl_iterator.h,
3364         bits/stl_iterator_base.h, bits/stl_list.h, bits/stl_map.h,
3365         bits/stl_multimap.h, bits/stl_multiset.h, bits/stl_numeric.h,
3366         bits/stl_queue.h, bits/stl_set.h, bits/stl_stack.h,
3367         bits/stl_string_fwd.h, bits/stl_threads.h, bits/stl_three.h,
3368         bits/stl_uninitialized.h, bits/stl_vectory.h: Update.
3369
3370         * src/Makefile.am (headers): Add new files.
3371         * src/Makefile.in: Regenerate.
3372         * src/stl-inst.cc (std): Add instantiation for __sink_unused_warning.
3373         * bits/concept_checks.h: New file.
3374         * bits/container_concepts.h: New file.
3375         * bits/sequence_concepts.h: New file.
3376         
3377 2000-06-27  H.J. Lu  <hjl@gnu.org>
3378             Loren J. Rittle  <ljrittle@acm.org>
3379
3380         * mkcheck.in: Add support to print standard flags needed to
3381         test g++ in build tree.  Enhance command line error checking.
3382
3383 2000-06-27  Phil Edwards  <pme@sourceware.cygnus.com>
3384
3385         * docs/install.html:  Fix minor typo as reported.
3386
3387 2000-06-26  Brent Verner <brent@rcfile.org>
3388
3389         * bits/string.tcc (string::rfind): Fix.
3390         * testsuite/21_strings/rfind.cc: New file.
3391         
3392 2000-06-26  Anthony Williams  <anthony@anthonyw.cjb.net>
3393
3394         * testsuite/21_strings/ctor_copy_dtor.cc: Fixed logic error.
3395         
3396 2000-06-26  Branko Cibej  <branko.cibej@hermes.si>
3397
3398         * testsuite/27_io/filebuf_members.cc (test_01): Fixed typos.
3399
3400         * mkcheck.in: Make the *.txt and *.tst files writable after
3401           copying them to $TEST_DIR.
3402
3403         * testsuite/27_io/ostream_inserter_arith.cc: Renamed
3404           __TEST_NUMPUT_VERBOSE to TEST_NUMPUT_VERBOSE.  Define
3405           TEST_NUMPUT_VERBOSE only if DEBUG_ASSERT.
3406         
3407 2000-06-23  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3408
3409         * bits/fstream.tcc (basic_filebuf::basic_filebuf(fd)): Use it.
3410         (basic_filebuf::close): Use it.
3411         * bits/std_fstream.h (basic_filebuf): Remove default arguments for
3412         filebuf ctor.
3413         (basic_filebuf): Add _M_fileno_based data member.
3414         As reported by brent verner <brent@rcfile.org> 
3415         * testsuite/27_io/filebuf_members.cc: New file.
3416         * testsuite/27_io/filebuf_members-1.tst: New file.
3417
3418         * bits/std_fstream.h: Formatting tweaks.
3419         * testsuite/27_io/ofstream_members.cc: New file.
3420         * testsuite/27_io/ofstream_members-1.tst: New file.
3421         * testsuite/27_io/ifstream_members.cc: New file.
3422         * testsuite/27_io/ifstream_members-1.tst: New file.
3423
3424 2000-06-23  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3425             Ulrich Drepper  <drepper@cygnus.com>
3426         
3427         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Add -D_GNU_SOURCE, so
3428         that all the freaky stuff like sincos will be around...
3429
3430 2000-06-22  Branko Cibej  <branko.cibej@hermes.si>
3431
3432         * Makefile.am (AM_MAKEFLAGS): Added WERROR to list of flags.
3433
3434 2000-06-22 Steven King <sxking@uswest.net>
3435
3436         * acinclude.m4: Check for sinl, _sinl using 1 parameter.
3437
3438 2000-06-22  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3439
3440         * acinclude.m4 (GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT): Redo. Use the
3441         same approach as GLIBCPP_CHECK_MATH_SUPPORT, only don't try to
3442         link against libm and don't use -fno-builtins...
3443         * math/mathconf.h: Change up builtin macros to new schema.
3444         * bits/std_cmath.h: And here. Wheee!
3445         * shadow/bits/std_cmath.h: And here.
3446         * acconfig.h: Change up builtin macros here.
3447         * math/cosf.c:  Remove.
3448         * math/fabsf.c:  Likewise.
3449         * math/sinf.c:  Likewise.
3450         * math/sqrtf.c:  Likewise.
3451         * math/Makefile.am (EXTRA_DIST):  Remove those four files.
3452         * math/Makefile.in:  Regenerate.
3453
3454 2000-06-22  Anthony Williams  <anthony@anthonyw.cjb.net>
3455
3456         * testsuite/21_strings/find.cc: Patch.
3457
3458 2000-06-22  Benjamin Kosnik  <bkoz@soma.redhat.com>
3459
3460         * acinclude.m4 (GLIBCPP_CHEC_LINKER_FEATURES): Use gcc + -x c++ as
3461         an easy way to get at g++ without having to link in libstdc++.
3462
3463 2000-06-21  Benjamin Kosnik  <bkoz@soma.redhat.com>
3464
3465         Fix alpha, powerpc build failures.
3466         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Substantially
3467         re-write. Need to check for both proper declaration when using a
3468         c++ compiler, and "C" linkage when linking. Do both, and if both
3469         exist, then define the HAVE_* bits in config.h.
3470         (GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE): New, uber-macro. Does all.
3471         (GLIBCPP_CHECK_LINKER_FEATURES): Actually link and run this
3472         program, doh.
3473
3474 2000-06-20  Anthony Williams  <anthony@anthonyw.cjb.net>
3475
3476         * bits/string.tcc: Fix find.
3477         * testsuite/21_strings/find.cc: Patch.
3478         
3479 2000-06-20  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3480
3481         * docs/install.html: Update where to get automake, where to get
3482         binutils.
3483         * acinclude.m4: Need -fno-builtins too, so gcc doesn't recognize
3484         builtins.
3485
3486 2000-06-19  Benjamin Kosnik  <bkoz@soma.redhat.com>
3487
3488         * acinclude.m4 ((GLIBCPP_CHECK_MATH_SUPPORT): Revert last change.
3489         Add -Werror-implicit-function-declaration instead.
3490
3491         Regenerate with fixed maintainer-tools.
3492         * aclocal.m4: Regenerate.
3493         * configure: Regenerate.
3494         * libio/Makefile.in: Regenerate.
3495         * src/Makefile.in: Regenerate.
3496         
3497 2000-06-19  Russell Davidson  <russell@ehess.cnrs-mrs.fr>
3498
3499         * testsuite/27_io/istream_extractor_arith.cc: Patch.
3500         * bits/locale_factets.tcc: Tweak.
3501         
3502 2000-06-19  Raja R Harinath  <harinath@cs.umn.edu>
3503         
3504         * src/Makefile.am: change @WERROR@ to $(WERROR) so that this can
3505         be overridden on the command line for individual files.
3506
3507 2000-06-19  Benjamin Kosnik  <bkoz@soma.redhat.com>
3508
3509         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Can't use
3510         AC_LANG_CPLUSPLUS as this tries to link in libstdc++, which we are
3511         building. Use -x c++ instead, which does not attempt to link
3512         libstdc++.
3513
3514         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Actually check for
3515         not coring when we hit a try/throw block, which was the problem
3516         with the linker support...
3517
3518         * docs/17_intro/contribute.html: Add bits about getting to the LWG
3519         issues pages.
3520         * docs/documentation.html: Rename link to make more accurate and scary.
3521         * docs/gccrebuild.html: Edit for clarity as these are no longer
3522         separate projects.
3523         * docs/install.html: Add bits about binutils for
3524         -ffunction-sections, -fdata-sections, -Wl,--gc-sections
3525
3526         * configure.in: Add call for GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT.
3527         * math/Makefile.am (EXTRA_DIST): Change USE_LONG_DOUBLE to
3528         USE_COMPLEX_LONG_DOUBLE.
3529         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Break into
3530         GLIBCPP_CHECK_MATH_SUPPORT and GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT.
3531         Works around irregularies in powerpc "C" compiler, but a good idea
3532         anyway.
3533
3534         * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_COMPILER_SUPPORT):
3535         New. Merge both old compiler bug checks for complex into this.
3536
3537 2000-06-19  Anthony Williams  <anthony@anthonyw.cjb.net>
3538         
3539         * testsuite/21_strings/find.cc: Empty strings can be found at all
3540         positions. Modified.
3541
3542 2000-06-19  Branko Cibej  <branko.cibej@hermes.si>
3543
3544         * testsuite/20_utilities: New directory.        
3545         * testsuite/20_utilities/auto_ptr.cc: New file.
3546         
3547 2000-06-14  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3548
3549         * src/Makefile.am (string_sources): Simplify, assuming that with
3550         -ffunction-sections, -fdata-sections, -Wl,--gc-sections, all this
3551         hacking is not necessary.
3552         (wstring_sources): Same.
3553         (OPTIMIZE_CXXFLAGS): Enable -fdata-sections -ffunction-sections
3554         -Wl,--gc-sections.
3555         * src/string-inst.cc: Remove macro blocks.
3556         * mkcheck.in (CXX_FLAG): Add bits here.
3557         
3558         * src/string-inst.cc: Remove iostream-related string instantiations.
3559         * src/misc-inst.cc: Add here.
3560
3561         * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION): Change FMTFLAGS
3562         to WFMT_FLAGS.
3563         * aclocal.m4: Regenerate.
3564         * configure.in: Change up.
3565         * configure: Regenerate.
3566         
3567 2000-06-13  Steven King  <sxking@uswest.net>
3568
3569         * acinclude.m4:  Fixup some of the builtin math tests and add tests for
3570         __builtin_fmod* and test libm for fmodf, fmodl or _fmodf, _fmodl.
3571         * acconfig.h: Add entries for fmod*.
3572
3573 2000-06-13  Branko Cibej  <branko.cibej@hermes.si>
3574
3575         * bits/std_cmath.h:  Fix typos in tests (*_FMODFF -> *_FMODF).
3576         Test  *_MODFF not *_MODF for modf(float, float*).
3577         (modf(float, float*)): Remove reference to _C_legacy.
3578
3579 2000-06-13  Benjamin Kosnik  <bkoz@redhat.com>
3580         
3581         * acinclude.m4 (enable_cshadow_headers): Change CSHADOWFLAGS to
3582         _GNU_SOURCE instead of _ISOC9X_SOURCE, as _GNU_SOURCE is the
3583         superset, and already defined at top level.
3584         * aclocal.m4: Regenerate.
3585         * configure: Regenerate.
3586
3587         * docs/17_intro/contribute.html: Plead with people to use -cp.
3588         
3589 2000-06-13  Anthony Williams  <anthony@anthonyw.cjb.net>
3590
3591         * testsuite/23_containers/bitset_ctor.cc: Qualify reverse wth std::.
3592
3593         * testsuite/27_io/filebuf.cc: Changed calls to
3594         fpos<>._M_position() to implicit calls to operator streamoff().
3595         * testsuite/27_io/iostream_objects.cc: Removed #include <ciso646>,
3596         as not needed. Revert, as part of standard.
3597         * testsuite/27_io/ostream_inserter_arith.cc: Replaced explicit
3598         call to numpunct<>._M_init() with overrides of the appropriate
3599         virtual functions.
3600
3601         * testsuite/27_io/stringstream.cc: Removed unnecessary char *
3602         pointers from test01, so no need to call base(), which isn't
3603         guaranteed to be implemented as iterators may themselves be pointers
3604         * testsuite/27_io/stringbuf.cc: Removed unnecessary calls to
3605         _M_position() - use implicit conversion to streamoff instead
3606
3607 2000-06-13  Thomas Holenstein  <thomas@hex.ch>
3608  
3609         * bits/stl_iterator.h: Added inline to operators == to >=.
3610
3611 2000-06-13  Brent Verner <brent@rcfile.org>
3612
3613         * bits/streambuf.tcc: repaired _S_copy_streambufs()
3614         * testsuite/27_io/ostream_inserter_other.cc (test03): Added testcase.
3615         
3616 2000-06-12  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3617
3618         * bits/locale_facets.h (ctype<wchar_t>): Remove unnecessary data
3619         members.
3620         * src/locale.cc: Add cwchar include here. Remove incorrect
3621         definitions, and stub them out.
3622         * config/generic/ctype.cc (ctype): Remove ctype<wchar_t> bits.
3623         * config/solaris/solaris2.7/ctype.cc (ctype): Same.
3624         * config/solaris/solaris2.5/ctype.cc (ctype): Same.
3625         * config/newlib/ctype.cc: Same.
3626         * config/gnu-linux/ctype.cc: Same.
3627         * config/bsd/ctype.cc: Same.
3628         * config/aix/ctype.cc: Same.
3629
3630 2000-06-12  Branko Cibej  <branko.cibej@hermes.si>
3631
3632         * config/solaris/solaris2.6/ctype.cc (do_toupper, do_tolower): Use
3633         towupper and towlower to convert wide characters.
3634
3635 2000-06-12  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3636
3637         * mkcheck.in: Clean up confusion regarding NAME, PRE_NAME.
3638
3639 2000-06-08  Branko Cibej  <branko.cibej@hermes.si>
3640
3641         * acinclude.m4 (GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT):  Check for
3642           sinf, cosf, fabsf, and sqrtf; add to LIBMATHOBJS if missing.
3643         * aclocal.m4:  Regenerate.
3644         * configure:  Regenerate.
3645         * math/cosf.c:  New file.
3646         * math/fabsf.c:  Likewise.
3647         * math/sinf.c:  Likewise.
3648         * math/sqrtf.c:  Likewise.
3649         * math/Makefile.am (EXTRA_DIST):  Add those four files.
3650         * math/Makefile.in:  Regenerate.
3651
3652 2000-06-08  Phil Edwards  <pme@sourceware.cygnus.com>
3653
3654         * testsuite/26_numerics/complex_inserters_extractors.cc:  Need cmath.
3655
3656 2000-06-06  Steven King  <sxking@uswest.net>
3657
3658         * acconfig.h: Added defines for HAVE_BUILTIN math functs for float,
3659         double and long double.  Added defines for HAVE libm math functs for
3660         float and long double.
3661         * aclocal.m4: Added configure checks for builtin math funcs and libm
3662         support for float and long double versions of the math functions.
3663         * config.h.in: Added undefs for math functs.
3664         * configure: Regenerate.
3665         * math/mathconf: Changed the _GLIBCPP_HAS_BUILTIN_* to
3666         _GLIBCPP_HAVE_BUILTIN_*.
3667         * bits/std_cmath.h: Added long double support.  Use builtins for
3668         float, double and long if available, otherwise, use libm versions if
3669         availible, otherwise, punt.
3670         * shadow/bits/std_cmath.h: ditto
3671
3672 2000-06-02  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3673
3674         * bits/locale_facets.h: Tweak.
3675         * src/locale.cc (codecvt<wchar_t>): Tweak. 
3676         
3677         * bits/locale_facets.h (_Format_cache): _S_ecks -> _S_x. 
3678         * bits/locale_facets.tcc (num_get<char>::_M_extract): Fix for hex.
3679
3680         * bits/basic_string.h: Move data member up.
3681         * src/string-inst.cc: Fix instantiations.
3682         * bits/string.tcc: Fix types.
3683         
3684 2000-06-02  Anthony Williams  <anthony@anthonyw.cjb.net>
3685
3686         * testsuite/21_strings/replace.cc (test01): Qualify find with std::.
3687
3688 2000-06-01  Benjamin Kosnik  <bkoz@gnu.org>
3689
3690         * bits/std_cwctype.h: Clean.
3691         * bits/std_cwchar.h: Clean, remove cruft.
3692
3693         * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Re-work, add bits
3694         for beginning iconv support.
3695         Remove _GLIBCPP_HAS_WCHAR_MIN_MAX, roll into _GLIBCPP_USE_WCHAR_T
3696         macro.
3697         * acconfig.h: Remove _GLIBCPP_HAS_WCHAR_MIN_MAX.
3698         * bits/limits_generic.h: Remove.
3699         * src/gen-num-limits.cc: Same.
3700         
3701         * src/locale.cc: Tweaks.
3702
3703         * bits/char_traits.h: Tweaks.
3704
3705 2000-05-31  Russell Davidson  <russell@ehess.cnrs-mrs.fr> 
3706
3707         * bits/locale_facets.tcc (num_get<char>::_M_extract): Fix signage,
3708         exponent, scientific formatting issues.
3709         * testsuite/27_io/istream_extractor_arith.cc (test09): Add tests.
3710         
3711 2000-05-31  Branko Cibej  <branko.cibej@hermes.si>
3712
3713         * bits/limits_generic.h (numeric_limits<wchar_t>): Use WCHAR_MIN
3714         and WCHAR_MAX instead of WCHART_MIN and WCHART_MAX.
3715
3716 2000-05-31  Nathan Myers  <ncm@cantrip.org>
3717  
3718        * docs/thanks.html: edit own credits
3719
3720 2000-05-31  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3721
3722         * bits/generic_shadow.h: Remaining _C_Shadow -> _C_shadow fix.
3723         
3724         * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Add strtoull checks...
3725
3726         * mkcheck.in (SH_FLAG): Add in -Wl,--rpath -Wl,$LIB_PATH. Tweaks.
3727         
3728 2000-05-31 Steven King <sxking@uswest.net>
3729
3730         * shadow/time.h: fix typo
3731         * shadow/wchar.h: ifdef __USE_GNU for wcsdup
3732         * shadow/bits/std_cwchar.h: ditto
3733         * shadow/bits/std_cstdlib.h: add overloads of abs and div for long
3734         and long long.
3735
3736 2000-05-26  Phil Edwards  <pme@sourceware.cygnus.com>
3737
3738         * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG):  If strtoll isn't
3739           available, force --disable.  Need to flesh this out; make smarter.
3740         * aclocal.m4:  Regenerate.
3741         * configure:  Regenerate.
3742
3743         * mkcheck.in:  Minor tweaks.
3744         * docs/download.html:  Fix typo.
3745
3746 2000-05-25  Benjamin Kosnik  <bkoz@milou.soma.redhat.com>
3747
3748         * inclosure: Change to...
3749         * mkinclosure: This.
3750         Fix paths to bash.      
3751         * mkcshadow: Fix paths to bash.
3752         
3753         * src/Makefile.am: Tweaks. Do cshadow header trickery at build time.
3754         * src/Makefile.in: Regnerate.
3755         * acinclude.m4 (GLIBCPP_COMPILER_VERSION): Fix typo.
3756         (GLIBCPP_ENABLE_SHADOW): Do a less gross hack.
3757         * aclocal.m4: Regenerate.
3758         * mkcheck.in (INC_PATH): Tweak. 
3759         
3760         * configure.in: Enable long long by default.
3761         * configure: Regenerate.
3762         
3763         * mkcheck.in (LIB_PATH): Revert.
3764
3765 2000-05-24   Nathan "I don't write ChangeLog Entries" Myers  <ncm@cantrip.org>
3766
3767         * config/cpu/i486: New directory.
3768         * config/cpu/i486/bits: New directory.
3769         * config/cpu/i486/bits/atomicity.h: New file.
3770         * config/cpu/i386/bits/atomicity.h (__compare_and_swap): Delete
3771         'cmpxchgl' asm.
3772         * acinclude.m4 (GLIBCPP_CHECK_CPU): Enable i386.
3773         
3774 2000-05-24  Loren J. Rittle  <ljrittle@acm.org>
3775
3776         * backward/alloc.h (__default_alloc_template): Only expose
3777           implementation-specific symbol, if it exists in the
3778           configuration.
3779         * backward/iostream.h (ends): Expose symbol.
3780         * backward/strstream.h: New file.
3781         * backward/stream.h: New file.
3782         * backward/ostream.h: New file.
3783         * backward/istream.h: New file.
3784         * backward/fstream.h: New file.
3785         * backward/complex.h: New file.
3786         * backward/iomanip.h: New file.
3787
3788         * mkcheck.in (LIB_PATH): Add -R bits.
3789
3790         * math/carg.c (carg): Replace __atan2 with atan2.
3791
3792 2000-05-24  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3793
3794         * Makefile.am (TAGS): Construct.
3795         * Makefile.in: Rengerate.
3796         * src/Makefile.am: Tweak.
3797         * src/Makefile.in: Tweak.
3798         * configure.in: Tweak.
3799
3800         * bits/c++config.h: Rename to ...
3801         * bits/c++config: This.
3802         * mkc++config: Adjust.
3803         
3804         * m4: Remove.
3805         * m4/lc_message.m4: Merge into acinclude.m4.
3806         * m4/mathfcts.m4: Same.
3807         * m4/stringfcts.m4: Same.
3808         * acinclude.m4: Add here.
3809         * configure: Regnerate.
3810         
3811         * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION): Remove
3812         OPTLEVEL. Add FMTFLAGS.
3813         * aclocal.m4: Regenerate.
3814         * src/Makefile.am (AC_CXXFLAGS): Take out OPTLEVEL, as this has
3815         been disabled due to higher-level Makefiles running amuck over
3816         this bit, and add in FMTFLAGS so that formatting is clear. 
3817         * src/Makefile.in: Regenerate.
3818         * configure: Regenerate.
3819
3820         * src/ios.cc (ios_base::sync_with_stdio): Clean up buffers from
3821         initialization.
3822
3823         * docs/download.html: Remove references to Cygwin-specific bits,
3824         as this can now be built natively.
3825         Update with current information.
3826
3827 2000-05-24  Phil Edwards  <pme@sourceware.cygnus.com>
3828
3829         * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION):  If we can use
3830           -fdiagnostics-show-location=once, do so.  Expand AC_LANG_* to
3831           enclose other tests in this macro, including future ones.
3832         * aclocal.m4:  Regenerate.
3833         * configure:  Regenerate.
3834
3835         * docs/faq/index.html:  Update location of libg++ FAQ.
3836         * docs/faq/index.txt:  Regenerate.
3837
3838 2000-05-22  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3839
3840         * docs/17_intro/libstdc++-assign.txt: Change Cygnus to FSF.
3841
3842 2000-05-22  Phil Edwards  <pme@sourceware.cygnus.com>
3843
3844         * mkcheck.in:  Tweak for Solaris 8.  Additional minor output comment.
3845
3846 2000-05-22  Phil Edwards  <pme@sourceware.cygnus.com>
3847
3848         * acinclude.m4:  If the new pragma isn't supported, don't kill -Werror;
3849           keep -Werror and add -Wno-unknown-pragma.  -Werror Is Good.
3850         * aclocal.m4:  Regenerate.
3851         * configure:  Regenerate.
3852
3853 2000-05-19   Nathan C. Myers  <ncm@cantrip.org>
3854
3855         * bits/generic_shadow.h: s/swamp/legacy/
3856
3857 2000-05-19  Phil Edwards  <pme@sourceware.cygnus.com>
3858
3859         * acinclude.m4:  Clean up comments on newer checks.
3860           (GLIBCPP_CHECK_COMPILER_VERSION):  Check for system_header
3861           pragma support.  Remove WERRORSUPPRESS variable, add WERROR.
3862         * aclocal.m4:  Regenerate.
3863         * configure:  Regenerate.
3864         * Makefile.in:  Regenerate.
3865         * libio/Makefile.in:  Regenerate.
3866         * math/Makefile.in:  Regenerate.
3867         * src/Makefile.am:  Tell make's WERROR to depend on configure's WERROR.
3868         * src/Makefile.in:  Regenerate.
3869         * docs/configopts.html:  Document changes to --enable names.
3870
3871 2000-05-18  Chip Salzenberg  <chip@valinux.com>
3872
3873         * bits/ostream.tcc (_S_pad_char): Function template should not be
3874         static.
3875         * bits/streambuf.tcc (_S_copy_streambufs): Likewise.
3876         * src/string-inst.cc (__destroy_aux): Instantiate for string*.
3877
3878 2000-05-18  Nathan C. Myers  <ncm@cantrip.org>
3879
3880         * mkcshadow: Change C_Swamp to C_legacy.
3881         * shadow/*: Same.
3882         * shadow/bits/*: Same.
3883         s/C_Swamp/C_legacy/g
3884         s/SWAMP/LEGACY/g
3885         s/_Shadow/_shadow/g
3886
3887 2000-05-18  Anthony Williams  <anthony@anthonyw.cjb.net> 
3888
3889         * bits/locale_facets.tcc (num_get::_M_extract): Change char* to
3890         const char*.
3891         * src/string-inst.cc (string::_S_find): Same.
3892         
3893 2000-05-18  Benjamin Kosnik  <bkoz@gnu.org>
3894
3895         * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Change to
3896         --enable-cshadow-headers. Add output messages.
3897         (GCC_ENABLE_LONG_LONG): Change to --enable-long-long, no
3898         underscores (like the rest of the enable options.) Add output messages.
3899         * aclocal.m4: Regenerate.
3900         * configure: Regenerate.
3901         * configure.in: Touch.
3902         
3903 2000-05-17  Benjamin Kosnik  <bkoz@cygnus.com>
3904
3905         * mkcheck.in: Enable shared library testing.
3906
3907 2000-05-17  Nathan C. Myers  <ncm@cantrip.org>
3908
3909         * bits/std_cmath.h: fix sqrt(float)
3910
3911 2000-05-16  Loren J. Rittle  <ljrittle@acm.org>
3912
3913         * bits/std_cassert.h: Use system_header pragma.
3914         * bits/std_cctype.h: Likewise.
3915         * bits/std_cerrno.h: Likewise.
3916         * bits/std_cfloat.h: Likewise.
3917         * bits/std_climits.h: Likewise.
3918         * bits/std_clocale.h: Likewise.
3919         * bits/std_cmath.h: Likewise.
3920         * bits/std_csetjmp.h: Likewise.
3921         * bits/std_csignal.h: Likewise.
3922         * bits/std_cstdarg.h: Likewise.
3923         * bits/std_cstddef.h: Likewise.
3924         * bits/std_cstdio.h: Likewise.
3925         * bits/std_cstdlib.h: Likewise.
3926         * bits/std_cstring.h: Likewise.
3927         * bits/std_ctime.h: Likewise.
3928         * bits/std_cwchar.h: Likewise.
3929         * bits/std_cwctype.h: Likewise.
3930         * bits/std_exception.h: Likewise.
3931         * bits/std_new.h: Likewise.
3932         * bits/std_typeinfo.h: Likewise.
3933         * shadow/bits/std_cassert.h: Likewise.
3934         * shadow/bits/std_cctype.h: Likewise.
3935         * shadow/bits/std_cerrno.h: Likewise.
3936         * shadow/bits/std_cfloat.h: Likewise.
3937         * shadow/bits/std_climits.h: Likewise.
3938         * shadow/bits/std_clocale.h: Likewise.
3939         * shadow/bits/std_cmath.h: Likewise.
3940         * shadow/bits/std_csetjmp.h: Likewise.
3941         * shadow/bits/std_csignal.h: Likewise.
3942         * shadow/bits/std_cstdarg.h: Likewise.
3943         * shadow/bits/std_cstddef.h: Likewise.
3944         * shadow/bits/std_cstdio.h: Likewise.
3945         * shadow/bits/std_cstdlib.h: Likewise.
3946         * shadow/bits/std_cstring.h: Likewise.
3947         * shadow/bits/std_ctime.h: Likewise.
3948         * shadow/bits/std_cwchar.h: Likewise.
3949         * shadow/bits/std_cwctype.h: Likewise.
3950         * shadow/bits/wrap_libio.h: Likewise.
3951         * shadow/bits/wrap_unistd.h: Likewise.
3952         * shadow/sys/cdefs.h: Likewise.
3953
3954 2000-05-16  Nathan C. Myers  <ncm@cantrip.org>
3955
3956         It appears that gcc-2.96 supports the keyword "and" now.
3957         * bits/std_ciso646.h: remove.
3958         * std/ciso646: gut.
3959         * testsuite/17_intro/header_ciso646.c: enable testing.
3960         * src/Makefile.am, src/Makefile.in: remove mention of
3961         bits/std_ciso646.h
3962
3963 2000-05-16  Nathan C. Myers  <ncm@cantrip.org>
3964        
3965        * mkcshadow: fix typo s/_C_Swamp_/_C_Swamp/.
3966
3967 2000-05-16  Phil Edwards  <pme@sourceware.cygnus.com>
3968
3969         * acinclude.m4:  Fix typo, switch to decaf...
3970         * aclocal.m4:  Regenerate.
3971         * configure:  Regenerate.
3972
3973 2000-05-16  Phil Edwards  <pme@sourceware.cygnus.com>
3974
3975         * acinclude.m4 (GLIBCPP_ENABLE_SHADOW):  New macro, stub.
3976         * aclocal.m4:  Regenerate.
3977         * configure.in:  Call.
3978         * configure:  Regenerate.
3979         * docs/configopts.html:  Stub documentation.
3980
3981 2000-05-14  Nathan Myers  <ncm@cantrip.org>
3982
3983         * mkcshadow: build in more-correct directory, create cshadow/
3984         directory if needed, report progress.
3985
3986 2000-05-14  LLeweLLyn Reese  <llewelly@dbritsch.dsl.xmission.com>
3987
3988         * src/Makefile.am: Fix tr commands.
3989         * src/Makefile.am: Remove references to [w]stringCTORDUPAL.[lo,cc]
3990         * src/string-inst.cc: Remove extra instantiation of
3991           S::basic_string(S::size_type, C, S::allocator_type const&);
3992         * src/string-inst.cc: Remove extra template keyword.
3993
3994 2000-05-14  Loren J. Rittle  <ljrittle@acm.org>
3995
3996         * config/bsd/bits/ctype_base.h: Add support for plain BSD4.4.
3997         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Enhance bsd tests.
3998         * aclocal.m4: Regenerate.
3999         * configure: Regenerate.
4000         * */Makefile.in: Regenerate.
4001
4002 2000-05-11  Phil Edwards  <pme@sourceware.cygnus.com>
4003
4004         * acinclude.m4:  Fix minor typo with ctypes, add more sanity to
4005           enable-cxx-flags, and remove GLIBCPP_ENABLE_NAMESPACES altogether.
4006         * aclocal.m4:  Regenerate.
4007         * configure.in:  Non-blank arguments break fewer Linuxes.
4008         * configure:  Regenerate.
4009         * src/Makefile.am:  Re-order AC_CXXFLAGS components.
4010         * src/Makefile.in:  Regenerate.
4011
4012 2000-05-10  Benjamin Kosnik  <bkoz@redhat.com>
4013
4014         * bits/std_cmath.h: Tweaks.
4015         * math/mathconf.h: Tweaks and fixes for HP-UX 11.
4016         (sqrtf): Define away iff !builtin and !in <math.h>. 
4017         (sinf): Same.
4018         (cosf): Same.
4019         (fabsf): Same.
4020         At some point this directory should be converted to c++, the
4021         autoconf tests should be run by the c++ compiler (not c), and
4022         <cmath> should be used instead of math.h.
4023         Move declaration of nan() here.
4024         * math/complex-stub.h (cabsl): Remove nan() declaration.
4025
4026         Finish up FreeBSD4.0 support.
4027         * config/bsd/ctype.cc: Scope out toupper, tolower calls.
4028         * config/generic/ctype.cc: And here.
4029         * testsuite/21_strings/char_traits.cc (test02): Guard with
4030         _GLIBCPP_USE_WCHAR_T.
4031
4032         via Phil Edwards  <pme@sourceware.cygnus.com>
4033         * bits/std_cctype.h: Remove _GLIBCPP_USE_NAMESPACES.
4034         * acconfig.h: And here.
4035         * acinclude.m4: Same.
4036         * testsuite/27_io/istream.cc: And here.
4037         * testsuite/27_io/ostream.cc: And here.
4038
4039 2000-05-09  Benjamin Kosnik  <bkoz@gnu.org>
4040
4041         * acinclude.m4 (GLIBCPP_CHECK_CPU): Change powerpc bits to
4042         -mcpu=powerpc.
4043         * src/Makefile.am: Disable ENABLE_CXX_FLAGS stuff for the moment.
4044         
4045         * config/generic/bits/ctype_specializations.h (ctype<char>::is):
4046         Make more generic.
4047
4048         * config/bsd: New directory.
4049         * config/bsd/ctype.cc: New.
4050         * config/bsd/bits/ctype_base.h (ctype_base): New.
4051         * config/bsd/bits/ctype_specializations.h: New.
4052         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add bsd tests.
4053         
4054 2000-05-09  Phil Edwards  <pme@sourceware.cygnus.com>
4055
4056         * acinclude.m4:  New macro, GLIBCPP_ENABLE_CXX_FLAGS.
4057         * configure.in:  Call.
4058         * src/Makefile.am:  Append results of macro to AC_CXXFLAGS.
4059         * aclocal.m4:  Regenerate.
4060         * configure:  Ditto.
4061         * src/Makefile.in:  Ditto.
4062         * docs/configopts.html:  Document.
4063         * docs/download.html:  Fix typo (close quote).
4064         * docs/footer.html:  Update.
4065
4066 2000-05-09  Loren J. Rittle  <ljrittle@acm.org>
4067
4068         * backward/iostream.h: Expose endl.  Guard wide types.
4069         * src/Makefile.am (headers): Update list to match files.
4070         * src/Makefile.in: Regenerate.
4071
4072 2000-05-09  Vadim Egorov  <egorovv@mailandnews.com>
4073             Benjamin Kosnik  <bkoz@gnu.org>
4074             Nathan Myers  <ncm@cantrip.org>
4075             Dietmar Kuehl  <dietmar_kuehl@yahoo.com> 
4076
4077         * bits/streambuf.tcc (basic_streambuf::xsgetn): Fix uflow case.
4078         (basic_streambuf::xsputn): Make consistent.
4079         * testsuite/27_io/filebuf.cc: Add tests.
4080         
4081 2000-05-08  Steven King  <sxking@uswest.net>
4082
4083         * bits/char_traits.h: Use wchar_t utility functions for
4084         char_traits<wchar_t> methods.
4085         * testsuite/21_string/char_traits.cc: New (test02): test
4086         char_traits<wchar_t>
4087
4088 2000-05-08  Benjamin Kosnik  <bkoz@cygnus.com>
4089
4090         * acinclude.m4 (GLIBCPP_CXXFLAGS): Add bits for solaris2.8.
4091
4092         * bits/fstream.tcc (filebuf::_M_init_filebuf): Don't set
4093         _M_buf_size based on macro, instead use _M_buf_size_opt.
4094         * bits/std_streambuf.h (basic_streambuf): Add _M_buf_size_opt.
4095         (basic_streambuf()): Set _M_buf_size_opt.
4096         * testsuite/27_io/filebuf.cc (filebuf): Use _M_buf_size_opt
4097         instead of _M_buf_size.
4098
4099 2000-05-04  Branko Cibej  <branko.cibej@hermes.si>
4100
4101         * src/complex_io.cc: Don't instantiate inserters and extractors
4102         for wide-character streams unless _GLIBCPP_USE_WCHAR_T is defined.
4103
4104 2000-05-03  Phil Edwards  <pme@sourceware.cygnus.com>
4105             Felix Natter <fnatter@gmx.net>
4106
4107         * docs/footer.html:  Update to see if it takes effect.
4108         * docs/thanks.html:  More people.
4109         * docs/17_intro/headers_cc.txt:  Copy from testsuite, since that can't
4110           be seen from the web pages.  Rename for browser-friendliness...
4111         * docs/17_intro/howto.html:  ...and update here.
4112         * docs/17_intro/porting-howto.html:  Changes from Felix.
4113         * docs/gccrebuild.html:  Mention v3->egcs move.
4114         * docs/faq/index.html:  Ditto.  Also misc tweaks and URL updates.
4115         * docs/faq/index.txt:  Regenerate.
4116
4117 2000-05-01  Benjamin Kosnik  <bkoz@redhat.com>
4118
4119         * config/cpu/powerpc/bits/atomicity.h (__exchange_and_add): More
4120         fixes.
4121
4122 2000-05-01  Vadim Egorov  <egorovv@@mailandnews.com>
4123
4124         * bits/char_traits.h: Fix parameter types.
4125         * bits/string.tcc: Avoid traits_type::move.
4126
4127 2000-05-01  Benjamin Kosnik  <bkoz@haight.constant.com>
4128
4129         * src/Makefile.am (AC_CXXFLAGS): Add CPUFLAGS here.
4130         * src/Makefile.in: Regenerate.
4131         * acinclude.m4 (GLIBCPP_ENABLE_DEBUG): Revert.
4132
4133 2000-04-30  Steven King <sxking@uswest.net>
4134
4135         * bits/locale_facets.h: Fix syntax  error.
4136         * bits/std_fstream.h: ditto
4137
4138 2000-04-30  Benjamin Kosnik  <bkoz@gnu.org>
4139
4140         * config/cpu/powerpc/bits/atomicity.h (__compare_and_swap): Fix typo.
4141
4142         * mknumeric_limits (trait_name): Fix copyright notice.
4143         * src/gen-num-limits.cc: Explicitly instantiate epsilon and
4144         round_error data members of struct value. This works around
4145         weak-linking issues on AIX, HPUX.
4146
4147 2000-04-29  Phil Edwards  <pme@sourceware.cygnus.com>
4148
4149         * docs/download.html:  Add link to list of mirror sites.
4150
4151 2000-04-28  Loren J. Rittle  <ljrittle@acm.org>
4152
4153         * mkcheck.in: Rely on exit status instead of the presence of a
4154         core file.  Added comments on how/where to save core and exe
4155         files.  Move shell wildcards outside quotes and fix core path.
4156         
4157 2000-04-27  scott snyder  <snyder@fnal.gov>
4158
4159         * src/misc-inst.cc: Explicitly instantiate ifstream and ofstream
4160         classes.
4161
4162 2000-04-26  Nathan C. Myers  <ncm@cantrip.org>
4163
4164         * bits/basic_string.h: include <bits/atomicity.h> instead
4165         of <atomicity.h>, and use the uglified names.
4166         * config/cpu/*/atomicity.h: replace with bits/atomicity.h;
4167         uglify names, eliminate dependence on <inttypes.h>.
4168         * src/Makefile.in, src/Makefile.am: refer to correct place
4169         for atomicity.h header.
4170
4171 2000-04-25 Steven King <sxking@uswest.net>
4172
4173         * bits/basic_string.h: Fix syntax error.
4174
4175 2000-04-25  Benjamin Kosnik  <bkoz@redhat.com>
4176
4177         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Improve checks for
4178         USE_LONG_DOUBLE.
4179         (GLIBCPP_ENABLE_DEBUG): If alpha, use -gdwarf-2.
4180         * math/Makefile.am (EXTRA_LONG_DOUBLE_yes): Add all the long
4181         versions to this as copysignl is needed anyway for these targets.
4182         * math/Makefile.in: Regenerate.
4183         
4184         * bits/streambuf.tcc (streambuf::xsgetn): Tweak.
4185         * bits/fstream.tcc (underflow): Cast to libio types.
4186         * bits/basic_file.h (seekoff): Fixes for alpha: use __c_streamoff.
4187         * config/c_io_libio.cc (seekoff): And here.
4188         
4189 2000-04-24  Loren J. Rittle  <ljrittle@acm.org>
4190
4191         * mkcheck.in: Report compiler version used for test.  Find
4192         the built _G_config.h instead of any old installed version.
4193
4194 2000-04-24  Loren J. Rittle  <ljrittle@acm.org>
4195
4196         * config/generic/ctype.cc (do_toupper): Remove dependence on
4197         non-portable/non-existent lookup table.
4198         (do_tolower): Same.
4199         
4200 2000-04-24  Nathan Myers  <ncm@cantrip.org>
4201
4202         * src/string-inst.cc: More fixing.
4203
4204 2000-04-24  Benjamin Kosnik  <bkoz@gnu.org>
4205
4206         * bits/stl_iterator.h: Pedantic fixing.
4207         * bits/std_sstream.h: And here.
4208         * bits/string.tcc: And here.
4209
4210 2000-04-24  Felix Natter <fnatter@gmx.net> 
4211
4212         * docs/17_intro/howto.html: Add bits.
4213         * docs/17_intro/porting-howto.html: New file.
4214         
4215 2000-04-24  Branko Cibej  <branko.cibej@hermes.si>
4216
4217         * acinclude.m4(GLIBCPP_CHECK_WCHAR_T_SUPPORT): Expand
4218         @libinst_wstring_la@ to libinst-wstring.la when specializing for
4219         wchar_t, to empty string otherwise.
4220         * src/Makefile.am: (EXTRA_LTLIBRARIES): New.
4221         (sources): Remove $(string_sources) and $(wstring_sources).
4222         (libstdc___la_LIBADD): Add libinst-string.la and @libinst_wstring_la@.
4223         (libstdc___la_DEPENDENCIES): New.
4224         (libinst_string_la_SOURCES, libinst_wstring_la_SOURCES): New.
4225
4226 2000-04-20  Benjamin Kosnik  <bkoz@redhat.com>
4227
4228         * bits/std_sstream.h: Tweak formatting.
4229         * bits/std_fstream.h: Make types public.
4230
4231         * testsuite/27_io/streambuf.cc: Fix for alpha.
4232
4233         Brad Garcia <bgarcia@laurelnetworks.com>
4234         * bits/locale_facets.h (numpunct::numpunct(size_t)): Fix bool
4235         initialization.
4236         * testsuite/27_io/ios_manip_fmtflags.cc (test02): Add test for
4237         bool formatting.
4238         
4239 2000-04-19  Nathan Myers  <ncm@cantrip.org>
4240
4241         * src/string-inst: consolidate _S_create,
4242         destroy, leak, clone members into stringMAIN and stringMUTATE
4243         object files.
4244         * src/Makefile.am: Above, and eliminate dependence on
4245         wstring-inst.cc.
4246         * src/wstring-inst.cc: Remove.
4247
4248 2000-04-18  Benjamin Kosnik  <bkoz@redhat.com>
4249
4250         * src/Makefile.am (AC_CXXFLAGS): Activate debugging code, again.
4251         Add flags for specialized rules dealing with instantiations.
4252         
4253         * src/string-inst.cc: Add instantiations missing from shared
4254         libraries--see stringEQ, stringCONSC.
4255         * src/Makefile.am (wstring_sources): Add.
4256         (string_sources): Same.
4257         * src/Makefile.in: Regenerate.
4258         
4259         * stl/*: Integrate contents of this directory into top-level
4260         directories.
4261         * ext/bvector hash_map hash_set rope ropeimpl.h slist
4262         stl_bvector.h stl_hash_fun.h stl_hashtable.h stl_rope.h tree: Add.
4263         * bits/pthread_allocimpl.h std_algorithm.h std_bitset.h
4264         std_deque.h std_functional.h std_iterator.h std_list.h std_map.h
4265         std_memory.h std_numeric.h std_queue.h std_set.h std_stack.h
4266         std_stdexcept.h std_strstream.h std_utility.h std_vector.h
4267         stl_algo.h stl_algobase.h stl_alloc.h stl_config.h stl_construct.h
4268         stl_deque.h stl_function.h stl_heap.h stl_iterator.h
4269         stl_iterator_base.h stl_list.h stl_map.h stl_multimap.h
4270         stl_multiset.h stl_numeric.h stl_pair.h stl_pthread_alloc.h
4271         stl_queue.h stl_range_errors.h stl_raw_storage_iter.h stl_relops.h
4272         stl_set.h stl_stack.h stl_string_fwd.h stl_tempbuf.h stl_threads.h
4273         stl_tree.h stl_uninitialized.h stl_vector.h type_traits.h: Add.
4274         * backward/algo.h algobase.h alloc.h bvector.h defalloc.h deque.h
4275         function.h hash_map.h hash_set.h hashtable.h heap.h iterator.h
4276         list.h map.h multimap.h multiset.h pair.h rope.h set.h slist.h
4277         stack.h tempbuf.h tree.h vector.h: Add.
4278         * README (file): Update.
4279         * docs/documentation.html: README not being found.
4280         * src/Makefile.am (sources): Take out stl directory.
4281         * mkcheck.in (SRC_DIR): And here.
4282         * src/Makefile.in: Regenerate.
4283         
4284 2000-04-18  Levente Farkas  <lfarkas@mindmaker.hu>
4285
4286         * stl/bits/stl_function.h: Add bits so that const and non-const
4287         both work.
4288         
4289 2000-04-18  scott snyder  <snyder@fnal.gov>
4290
4291         * stl/bits/stl_map.h (class map): Fix default for _Alloc template
4292         parameter.  Get rid of use of __STL_DEFAULT_ALLOCATOR and
4293         __STL_LIMITED_DEFAULT_TEMPLATES macros.
4294         * stl/bits/stl_multimap.h (class multimap): Likewise.  Get rid of
4295         use of __STL_DEPENDENT_DEFAULT_TMPL macro.
4296
4297 2000-04-18  scott snyder  <snyder@fnal.gov>
4298
4299         * stl/bits/stl_config.h (__STL_DEPENDENT_DEFAULT_TMPL): Deleted
4300         this macro.
4301
4302         * stl/ext/hash_map (class hash_map, class hash_multimap): Get rid
4303         of use of __STL_DEPENDENT_DEFAULT_TMPL macro.
4304         * stl/ext/hash_set (class hash_set, class hash_multiset):
4305         Likewise.
4306         * stl/bits/stl_function.h (struct constant_unary_fun, struct
4307         constant_binary_fun): Likewise.
4308         * stl/bits/stl_queue.h (class queue, class priority_queue): Likewise.
4309         * stl/bits/stl_stack.h (class stack): Likewise.
4310         * stl/bits/stl_set.h (class set): Likewise.
4311         * stl/bits/stl_multiset.h (class multiset): Likewise.
4312
4313         * stl/bits/stl_iterator.h (class reverse_bidirectional_iterator,
4314         class reverse_iterator): Get rid of use of
4315         __STL_LIMITED_DEFAULT_TEMPLATES macro.
4316
4317         * stl/bits/stl_config.h (__STL_DEFAULT_ALLOCATOR): Deleted this
4318         macro.
4319
4320         * stl/bits/stl_deque.h (class deque): Get rid of use of
4321         __STL_DEFAULT_ALLOCATOR macro.
4322         * stl/bits/stl_list.h (class list): Likewise.
4323         * stl/bits/stl_multiset.h (class multiset): Likewise.
4324         * stl/bits/stl_set.h (class set): Likewise.
4325         * stl/bits/stl_string_fwd.h (class basic_string): Likewise.
4326         * stl/bits/stl_tree.h (class _Rb_tree, class rb_tree): Likewise.
4327         * stl/bits/stl_vector.h (class vector): Likewise.
4328         * stl/ext/ropeimpl.h (rotate): Likewise.
4329         * stl/ext/hash_map (class hash_map, class hash_multimap):
4330         Likewise.
4331         * stl/ext/hash_set (class hash_set, class hash_multiset):
4332         Likewise.
4333         * stl/ext/slist (class slist): Likewise.
4334         * stl/ext/stl_bvector.h (class bit_vector): Likewise.
4335         * stl/ext/stl_rope.h (class rope): Likewise.
4336         * src/locale.cc (_Impl): Likewise.
4337         * src/localename.cc (_Impl): Likewise.
4338         * bits/localefwd.h (_Impl): Likewise.
4339
4340 2000-04-18  Phil Edwards  <pme@sourceware.cygnus.com>
4341
4342         * docs/install.html:  Cleanup, minor changes.
4343         * docs/17_intro/howto.html:  Ditto.
4344
4345 2000-04-18  Nathan Myers  <ncm@cantrip.org>
4346
4347         * bits/basic_string.h: Remove "inline" from member _S_find.
4348         
4349         * src/string-inst.cc: Rewrite to reflect non-inline template
4350         instantiations in string.tcc.
4351         
4352         * src/stringADDCS.cc, stringADDPS.cc, stringADDSC.cc, stringADDSP.cc,
4353         stringADDSS.cc, stringBIST.cc, stringBOST.cc, stringCHTR.cc,
4354         stringEQPS.cc, stringEQSP.cc, stringEQSS.cc, stringEXTRA.cc,
4355         stringGEPS.cc, stringGESP.cc, stringGESS.cc, stringGETLI.cc,
4356         stringGTPS.cc, stringGTPS.cc, stringGTSP.cc, stringGTSS.cc,
4357         stringINSER.cc, stringLEPS.cc, stringLESP.cc, stringLESS.cc,
4358         stringLESP.cc, stringLTPS.cc, stringLTPS.cc, stringLTSP.cc,
4359         stringLTSS.cc, stringMAIN.cc, stringNEPS.cc, stringNESP.cc,
4360         stringNESS.cc, stringSCOPY.cc: Remove.
4361         * src/wstringADDCS.cc, etc: Remove.
4362
4363         Benjamin Kosnik  <bkoz@haight.constant.com>
4364         * src/Makefile.am: Modify to reflect above.
4365         * src/Makefile.in: Regenerate.
4366         
4367 2000-04-17  Benjamin Kosnik  <bkoz@cygnus.com>
4368
4369         * docs/install.html (--enable-libstdcxx-v3): Clean up install docs.
4370
4371 2000-04-13  Benjamin Kosnik  <bkoz@haight.cygnus.com>
4372
4373         * bits/std_fstream.h (filebuf::sync): Need to use the abstracted
4374         io interface here instead of the libio particulars.
4375
4376         * config/threads-posix.h: Consistency with stl_config.h.
4377
4378         * mkcheck.in (CXX_FLAG): Add DDEBUG_ASSERT back in.
4379         
4380 2000-04-13  Loren J. Rittle  <ljrittle@acm.org>
4381
4382         * mknumeric_limits: Rename generic type template parameter name
4383         '_T' to '_Tp'.
4384         * stl/bits/type_traits.h: Ditto.
4385
4386 2000-04-06  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
4387
4388         * mkcheck.in (SRC_DIR): Change default mkcheck behavior, so that
4389         it is more useful for --enable-libstdcxx-v3. Use the built
4390         compilers with v3, instead of compilers in PATH, and don't
4391         re-include include directories for checking the install.
4392
4393 2000-04-05  Benjamin Kosnik  <bkoz@cygnus.com>
4394
4395         * src/Makefile.am (AM_CXXFLAGS): Disable NAMESPACES, as this is on
4396         by default when using --enable-libstdcxx-v3.
4397         * src/Makefile.in: Regenerate.
4398         * configure.in: Disable GLIBCPP_ENABLE_NAMESPACES,
4399         GLIBCPP_ENABLE_RELIBGCC for --enable-libstdcxx-v3 flag.
4400         * configure: Regenerate.
4401         * mkcheck.in: Deal with NAMESPACES.
4402         
4403 2000-04-05  Petter Urkedal  <petter@matfys.lth.se>
4404
4405         * src/cmath.cc: New file...
4406         (pow(*, int)): Define functions...
4407         * src/Makefile.am (sources): ...register file.
4408         * src/Makefile.in: Regenerate.
4409         * bits/std_cmath.h (pow): ...declare functions here, and remove
4410         old definitions.
4411
4412 2000-04-04  Benjamin Kosnik  <bkoz@redhat.com>
4413         
4414         * acinclude.m4 (GCC_OBJDIR): Tweaks
4415
4416 2000-04-03  Benjamin Kosnik  <bkoz@redhat.com>
4417         
4418         * acinclude.m4 (GLIBCPP_CHECK_CPU): Add arm configure bits.
4419         * config/cpu/arm: New directory.
4420
4421         Jesper Skov  <jskov@redhat.com>
4422         * config/cpu/arm/atomicity.h: New file.
4423         
4424 2000-03-31  Benjamin Kosnik  <bkoz@redhat.com>
4425
4426         * stl/bits/stl_config.h: Make _STL_THREADS depend on _REENTRANT.
4427         Remove unused bits. Clean.
4428         
4429 2000-03-29  Benjamin Kosnik  <bkoz@cygnus.com>
4430
4431         * testsuite/25_algorithms: New directory.
4432         * testsuite/25_algorithms/min_max.cc: New file.
4433
4434 2000-03-29  scott snyder  <snyder@fnal.gov>
4435
4436         * bits/locale_facets.tcc (do_put): Allow a couple extra digits of
4437         precision beyond that which we get from numeric_limits::digits10.
4438
4439         * stl/bits/stl_algobase.h (max, min): Don't use comparison
4440         operator.
4441
4442         * testsuite/23_containers/bitset_shift.cc: Fix.
4443
4444         * testsuite/27_io/ios_manip_fmtflags.cc (test01): Don't give a
4445         temporary to imbue().
4446
4447         * bits/std_fstream.h (sync): Resync libio's idea of the current
4448         file position with the external file.
4449
4450 2000-03-28  Benjamin Kosnik  <bkoz@cygnus.com>
4451
4452         * testsuite/27_io/istream_extractor_arith.cc.cvs: Fix merge
4453         mistake.
4454
4455         * bits/std_fstream.h (filebuf::is_open): Check for _M_file before
4456         attempting calls to it. 
4457         * bits/fstream.tcc (ctors): Don't call _M_init_filebuf in
4458         ctors. Instead, call _M_init_filebuf ...
4459         (open): Here, as suggested by 27.8.1.3. 
4460         * src/ios.cc (ios_base::Init::Init()): Clean up default filebufs
4461         properly when initializing cout/cin/cerr.
4462
4463 2000-03-27  Russell Davidson  <russell@ehess.cnrs-mrs.fr>
4464
4465         * testsuite/23_containers/multiset.cc (main): Clean up for namespaces.
4466         * testsuite/22_locale/ctype_char_members.cc: And here.
4467         * testsuite/27_io/streambuf.cc (streambuf): And here.
4468         * testsuite/27_io/ostream_inserter_char.cc (test06): And here.
4469         * testsuite/27_io/istream_unformatted.cc (test05): And here.
4470         * testsuite/27_io/istream_extractor_arith.cc: And here.
4471         * testsuite/27_io/ios_manip_basefield.cc (test02): And here.
4472         * testsuite/27_io/ios_base_members_static.cc: And here.
4473         * bits/std_climits.h (_CPP_CLIMITS): Fix typo.
4474
4475 2000-03-27  Chris Faylor  <cgf@cygnus.com>
4476         
4477         * configure.in: Remove setting of CXX if canadian cross.
4478         * configure: Regenerate.
4479
4480 2000-03-27  Nathan Myers  <ncm@zembu.com>
4481
4482         * bits/sstream.tcc: Optimize.
4483         * bits/basic_string.h(string::append): Don't inline.
4484         * bits/string.tcc: Move out-of-line.
4485         
4486 2000-03-27  Phil Edwards  <pme@sourceware.cygnus.com>
4487
4488         * acinclude.m4:  (GLIBCPP_CHECK_COMPILER_VERSION)  When using <2.96,
4489           define WERRORSUPPRESS so that the inlining warnings won't kill us.
4490         * aclocal.m4:  Regenerate.
4491         * configure:  Regenerate.
4492         * src/Makefile.am:  Use WERRORSUPPRESS for the files that need it.
4493         * src/Makefile.in:  Regenerate.
4494
4495         * docs/install.html:  Almost complete rewrite.
4496
4497 2000-03-25  Phil Edwards  <pme@sourceware.cygnus.com>
4498
4499         * docs/install.html:  Explain -Werror problem at "#Werror" mark.
4500         * docs/faq/index.html:  Testsuite will die horribly if new libgcc.a
4501           not installed.
4502         * docs/faq/index.txt:  Regenerate.
4503
4504 2000-03-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br> 
4505
4506         * src/Makefile.am (libio_headers_install): Fix.
4507         * src/Makefile.in: Regenerate.
4508         
4509 2000-03-24  Benjamin Kosnik  <bkoz@cygnus.com>
4510
4511         * docs/17_intro/RELEASE-NOTES: Fix typos.
4512         * docs/index.html: Update.
4513         * docs/17_intro/BUGS: Update.
4514         * docs/status.html: Update for 2.90.8 release.
4515
4516 2000-03-23  Phil Edwards  <pme@sourceware.cygnus.com>
4517
4518         * Makefile.am:  Better error message when missing libgcc2.ready.
4519         * Makefile.in:  Regenerate.
4520         * acinclude.m4:  Fastidious nitpicking reformatting.
4521         * aclocal.m4:  Regenerate.
4522         * configure:  Regenerate.
4523         * mkcheck.in:  Must use same namespace settings as the library being
4524           tested.  Also log ST_FLAG, since it's being passed.
4525         * docs/install.html:  Add brief chunk on configuration.
4526         * docs/17_intro/RELEASE-NOTES:  Fix minor Cygwin typo.
4527         * docs/23_containers/howto.html:  Mention MT-safe string.
4528         * docs/faq/index.html:  Minor updates.
4529         * docs/faq/index.txt:  Regerarate.
4530
4531 2000-03-22  Benjamin Kosnik  <bkoz@cygnus.com>
4532
4533         * bits/sstream.tcc (seekoff): Fix for gptr() null cases.
4534         Return newoff. 
4535         * bits/fstream.tcc (seekoff): Sync.
4536         (seekpos): Sync.
4537         * testsuite/27_io/ostream_unformatted.cc: New file.
4538         * testsuite/27_io/stringbuf.cc: Fix.
4539         * testsuite/27_io/istream_unformatted.cc (test04): Fix.
4540         
4541         * config/newlib/bits/ctype_base.h (ctype_base): Fix.
4542         * config/newlib/ctype.cc (ctype): Change __ctype -> _ctype_.
4543
4544         * src/complex_io.cc (operator>>complex): Tweak.
4545
4546         * config/cpu/alpha/atomicity.h: Explicitly typedef uint32_t, int32_t if
4547         <inttypes.h> does not exist.
4548         * config/cpu/sparc/sparc64/atomicity.h: Same.
4549         * config/cpu/sparc/sparc32/atomicity.h: Same.
4550         * config/cpu/powerpc/atomicity.h: Same.
4551         * config/cpu/i386/atomicity.h: Same.
4552         * config/cpu/generic/atomicity.h: Same.
4553         * configure.in: Check for inttypes.h.
4554         * configure: Regnerate.
4555
4556 2000-03-21  Benjamin Kosnik  <bkoz@cygnus.com>
4557
4558         * bits/std_sstream.h (_M_init_stringbuf): Set initial ate position
4559         correctly.
4560         * testsuite/27_io/ostream_inserter_char.cc (test06): Add tests for ate.
4561
4562         * docs/17_intro/RELEASE-NOTES (New): Add bits.
4563
4564         * configure.in: Move AC_CHECK_HEADERS to a point where we know we
4565         are compiling natively.
4566
4567         * libio/*: Update to CVS libio from egcs.
4568         
4569 2000-03-21  Phil Edwards  <pme@sourceware.cygnus.com>
4570
4571         * docs/download.html:  Document use of -z9 for CVS.
4572         * docs/index.html:  Add target date (no link) for future snapshot.
4573
4574 2000-03-21  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4575
4576         * bits/slice_array.h: Rename generic type template parameter name
4577         '_T' to '_Tp'. 
4578         * bits/mask_array.h: Ditto
4579
4580 2000-03-20  Benjamin Kosnik  <bkoz@cygnus.com>  
4581
4582         * *: Change copyright holder from "Cygnus Solutions" to "Free
4583         Software Foundation, Inc."
4584         
4585         * docs/configopts.html: Explain what "hella versions" means.
4586         * docs/install.html: Some tweaks--nice job on this Phil.
4587         * docs/documentation.html: Add a direct link to configuration options.
4588
4589         * src/Makefile.am (OPTIMIZE_CXXFLAGS): Add in extras.
4590         * docs/17_intro/RELEASE-NOTES (New): Add.
4591         * bits/c++config.h (__GLIBCPP__): Bump version.
4592
4593         * config/c_io_libio.cc (__basic__file(__c_lock*)): Change argument
4594         type to match prototype.
4595
4596 2000-03-20  Phil Edwards  <pme@sourceware.cygnus.com>
4597
4598         * docs/install.html:  Update for new funky build procedure.  Move
4599           description of 'configure' options to...
4600         * docs/configopts.html:  ...here.  New file.
4601         * docs/17_intro/howto.html:  Updates for new snapshot.
4602         * docs/20_util/howto.html:  Ditto.
4603         * docs/21_strings/howto.html:  Ditto.
4604         * docs/21_strings/stringtok_std_h.txt:  Fix example typos.
4605         * docs/22_locale/howto.html:  Ditto.
4606         * docs/23_containers/howto.html:  Ditto.
4607         * docs/faq/index.html:  Ditto.
4608
4609 2000-03-18  Petter Urkedal  <petter@matfys.lth.se>
4610             Benjamin Kosnik  <bkoz@gnu.org>
4611         
4612         * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_SUPPORT): Move code for main
4613         to the right place.
4614         * aclocal.m4: Regenerate.
4615         * configure: Regenerate.
4616
4617 2000-03-16  Benjamin Kosnik  <bkoz@cygnus.com>
4618             scott snyder  <sss@karma.fnal.gov>
4619         
4620         * config/c_io_libio.h: Add __c_lock.
4621         * config/threads-no.h: Same here.
4622         * config/threads-posix.h: Add __mutext_type typedef.
4623         * config/c_io_libio.cc: basic_file ctor takes lock arg. 
4624         * bits/basic_file.h: Ctor takes lock arg. 
4625         * bits/std_fstream.h: Add _M_lock.
4626         * bits/fstream.tcc: Supply it to basic_file ctor.
4627
4628         * mkcheck.in (resultstext): Change [[ to [.
4629
4630         * testsuite/27_io/ostream_inserter_char.cc (test06): Tweak.
4631
4632         * bits/locale_facets.h: Tweak.  
4633
4634         * stl/bits/stl_config.h: Fix defines.
4635         
4636 2000-03-16  Benjamin Kosnik  <bkoz@cygnus.com>
4637
4638         * mkcheck.in (INC_PATH): Add paths from cpu_include_dir to find
4639         atomicity.h
4640         * configure: Regenerate.
4641         * aclocal.m4: Regnerate.
4642         
4643 2000-03-16  Nathan Myers  <ncm@zembu.com>
4644
4645         * bits/string.tcc: Add MT support.
4646         * bits/basic_string.h: Same.
4647         
4648 2000-03-16  Phil Edwards  <pme@sourceware.cygnus.com>
4649
4650         * configure.in:  Make --enable-namespaces and -libgcc-rebuild=../..
4651           the defaults.
4652         * configure:  Regenerate.
4653
4654         * config/solaris/solaris2.7/ctype.cc:  Fix unsigned/signed comparison.
4655
4656 2000-03-16  Phil Edwards  <pme@sourceware.cygnus.com>
4657
4658         * acinclude.m4 (GLIBCPP_CHECK_CTYPE):  If Sol2.5 ctype is found, keep
4659           checking for 2.[67].  (GLIBCPP_ENABLE_RELIBGCC):  No longer ignore
4660           any defaults passed in.
4661         * aclocal.m4:  Regenerate.
4662
4663 2000-03-16  Phil Edwards  <pme@sourceware.cygnus.com>
4664
4665         * mkcheck.in:  Report total successes and failures.
4666
4667 2000-03-15  Benjamin Kosnik  <bkoz@cygnus.com>
4668
4669         * config/cpu: New directory, intended to be used to provide
4670         cpu-specific configuration files. In particular, assembly language
4671         primitives for thread safety.
4672         * config/cpu/alpha: Populate.
4673         * config/cpu/alpha/atomicity.h: New file.
4674         * config/cpu/arm: Populate.
4675         * config/cpu/generic: Populate.
4676         * config/cpu/generic/atomicity.h: New file.
4677         * config/cpu/hppa: Populate.
4678         * config/cpu/i386: Populate.
4679         * config/cpu/i386/atomicity.h: New file, take from i486.
4680         * config/cpu/m68k: Populate.
4681         * config/cpu/mips: Populate.
4682         * config/cpu/powerpc: Populate.
4683         * config/cpu/powerpc/atomicity.h: New file.
4684         * config/cpu/sparc: Populate.
4685         * config/cpu/sparc/sparc32: Populate.
4686         * config/cpu/sparc/sparc64: Populate.
4687         * config/cpu/sparc/sparc32/atomicity.h: New file.
4688         * config/cpu/sparc/sparc64/atomicity.h: New file.       
4689
4690         * src/Makefile.am (myinstallheaders): Add install routines.
4691         * acinclude.m4 (GLIBCPP_CHECK_CPU):Add configuration for the
4692         cpu dir.
4693         * configure.in: Add.
4694
4695         * config/default: Adopt glibc naming conventions, and so move to
4696         * config/generic: Here.
4697         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Modify default case to generic.
4698         
4699 2000-03-15  Bill Thompson  <billt@toast.net>
4700
4701         * testsuite/27_io/ostream_inserter_char.cc (test06): Add test.
4702
4703 2000-03-14  Phil Edwards  <pme@sourceware.cygnus.com>
4704
4705         * docs/17_intro/howto.html:  Add missing "TOC" entry, and new section.
4706
4707         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Fixup.
4708         * aclocal.m4: Regenerate.
4709         * configure: Regenerate.
4710
4711 2000-03-13  scott snyder  <snyder@fnal.gov>
4712             Jason Merrill  <jason@cygnus.com>
4713         
4714         * bits/locale_facets.h (class ctype, class ctype<char>, class
4715         ctype<wchar_t>): More mask fixes.
4716         * testsuite/22_locale/ctype.cc: Test for the problem.
4717
4718 2000-03-13  Benjamin Kosnik  <bkoz@cygnus.com>
4719
4720         * acconfig.h: Add bits.
4721         * configure.in: Move AM_PROG_LIBTOOL up in file.
4722         Tweak cross compiling info. 
4723         * configure: Regenerate.
4724
4725         * mknumeric_limits (XCOMPILE): Echo compilation line for
4726         gen-num-limits.cc
4727
4728         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add aix checks.
4729         * aclocal.m4: Regenerate.
4730         * configure: Regenerate.
4731         * config/aix/ctype.cc (ctype): Tweak.
4732         * config/aix/bits/ctype_base.h (ctype_base): Tweak.
4733         * config/aix/bits/ctype_specializations.h: New file.
4734
4735 2000-03-10  scott snyder  <snyder@fnal.gov>
4736
4737         * stl/bits/stl_vector.h (_M_assign_aux): Fix for __normal_iterator 
4738         conversions.
4739         * testsuite/23_containers/vector_modifiers.cc (test01): Add a
4740         regression test for the problem.
4741
4742 2000-03-09  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
4743         
4744         * testsuite/27_io/streambuf.cc (class testbuf): Same here.      
4745         * bits/fpos.h: And here.
4746         * bits/std_ostream.h: Same here.
4747         * bits/std_istream.h: Same here.
4748         * bits/basic_ios.h: Same here.
4749         * bits/std_fstream.h: Same here.
4750         * bits/sbuf_iter.h (std): Here too.
4751         * bits/std_sstream.h: Make types public.
4752
4753         * src/misc-inst.cc: Use size_t instead of unsigned int. 
4754         * bits/locale_facets.tcc (_S_format): For now, cast to char. I
4755         suppose this should be ctype::narrow... all the ctype<wchar_t>
4756         stuff needs to be cleaned up.
4757
4758 2000-03-09  Phil Edwards  <pme@sourceware.cygnus.com>
4759
4760         * docs/gentop:  Remove entire directory, finally.
4761
4762 2000-03-09  scott snyder  <snyder@fnal.gov>
4763
4764         * bits/std_cmath.h (modf): Fix pointer overrun.
4765         * testsuite/26_numerics/c_math.cc (test04, main): Add a regression 
4766         test for the problem.
4767
4768 2000-03-09  Phil Edwards  <pme@sourceware.cygnus.com>
4769
4770         Looks like changes to the #include'd files must be followed by a
4771         change to the #include'ing files to take effect.  Caveat emptor.
4772         * docs/header.html:  New file, for server-side include.
4773         * docs/footer.html:  New file, for server-side include.
4774         * docs/documentation.html:  Change to use SSI.
4775         * docs/download.html:  Ditto.
4776         * docs/index.html:  Ditto.
4777         * docs/mail.html:  Ditto.
4778         * docs/status.html:  Ditto.
4779         * docs/thanks.html:  Ditto, plus minor updates.
4780         * docs/how.html:  Remove.
4781
4782 2000-03-09  Benjamin Kosnik  <bkoz@gnu.org>
4783
4784         Preliminary alpha-linux support.
4785         * src/locale.cc (ctype<wchar_t>): Use correct types...
4786         * bits/locale_facets.h (ctype<char>): Add __table_type typedef.
4787         (ctype<wchar_t>): Same.
4788         * bits/locale_facets.h (ctype<wchar_t>): Have char and wchar_t
4789         types match for table_size (size_t).
4790
4791         * config/gnu-linux/ctype.cc (ctype): Change char_type to wchar_t
4792         as per char specialization.
4793         * config/*/ctype.cc: Same.
4794         
4795 2000-03-09  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4796
4797         * bits/locale_facets.h (_Ctype<>::mask): Import from base class
4798         _Ctype_nois<>.  Template base classes are never examinated in
4799         first-phase name-lookup. 
4800
4801 2000-03-08  Benjamin Kosnik  <bkoz@gnu.org>
4802
4803         Add Solaris 2.5.1 support.
4804         * config/solaris/solaris2.5/bits/ctype_base.h (ctype_base): And here.
4805         * config/solaris/solaris2.5/ctype.cc: Fixup.
4806         * config/solaris/solaris2.5/bits/ctype_specializations.h: Add.
4807         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add bits for solaris2.5.1.
4808         * aclocal.m4: Regenerate.
4809         * configure: Regenerate.
4810         
4811         * config/default/ctype.cc (ctype): Fixup.
4812
4813 2000-03-07  Benjamin Kosnik  <bkoz@blues.cygnus.com>
4814
4815         * testsuite/27_io/filebuf.cc: Activate init code from yesterday...
4816         * testsuite/27_io/ostream_inserter_arith.cc (testcases): Fix for
4817         non-wchar_t case.
4818
4819 2000-03-07  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4820
4821         * bits/cpp_type_traits.h: Expand on this file purpose.
4822
4823 2000-03-06  Benjamin Kosnik  <bkoz@gnu.org>
4824
4825         * bits/locale_facets.h (ctype<char>): Remove static members, and
4826         re-work initialization code.
4827         (ctype<wchar_t>): Same.
4828         Move _S_touppper to _M_toupper and initialize in ctor.
4829         Move _S_tolower  to _M_tolower and initialize in ctor.  
4830         Move _S_table to _M_ctable and intialize in ctor.
4831         * bits/locale_facets.h (std): And here.
4832         * src/locale.cc (std): Tweak.
4833         * config/gnu-linux/ctype.cc: Change initialization here.
4834         * config/newlib/ctype.cc: And here.
4835         * config/solaris/solaris2.7/ctype.cc: And here.
4836         * config/solaris/solaris2.6/ctype.cc: And here.
4837         
4838         * bits/localefwd.h: Tweak.
4839         * bits/std_streambuf.h: Tweak formatting.
4840
4841         * testsuite/27_io/filebuf.cc: Remove BUFSIZ dependancies.
4842
4843 2000-03-05  Chip Salzenberg  <chip@valinux.com>
4844
4845         * src/misc-inst.cc (basic_iostream<>):  Instantiate.
4846
4847 2000-03-02  Phil Edwards  <pme@sourceware.cygnus.com>
4848             Kevin Atkinson  <kevinatk@home.com> 
4849
4850         Initial grab of SGI's strstream implementation with minor
4851         modifications.
4852         * src/strstream.cc:  New file.
4853         * std/strstream:  New file.
4854         * stl/bits/std_strstream.h:  New file.
4855         * bits/std_streambuf.h:  Add public access.
4856         * src/Makefile.am:  Add strstream sources to list of dependancies.
4857         * src/Makefile.in:  Regenerate.
4858
4859 2000-03-03 2000  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4860
4861         * bits/valarray_meta.h: Fix typo.
4862         
4863 2000-03-02  Alexandre Oliva  <oliva@lsd.ic.unicamp.br> 
4864             Chip Salzenberg  <chip@valinux.com>
4865             Petter Urkedal  <petter@matfys.lth.se>
4866
4867         * src/Makefile.am (myinstallheaders): Hack to avoid
4868         `for i in ; do'.
4869         * src/Makefile.in: Regenerate.
4870         
4871 2000-03-02  Chip Salzenberg  <chip@valinux.com>
4872
4873         * libio/Makefile.an, math/Makefile.an, src/Makefile.am
4874         (LINK): Put quotes around "$(CC)" for libtool link mode,
4875         so libtool will use "-B" options during GCC bootstrap.
4876         * */Makefile.in: Regenerate.
4877         
4878 2000-03-02  Petter Urkedal  <petter@matfys.lth.se>
4879
4880         * config/c_io_libio.h: Enclose it all in ::std.
4881         * bits/basic_string.h (basic_string<>): Make types and
4882         `npos' public.
4883         * mkc++config: Truncate output file before writing.
4884
4885 2000-03-01  Benjamin Kosnik  <bkoz@gnu.org>
4886
4887         * math/cabsf.c (__mycabsf): Rename to cabsf.
4888         * math/cabs.c (__mycabs): Rename to cabs.
4889
4890 2000-02-29  LLeweLLyn Reese  <llewelly@198.dsl.xmission.com>
4891  
4892        * bits/basic_string.h: Move declarations of __out_of_range(),
4893        __length_error() and accompanying macros ...
4894        * bits/exception_support.h: here. (Newly created file).
4895        * bits/basic_string.h: #include <bits/exception_support.h>
4896        * stl/bits/stl_vector.h: #include <bits/exception_support.h>
4897        * src/Makefile.am (headers): Add.
4898        * src/Makefile.in: Regenerate.
4899         
4900 2000-02-29  Benjamin Kosnik  <bkoz@cygnus.com>
4901         
4902         * bits/cpp_type_traits.h: Rename structs so they don't clash with
4903         type_traits.h.
4904         * bits/valarray_array.h: Synch. Fix typos.
4905
4906         * libio/Makefile.am: Change to only compile source files that
4907         config/c_io_libio.cc actually needs.
4908         * libio/Makefile.in: Regnerate.
4909         * libio/PlotFile.hes SFile.h builtinbuf.h editbuf.h floatconv.c
4910         floatio.h fstream.h indstream.h iofclose.c iofdopen.c iofeof.c
4911         ioferror.c iofflush.c iofgetpos.c iofgets.c iofopen.c iofprintf.c
4912         iofputs.c iofread.c iofscanf.c iofsetpos.c ioftell.c iofwrite.c
4913         iogetc.c iogetdelim.c iogetline.c iogets.c ioignore.c iomanip.h
4914         iopadn.c ioperror.c iopopen.c ioprims.c ioprintf.c ioputc.c
4915         ioputs.c ioscanf.c ioseekoff.c ioseekpos.c iosetbuffer.c
4916         iosetvbuf.c iosprintf.c iosscanf.c iostream.h iostrerror.c
4917         ioungetc.c iovfprintf.c iovfscanf.c iovsprintf.c iovsscanf.c
4918         istream.h list.out ostream.h outfloat.c parsestream.h peekc.c
4919         pfstream.h procbuf.h stdiostream.h stream.h streambuf.h strfile.h
4920         strops.c strstream.h: Delete.
4921
4922         * bits/basic_file.h: Stub out or delete unused bits in this
4923         interface.
4924         (filepos_beg): Remove.  
4925         (filepos_cur): Remove.
4926         (filepos_valid): Remove.
4927         * config/c_io_libio.cc: Resynch with the changes to basic_file.
4928
4929 2000-02-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4930
4931         * bits/cpp_type_traits.h: Correct typo.
4932
4933 2000-02-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4934
4935         * bits/cpp_type_traits.h: New file.
4936         
4937         * bits/valarray_array.h: Tweak.  #include <bits/cpp_type_traits.h>
4938         Improve array construction.
4939         (_Array_default_ctor): New dispatcher class. 
4940         (__valarray_default_construct): New function.
4941         (_Array_copy_ctor): New dispatcher class.
4942         (__valarray_copy_construct): New function.
4943         (_Array<>::free_data): Remove.
4944
4945         * src/Makefile.am (headers): Add cpp_type_traits.h
4946         * src/Makefile.in: Regenerate.
4947
4948 2000-02-28  Benjamin Kosnik  <bkoz@cygnus.com>
4949
4950         Prune libio directory to match files in libio/Makefile.
4951         * libio/PlotFile.cc,indstream.cc, isgetsb.cc, sbform.cc,
4952         stream.cc, SFile.cc, ioassign.cc, isscan.cc, sbgetline.cc,
4953         streambuf.cc, builtinbuf.cc, ioextend.cc, osform.cc, sbscan.cc,
4954         strstream.cc, editbuf.cc, iomanip.cc, parsestream.cc,
4955         stdiostream.cc, filebuf.cc, iostream.cc, pfstream.cc,
4956         stdstrbufs.cc, fstream.cc, isgetline.cc, procbuf.cc,
4957         stdstreams.cc: Remove.
4958         * libio/floatio.h, iolibio.h, iostdio.h, iostreamP.h: Remove.
4959         * libio/iofflush_u.c: Remove.
4960         
4961         * libio/dbz: Remove.  
4962         * libio/include: Remove.  
4963         * libio/stdio: Remove.  
4964         * libio/tests: Remove.  
4965         * libio/testsuite: Remove.
4966         
4967         * config/c_io_libio.cc: Add fcntl.h include for Solaris.
4968
4969         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Add bits.
4970         * configure.in: Replace 'grep -e' with 'grep' for Solaris.
4971         * configure: Regenerate.
4972
4973 2000-02-25  Benjamin Kosnik  <bkoz@gnu.org>
4974
4975         Abstract out the underlying "C" io bits.
4976         * bits/std_new.h: Remove <stl_config> include, as well as <cstddef>.
4977         * stl/bits/stl_string_fwd.h: Remove <stddef> include.
4978         * bits/std_cwchar.h: Wrap with _GLIBCPP_USE_WCHAR_T guards. Don't
4979         include <cstddef>.
4980         * stl/bits/stl_config.h: Don't include _G_config.h.
4981
4982         * bits/basic_file.h: Allow for non-inheritance based __basic_files.
4983         * config/c_io_libio.h (_GLIBCPP_BASIC_FILE_INHERITANCE): Define.
4984         * config/c_io_libio.cc: Tweak.
4985
4986         * src/Makefile.am (TOPLEVEL_INCLUDES): Add includedir.
4987         * src/Makefile.in: Regenerate.
4988         * Makefile.am (AM_MAKEFLAGS): Define includedir so that
4989         prefix/include files will be picked up.
4990         * Makefile.in: Regenerate.
4991         * math/Makefile.am (TOPLEVEL_INCLUDES): And here.
4992         * libio/Makefile.am (TOPLEVEL_INCLUDES): And here.
4993         
4994         * bits/std_ios.h: Include <bits/c++io.h> instead of libio.
4995         * bits/fpos.h: And here.        
4996         * bits/basic_file.h (get_fileno): Move definition from ...
4997         * src/basic_file.cc (std): To here.
4998         * bits/fpos.h: Move types for streamoff, streampos to..
4999         * bits/basic_file.h: Move __c_file_type and fpos typedefs to...
5000         * config/c_io_libio.h: ...here.
5001         (_GLIBCPP_[BOOLALPHA, HEX, DEC, FIXED, INTERNAL, LEFT, OCT, RIGHT,
5002         SCIENTIFIC, SHOWBASE, SHOWPOINT, SHOWPOS, SKIPWS, UNITBUF,
5003         UPPERCASE, ADJUSTFIELD, BASEFIELD, FLOATFIELD, BADBIT, EOFBIT,
5004         FAILBIT, GOODBIT, APP, ATE, BINARY, IN, OUT, TRUNC): New macros to
5005         abstract out bits in ios_base.
5006         * bits/ios_base.h: Re-macrofy.  
5007         * src/basic_file.cc : Rename, move to
5008         * config/c_io_libio.cc: Here. 
5009         * config/c_io_libio.h: New file. Include libio.
5010         * bits/c++config.h: Don't define _GLIBCPP_USE_LIBIO.
5011         * configure.in (blddir): Add enabling bits for GLIBCPP_ENABLE_CSTDIO.
5012         * configure: Regenerate.
5013         * src/Makefile.am (sources): Take out basic_file.cc and add c++io.cc.
5014         (generated_headers): Add c++io.h
5015         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): New function to select
5016         underlying "C" io library.
5017         * acinclude.m4 (GLIBCPP_CHECK_LIBIO): Roll functionality into
5018         GLIBCPP_ENABLE_CSTDIO.
5019         
5020         * configure.in: Add configure bits for cross compiling non-newlib
5021         targets. .
5022         GLIBCPP_CHECK_COMPILER_VERSION: Take out this test for this
5023         target, as we assume g++ support is not the limiting factor.
5024         GLIBCPP_CHECK_LIBIO: Same, know we don't need libio.  
5025         * configure: Regenerate.
5026         
5027 2000-02-22  Benjamin Kosnik  <bkoz@cygnus.com>
5028
5029         * Makefile.am (INTERFACE): Define.
5030         * Makefile.in: Regenerate.
5031         * libio/ChangeLog: Add entry.
5032
5033 2000-02-21  Benjamin Kosnik  <bkoz@cygnus.com>
5034
5035         * docs/install.html: Update install directions.
5036
5037         * docs/status.html: Fix sidebar to be consistent.
5038         * docs/thanks.html: Same.
5039         * docs/links.html: Same.
5040         * docs/mail.html: Same.
5041         * docs/download.html: Same.
5042
5043         * testsuite/27_io/filebuf.cc: Change BUFSIZ to buffer_size, and
5044         kill the macro BUFSIZ. I think the solaris fails lie elsewhere
5045         however, in the ctype_char_members.cc fail (for instance.)
5046         * testsuite/17_intro/headers.cc: Remove extraneous fails for hosts
5047         that do not have wchar_t enabled.
5048         * testsuite/27_io/ostream_inserter_arith.cc (struct _TestCase):
5049         Same here.
5050         * testsuite/27_io/iostream_objects.cc: And here.
5051
5052         * libio/gen-params (CONFIG_NM): Specifically add in nm as the
5053         default CONFIG_NM.
5054         
5055 2000-02-18  Benjamin Kosnik  <bkoz@haight.constant.com>
5056             Tom Tromey  <tromey@cygnus.com>
5057
5058         * configure.in: Manually add MULTISUBDIR.
5059         * configure: Regenerate.
5060         * src/Makefile.am (MULTISUBDIR): Add the lesser evil of Tom's two
5061         "Eww" hacks to get multilib installs working correctly.
5062         ($(headers): Test for MULTISUBDIR before installing.
5063         * Makefile.am (AM_MAKEFLAGS): Don't define MULTISUBDIR, instead
5064         have configure hack it in.
5065         * Makefile.in: Regenerate.
5066         * acinclude.m4 (GLIBCPP_CXXFLAGS): Tweak wording. 
5067         Add enabling bits for native Cygwin ctypes, and other newlib-based
5068         Oses.
5069         
5070 2000-02-17  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
5071
5072         * mkc++config (OUT_H): Remove EOF in cygwin.
5073         * acinclude.m4 (LIBS): Tweaks to allow cygwin to configure.
5074
5075         Tom Tromey  <tromey@cygnus.com>
5076         * src/Makefile.am: Tweaks for installing multilibs.
5077
5078 2000-02-17  Benjamin Kosnik  <bkoz@cygnus.com>
5079
5080         * src/Makefile.am: 
5081         (toolexeclib_LTLIBRARIES): Use this instead of lib_LTLIBRARIES.
5082         Add USE_LIBDIR bits here, not...
5083         * src/Makefile.in: Regenerate.
5084         * Makefile.am: ...here.
5085         * Makefile.in: Regenerate.
5086         
5087 2000-02-17  Benjamin Kosnik  <bkoz@gnu.org>
5088
5089         * acinclude.m4 (LIBS): Fix typos.
5090         * configure.in: _GLIBCPP_BUGGY_FLOAT_COMPLEX,
5091         _GLIBCPP_BUGGY_COMPLEX for crosses.
5092         * src/Makefile.am (std_headers): Add libio.h as install include,
5093         as with _G_config.h
5094         * src/Makefile.in: Regenerate.
5095
5096         * mkcheck.in: Add bits to set CXX to cross compiler.
5097
5098         * src/complex_io.cc: Tweak.
5099         * configure.in: _GLIBCPP_BUGGY_COMPLEX for crosses.
5100         * configure: Regenerate.
5101         
5102         * config/newlib/ctype.cc: Tweaks.
5103         * config/newlib/bits/ctype_base.h (ctype_base): Set mask to char,
5104         not const char.
5105         * src/complex_io.cc (operator>>(istream, complex): Define out if
5106         BUGGY_COMPLEX.
5107
5108 2000-02-16  Benjamin Kosnik  <bkoz@cygnus.com>
5109
5110         * config/newlib/bits/ctype_base.h: Correct _S_table.
5111
5112         Reconfigure ctype support for "C" libraries that don't use arrays.
5113         * testsuite/22_locale/ctype_char_members.cc: New file. Test for
5114         basic ctype<char> functionality.
5115         * src/locale.cc: Move host-specific ctype functions that are not
5116         inlines to config/*/ctype.cc files.
5117         (ctype<char>::do_tolower): For instance.
5118         (ctype<char>::do_toupper): For instance.
5119         (ctype<wchar_t>::do_tolower): For instance.
5120         (ctype<wchar_t>::do_toupper): For instance.
5121         * config/gnu-linux/ctype.cc: Modify.
5122         * config/default/ctype.cc: Modify.
5123         * config/newlib/ctype.cc: Modify.
5124         * config/solaris/solaris2.6/ctype.cc: Modify.
5125         * config/solaris/solaris2.7/ctype.cc: Modify.
5126
5127         * bits/locale_facets.h (ctype<char>::is): Mark inline, move
5128         out-of-line.
5129         (ctype<char>::scan_is): Here too.
5130         (ctype<char>::scan_not): Here too.
5131         Move out of line defs to config/*/bits/ctype_specializations.h.
5132         * config/gnu-linux/bits/ctype_specializations.h: ...here. New file.
5133         * config/default/bits/ctype_specializations.h: ...here. New file.
5134         * config/newlib/bits/ctype_specializations.h: ...here. New file.
5135         * config/solaris/solaris2.6/bits/ctype_specializations.h: New file.
5136         * config/solaris/solaris2.7/bits/ctype_specializations.h: New file.
5137         * src/Makefile.am (headers): Add ctype_specializations.h.
5138         * src/Makefile.in: Regenerate.
5139         
5140         Aaron Weiss <weiss@clearway.com> 
5141         * Makefile.am (AM_MAKEFLAGS): Add NM_FOR_BUILD, NM_FOR_TARGET, and
5142         CONFIG_NM for Solaris builds.
5143         * Makefile.in: Regenerate.
5144         
5145         * src/locale.cc: Tweak formatting.
5146
5147 2000-02-15  Benjamin Kosnik  <bkoz@cygnus.com>
5148
5149         Jim Parsons  <parsons@clearway.com> 
5150         * testsuite/27_io/istream_unformatted.cc (test06): Add test.
5151         * bits/istream.tcc (read): Set failbit if !good(). Don't increment
5152         gcount if eof.
5153         (readsome): Same.
5154
5155         Michel Decima  <michel.decima@cnet.francetelecom.fr>
5156         * testsuite/27_io/streambuf.cc: Add test.
5157         * bits/streambuf.tcc (xsgetn): Don't test for valid mode.
5158         (xsputn): Same.
5159         
5160         * src/Makefile.am (AM_CXXFLAGS): Pass down AC_CXXFLAGS,
5161         OPTIMIZE_CXXFLAGS, etc. So --enable-debug and --enable-namespaces
5162         will work correctly, for instance.
5163         * src/Makefile.in: Regenerate.
5164
5165         * bits/locale_facets.h: Fix merge error.
5166         (num_put::put(unsigned long long): And here.
5167         * mknumeric_limits (trait_name): Same.
5168         
5169 2000-02-15  Chip Salzenberg  <chip@valinux.com>
5170
5171         Support 'configure --enable-long-long'.
5172         * bits/c++config.h (_GLIBCPP_USE_LONG_LONG): Remove.
5173         * stl/bits/stl_config.h (__STL_LONG_LONG): Remove '#if 0'.
5174         * acconfig.h (_GLIBCPP_USE_LONG_LONG): Add.  Default to undef.
5175         * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Define flag macro.
5176         * configure.in (GLIBCPP_ENABLE_LONG_LONG): Use it.
5177
5178         * aclocal.m4: Regenerate.
5179         * config.h.in: Regenerate.
5180         * configure: Regenerate.
5181
5182 2000-02-15  Chip Salzenberg  <chip@valinux.com>
5183
5184         Improve (complete?) 'long long' support.
5185         * mknumeric_limits: Call $CXX with $CPPFLAGS.  Define statics
5186         for {,unsigned} long long if the limits header declares them.
5187         * src/gen-num-limits.cc: Include <bits/c++config.h> early.
5188         (__USE_GNU, _GNU_SOURCE): Define if _GLIBC_USE_LONG_LONG.
5189         (long long, unsigned long long): Gen limits if _GLIBC_USE_LONG_LONG.
5190         * bits/locale_facets.h (num_get<>::get(..., long long &)): Define.
5191         (num_put<>::put(..., long long)): Likewise.
5192         (num_put<>::put(..., unsigned long long)): Likewise.
5193         * bits/locale_facets.tcc (_S_format): Rename from _S_format_long.
5194         Templatize last parameter to support 'long long'.
5195         (num_put<>::put(...)): Call _S_format with new name.
5196         (num_put<>::put(..., long long)): Define.
5197         (num_put<>::put(..., unsigned long long)): Likewise.
5198         * src/locale-inst.cc (_S_format): Instantiate under new name.
5199
5200 2000-02-15  Petter Urkedal  <petter@matfys.lth.se>
5201
5202         * src/complex.cc (operator<<, operator>>): Moved from here...
5203         * src/complex_io.cc: ...to new file.
5204         (operator>>): Stub replaced by the real thing.
5205         * src/Makefile.am (sources): Inserted complex_io.cc.
5206         * src/Makefile.in: Regenerate.
5207         * testsuite/26_numerics/complex_inserters_extractors.cc: Check it.
5208
5209 2000-02-14  Benjamin Kosnik  <bkoz@gnu.org>
5210
5211         Add in ctype information for newlib "C" libraries.
5212         * config/newlib: New directory
5213         * config/newlib/bits/ctype_base.h: New file.
5214         * config/newlib/ctype.cc: New file.
5215
5216         * ctype/config/linux/*: Rename, move to...
5217         * ctype/config/gnu-linux/*: Here.
5218         
5219         Finish off multilib work.
5220         * configure.in: Don't set CXX if not Canadian cross.
5221         * configure: Regenerate.
5222         * acinclude.m4 (GLIBCPP_CHECK_LIBIO): Tweak messages.
5223         * aclocal.m4: Regenerate.
5224         * config.h.in: Regenerate.
5225
5226         * install-sh: Remove, as AC_CONFIG_AUX_DIR(..) picks this out of
5227         the top-level gcc directory now.
5228         * mkinstalldirs: Remove.
5229         * missing: Remove
5230         * ltconfig: Remove.
5231         * ltmain.sh: Remove.
5232         * config.guess: Remove.
5233         * config.sub: Remove.
5234         
5235 2000-02-13  Benjamin Kosnik  <bkoz@cygnus.com>
5236
5237         * configure.in (glibcpp_basedir): Add glibcpp_basedir.
5238         * Makefile.am: Move mutlilib stuff to src/Makefile.am. 
5239         * Makefile.in: Regenerate.
5240         * src/Makefile.am: Add multilib bits.
5241         * src/Makefile.in: Regenerate.
5242         
5243 2000-02-12  Benjamin Kosnik  <bkoz@cygnus.com>
5244
5245         * configure.in: Clean, add some multilib support.
5246         * configure: Regenerate.
5247         * configure.host: New file.
5248
5249         * acinclude.m4: GLIBCPP_CHECK_LIBIO. Take bits from configure.in and 
5250         roll a new function, checks for presence of libio.
5251         GLIBCPP_CHECK_COMPILER_VERSION: Same.
5252         GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT: Same.
5253         GLIBCPP_CHECK_MATH_SUPPORT: Same.
5254         GLIBCPP_CHECK_WCHAR_T_SUPPORT: Same.
5255         GLIBCPP_CHECK_LIBIO: Same.
5256         GLIBCPP_CHECK_CTYPE: Same.
5257         * aclocal.m4: Regenerate.
5258         * config.h.in: Regenerate.      
5259
5260         * Makefile.am: Tweaks.
5261         * Makefile.in: Regenerate.
5262         
5263 2000-02-11  Benjamin Kosnik  <bkoz@cygnus.com>
5264
5265         * configure.in: Make outputing the libio/Makefile
5266         conditional. Haha, yeah right. Anyway, we instead do this thing
5267         where if libio is found, then we build a null library, as there is
5268         no point in duplicating the found libio.
5269         * Makefile.am: Tweak.
5270         * Makefile: Regenerate.
5271         * libio/Makefile.am: Add _G_config.h stuff. Now cross compilers
5272         are happy happy happy.
5273         * libio/Makefile.am: Regenerate.
5274         * libio/gen-params: New file.
5275         * src/Makefile.am: Make libio.la non-conditional, as it is now a
5276         null library if it's not needed. At least we are being consistent,
5277         if not as elegant as we could be.
5278         * src/Makefile: Regenerate.
5279         
5280 2000-02-10  Benjamin Kosnik  <bkoz@gnu.org>
5281
5282         * Makefile.am (SUBDIRS): Add libio again.
5283         * Makefile.in: Regenerate.
5284         * configure.in (BUILD_LIBIO_INCLUDE): And here.
5285         (AC_OUTPUT): Generate libio/Makefile again.
5286         * configure: Regnerate.
5287         * src/Makefile.am (libstdc___la_LIBADD): Change path so that
5288         libio.la is referring back to the libio subdir again.
5289         (LIBIO_INCLUDES): And here.
5290         * src/Makefile.in: Regenerate.
5291         
5292 2000-02-09  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
5293
5294         * math/complex-stub.h: Missed one. Change __mycabs* to cabs*.
5295
5296 2000-02-09  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5297
5298         * bits/valarray_array.h (<bits/std_new.h>): #include.
5299         (__valarray_get_memory): New function.
5300         (__valarray_release_memory): Likewise.
5301         (__valarray_default_construct): New functions.
5302         (__valarray_fill_construct): New function.
5303         (__valarray_copy_construct): New funstions.
5304         (__valarray_destroy_elements): New function.
5305
5306         * bits/valarray_array.tcc (__valarray_copy_construct): New
5307         functions. 
5308
5309         * bits/std_valarray.h (valarray<>::valarray): Use
5310         __valarray_get_memory and __valarray_fill_construct,
5311         __valarray_copy_construct, __valarray_default_construct to
5312         properly construct valarrays.  
5313         (valarray<>::~valarray): Use __valarray_destroy_elements to
5314         destroy elements and __valarray_release_memory to return memory.
5315         (valarray<>::shift): Tweak. 
5316         (valarray<>::cshift): Likewise.
5317         (valarray<>::resize): Robustify.
5318
5319 2000-02-09  Benjamin Kosnik  <bkoz@cygnus.com>
5320
5321         * mknumeric_limits (XCOMPILE): Add support for cross compiling.
5322         * bits/limits_generic.h: New file, defaults.
5323         * src/limits_generic.cc: New file, defaults.    
5324         * configure.in (LIBS): Run mknumeric_limits at configure time.
5325         * acconfig.h: Remove PACKAGE VERSION HAVE_COMPLEX
5326         HAVE_LC_MESSAGES, tidy, clean, etc.
5327         * src/Makefile.am (geberated_sources): Remove.
5328
5329         * bits/fpos.h: Use _GLIBCPP_USE_LIBIO guards for libio typenames
5330         (_IO_off_t, _IO_ssize_t)
5331
5332         * src/complex.cc: Use glibc's <complex.h> if
5333         possible. . . apparently this was not being done before. Include
5334         tweaks.
5335         (abs): Enable cabs if it's around, instead of mycabs.
5336         * src/complexf.cc (FCT): Add global scope to match complex.cc.
5337         * src/complexl.cc (FCT): Same.
5338         * math/Makefile.am (EXTRA_LONG_DOUBLE_yes): Change mycabsl to cabsl.
5339         (libmath_la_SOURCES): And here.
5340         * math/(mycabs.c, mycabsf.c, mycabsl.c): Move to. . .
5341         * math/(cabs.c, cabsf.c, cabsl.c): . . . Here.
5342         * math/complex-stub.h: Move c_log declarations into. . . 
5343         * math/mathconf.h: Here. This is because glibc's <complex.h>
5344         declares cclog, not c_log. The case of the dueling standards. . .
5345         * math/mathconf.h: Add _GLIBCPP_HAVE_* to macros.
5346         * math/Makefile.am: Change.
5347         * math/nan.c (nan): Change signature.
5348         * math/mathconf.h (NAN): Same.
5349         * math/complex-stub.h (nan): And here.
5350         
5351         * Makefile.am (rebuild-stamp): Remove libio and libio
5352         dependancies.  Plan to take out libio subdir and just merge with
5353         libio in top level gcc directory. Of course, this assumes there is
5354         a libio in the top level directory (ie ../src_dir). This will
5355         probably change the way this library is configured by default.
5356         * libio/*: Remove.
5357
5358 2000-02-09  Chip Salzenberg  <chip@valinux.com>
5359
5360         * localefwd.h (locale): Make public: facet, id, category.
5361         
5362 2000-02-09  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5363
5364         * testsuite/26_numerics/buggy_complex.cc: Fix Origin:.
5365
5366         * acinclude.m4: Patch only once!
5367
5368 2000-02-09  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5369
5370         * testsuite/26_numerics/buggy_complex.cc: New file.
5371
5372 2000-02-05  Petter Urkedal  <petter@matfys.lth.se>
5373
5374         * acinclude.m4: New GLIBCPP_CHECK_COMPLEX_SUPPORT macro. Based
5375         on the 1999-11-21 entries by Mumit Khan.
5376         * configure.in: Use.
5377         * acconfig.h: New _GLIBCPP_BUGGY_COMPLEX macro.
5378         * bits/std_complex.h: Use.
5379         
5380 2000-02-04  Philip Martin <pm@corris.dircon.co.uk>
5381
5382        * stl/bits/stl_algobase.h: Add traits based dispatch for
5383        __normal_iterator in the copy_backward()algorithm
5384        * stl/bits/stl_vector.h: Reduce use of __normal_iterator
5385        base() function.
5386
5387 2000-02-04  Mumit Khan  <khan@xraylith.wisc.edu>
5388         
5389         * src/gen-num-limits.cc (signal_handler): Work around signal
5390         handling problem on Cygwin. 
5391         Thanks to Chris Faylor <cgf@cygnus.com>.
5392
5393 2000-02-03  Benjamin Kosnik  <bkoz@cygnus.com>
5394
5395         * configure.in: Add (preliminary) support for cross compiles and
5396         multilibs.
5397         Remove AC_C_BIGENDIAN tests. Why is this necessary? Cross
5398         compilation freaks on this.
5399         * configure: Regenerate.
5400         * src/Makefile.am: Add support for cross compiles.
5401         * src/Makefile: Regenerate.
5402         * Makefile.am: Add support for cross compiles.
5403         * Makefile.in: Regenerate.
5404         
5405 2000-02-02  Benjamin Kosnik  <bkoz@cygnus.com>
5406
5407         * configure.in (LIBS): Remove unused subdirs.   
5408         * configure: Regenerate.
5409         * Makefile.am (SUBDIRS): And here.
5410         * Makefile.in: Regenerate.
5411         * src/Makefile.am (sources): And here.
5412         * src/Makefile.in: Regenerate.
5413         * string/*: Remove.
5414         * amm1/*: Remove.
5415         * generic/*: Remove.
5416         * glibc/*: Remove.
5417         * mkcheck.in (INC_PATH): Include $BUILD_DIR before any source dirs.
5418
5419         * libtool: Update to libtool-1.3.4.
5420         * ltconfig: Same
5421         * ltmain.sh: Same
5422         * config.sub: Same.
5423         * config.guess: Same.
5424
5425 2000-02-02  Benjamin Kosnik  <bkoz@cygnus.com>
5426             Alexandre Petit-Bianco  <apbianco@cygnus.com>    
5427
5428         * mkc++config: New file. Put autoconf macros into _GLIBCPP_
5429         namespace instead of polluting global namespace with duplicate
5430         autoconf output.
5431         * configure.in (AC_OUTPUT): Don't need to generate bits/config.h
5432         here anymore. . .
5433         (AC_OUTPUT_COMMANDS): Make it here.
5434         * configure: Regenerate.
5435         * bits/c++config.h.in (_CPP_CPPCONFIG): Change. Tweak. Remove
5436         endif, as now we will add it manually.
5437         Move to this file. . .
5438         * bits/c++config.h: New file. Same as old c++config.h.in except
5439         the ending macro guard is now appended manually.
5440
5441         * bits/locale_facets.tcc: Change HAVE_* macros to _GLIBCPP_HAVE_*.
5442         * bits/std_cmath.h: Same here.
5443         * bits/std_cwchar.h: And here.
5444         * src/locale.cc: And here.
5445         * src/complexl.cc: And here.
5446         * math/mathconf.h: Change to include "config.h" instead of
5447         bits/c++config.h.
5448         
5449 2000-02-01  Benjamin Kosnik  <bkoz@gnu.org>
5450
5451         * configure.in: Add support for threads. Try a model closer to
5452         libjava, as hopefully if the thread bits are added carefully
5453         enough, the source code will not have gross hacks. Besides, the
5454         libstdc++-v2 model could be easily emulated without the necessity
5455         of linking files in (as currently done)--all that needs to be done
5456         is AC_DEFINE(-D_PTHREADS) etc. However, let's try something
5457         new. . . and see if we arrive at a more elegant solution.
5458         * configure: Regenerated.
5459         * config/threads-no.h: New file. 
5460         * config/threads-posix.h: New file. 
5461         * src/Makefile.am (myinstallheaders): Install c++threads.h.
5462         * src/Makefile.in: Regenerated.
5463         
5464 2000-01-31  Benjamin Kosnik  <bkoz@gnu.org>
5465
5466         META-QUESTION: Can we just make a "header.html" file and a
5467         "footer.html" and just include them in all the doc sub-pages. The
5468         duplication of the header info is kind of gross, and weak
5469         considering that if you change order or layout then all this stuff
5470         has to be changed in all the sub-files.
5471
5472         * docs/17_intro/contribute.html: Take out duplicate file info.
5473         * README: Should just contain a link to the docs/index.html
5474         page. Duplicate information removed.
5475         * docs/faq/index.html: Remove indexes into HOWTOS.
5476         * docs/17_intro/howto.html: Make intro and docs part more
5477         centralized. Move intro stuff to documentation.html.
5478         * docs/how.html: Tweak. Does this file need to exist? What calls it?
5479         * docs/README.html: Move documentation files to
5480         documentation.html. Should this file be renamed
5481         "config_and_install.html" as that is what is apparently covered
5482         here. . .
5483         * docs/install.html: Yes. New file, moved and renamed README.html.
5484         * docs/documentation.html: New file. This is the index file for
5485         the documentation.
5486         * docs/index.html: Edit sidebar order. Insert new link to new
5487         documentation spine, documentation.html.
5488
5489 2000-01-31  Scott Snyder  <snyder@fnal.gov>
5490
5491         * bits/istream.tcc (operator>>(istream&, string&)): Set failbit if 
5492         we don't extract any characters.
5493         * testsuite/21_strings/inserters_extractors.cc (main): New tests.
5494         
5495 2000-01-31  Anders Widell  <awl@hem.passagen.se>
5496
5497         * stl/bits/std_bitset.h (_M_do_left_shift): Handle case when shift
5498         step is a multiple of the word size.
5499         (_M_do_right_shift): Same.
5500         * testsuite/23_containers/bitset_shift.cc: New file.
5501         
5502 2000-01-31  Nathan Myers  <ncm@zembu.com>
5503         
5504         * README (Documentation): Add path info, fix typos.
5505         
5506 2000-01-26  Benjamin Kosnik  <bkoz@redhat.com>
5507         
5508         * bits/locale_facets.tcc (num_get::_M_extract): Add the freaking
5509         crazy group checking for numpunct, for real this time. At some
5510         point, the local variable __grp should probably get replaced a
5511         char array, or something a bit more lightweight.
5512         (num_get::do_get(bool)): Simplify. Don't set bool reference to
5513         parsed value unless err isn't failbit.
5514         (num_get::do_get(*)): Same, make consistent.
5515
5516         Nathan Myers  <ncm@zembu.com>
5517         Jim Parsons  <parsons@clearway.com>
5518         * testsuite/27_io/istream_extractor_arith.cc (test08): Add
5519         more grouping tests, tweak, scold, wine.
5520         
5521 2000-01-24  Benjamin Kosnik  <bkoz@gnu.org>
5522
5523         * testsuite/27_io/istream_extractor_arith.cc (test07): Add
5524         grouping tests.
5525         * bits/locale_facets.tcc (num_get::_M_extract): Change to fix
5526         grouping bugs. Only allow thousands_sep if _M_use_groupings is
5527         true.
5528
5529         via <llewelly@198.dsl.xmission.com>
5530         * stl/bits/stl_vector.h (vector::_M_range_check): Throw
5531         out_of_range instead of range_error.
5532
5533 2000-01-17  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5534
5535         * bits/std_iomanip.h (setw): Fix typo.
5536
5537 2000-01-14  Benjamin Kosnik  <bkoz@gnu.org>
5538
5539         * testsuite/27_io/istream_extractor_arith.cc: Fix.
5540         * bits/locale_facets.tcc (do_get(...void)): Change to strtoul.
5541         * testsuite/27_io/istream_unformatted.cc (test04): Tweak.
5542         
5543 2000-01-14  Phil Edwards  <pme@sourceware.cygnus.com>
5544
5545         * docs/README.html:  Reformat, more installation instructions.
5546         * docs/gccrebuild.html:  New file.
5547         * docs/faq/index.html:  Update for new testsuite output filenames.
5548         * docs/faq/index.txt:  Regenerate.
5549
5550 2000-01-14  Phil Edwards  <pme@sourceware.cygnus.com>
5551
5552         * Makefile.am (rebuild-stamp, all-local):  New targets.
5553         * Makefile.in:  Regenerated.
5554         * acinclude.m4:  New macro, GLIBCPP_ENABLE_RELIBGCC.
5555         * aclocal.m4:  Regenerated.
5556         * configure.in:  Call new macro.  Also do some sanity checks
5557           for combinations of --enable's that may not make sense.
5558         * configure:  Regenerated.
5559
5560 2000-01-13  Benjamin Kosnik  <bkoz@cygnus.com>
5561
5562         * testsuite/27_io/istream_extractor_arith.cc: Add checks for void*.
5563         * bits/locale_facets.tcc (do_get::(...void)): Set fmtflags
5564         correctly for hex-formatted input.
5565
5566         * testsuite/27_io/istream_manip.cc (test01): Fix, as per setting
5567         eofbit instead of eofbit | failbit.
5568         * testsuite/27_io/istream_unformatted.cc (test04): Fix, as
5569         ifstreams now are opened or'd with ios_base::in (as is correct).
5570         * bits/fstream.tcc (filebuf::seekoff): Simplify.
5571         * testsuite/27_io/ios_base_members_static.cc (test01): Fix thinko.
5572
5573 2000-01-12  Benjamin Kosnik  <bkoz@gnu.org>
5574
5575         * bits/std_fstream.h: Add ios_base as a friend to basic_filebuf.
5576         * bits/basic_file.h (basic_file::filepos_cur): Remove incorrect
5577         (misleading) code.
5578         (__basic_file::filepos_valid): Same.
5579         (__basic_file::filepos_beg): Same.
5580         (__baseic_file::get_fileno): New function.
5581         * bits/ios_base.h (ios_base::sync_with_stdio): Implement, including
5582         feedback from LWG 49.
5583         * src/ios.cc: Move definition here.
5584         * testsuite/27_io/ios_base_members_static.cc (test01): Add tests.
5585         
5586         * bits/std_sstream.h (_M_really_sync): Simplify argument list. Set
5587         output part of internal buffer based on string size, so that
5588         _M_out_end is set consistently with filebufs. Correct comments.
5589         * bits/sstream.tcc (stringbuf::overflow): Update here too.
5590         * testsuite/27_io/stringbuf.cc: Changes.
5591         
5592 2000-01-11  Benjamin Kosnik  <bkoz@gnu.org>
5593
5594         * bits/sstream.tcc (seekoff): Set based on end of written buffer,
5595         not buffer size.
5596         * testsuite/27_io/stringbuf.cc: Add tests for seekoff(end).
5597
5598         * bits/std_fstream.h (ifstream::open): Add ios_base::in to openmode.
5599         (ofstream::open): Add ios_base::out to openmode.
5600
5601         * bits/locale_facets.tcc (_M_extract): Have consistency between
5602         istream::sentry and extractors, where failbit | eofbit is
5603         set. Don't change this, but instead change. . (do some formatting
5604         tweaks.)  
5605         * bits/istream.tcc (istream::sentry): Only set eofbit.
5606         
5607 2000-01-10  Benjamin Kosnik  <bkoz@gnu.org>
5608
5609         * testsuite/27_io/istringstream_members.cc: New file.
5610
5611 2000-01-09  Benjamin Kosnik  <bkoz@gnu.org>
5612
5613         * bits/istream.tcc (istream::sentry): Flush.
5614
5615         * configure.in (AC_OUTPUT_COMMANDS): Simplify.
5616         * configure: Regenerate.
5617         * src/Makefile.am (generated_headers): Remove bits/c++config.h so
5618         that make clean will not delete it.
5619         * src/Makefile: Regenerate.
5620         
5621 2000-01-07  Phil Edwards  <pme@sourceware.cygnus.com>
5622
5623         * mkcheck.in:  Use host-specific invocation of size(1);
5624           GNU binutils isn't necessarily there (more's the pity).
5625
5626 2000-01-06  Benjamin Kosnik  <bkoz@cygnus.com>
5627
5628         * configure.in (LIBS): Better tests for solaris2.6.
5629         * configure: Regenerate.
5630
5631          <vakatov@ncbi.nlm.nih.gov>
5632         * bits/std_sstream.h: As per libstdc++20.
5633
5634 2000-01-06  Benjamin Kosnik  <bkoz@gnu.org>
5635
5636         Break out configuration on solaris.
5637         * configure.in (ctype_solaris): Add in bits for solaris2.6 and 2.7.
5638         * config/solaris/ctype.cc: Delete and move to proper version.
5639         * config/solaris/bits: Same.
5640         * config/solaris/solaris2.5: Add this directory, with subdir bits
5641         and file ctype.cc. Probably doesn't work.
5642         * config/solaris/solaris2.6: Same.
5643         * config/solaris/solaris2.7: Same, as per specs via Phil Edwards.
5644         
5645         * Makefile.am: Change paths to mkcheck.
5646         * Makefile: Regenerate.
5647         * configure.in (AC_OUTPUT_COMMANDS): Build mkcheck here.
5648         * configure: Regenerate.
5649         * src/Makefile.am (generated_headers): Add bits/c++config.h.
5650
5651         * mkcheck: Now autogenerated by configure and renamed. . .
5652         * mkcheck.in (INC_PATH): Add glue for ctype_include_dir.        
5653         Have longer-style dates.
5654         Raja R Harinath  <harinath@cs.umn.edu>
5655         * mkcheck: Change path to #!/usr/clocal/bin/bash.
5656
5657         * docs/README.html: Correct links, maybe. FAQ, install notes, and
5658         general documentation need to be organized around each other, not
5659         fight against each other. . .
5660
5661 2000-01-04  Phil Edwards  <pme@sourceware.cygnus.com>
5662             Nicolai Josuttis <nicolai.josuttis@braunschweig.netsurf.de>
5663
5664         * README:  Add a note referring to README.html.
5665         * docs/README.html:  New file from Nicolai.
5666         * docs/faq/index.html:  Move "how to get a copy" to here.
5667         * docs/gentop/footchunk.html:  Update.
5668         * docs/gentop/headchunk.html:  New links according to
5669           bkoz's idea for "How to..." stuff.
5670         * docs/gentop/thanks:  Actually put people here.
5671         * docs/download.html:  Regenerated.
5672         * docs/index.html, docs/links.html, docs/mail.html,
5673           docs/status.html, docs/thanks.html, docs/faq/index.txt:  Ditto.
5674         * docs/how.html:  Ditto.  (This file should go away soon.)
5675
5676 1999-12-26  Phil Edwards  <pme@sourceware.cygnus.com>
5677
5678         * docs/gentop/status:  Add snapshot version column, update
5679           for Solaris 7.
5680         * docs/status.html:  Regenerated.
5681
5682 1999-12-26  Phil Edwards  <pme@sourceware.cygnus.com>
5683
5684         * docs/faq/index.html:  Turn README and RELEASE-NOTES into links
5685           from installation FAQ, and specify location of text files.
5686         * docs/faq/index.txt:  Regenerated.
5687
5688 1999-12-23  Phil Edwards  <pme@sourceware.cygnus.com>
5689
5690         * docs/gentop/download:  Add links to prebuilds for Cygwin/Mingw32.
5691         * docs/download.html:  Regenerated.
5692
5693 1999-12-22  Phil Edwards  <pme@sourceware.cygnus.com>
5694
5695         * docs/faq/index.html:  Update 'what works' for .7 snapshot,
5696           clean up various links.
5697         * docs/faq/index.txt:  Regenerated.
5698         * docs/gentop/gentop:  Smarter regeneration script.
5699         * docs/gentop/{head,foot}chunk.html:  Updated with new
5700           contributors link and mod date.
5701         * docs/gentop/index:  Snapshot relase date.
5702         * docs/gentop/thanks:  New contributors page added.
5703         * docs/{download,how,index,links,mail,status,thanks}.html:
5704           Regenerated from gentop; thanks.html created.
5705
5706 1999-12-21  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
5707
5708         * bits/c++config.h.in (__GLIBCPP__): 19991221.
5709         * docs/index.html: Add correct information.     
5710
5711         * config/irix: New directory.
5712         * config/irix/ctype.cc: Add irix-6.5 info. Not tested.
5713         * config/irix/bits/ctype_base.h: And here.
5714
5715         * config/aix: New directory.
5716         * config/aix/ctype.cc: Add aix-4.2 info. Not tested.
5717         * config/aix/bits/ctype_base.h: And here.
5718         
5719 1999-12-21  Philip Martin  <pm@corris.dircon.co.uk>
5720
5721         * bits/basic_string.h: Add special case handling for integral
5722         "iterators".
5723         * bits/std_string.h: include type_traits.h
5724         * testsuite/21_strings/ctor_copy_dtor.cc: Tweak.
5725         
5726 1999-12-21  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
5727
5728         * bits/fstream.tcc (seekoff): Output buffer based on _M_*_in and
5729         _M_*_end now.
5730         * bits/std_fstream.h (sync): And here.
5731         * testsuite/27_io/filebuf.cc: Revisions.
5732         * testsuite/27_io/filebuf-2.tst: Correct, remove weird character
5733         at the end of the file.
5734         * testsuite/27_io/filebuf-3.tst: Correct.
5735         
5736 1999-12-21  Phil Edwards  <pedwards@jaj.com>
5737
5738         * docs/gentop/index:  Hold off on .7 announcement date.
5739         * docs/index.html:  Regenerate.
5740
5741 1999-12-21  Benjamin Kosnik  <bkoz@kcygnus.com>
5742
5743         * bits/std_fstream.h (sync): Move _M_file->sync() to
5744         _M_really_overflow().
5745         * bits/fstream.tcc (seekoff): Call sync, not _M_really_overflow so
5746         as to get the _M_file->sync action, which forces the external
5747         buffer to update itself.
5748         (underflow): Same here.
5749
5750 1999-12-21  Phil Edwards  <pedwards@jaj.com>
5751
5752         * bits/c++config.h.in:  Uncomment _GLIBCPP_USE_NAMESPACES and move...
5753         * acconfig.h:  ...to here.
5754         * config.h.in:  Regenerate from aclocal.
5755         * acinclude.m4:  Add GLIBCPP_ENABLE_DEBUG, GLIBCPP_ENABLE_NAMESPACES.
5756         * aclocal.m4:  Regenerate from acinclude.
5757         * configure.in:  Use ENABLE macros here.
5758         * configure:  Regenerate.
5759         * src/Makefile.am:  Use results from ENABLE macros.
5760         * src/Makefile.in:  Regenerate.
5761
5762 1999-12-20  Benjamin Kosnik  <bkoz@cygnus.com>
5763         
5764         * mkcheck (SRC_DIR): Now have to include config/* dir if "make
5765         check" and not "make check-install." Temporarily hack in linux
5766         support.
5767         
5768         * bits/std_streambuf.h: Tweaks.
5769         * bits/streambuf.tcc (xsgetn): Tweaks.
5770         * bits/std_fstream.h (sync): Make _M_really_overflow consistent.
5771         * bits/fstream.tcc (filebuf::underflow): Simplify.
5772         * bits/std_sstream.h (streambuf::underflow): Minor change to make
5773         checks for read position precisely implement the standard.
5774         * bits/basic_file.h (filepos_cur): Base this on _offset.
5775         * testsuite/21_strings/inserters_extractors.cc (test05): Tweaks.
5776         * testsuite/27_io/filebuf.cc: Tweak.
5777
5778 1999-12-20  Benjamin Kosnik  <bkoz@cygnus.com>
5779
5780         * docs/17_intro/RELEASE-NOTES: Fix typos.
5781
5782         * bits/locale_facets.h (ctype): Modify, use __to_type to abstract
5783         out platform-specific bits.
5784         * config/default/ctype.cc: And here.
5785         * config/defaults/bits/ctype_base.h: And here.
5786         * config/linux/ctype.cc: And here.
5787         * config/linux/bits/ctype_base.h (ctype_base): And here.
5788         * config/solaris/bits/ctype_base.h (ctype_base): Add
5789         __to_type. Comment, as it looks like this is for solaris2.6 and
5790         above: solaris2.5.1 doesn't seem to have the same definitions.
5791         * config/solaris/ctype.cc: And here.
5792
5793 1999-12-19  Benjamin Kosnik  <bkoz@cygnus.com>
5794             Ulrich Drepper  <drepper@cygnus.com>
5795         
5796         * acconfig.h: Remove _GLIBCPP_USE_CTYPE_ISBIT.
5797
5798         * src/locale.cc: Take out platform-specific hacks.
5799         * config/linux/ctype.cc: Put here.
5800         * config/solaris/ctype.cc: Put here.
5801         * config/default/ctype.cc: Put here.    
5802
5803         * bits/locale_facets.h: Take out platform-specific hacks.
5804         * config/linux/bits/ctype_base.h: Put here.
5805         * config/solaris/bits/ctype_base.h: Put here.
5806         * config/default/bits/ctype_base.h: Put here.   
5807
5808         * configure.in: Bump version.
5809         Add tests for top-level config directory.
5810         * configure: Regenerated.
5811         * src/Makefile.am (INCLUDES): Add platform-specific dir.
5812         * src/Makefile: Regenerate.
5813         
5814 1999-12-19  Benjamin Kosnik  <bkoz@cygnus.com>
5815             Ulrich Drepper  <drepper@cygnus.com>
5816
5817         * bits/locale_facets.h: Hack in solaris support.
5818         * src/locale.cc: Here too.
5819
5820 1999-12-18  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5821
5822         * docs/17_intro/TODO: Update
5823         * docs/17_intro/RELEASE-NOTES (New): Update.
5824
5825 1999-12-17  Benjamin Kosnik  <bkoz@milou.cygnus.com>
5826
5827         * bits/c++config.h.in (__GLIBCPP__): Bump.
5828         * docs/17_intro/RELEASE-NOTES: Update, Gaby please add your stuff.
5829         * docs/17_intro/TODO: Update.   
5830
5831         * bits/locale_facets.h: Touch this too.
5832         * bits/localefwd.h: Add typedefs for loooooong vector names.
5833         * bits/locale_facets.tcc (locale::operator()): Need parens.
5834         (has_facet): Simplify.
5835         * src/locale-inst.cc: Add instantiations.
5836         * src/locale.cc: Tweaks.
5837         
5838         * bits/std_streambuf.h: Move indeterminates into. . 
5839         * bits/std_fstream.h: Here.     
5840         * bits/fstream.tcc (underflow): Rewind just for ios_base::out
5841         streams.
5842         * bits/sstream.tcc: Very minor formatting tweaks.
5843         * bits/std_streambuf.h (_M_set_determinate): If exclusively an
5844         input buffer, set _M_buf to offset.
5845         * bits/istream.tcc (std): Tweaks.
5846         * testsuite/27_io/istream_unformatted.cc (test05): More tweaks,
5847         include fstream.
5848         * testsuite/27_io/filebuf.cc: Tweaks.
5849         
5850 1999-12-17  Phil Edwards  <pedwards@jaj.com>
5851
5852         * configure.in:  Add OPTLEVEL, -O2 for gcc 2.96+, nothing otherwise.
5853         * configure:  Regenerate.
5854         * src/Makefile.am:  Use OPTLEVEL in CXXFLAGS.
5855         * src/Makefile.in:  Regenerate.  Also picks up OTHER_CXXFLAGS rename
5856           to OPTIMIZE_CXXFLAGS from a previous revision (1.96) to Makefile.am.
5857
5858 1999-12-17  Phil Edwards  <pedwards@jaj.com>
5859
5860         * docs/21_strings/stringtok_std_h.txt:  New algorithm
5861           suggested by Chris King.
5862         * docs/21_strings/howto.html:  Link to new version.
5863
5864 1999-12-16  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5865
5866         * bits/valarray_array.h (__valarray_sum): Use operator+=, not
5867         operator+.
5868         * docs/17_intro/TODO: Update.
5869
5870 1999-12-15  Phil Edwards  <pme@sourceware.cygnus.com>
5871
5872         * docs/gentop/footchunk.html:  Updated, fixed CRLFs.
5873         * docs/gentop/gentop:  Ditto.
5874         * docs/gentop/headchunk.html:  Ditto.
5875         * docs/*.html:  Regenerated from gentop.
5876         * docs/*/howto.html:  Updated as test.
5877         * docs/faq/index.html:  Updated, fixed CRLFs.
5878         * docs/faq/index.txt:  Regenerated.
5879
5880 1999-12-15  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5881
5882         * mknumeric_limits (OUT_C): restart only if $OUT_C is present.
5883
5884         * bits/std_complex.h 
5885         (complex<float>::complex(const complex<double>&),
5886         complex<float>::complex(const complex<long double>&)): Define.
5887
5888         * docs/17_intro/TODO: Update.
5889
5890 1999-12-13  Benjamin Kosnik  <bkoz@cygnus.com>
5891
5892         * bits/istream.tcc (seekg): Don't set _M_gcount.
5893         (tellg): Same.
5894         * bits/fstream.tcc (filebuf::underflow): Re-sync
5895         external byte sequence's input buffer only. . .
5896         * testsuite/27_io/istream_unformatted.cc (test04): New tests for
5897         tellg, seekg and filebufs.
5898         (test05): Same for stringbufs.
5899         * testsuite/27_io/istream_unformatted-2.tst: New file.
5900         * testsuite/27_io/istream_unformatted-1.tst: New file.
5901         * testsuite/27_io/istream_unformatted-1.txt: New file.  
5902         * testsuite/21_strings/inserters_extractors.cc (test05): Change
5903         output file.
5904
5905 1999-12-13  Phil Edwards  <pedwards@jaj.com>
5906
5907         * docs/gentop/*:  New directory, containing bits for the homepages.
5908         * docs/*.html:  Regenerated from gentop.
5909         * docs/*/*.html:  Entries added and regenerated.
5910
5911 1999-12-13  Benjamin Kosnik  <bkoz@gnu.org>
5912
5913         Efforts to get -O2 to work with -Winline -Werrors.
5914         * bits/valarray_array.h (__valarray_fill(_Tp*, size_t, const
5915         _Tp&): Remove inline declaration, as cannot be inlined and
5916         -Winline -Werror complains. An interesting question is why this
5917         cannot be inlined, as I can see no real reason to disqualify it.
5918         (__valarray_product(const _Tp*, const _Tp*)): Same here.
5919         * bits/std_valarray.h (valarray::operator[](size_t)): Same here.
5920         
5921         * docs/17_intro/TODO: Update.
5922
5923 1999-12-12  Benjamin Kosnik  <bkoz@gnu.org>
5924
5925         * bits/std_fstream.h (seekpos): Tweaks, fixes. Move definition to
5926         fstream.tcc.
5927         * bits/basic_file.h (filepos_cur()): Make pointers themselves be
5928         the resultant position.
5929         * bits/fstream.tcc (seekoff): Explicitly set return value to
5930         resultant external byte sequence position, not value returned from
5931         _M_file->seekoff. Need to make 
5932         (seekpos): New definition.
5933         
5934         * bits/istream.tcc (seekg): As per Library Issues List 136, set to
5935         just istream. Necessary, or else tellg will give an invalid stream
5936         position, but seekg will return a valid stream position, which is
5937         not groovy: see testcase addition.
5938         * bits/ostream.tcc (seekp): Same.
5939         
5940         * bits/streambuf.tcc (_S_copy_streambufs): Simplify.
5941         * bits/sstream.tcc: Tweaks.
5942         * bits/locale_facets.tcc: Tweaks.
5943         (num_put::do_put(iter_type, ios_base, char_type, const void*)):
5944         Re-write in a way that is easier for the inliner to work with.
5945         * bits/ios_base.h: Use explicit static_cast<int>(...) notation.
5946
5947 1999-12-10  Benjamin Kosnik  <bkoz@cygnus.com>
5948
5949         * bits/locale_facets.tcc: Tweaks.
5950         * bits/locale_facets.h (use_facet): Can't inline, remove inline
5951         from declaration.
5952         * bits/localefwd.h: And here.
5953         * bits/std_ostream.h: Tweaks, sentry ctor can't be inlined.
5954         * bits/ostream.tcc: Put here.
5955         
5956         Frank Ch. Eigler  <fche@cygnus.com> 
5957         * src/Makefile.am: Adjust CXXFLAGS, add AM_CXXFLAGS. 
5958
5959 1999-12-08  Benjamin Kosnik  <bkoz@cygnus.com>
5960
5961         * bits/sstream.tcc (stringbuf::seekoff): Long overdue revamp. Make
5962         in and out buffers update independantly.
5963
5964         * bits/basic_ios.h: Minor formatting.
5965         * bits/fstream.tcc (std): Fix indentation.
5966
5967 1999-12-08  Chip Salzenberg  <chip@valinux.com>
5968
5969         * bits/char_traits.h (char_traits<>): Move not_eof() functions
5970         after corresponding eof() functions, so they're easier for the
5971         compiler to inline.
5972         * bits/locale_facets.h (money_base::__default_pattern): Move
5973         static variable out of inline functions.
5974         (_Moneypunct<>::do_{pos,neg}_format): Use it.
5975         * src/locale-inst.cc (money_base::__default_pattern): Define it.
5976
5977 1999-12-08  Benjamin Kosnik  <bkoz@cygnus.com>
5978
5979         * bits/std_fstream.h (filebuf::open): Tweak.
5980         * bits/fstream.tcc (filebuf::seekoff): Simplify, fix.
5981         * bits/std_ios.h: Minor tweaks for headers.
5982
5983 1999-12-06  Benjamin Kosnik  <bkoz@gnu.org>
5984
5985         * bits/c++config.h.in (_GLIBCPP_FULLY_COMPLIANT_HEADERS): New macro.
5986         * src/string-inst.cc: Add guards . . .
5987         * src/misc-inst.cc: And here.
5988         * bits/std_sstream.h: And here.
5989         * bits/std_fstream.h: And here.
5990         * bits/std_streambuf.h: And here.
5991         * bits/std_istream.h: And here.
5992         * bits/std_ostream.h: And here.
5993
5994 1999-12-06  Scott Snyder  <snyder@fnal.gov>
5995
5996         * bits/istream.tcc (basic_istream::read): Try to handle __n == 0
5997         case.
5998         (basic_istream::readsome): And here as well.
5999         * testsuite/27_io/istream_unformatted.cc: Test a zero-length
6000         read().
6001
6002 1999-12-06  Mumit Khan  <khan@xraylith.wisc.edu>
6003
6004         * bits/istream.tcc (basic_istream::ignore): streamsize is not 
6005         necessarily an `int'.
6006
6007 1999-12-06  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6008
6009         * mknumeric_limits: Don't use $CXXFLAGS when building
6010         gen-num-limits. It's definitely wrong to use it since $CXXFLAGS
6011         generally instructs the compiler not to emit template
6012         instantiations and we end up with undefined symbols. Sigh.
6013
6014 1999-12-05  Benjamin Kosnik  <bkoz@gnu.org>
6015
6016         * bits/locale_facets.tcc: Tweak.
6017         (_S_format_long): Adjust showpos formatting for hex and oct.
6018         * bits/std_ostream.h (operator<<(short)): Correctly deal with hex
6019         and oct by formatting as unsigned.
6020         (operator<<(int)): Same here.
6021         * bits/ostream.tcc (operator<<(long)): Same.
6022         (operator<<(long long)): Same.
6023         (_S_pad_char): Actually treat ios_base::internal as something
6024         worth doing correctly. Remove const designation on ios argument.
6025         * testsuite/27_io/ios_manip_basefield.cc (test02): Add tests.
6026         * testsuite/27_io/ostream_inserter_arith.cc (test03): Add tests.
6027         
6028 1999-12-04  Benjamin Kosnik  <bkoz@gnu.org>
6029
6030         * bits/std_sstream.h (streambuf::underflow): Check for mode == in.
6031
6032 1999-12-03  Benjamin Kosnik  <bkoz@gnu.org>
6033
6034         * bits/locale_facets.tcc (num_put::do_put(bool): Fix.
6035
6036         * bits/sstream.tcc (streambuf::seekoff): Add parens.
6037         * bits/istream.tcc (istream::get(sb)): Handle exceptional events.
6038         (operator>>(istream, _CharT*)): Change streamsize to int_type.
6039         (operator>>(istream, _CharT&)): Fix typedef'd type to be _CharT.
6040         * bits/ostream.tcc (ostream::operator<<(const char*)): Stub out
6041         unused argument.
6042         (ostream::operator<<(_CharT)): Fix.
6043         
6044         * bits/std_sstream.h: Temporarily disable including sstream.tcc to
6045         see if this will increase compile speed.
6046         * bits/std_ostream.h: Likewise. . .
6047         * bits/std_istream.h: And here.
6048         * bits/std_fstream.h: And here.
6049         * src/misc-inst.cc: Add relevant header file includes for
6050         instantiation purposes.
6051         * src/string-inst.cc: And here.
6052         * testsuite/27_io/ostream_inserter_arith.cc: Add test case.
6053         
6054 1999-12-02  Benjamin Kosnik  <bkoz@gnu.org>
6055
6056         * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
6057         * bits/istream.tcc (get(streambuf)): More fixes. 
6058         (istream::ignore): Get specific about numeric_limits<int>::max()
6059         requirements.
6060
6061         * bits/fstream.tcc (filebuf::open): Tweaks for _M_last_overflowed.
6062         (filebuf::close): Same.
6063         * testsuite/27_io/filebuf.cc: Add tests for ios_base::ate.
6064         
6065 1999-12-01  Phil Edwards  <pedwards@jaj.com>
6066
6067         * mkcheck:  Support for compilation/execution timing.
6068         * testsuite/printnow.c: New file.
6069         
6070 1999-12-01  Phil Edwards  <pedwards@jaj.com>
6071
6072         * bits/std_cwchar.h:  Test for _GLIBCPP_USE_WCHAR_T.
6073         * configure.in:  Test for presence of wchar.h before testing
6074           for any of its features.
6075         * configure:  Regenerate.
6076
6077 1999-11-30  Benjamin Kosnik  <bkoz@gnu.org>
6078
6079         Preliminary istream validations complete.
6080         * bits/istream.tcc (istream::getline): Fixes. Tweaks to make
6081         formatting more consistent. Removal of if-statements inside of for
6082         loops.
6083         (ignore): Fix.
6084         (get): Same.
6085         (putback): Same.
6086         * bits/std_istream.h: Same.
6087         * bits/sstream.tcc (stringbuf::pbackfail): Fix.
6088         * testsuite/27_io/stringbuf.cc: Tweak.
6089         * testsuite/27_io/istream_unformatted.cc (test02): Mo' tests.   
6090
6091         * bits/ostream.tcc (ostream::operator<<(arith)): Set badbit, not
6092         failbit on failure, as per 27.6.2.5.2.
6093
6094         * stl/bits/std_vector.h: Allow bool specializations. Should move
6095         ext/std_bvector to bits, not ext, maybe.
6096
6097 1999-11-30  Mumit Khan  <khan@xraylith.wisc.edu>
6098
6099         * configure.in: Fix checks for mbstate_t and WCHAR_MIN/MAX.
6100         * configure: Regenerate.
6101         
6102 999-11-29  Benjamin Kosnik  <bkoz@gnu.org>
6103
6104         * bits/istream.tcc (get(streambuf, char)): Fix.
6105         * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
6106         
6107 1999-11-29  Scott Snyder  <snyder@fnal.gov>
6108
6109         * bits/basic_string.h (append(const _Char*, size_type)): The
6110         length of the appended string is given exactly by the second arg,
6111         regardless of the data in the character array.
6112         * bits/string.tcc (basic_string(const _CharT*, size_type, const
6113         _Alloc&)): Likewise.
6114         * testsuite/21_strings/append.cc (test01): Remove erroneous test
6115         of basic_string::append.
6116
6117 1999-11-29  Chip Salzenberg  <chip@valinux.com>
6118
6119         * Makefile.in: Tweaks for CXXFLAGS.
6120         * */Makefile.in: Same.
6121
6122 1999-11-29  Mumit Khan  <khan@xraylith.wisc.edu>
6123
6124         * conficd bgure.in: Check for wide character support.
6125         * bits/c++config.h.in (_GLIBC_USE_WCHAR_T): Move from here ...
6126         * acconfig.h (_GLIBC_USE_WCHAR_T): to here.
6127         * bits/string.tcc (wstring::_S_find): Guard wchar_t specialization.
6128         
6129 1999-11-29  Mumit Khan  <khan@xraylith.wisc.edu>
6130
6131         * acinclude.m4: Fix typo.
6132         * src/complex.cc: Fix macro line continuation.
6133         
6134 1999-11-29  Petter Urkedal  <petter@matfys.lth.se>
6135
6136         * src/Makefile.am (CXXFLAGS): Add -Wno-format to allow non-
6137         string literals in format, as used in locale-facets.tcc.
6138
6139 1999-11-28  Benjamin Kosnik  <bkoz@gnu.org>
6140
6141         * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
6142         * bits/istream.tcc (istream::get): Extract to argument minus one.
6143         Various tweaks and fixes.
6144         
6145 1999-11-22  Mumit Khan  <khan@xraylith.wisc.edu>
6146
6147         * bits/locale_facets.tcc: Workaround for compiler crash on
6148         ix86-*-mingw32.
6149
6150 1999-11-21  Mumit Khan  <khan@xraylith.wisc.edu>
6151
6152         * acinclude.m4: New file. New _GLIBCPP_CHECK_FLOAT_SUPPORT macro.
6153         * configure.in: Use.
6154         * acconfig.h: New _GLIBCPP_BUGGY_FLOAT_COMPLEX macro.
6155         * src/complexf.cc: New _GLIBCPP_FLOAT_SPECIALIZATION macro.
6156         * bits/std_complex.h: Use.
6157         * src/complex.cc: Use.
6158
6159 1999-11-19  Mumit Khan  <khan@xraylith.wisc.edu>
6160
6161         * testsuite/18_support/numeric_limits.cc: Add missing std:: prefix.
6162         * testsuite/21_strings/inserters_extractors.cc: Likewise.
6163         * testsuite/22_locale/ctype.cc: Likewise.
6164         * testsuite/23_containers/multiset.cc: Likewise.
6165         * testsuite/23_containers/vector_ctor.cc: Likewise.
6166         * testsuite/26_numerics/binary_closure.cc: Likewise.
6167         * testsuite/27_io/fpos.cc: Likewise.
6168         * testsuite/27_io/ios_base_callbacks.cc: Likewise.
6169         * testsuite/27_io/istream_extractor_arith.cc: Likewise.
6170         * testsuite/27_io/istream_extractor_char.cc: Likewise.
6171         * testsuite/27_io/istream_extractor_other.cc: Likewise.
6172         * testsuite/27_io/istream_sentry.cc: Likewise.
6173         * testsuite/27_io/ostream_inserter_char.cc: Likewise.
6174         * testsuite/27_io/ostream_inserter_other.cc: Likewise.
6175         * testsuite/27_io/streambuf.cc: Likewise.
6176         * testsuite/27_io/stringstream.cc: Likewise.
6177
6178 1999-11-19 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6179
6180         * bits/valarray_meta.h: Don't forget to define tanh
6181
6182 1999-11-18  Philip Martin  <pm@corris.dircon.co.uk>
6183  
6184        * src/stl-inst.cc: Use typedef to refer to iterator
6185        * stl/bits/stl_algobase.h: Add traits based dispatch for
6186        __normal_iterator in the copy()algorithm
6187        * stl/bits/type_traits.h: Add _Is_normal_iterator trait support
6188
6189 1999-11-18  Kevin Ediger  <kediger@licor.com>
6190
6191         * src/locale.cc (locale::_Imp::_Imp): Use auto_ptr to make
6192         constructors for locale::_Impl exception safe.
6193
6194 1999-11-18  Scott Snyder  <snyder@fnal.gov>
6195
6196         * stl/bits/stl_queue.h: The C++ standard gives the default for the
6197         _Sequence template argument of priority_queue<> as vector<>, not
6198         deque<>.
6199
6200 1999-11-18  Benjamin Kosnik  <bkoz@gnu.org>
6201
6202         * bits/std_sstream.h (stringbuf::_M_really_sync): Add __iend as a
6203         parameter.
6204         * bits/sstream.tcc: Adjust here too.
6205         
6206 1999-11-17  Benjamin Kosnik  <bkoz@gnu.org>
6207
6208         * bits/sbuf_iter.h (istreambuf_iter::equal): Tweak.
6209         * bits/istream.tcc (operator>>): Replace iostate(0) with
6210         iostate(ios_base::goodbit), which is the same thing, but hopefully
6211         a bit clearer.
6212         * bits/locale_facets.tcc (do_get(bool)): Streamline, deal with
6213         libraries issue list 17.
6214         (do_gets): Don't set goodbit explicitly, instead only set on
6215         failures as good bit is the default setting.
6216         * bits/ios_base.h (setf): Set correctly.
6217         * bits/fstream.tcc: Tweak.
6218         * bits/std_sstream.h (_M_really_sync): Fix ibuffer positioning for
6219         in|out bufs that are empty. . .
6220         * testsuite/27_io/istream_extractor_arith.cc (test03): Add.
6221         
6222 1999-11-16  Benjamin Kosnik  <bkoz@gnu.org>
6223
6224         * testsuite/27_io/streambuf.cc (class testbuf): Don't set _M_buf_size.
6225         * bits/std_streambuf.h (setp): Set _M_buf_size, _M_mode.
6226         Add comments "all about _M_buf."
6227         (setg): Set _M_mode.
6228
6229 1999-11-16  Kevin Ediger  <kediger@licor.com>
6230
6231         * bits/locale_facets.tcc (_S_build_float_format): New function.
6232         (_S_output_float): New function.
6233         (num_put::do_put(double)): Use 'em.
6234         (num_put::do_put(long double)): Use 'em.
6235         * testsuite/27_io/ostream_inserter_arith.cc: New file.
6236
6237 1999-11-15  Scott Snyder  <snyder@fnal.gov>
6238
6239         * bits/basic_file.h: Type of __off parm should be __c_streampos, to
6240         match how libio is calling us.
6241         * src/basic_file.cc (sys_seek): Likewise.
6242         * bits/std_fstream.h (basic_filebuf::sync): Restore sync call.
6243
6244 1999-11-15  Benjamin Kosnik  <bkoz@gnu.org>
6245
6246         * docs/17_intro/contribute.html: Add link to assignment form.
6247         * docs/17_intro/libstdc++-assign.txt: New file.
6248
6249         * mkcheck (TESTS_FILE): Move a copy of test files as well as
6250         output files.
6251
6252         * bits/std_streambuf.h (_M_buf_bump): New function.
6253         * bits/streambuf.tcc: Mods to support _M_buf_bump.
6254         (xsputn): Here. Also add checks for output valid.
6255         (xsgetn): Add checks for input valid.
6256         (sputc): Here.
6257         (sgetc): Set _M_in_end to _M_buf + _M_buf_end.
6258         * bits/std_sstream.h (_M_really_sync): Set _M_buf.
6259         Set _M_out_end to variable-length-end.
6260         * bits/sstream.tcc (overflow): Use _M_buf_bump.
6261         (seekpos): Same.
6262         (seekoff): Same.
6263         * bits/fstream.tcc (std): Tweak formatting.
6264         (filebuf::overflow): Simplify.
6265         (filebuf::showmanyc): Same.
6266         (filebuf::underflow): Same.
6267         * testsuite/27_io/filebuf.cc: Fix.
6268         * testsuite/27_io/ostream_inserter_other.cc: Fix.
6269         * testsuite/27_io/ostream_inserter_other-2.tst: New file.
6270         * testsuite/27_io/stringbuf.cc: Tweak.  
6271         * testsuite/27_io/streambuf.cc: Tweak.  
6272         * testsuite/27_io/istream_extractor_other.cc: Fix.
6273
6274 1999-11-11  Matthias Klose  <doko@cs.tu-berlin.de>
6275
6276         * stl_deque.h: Use static_casts<size_type>(signed_type).
6277
6278 1999-11-11  Benjamin Kosnik  <bkoz@gnu.org>
6279
6280         Cleanups for callbacks, more regression hunting. Remaining
6281         failures (1) due to last unresolved stringstream issues, not
6282         regressions per se.
6283         * bits/std_fstream.h: Revert. Disable call to _M_file->sync as
6284         killing 27_io/filebuf.cc tests. . . need another solution.
6285
6286         * bits/streambuf.tcc (_S_copy_streambufs): Fix.
6287         * testsuite/27_io/istream_extractor_other.cc: Tweak comments.
6288
6289         * bits/basic_ios.h: Add cached facets here. UGH. The standard
6290         foils all attempts at a graceful, minimal implementation.
6291         * bits/basic_ios.tcc: Tweaks.
6292         * bits/istream.tcc: Fix.
6293         * bits/ostream.tcc: Fix.
6294         * bits/std_istream.h: Fix.
6295         * bits/std_ostream.h: Fix.
6296         * src/ios.cc (ios_base::imbue): Set _M_locale_ios before calling
6297         callbacks.
6298         * bits/locale_facets.tcc (std): Minor, minor formatting tweak.
6299         (_S_pad_numeric): Make comprehensible.
6300
6301 1999-11-10  Benjamin Kosnik  <bkoz@cygnus.com>
6302
6303         * bits/std_ostream.h: Add callbacks for _M_fnumput.
6304         (_S_ostream_fcache): New function.
6305         Move functions out-of-line.
6306         * bits/ostream.tcc: Put here.
6307
6308         * bits/std_istream.h: Add callbacks for _M_fnumget.
6309         (_S_istream_fcache): New function.
6310         Move functions out-of-line.
6311         * bits/istream.tcc: Put here.
6312         
6313         * bits/basic_ios.tcc (basic_ios::imbue): Tweaks, remove call to
6314         _M_call_callbacks(), as ios_base::imbue does this already.
6315         * src/ios.cc (register_callback): Clean.
6316         (_M_call_callbacks): Same.
6317         * bits/ios_base.h: Callback work.
6318         * testsuite/27_io/ios_base_callbacks.cc (test01): New file.
6319         
6320 1999-11-10  Benjamin Kosnik  <bkoz@cygnus.com>  
6321             Matthias Klose  <doko@cs.tu-berlin.de>
6322
6323         * stl/ext/stl_rope.h: Fix initialization order.
6324
6325 1999-11-09  Scott Snyder  <snyder@fnal.gov>
6326
6327         * bits/std_fstream.h (basic_filebuf::sync): Unconditionally call
6328         _M_file->sync() so that redirection works correctly.
6329
6330 1999-11-09  Benjamin Kosnik  <bkoz@gnu.org>
6331
6332         * bits/istream.tcc: Re-order.
6333         * bits/std_istream.h: Fix getline problems.
6334         * testsuite/27_io/istream_unformatted.cc: New tests.
6335         
6336         Clean up regressions.
6337         * bits/std_sstream.h: Set initial stringbufs correctly.
6338
6339 1999-11-09  Scott Snyder <snyder@fnal.gov>
6340
6341         * stl_vector.h (_M_range_insert): Fix mixing pointers and
6342         vector::iterator.
6343         * testsuite/23_containers/vector_modifiers.cc (test01): New file,
6344         tests.
6345         
6346 1999-11-09  Benjamin Kosnik  <bkoz@cygnus.com>
6347
6348         * src/Makefile.am (CXXFLAGS): Add -Winline.
6349         * src/Makefile.in: Regenerate.
6350
6351 1999-11-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6352
6353         * bits/valarray_meta.h (_DEFINE_EXPR_UNARY_FUNCTION): When
6354         building meta-expressions don't forget to take the contained
6355         closures. 
6356
6357 1999-11-02  Benjamin Kosnik  <benjamin@cygnus.com>
6358
6359         * configure: Regenerate.
6360         
6361 1999-11-02  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6362
6363         * bits/valarray_meta.h (_Expr<>::sum): Tweak. Use copy-initialization
6364         syntax.
6365         * bits/valarray_meta.h (min): Likewise.
6366         * bits/valarray_meta.h (max): Likewise.
6367
6368 1999-11-01  Benjamin Kosnik  <bkoz@cygnus.com>
6369
6370         * bits/std_sstream.h (_M_really_sync): Take into account in | out bufs.
6371         * bits/std_streambuf.h (_S_copy_streambufs): New function.
6372         * bits/streambuf.tcc: Define.
6373         * bits/istream.tcc (istream::operator>>(streambuf)): Rewrite.
6374         * bits/ostream.tcc (ostream::operator<<(streambuf)): Rewrite.
6375         * testsuite/27_io/ostream_inserter_other.cc: Add tests.
6376         * testsuite/27_io/ostream_inserter_other-1.tst: New file.
6377
6378         * bits/basic_string.h: Explicitly cast npos to unsigned type,
6379         reported by Richard Atterer.
6380         * bits/char_traits.h: For consistency's sake, here too.
6381         
6382         * configure.in: Bump version to 2.90.7.
6383         
6384 1999-10-31  Benjamin Kosnik  <bkoz@cygnus.com>
6385
6386         * testsuite/27_io/ostream_inserter_char-1.tst: Check file output.
6387         * testsuite/27_io/ostream_inserter_char.cc (test05, test01): Add tests.
6388         * bits/streambuf.tcc (xsputn): Treat--size const char for long loops.
6389         (xsgetn): Same.
6390         * bits/sstream.tcc (seekpos): Tricks, mostly: check _M_mode before
6391         writing into buffer.
6392         (seekoff): Same.
6393         
6394 1999-10-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6395
6396         * bits/valarray_array.h (__valarray_sum): New function.
6397         * bits/valarray_array.h (__valarray_product): Same.
6398
6399         * bits/std_valarray.h (valarray<T>::product): Comment out.
6400         * bits/std_valarray.h (valarray<T>::sum): Use __valarray_sum
6401         instead of accumulate. 
6402
6403         * src/valarray-inst.cc: Remove explicit intantiation of
6404         class multiplies<size_t>, accumulate, valarray<size_t>::product. 
6405         * src/valarray-inst.cc (__valarray_product): Instantiate
6406         explicitly. 
6407         * src/valarray-inst.cc (__valarray_product(const
6408         valarray<size_t>&)): New function.   
6409         * src/valarray-inst.cc (gslice::_Indexer::_Indexer): Don't use
6410         valarray<size_t>::product. Use __valarray_product instead.
6411         
6412
6413 1999-10-25  Benjamin Kosnik  <bkoz@cygnus.com>
6414
6415         * bits/std_ostream.h (ostream.inserters.char): Correctly pad output.
6416         (_S_pad_char): New function. Not done: ios_base::internal.
6417         * bits/ostream.tcc: Clean for above.
6418         * bits/locale_facets.tcc (_S_fill): Remove ostreambufiterator
6419         specialization that was commented out, as ostreams now have to
6420         correctly deal with padding.
6421         * testsuite/27_io/ostream_inserter_char.cc (main): Add tests.
6422         
6423         * testsuite/21_strings/ctor_copy_dtor.cc(test02): Add test case
6424         from mailing list. This is a bug, and should be fixed.
6425         * testsuite/21_strings/inserters_extractors.cc (main): Tweak, fix typo.
6426         
6427 1999-10-22  Petter Urkedal  <petter@matfys.lth.se>
6428
6429         * stl/bits/stl_numeric.h (__power): Replaced argument name `__opr'
6430         to avoid conflict with gcc name mangling.
6431         * stl/bits/stl_algo.h (__transform): Same.
6432
6433 1999-10-21  Benjamin Kosnik  <bkoz@cygnus.com>
6434
6435         * bits/ios_base.h: Change argument names.
6436         * docs/17_intro/BADNAMES: Add __opr.
6437         
6438 1999-10-20  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
6439         
6440         Work on compilation slowdowns from 10-5 to 10-12, which are
6441         related to the _Callback_list inlining/merge-ifcation, which is
6442         still a pending issue, but this stuff is necessary cleanup anyway.
6443
6444         * src/ios.cc: Re-arrange.
6445         * bits/ios_base.h: Tweak.
6446         * bits/basic_ios.tcc: Move out of line definitions here, move
6447         small out-of-line definitions inline.
6448         * bits/basic_ios.h: From here.
6449         
6450         * bits/streambuf.tcc (pbackfail, overflow): Move back inline.
6451         * bits/std_streambuf.h: From here.
6452
6453 1999-10-19  Benjamin Kosnik  <bkoz@cygnus.com>
6454
6455         * testsuite/27_io/istream_extractor_char.cc: Add tests.
6456         * bits/std_istream.h: Tweaks--set eofbit on eof condition.
6457         * bits/istream.tcc (operator>>(istream&, string&): Remove
6458         vestigial issspace hacks and use ctype::is instead.
6459         (getline): Remove unnecessary loops, fortify and pasteurize.
6460         (ws): Same.
6461         
6462 1999-10-18  Benjamin Kosnik  <bkoz@cygnus.com>
6463
6464         * bits/istream.tcc (operator>>): Tweak.
6465         * bits/std_istream.h: Fix according to library issues list 68.
6466         Add typedefs.
6467
6468         * bits/locale_facets.h: Fix table_size to be non-zero.
6469
6470 1999-10-18  Vadim Egorov  <egorovv@HotPOP.com>
6471
6472         * src/basic_file.cc: ifdef instead of comment for binary mode
6473
6474 1999-10-18  Russell Davidson  <russell@qed.econ.queensu.ca>
6475
6476         * bits/std_sstream.h: Stringbuf initialization based on actual,
6477         not allocated, size.
6478         * testsuite/21_strings/inserters_extractors.cc (test06): Add test
6479         case.
6480         
6481 1999-10-17  Benjamin Kosnik  <bkoz@cygnus.com>
6482
6483         * testsuite/26_numerics/c_math.cc (test03): Tweak.
6484         * testsuite/27_io/istream_manip.cc (test01): Corrections due to
6485         sentry change.
6486         * testsuite/21_strings/inserters_extractors.cc (test01): Same.
6487
6488 1999-10-14  Benjamin Kosnik  <bkoz@cygnus.com>
6489
6490         * bits/std_istream.h: Tweaks.
6491         * bits/istream.tcc (istream::sentry::sentry()): Simplify, correct
6492         as per issues list addition--set failbit, eof on empty buffers.
6493         * testsuite/27_io/istream_sentry.cc: New file.
6494         
6495 1999-10-12  Chris Prince <prince@wcug.wwu.edu> 
6496
6497         * bits/std_cstdio.h: Remove Solaris hacks.
6498
6499 1999-10-12  Phil Edwards  <philip.edwards@sn.wpafb.af.mil>
6500
6501         * docs/index.html:  Fix minor typos and tweaks.
6502         * docs/17_intro/contribute.html:  Ditto.
6503         * docs/*/howto.html:  Ditto.  More "EGCS"->"GCC" conversion, notes on
6504         thread safety and binary I/O, links to external sites.
6505         * docs/faq/index.html: EGCS/GCC cleanup, new entries for Cygwin
6506         and MT.
6507
6508 1999-10-12  Petter Urkedal  <petter@matfys.lth.se>
6509
6510         * bits/std_cmath.h (abs(float)): When ::absf is not present, call
6511         ::fabs(double) rather than ::abs(int).
6512
6513 1999-10-11  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6514
6515         * bits/std_streambuf.h: Fix minor blip--should explicitly return
6516         *gptr(), not the result of underflow.
6517         (pbackfail): Conform to default behavior.
6518         (overflow): Same.
6519         * bits/streambuf.tcc: Add out-of-line streambuf members.
6520         (xsputn): Tweak.
6521         (xsgetn): Tweak.
6522         * testsuite/27_io/streambuf.cc: New file.
6523         * testsuite/27_io/filebuf.cc: Correct test.
6524
6525 1999-10-08  Benjamin Kosnik  <bkoz@haight.constant.com>
6526
6527         * bits/std_cmath.h: Correctly cast int to double.
6528         * testsuite/26_numerics/c_math.cc: Add test.
6529
6530         * mknumeric_limits (OUT_C): Tweaks.
6531         * src/gen-num-limits.cc: Checks for WCHAR_MIN, WCHAR_MAX before
6532         trying to instantiate type_traits<wchar_t>.
6533         * acconfig.h: Add _GLIBCPP_HAS_WCHAR_MIN_MAX.
6534         * configure.in (LIBS): Plus checks for WCHAR_MIN, WCHAR_MAX.
6535         * configure: Regenerate.
6536         
6537 1999-10-06  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6538
6539         * bits/streambuf.tcc (streambuf::xsgetn): Rewrite.
6540         (streambuf::xsputn): Put in break.
6541         Aiming for parity between these two (mostly) similar functions.
6542         Need to re-write tests.
6543         
6544         * bits/ios_base.h (ios_base::_M_copy_base): Remove declaration.
6545         Make data members protected, not private.
6546         * src/ios.cc (ios_base::_M_copy_base): Move _Callback_list into
6547         ios_base.h. As called only once, collapse into . . .
6548         * bits/basic_ios.h (basic_ios::copyfmt): Fix.
6549         (basic_ios::clear): Throw ios_base::failure on occasion.
6550         (basic_ios::exceptions): Fix.
6551         * testsuite/27_io/ios_members.cc (test02): Add tests.
6552         
6553         * bits/fpos.h: Default initialize.
6554         * testsuite/27_io/fpos.cc (test03): Add test.
6555
6556 1999-10-04  Russell Davidson <russell@qed.econ.queensu.ca> 
6557
6558         * src/basic_file.cc: Fix open modes.
6559         
6560 1999-10-04  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6561
6562         * bits/locale_facets.tcc (num_get<>::do_get): Fix typo.
6563
6564 1999-09-23  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6565
6566         * bits/streambuf.tcc: Yea. Fix this for real.
6567         * testsuite/27_io/ostream_inserter_other.cc: Add file.
6568         * src/Makefile.*: Regenerate.
6569
6570 1999-09-22  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6571
6572         * bits/std_cstdlib.h: Add more linux-specif hacks to the header
6573         files so that stdtof and strtold will be declared. Some hacks
6574         already exits in bits/std_cctype.h -- these should all be removed
6575         at a later date.
6576         * bits/locale_facets.tcc: Add cstring.h include.
6577         _S_format_long: Use long, not int.
6578         Add std_limits.h include, for numeric_limits.
6579         * testsuite/27_io/istream.cc: Make instantiations work when using
6580         -fhonor-std.  
6581         * testsuite/27_io/ostream.cc: Same.
6582         
6583 1999-09-21  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6584
6585         * bits/fpos.h (fpos::operator streamoff): Make const, don't return
6586         a reference. Same for operators == and !=.
6587         * testsuite/27_io/fpos.cc: Add tests.
6588
6589 1999-09-21  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6590
6591         * bits/valarray_array.h: Fix typo.
6592
6593         * mknumeric_limits: Make sure we are regenerating things from
6594         scratch.  Otherwise things get redefined.  Not good.
6595
6596 1999-09-20  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6597
6598         * bits/std_ostream.h: Fix typo.
6599         * bits/std_istream.h: Same.
6600         * bits/std_iomanip.h: Same.
6601
6602         * bits/istream.tcc (sentry::sentry()): Remove optional tie with
6603         ostream, as happens with underflow anyway.
6604         * testsuite/27_io/istream.cc (main): New file.
6605         * testsuite/27_io/ostream.cc (main): New file.
6606         * testsuite/27_io/istream_unformatted.cc: Add tests.
6607
6608         * src/Makefile.am (headers): Add new file.
6609         * src/Makefile.in (headers): Regenerated.
6610
6611         * bits/basic_ios.h: Remove local-related files.
6612         * bits/basic_ios.tcc: New file, add locale-related items.
6613         * src/misc-inst.cc: Add include of basic_ios.tcc, as a hack for now.
6614         * testsuite/27_io/ios_members_static.cc: Change to
6615         * testsuite/27_io/ios_base_members_static.cc: This.
6616         * testsuite/27_io/ios_members.cc: New file.
6617         * testsuite/27_io/stdios_basefield_manip: Change to
6618         * testsuite/27_io/ios_manip_basefield.cc: This.
6619         * testsuite/27_io/stdios_fmtflags_manip: Change to
6620         * testsuite/27_io/ios_manip_fmtflags.cc: This.
6621         
6622         * bits/fpos.h: Fix discarding qualifiers on this when
6623         using _M_position with a const fpos.
6624         * bits/std_iosfwd.h: Tweak.
6625         * testsuite/27_io/fpos.cc: New file.
6626
6627 1999-09-17  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6628
6629         * bits/streambuf.tcc (streambuf::xsputn): Tweak.
6630         * bits/ostream.tcc: Tweak.
6631         * testsuite/21_strings/inserters_extractors.cc (test04, test05):
6632         Add new regressions.
6633         
6634 1999-09-16  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6635
6636         * bits/basic_ios.h: Inline, tweak.
6637         * bits/fstream.tcc (basic_filebuf::_M_really_overflow): Tweak,
6638         pass back accurate return value to basic_filebuf::overflow.
6639         * bits/streambuf.tcc (streambuf::xsputn): Fix overflow accounting.
6640         This fixes sstream problems reported in libstdc++/9, but screws up
6641         filebufs. That solution is pending.
6642
6643 1999-09-15  Vadim Egorov  <egorovv@1c.ru>
6644
6645         * bits/streambuf.tcc (basic_streambuf::xsputn): Add check for 
6646         zero count puts.
6647         * testsuite/21_strings/inserters_extractors.cc (test01): Add test.
6648         
6649 1999-09-08  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6650
6651         * bits/c++config.h.in: Add emacs hints.
6652
6653         * stl/bits/stl_range_errors.h: Don't define here, for now define
6654         in stdexcept.cc along with string inlines __length_error, etc.
6655         * src/stdexcept.cc: Define here.
6656         * stl/bits/stl_config.h (__STL_CAN_THROW_RANGE_ERRORS): Enable, so
6657         at(size_t) will be declared/defined.
6658         (__STL_THREADS): Fix mess surrounding use of this, enable.
6659
6660 1999-08-31  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6661
6662         * testsuite/27_io/istream_extractor_arith.cc: Fix.
6663         * src/localename.cc: Tweak formatting, fix assignment to
6664         const compiler errors.
6665
6666 1999-08-25  Benjamin Kosnik  <bkoz@cygnus.com>
6667
6668         * acconfig.h: Add absf, cosf.
6669         * configure.in (use_builtin_sinf): Same.
6670         * configure: Regenerate.
6671         * bits/std_cmath.h: Add mess of defines.
6672         * testsuite/26_numerics/modf_float.cc: Change to
6673         * testsuite/26_numerics/c_math.cc: This.
6674         
6675         * src/locale.cc: Change.
6676         * bits/locale_facets.h: Fix.
6677         * testsuite/22_locale/ctype.cc: Add temporary tests.
6678         
6679 1999-08-24  Benjamin Kosnik  <bkoz@cygnus.com>
6680
6681         * bits/fpos.h: Test.
6682
6683         * docs/index.html: Add powerpc-linux-gnu results with gcc-2.95.1.
6684         Fix database name for "libstdc++".
6685
6686 1999-08-23  Benjamin Kosnik  <bkoz@cygnus.com>
6687
6688         * mknumeric_limits (numeric_limits): Add default definitions to
6689         member functions.
6690         * testsuite/18_support/numeric_limits.cc: New file.
6691
6692 1999-08-18  Benjamin Kosnik  <bkoz@cygnus.com>
6693
6694         * bits/std_istream.h: Correct initialization.
6695         * bits/std_ostream.h: Likewise.
6696         * bits/std_sstream.h: Likewise.
6697         * bits/std_fstream.h: Likewise. 
6698         * testsuite/27_io/stringstream.cc: Add test case.
6699         
6700         * bits/std_sstream.h: Replace ____string_type with __string_type.
6701         * bits/basic_ios.h (basic_ios::rdbuf(sb*): Call clear(), as required.
6702         * bits/std_ostream.h: Tweak dtor.
6703
6704 1999-08-17  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
6705
6706         * src/Makefile.am (CXXFLAGS): Add -O2.
6707         * src/Makefile.in: Likewise.
6708         
6709         * src/gen-num-limits.cc: Conditionally allow wchar_t. See what
6710         this breaks. . .
6711         * mknumeric_limits (numeric_limits): Uglify.
6712
6713         * bits/std_istream.h: Fix warnings.
6714         * bits/locale_facets.tcc: Collateral damage from
6715         char_traits<char>::int_type change.
6716
6717         * testsuite/27_io/istream_extractor_char.cc: Terminate strings.
6718
6719 1999-08-17  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
6720
6721         * docs/index.html: Add mailing list form.
6722         * docs/27_io/howto.html: Add link to iostreams_hierarchy.pdf.
6723
6724 1999-08-16  Benjamin Kosnik  <bkoz@cygnus.com>
6725
6726         * bits/streambuf.tcc (streambuf::xsputn): Allow copies to continue
6727         if overflow successfully allocates more space.
6728         * bits/std_sstream.h: Adjust comments.
6729         * bits/sstream.tcc (stringbuf::overflow): Copy buffer into string
6730         before overflow forces a resize.
6731         * testsuite/27_io/ostream_inserter_char.cc: New file.
6732         
6733         * bits/std_fstream.h: Remove declaration.
6734         * bits/fstream.tcc: Move uflow.
6735         * bits/std_streambuf.h: To here.
6736         * bits/streambuf.tcc: Make consistent.
6737         
6738         * src/Makefile.am (WERROR): Enable.
6739         * src/Makefile.in: Regenerate.
6740         * bits/sbuf_iter.h: Tweak.
6741         * bits/char_traits.h: (char_traits<wchar_t>::eof): Use WEOF.
6742         Use unsigned int as char_traits<char>::int_type.
6743
6744         * bits/ostream.tcc (ostream::putc(char)): Tweak.
6745         * testsuite/27_io/iostream_objects.cc: Terminate string.
6746         Move cin::operator>>(char*) test to extractor_char.cc.
6747         * testsuite/27_io/stringstream.cc: Add stringstream instantiation.
6748         * bits/std_istream.h (basic_iostream): Make explicit definition
6749         for default ctor.
6750         * bits/std_sstream.h: Fix typos.
6751         * bits/fstream.tcc (_M_init_filebuf): Set to indeterminate for
6752         basic_filebuf ctor with fileno open arguments. Thus, filebufs are
6753         initialized in a consistent manner, no matter if the underlying
6754         FILE/bit bucket is a tty or a text file or some other imaginary
6755         construct. This and setting _M_buf_size to 1 for cin allows
6756         istream::get(char) to work in a manner consistent with what others
6757         expect.
6758
6759         * docs/index.html: Link Stroustrup's C++ page.
6760         
6761 1999-08-12  Michael Cook  <cook@sightpath.com>
6762
6763         * bits/fstream.tcc: Fix signed/unsigned -Wall warning.
6764         * bits/istream.tcc: ditto.
6765         * bits/sbuf_iter.h: ditto.
6766         * bits/std_istream.h: ditto.
6767         * src/Makefile.am: Add -Wall to CXXFLAGS.
6768         * src/Makefile.in: ditto.
6769
6770 1999-08-12  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
6771             Russell Davidson <russell@ehess.cnrs-mrs.fr> 
6772
6773         * bits/locale_facets.tcc (_M_extract): Finish off patch from yesterday.
6774         * src/Makefile.am (myinstallheaders): Tweak, remove PHONY.
6775         
6776 1999-08-11  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
6777
6778         * testsuite/27_io/istream_unformatted.cc: New file.
6779
6780         * testsuite/27_io/istream_extractor_arith.cc (test02): Add more
6781         elaborate tests for int types with noskipws.
6782
6783         * testsuite/27_io/istream_extractor_other-1.txt: New file.
6784         * testsuite/27_io/istream_extractor_other-1.tst: New file.
6785         * testsuite/27_io/istream_extractor_other-2.tst: New file.      
6786         * testsuite/27_io/istream_extractor_other.cc: Add tests.
6787         * bits/istream.tcc: Fix operator>>(streambuf*).
6788
6789         * testsuite/23_containers/vector_ctor.cc (test01): Add.
6790
6791         * docs/index.html: Remove references to egcs.
6792         * docs/17_intro/DESIGN: Same.
6793         * docs/17_intro/contribute.html: Same.
6794         * docs/17_intro/RELEASE-NOTES: Ditto.
6795         * docs/17_intro/howto.html: Same here.
6796
6797         Russell Davidson <russell@ehess.cnrs-mrs.fr>
6798         * stl/bits/stl_vector.h (_M_insert_aux): 
6799         * bits/locale_facets.tcc (_M_extract): Tweaks for preliminary
6800         decimal/floating point support.
6801         * bits/locale_facets.h: Change _M_extract prototype.
6802         * bits/char_traits.h (char_traits::to_int_type): Cast to unsigned.
6803         * bits/std_istream.h (istream::read(char_type, streamsize)): Fix.
6804         
6805 1999-08-10  Michael Cook  <cook@sightpath.com>
6806
6807         * bits/fstream.tcc: Fix for unused variable warning (-Wall).
6808         * bits/ios_base.h: ditto.
6809         * bits/istream.tcc: ditto.
6810         * bits/locale_facets.h: ditto.
6811         * bits/locale_facets.tcc: ditto.
6812         * bits/std_streambuf.h: ditto.
6813         * src/basic_file.cc: ditto.
6814         * src/locale.cc: ditto.
6815         * src/localename.cc: ditto.
6816
6817 1999-08-10  Kirat Singh  <singhki@jany.gs.com> 
6818
6819         * bits/std_iomanip.h: Inline.
6820         
6821 1999-08-10  Alfred Minarik <a8601248@unet.univie.ac.at>
6822         
6823         * bits/std_streambuf.h: Correct member initialization order.
6824         * src/ios.cc: Add definitions for ios_base data members.
6825         
6826 1999-08-06  Phil Edwards  <pedwards@ball.com>
6827         
6828         * docs/index.html:  Seventh snapshot updates.  Minor tweaks.
6829         * docs/faq/index.html: Ditto.  Removed bugs sections that have
6830         been fixed for a long time...  Lots of "egcs" references still
6831         exist.
6832         * docs/faq/index.txt:  Regenerated.
6833
6834 1999-08-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6835             Andreas Amann <amann@physik.tu-berlin.de>
6836
6837         * testsuite/26_numerics/binary_closure.cc (main): new test.
6838
6839 1999-07-29  Andreas Amann <amann@physik.tu-berlin.de>
6840
6841         * bits/valarray_meta.h: (_BinClos<>::_Binclos): fix typo causing
6842         segmentation fault.
6843
6844 1999-08-04  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
6845
6846         * docs/index.html (host): Put in testing status.
6847
6848 1999-08-03  Benjamin Kosnik  <bkoz@cygnus.com>
6849
6850         * docs/index.html: Update for libstdc++-2.90.6 release.
6851         * docs/17_intro/RELEASE-NOTES (New): Update.
6852         * docs/17_intro/BUGS: Update.
6853         * bits/c++config.h.in (__GLIBCPP__): Bump version number.
6854         * README (file): Update.
6855
6856 1999-08-03  Benjamin Kosnik  <bkoz@cygnus.com>
6857
6858         * src/Makefile.am (generated_headers): Remove bits/c++config.h as
6859         a target.
6860         ($(generated_headers)): Same.
6861         * src/gen-c++config.cc: Remove, rename to
6862         * bits/c++config.h.in: New file. Bump version number.
6863         * configure.in: Generate bits/c++config.h at configure time. 
6864         * math/mathconf.h: include bits/c++config.h, not config.h.
6865         
6866         * bits/std_cmath.h: Fix remaining link error for solaris shared
6867         builds.  _GLIBCPP_HAS_BUILTIN_SINF has to be disabled for the time
6868         being, as on Solaris this silently calls sinf, which does not
6869         exist.
6870         
6871         * src/complex.cc: More tweaks.
6872
6873 1999-08-03  Benjamin Kosnik  <bkoz@cygnus.com>
6874
6875         * src/complex.cc: Same.
6876         * math/complex-stub.h: Change.
6877         * math/c_log10*.c: Change back to clog10*.c.
6878
6879         * configure.in (NEED_C_LOG10): Delete.
6880         * configure: Regenerate.
6881         * math/Makefile.am: Change.
6882         
6883 1999-07-30  Benjamin Kosnik  <bkoz@cygnus.com>
6884
6885         * math/Makefile.am: Fix, for real.
6886         * configure.in (use_builtin_sinf): Ok, make autoconf solution.
6887         * math/clog.c: Move to c_log.c.
6888         * math/clog*: Ditto.
6889         * math/c_log10l.c (c_log10l): Change function name.
6890         * math/c_log10f.c (c_log10f): Change function name.
6891         * math/c_log10.c (c_log10): Change function name.
6892         
6893         * math/complex-stub.h: Change to c_log* variants.
6894         * src/complex.cc: And here. 
6895         
6896 1999-07-29  Benjamin Kosnik  <bkoz@cygnus.com>
6897
6898         * testsuite/27_io/istream_extractor_other.cc: Correct last test.
6899         * bits/sstream.tcc (stringbuf::overflow): Don't update the input
6900         sequence, just the output sequence.
6901         * bits/std_sstream.h (stringbuf::str()): Only in stringbufs return
6902         the original string, all others use complicated heuristic.
6903
6904         * src/complex.cc: Assume c_log10.
6905         * math/Makefile.am (EXTRA_yes): Fix c_log/c_logf unresolved
6906         symbols in shared libraries by making c_log/c_log10 part of the
6907         "must cmpile" sources. This may not work on solaris, must check.
6908
6909 1999-07-29  Benjamin Kosnik <bkoz@cygnus.com>
6910
6911         * bits/istream.tcc (operator>>(streambuf*)): Re-do.
6912         * bits/std_istream.h: Fix char extractors.
6913         * testsuite/27_io/istream_extractor_char.cc: Change.
6914         * testsuite/27_io/istream_extractor_other.cc: Add tests.
6915         
6916 1999-07-28  Benjamin Kosnik <bkoz@cygnus.com>
6917
6918         * bits/std_cctype.h: Fix for solaris2.6 builds. 
6919
6920         * bits/istream.tcc: Fix, thanks Alfred.
6921         * bits/std_istream.h: Formatting changes.
6922
6923         * libio/Makefile.am (libio_la_SOURCES): Remove cleanup.c, so that
6924         _IO_cleanup will not be undefined.
6925         * libio/*: Regenerate.
6926         
6927         * bits/basic_string.h: More namespace-safety stuff.
6928         * testsuite/27_io/istream_extractor_char.cc: Fix.
6929         * testsuite/27_io/istream_extractor_arith.cc: Fix.
6930         * testsuite/27_io/iostream_objects.cc: Fix.
6931         * testsuite/27_io/ios_ctor.cc: Fix.
6932         * testsuite/27_io/istream_manip.cc: Make namespace safe.
6933         * testsuite/27_io/istream_extractor_other.cc: New file.
6934
6935         * mkcheck (TESTS_FILE): Tweaks.
6936
6937 1999-07-27  Benjamin Kosnik  <bkoz@cygnus.com>
6938
6939         * src/gen-c++config.cc: Note here, change version.
6940         * acconfig.h( _GLIBCPP_USE_CTYPE_ISBIT): New macro.
6941         * src/locale.cc: Used here.
6942         * configure.in (use_builtin_sinf): Check for _ISBit using autoconf.
6943
6944         * aclocal.m4: Regenerate by running `aclocal -I m4.`
6945         
6946         * bits/istream.tcc: Fix.
6947         * bits/std_istream.h: More changes to extractors.
6948
6949         * testsuite/27_io/istream_extractor_char.cc: More.
6950         * testsuite/21_strings/inserters_extractors.cc (test01): Fix logic
6951         error in testsuite construction.
6952
6953         * bits/std_istream.h: Partially revert.
6954         * bits/std_ostream.h: Same.
6955         * bits/std_sstream.h: Revert. 
6956
6957 1999-07-26  Benjamin Kosnik  <bkoz@cygnus.com>
6958
6959         * bits/std_sstream.h: Change initialization.
6960         * bits/std_ostream.h: Make default ctor/assign/operator= private.
6961         * bits/std_istream.h: Same, also correct sentry args.
6962         * bits/istream.tcc: Add correct sentry args.
6963         
6964         * testsuite/27_io/istream_extractor_char.cc: New file.
6965         * testsuite/27_io/istream_extractor_arith.cc: New file, old file,
6966         name changes making me dizzy.
6967
6968 1999-07-26  Ulrich Drepper  <drepper@happy.cygnus.com>
6969             Benjamin Kosnik  <bkoz@cygnus.com>
6970
6971         * aclocal.m4, config.guess, config.sub, ltconfig ltmain.sh: Update
6972         to libtool 1.3.3.
6973
6974 1999-07-26 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6975
6976         * bits/std_complex.h: Tweak. Make the primary template class
6977         complex work with user-defined numerical types.  Provide member
6978         definitions.  Restructure.
6979         (class complex<float>): Uglify.  Remove  __value().  Rename __val
6980         to _M_value.  Rename __complex_value_type to _ComplexT. Make it
6981         private.  Remove dependency on __value().  Fix various explicit
6982         specialization syntax.  Declare a some functions friend.  Now the
6983         implementation is nearly comforming.
6984         (class complex<double>): Likewise.
6985         (class complex<long double>): Likewise.
6986
6987         * src/complex.cc: Tweak.  Remove dependency on complex::__value().
6988         (sin, sinh, tan, than): Fix call to corresponding C9x function
6989         syntax. 
6990
6991 1999-07-24  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
6992
6993         * bits/istream.tcc (ws): Fix error with failbit being set.
6994
6995         Disabled due to egcs/gcc-2_95 internal compiler errors.
6996         * src/Makefile.am (CXXFLAGS): Add -fsquangle -fhonor-std
6997         -fnew-exceptions. Compiling with namespaces enabled will now be
6998         the default.
6999         * mkcheck (CXX_FLAG): Same.
7000         * src/gen-c++config.cc (_GLIBCPP_USE_NAMESPACES): Yup. New macro.
7001         * bits/std_cctype.h: Not enough to just define in namespace std if
7002         ctype-isms are macros. Need to also define in namespace std:: if
7003         the C functions are just plain functions.
7004
7005         * src/gen-num-limits.cc: Fix spelling inconsistencies.
7006         
7007 1999-07-24  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7008
7009         * docs/18_support/howto.html: Start documentation.  Need to keep
7010         track of the ongoing discussion in th LWG reflector.
7011
7012         * src/gen-num-limits.cc: Tweak.
7013         (class predicate): New class.
7014         (class value): Likewise.
7015         Make the whole machinery more flexible. Add comments.
7016
7017 1999-07-23  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
7018
7019         * bits/ios_base.h: Move state/exception functions into basic_ios. 
7020         * bits/basic_ios.h: Same.
7021         * src/ios.cc: And here. Callbacks don't attempt to reset
7022         state now.  
7023
7024         * bits/std_streambuf.h: Separate ios and streambuf locale data
7025         members and cached facets. Using this convention: _M_locale_buf for
7026         the streambuf-related classes, and _M_locale_ios for the ios
7027         hierarchy.
7028         * bits/fstream.tcc: And here.
7029         * bits/basic_ios.h: And here. Also, add cached ctype.
7030         * src/ios.cc: Ditto.
7031         * bits/ios_base.h: Ditto.
7032         * bits/std_istream.h: Use cached ctype facet.
7033         * docs/27_io/iostreams_hierarchy.pdf: Update for new data member
7034         arraignment.
7035
7036         * testsuite/27_io/ios_ctor.cc: New file.
7037         * src/ios.cc: Move _M_state init to basic_ios::init().
7038         * bits/basic_ios.h: To here.
7039         
7040         Attempt for some consistency in naming for testsuite/27_io/*.cc.
7041         * testsuite/27_io/boolfmt.cc: Rename to stdios_fmtflags_manip.cc
7042         * testsuite/27_io/octfmt.cc: Rename to stdios_basefield_manip.cc
7043         * testsuite/27_io/istream_manip.cc: Rename to istringstream_manip.cc.
7044         * testsuite/27_io/ostream_manip.cc: Rename to ostringstream_manip.cc.
7045         
7046 1999-07-22  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
7047         
7048         * src/ios.cc: Tweak initializations of standard iostream
7049         objects to closely match the standard. Tie cin/wcin, set flags on
7050         cerr/wcerr
7051         * bits/char_traits.h: Change from size_t to int_type, as per
7052         standard. As per wide streams.
7053         * bits/basic_ios.h: Infect with __ctype_type, as a preparation
7054         for caching a bunch of ctype info. For instance, ctype_base::space
7055         info needs to be stored somewhere, somehow.
7056         * bits/std_istream.h: Also here.
7057         * bits/std_ostream.h: Ditto.
7058         * bits/std_istream.h (operator>>(istream, char): Aggh. Fixup.
7059         * testsuite/27_io/iostream_objects.cacc (test01): Oh yeah. Fix
7060         stream states.
7061
7062         * bits/istream.tcc (ws): Fix.
7063         * testsuite/27_io/istream_manip.cc: New file, test ws.
7064         * testsuite/27_io/ostream_manip.cc: New file, test endl, ends, flush.
7065
7066         * bits/basic_string.h: Provide a specialized member function for
7067         _S_find<char> using strchr.
7068         * src/string-inst.cc: Put specializations here.
7069         * bits/string.tcc: Small fix for find, remove typo.
7070         * testsuite/21_strings/find.cc (test01): Add tests to catch this
7071         find bug. . .
7072
7073 1999-07-20  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>       
7074
7075         * bits/basic_ios.h: Put into basic_ios namespace.
7076         Tweak widen/narrow.
7077
7078 1999-07-19  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>       
7079
7080         * bits/std_sstream.h (stringbuf::sync): Change to _M_really_sync,
7081         adjust _M_*_cur pointers inside the function, so callee doesn't
7082         have to adjust.
7083         * bits/sstream.tcc (stringbuf::overflow): Tweak.
7084
7085         * mkcheck: Tweak. Add execution time field, even though it is not
7086         implemented yet. Simplify pass/fail status notation.
7087
7088 1999-07-18  Mumit Khan  <khan@xraylith.wisc.edu>
7089
7090         * configure.in: Check for float.h and underscored version of 
7091         math functions.
7092         * acconfig.h: Add @BOTTOM@ section for handling underscored
7093         math functions.
7094         * configure: Regenerate.
7095         * config.h.in: Regenerate. 
7096         * math/mathconf.h (float.h): Include conditionally.
7097         (M_PI): Define conditionally.
7098         (INFINITE_P): Define for Mingw.
7099         * bits/locale_facets.tcc: Workaround for compiler crash on
7100         ix86-*-mingw32.
7101         * bits/std_cwchar.h (bits/std_cstddef.h): Include.
7102         * src/locale.cc (bits/std_istream.h): Include.
7103         (bits/std_ostream.h): Likewise.
7104
7105 1999-07-18  Phil Edwards  <pedwards@ball.com>
7106
7107         * docs/faq/index.html:  Updated __black_count notes, fixed typos.
7108         * docs/faq/index.txt:  Regenerated.
7109
7110 1999-07-15  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
7111
7112         * testsuite/27_io/stringbuf.cc: Cccchanges, latent bugs.
7113
7114         * bits/sstream.tcc (stringbuf::overflow): Modify accounting of
7115         newly-allocated buffer.
7116         * bits/streambuf.tcc (streambuf::xsgetn): Aaaaaah. Fix final
7117         overflow condition bits.
7118
7119 1999-07-14  Benjamin Kosnik  <bkoz@cygnus.com>
7120
7121         * bits/std_sstream.h (stringbuf::_M_init_stringbuf): Set
7122         _M_buf_size to initial _M_string.size(), even though for
7123         ostringstreams it is pretty pointless. It's necessary for
7124         istringstreams.
7125         (stringbuf::str()): Adjust. 
7126         (stringbuf::str()): Adjust, call _M_init_stringbuf.
7127         * bits/streambuf.tcc (streambuf::xsgetn): Adjust return value for
7128         overflow's possible success.
7129         (streambuf::xsputn): Adjust.
7130         
7131         * testsuite/27_io/filebuf.cc: Adjust for the xsgetn re-write from
7132         yesterday.
7133         * testsuite/27_io/stringbuf.cc: Tweak.
7134         * testsuite/21_strings/inserters_extractors.cc (test01): Remove
7135         notes to myself.
7136         * testsuite/23_containers/vector_cons.cc: Rename to be consistent
7137         with other constructor tests to. . .
7138         * testsuite/23_containers/vector_ctor.cc: New file.
7139         
7140 1999-07-14  Alfred Minarik <a8601248@unet.univie.ac.at>
7141
7142         * testsuite/*: Changes to make the testsuit compilable with
7143         -fhonor-std. Contains direct qualification of library names with
7144         std::.
7145
7146 1999-07-13  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
7147
7148         * bits/streambuf.tcc: Tweaks.
7149         (streambuf::xsputn): Optimize, fix for sstreams.
7150         (streambuf::xsgetn): Same.
7151         * bits/sstream.tcc (stringbuf::overflow): Adjust _M_buf_size
7152         correctly, handle overflow/reallocate conditions correctly.
7153         * bits/std_sstream.h: Fix typo.
7154         _M_init_stringbuf(): Fix _M_buf_size initialization.
7155         (stringbuf::str()): Construct return string if output has occurred.
7156
7157         * bits/basic_string.h: Fix typo from yesterday's patch.
7158
7159 1999-07-12  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
7160
7161         * bits/string.tcc: _M_mutate - clear _M_state again.
7162         * bits/basic_string.h: In the three functions that return
7163         an iterator set _M_state to -1 before return.
7164         Also optimized two cases of operator+.
7165         
7166 1999-07-12  Phil Edwards  <pedwards@ball.com>
7167
7168         * docs/index.html:  Expand egcs-1.1.2 notes/links.
7169         * docs/faq/index.html:  And here.  Add links to LWG issues-list.
7170         * docs/faq/index.txt:  Regenerate.  (lynx rocks)
7171         * docs/21_strings/howto.html:  Fix notes on case conversion.
7172         * docs/21_strings/stringtok_h.txt:  Goodly spelling...
7173         * docs/23_containers/howto.html:  Stub for bitmasks.
7174         * docs/27_io/howto.html: Add section on buffering, stub binary.
7175         
7176 1999-07-12  Nathan Myers <ncm@cantrip.org>
7177
7178         * stl/bits/stl_tree.h (__black_count): Optimize.
7179
7180 1999-07-09  Vadim Egorov  <egorovv@1c.ru>
7181
7182         * src/basic_file.cc: Cleanup in __basic_file destructor.
7183
7184 1999-07-08  Benjamin Kosnik  <bkoz@cygnus.com>
7185
7186         * bits/std_streambuf.h: Changes. . .
7187         * bits/streambuf.tcc: Merge xsputn from filebuf into xsputn in
7188         basic_streambuf, to be used for both filebufs and streambufs.
7189         * bits/std_fstream.h (_M_init_filebuf): New function.
7190         Take out specialized xsputn, put into basic_streambuf.
7191         * bits/fstream.tcc: Define, call from both ctors.
7192         * bits/std_sstream.h (_M_init_stringbuf): New function.
7193         * bits/sstream.tcc: Tweak.
7194         
7195         * docs/27_io/iostreams_heirarchy.pdf: New file.
7196         
7197         * docs/17_intro/CHECKLIST (basic_string<char>): Validation and
7198         acceptance. Wooo-hoo!
7199
7200         * bits/char_traits.h: Change int_type for char_traits general
7201         template, so that 21_strings/capacity.cc will compile.
7202         * testsuite/21_strings/capacity.cc: Add operators.
7203         
7204         * bits/string.tcc (string::compare): Clean up, re-implement.
7205         * testsuite/21_strings/compare.cc: Tweak.
7206         
7207         * bits/string.tcc (string:_M_mutate): Keep leaked value in
7208         _M_state, which means that whenever begin() or end() has been
7209         called, the string is unshareable, period. By doing this, insert
7210         and erase member functions that return iterators can remain
7211         footloose and fancy free. 
7212         * testsuite/21_strings/invariants.cc: Update.
7213
7214         * bits/basic_string.h (string::append): Fix self-referential
7215         problems, ie when "this" is also an argument to a member function.
7216         * bits/string.tcc: Tweak, same.
7217         * testsuite/21_strings/append.cc: New file.
7218
7219 1999-07-07  Benjamin Kosnik  <bkoz@cygnus.com>
7220
7221         * bits/char_traits.h: Tweaks.
7222         * bits/basic_string.h: Tweak.
7223         * bits/fstream.tcc: Remove warning for _M_buf_size assignment.
7224
7225 1999-07-06  Benjamin Kosnik  <bkoz@cygnus.com>
7226
7227         * bits/std_streambuf.h: Absorb/acquire data members previously
7228         working in basic_filebuf.
7229         * bits/streambuf.tcc: Tweaks.
7230         * bits/fstream.tcc: Adjust.
7231         * bits/std_fstream.h: Move and rename the following functions:
7232         _M_set_ideterminate, _M_is_indeterminate, _M_set_determinate are
7233         now declared and defined in the base class, basic_streambuf.  Oh
7234         fuck it, move data members _M_buf, and _M_buf_size into
7235         basic_streambuf as well.
7236
7237         * bits/ostream.tcc: Tweak.
7238         * bits/locale_facets.tcc: Fix typo in comments.
7239
7240         * testsuite/21_strings/inserters_extractors.cc (test01): Change
7241         state from good to not good, as eof() is set.
7242
7243 1999-07-05  Benjamin Kosnik  <bkoz@cygnus.com>
7244
7245         * bits/char_traits.h (char_traits::compare). Fix.
7246
7247         * config.guess, config.sub: Update.
7248
7249 1999-07-02  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
7250
7251         * bits/string.tcc: Check the __res_arg for a length error.
7252
7253 1999-07-01  Benjamin Kosnik  <bkoz@nabi.net>
7254
7255         * bits/std_streambuf.h: Tweaks. Need to move _M_is_indeterminate
7256         and related functions into basic_streambuf, from basic_filebuf to
7257         take care of ostringstreams and empty strings. So that's groovy,
7258         or will be groovy.
7259         * bits/std_istream.h: Tweaks.
7260         * bits/istream.tcc: Implement ws, getline, operator>> for string.
7261         * bits/std_ostream.h: And here.
7262         * bits/ostream.tcc: Same.
7263         * src/misc-inst.cc: Add instantiations for ws.
7264         
7265         * src/string-inst.cc: Add instantiations for inserters and
7266         extractors (operators << and >>, getline).
7267
7268         * testsuite/21_strings/inserters_extractors.cc: Amazingly enough,
7269         a testcase for getline and operators << and >>. Ostream tests are
7270         failing right now, but istream tests should work. . .
7271
7272         * bits/string.tcc: Change _S_max_size, as GNU malloc won't budge.
7273         * bits/std_sstream.h: Revert.
7274
7275         * testsuite/17_intro: header_[iosfwd, ios, iostream, iomanip,
7276         istream, ostream, streambuf, fstream, sstream].cc: New files.
7277         
7278 1999-06-30  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
7279
7280         * bits/std_sstream.h (stringbuf::sync): Don't use string::begin()
7281         and string::end().
7282         
7283         * bits/basic_string.h (basic_string<>::_S_copy_chars): Add
7284         specializations for _CharT*, iterator and const_iterator.
7285         * src/string-inst.cc: Remove explicit instantiation, as
7286         now explicitly specialized.
7287
7288         * bits/basic_string.h: Add a size_type parameter to _M_clone with
7289         a default value set to 0.
7290         * bits/string.tcc: In _M_clone by the call of _S_create add the
7291         value of the new parameter to _M_length.  In reserve check
7292         _M_state and use _M_clone instead of _M_mutate.
7293
7294 1999-06-30  Benjamin Kosnik  <bkoz@happy.cygnus.com>    
7295
7296         * bits/basic_string.h: Fix _S_max_size.
7297         * bits/string.tcc: Add def here.
7298         * testsuite/21_strings/insert.cc: Fix.
7299         
7300         * bits/sbuf_iter.h: Remove detritus.
7301         * testsuite/24_iterators/istreambuf_iterator.cc: Add tests.
7302
7303         * src/locale-inst.cc: Elaborate iterator/locale instantiations
7304         to resolve alpha-osf4 build problems.
7305
7306 1999-06-29  Benjamin Kosnik  <bkoz@happy.cygnus.com>    
7307
7308         * bits/string.tcc: Fix signed/unsigned issues in compares.
7309         * stl/bits/stl_deque.h: And here.
7310         * stl/bits/stl_string_fwd.h: Remove __get_c_string.
7311
7312 1999-06-29  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
7313  
7314          * bits/string.tcc: New implementation and interface of _M_mutate.
7315            Adapt the change in all functions that call _M_mutate.
7316          * bits/basic_string.h: And here.
7317
7318 1999-06-29  Benjamin Kosnik  <bkoz@happy.cygnus.com>
7319
7320         * testsuite/21_strings/capacity.cc (test01): Fix.
7321
7322 1999-06-29  Phil Edwards  <pedwards@ball.com>
7323
7324         * mknumeric_limits:  Exit script if gen-num-limits isn't built.
7325         
7326 1999-06-29  Andreas Gruenbacher  <agruenba@pent224.infosys.tuwien.ac.at> 
7327
7328         * stl/bits/stl_vector.h: Fix.
7329         * testsuite/23_containers/vector_cons.cc: Add.
7330         
7331 1999-06-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7332
7333         * mknumeric_limits (LDFLAGS): fix.
7334
7335 1999-06-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7336
7337         * mknumeric_limits (LDFLAGS): set it according to the system.
7338
7339         * math/mathconf.h (NAN): Check whether host is running under
7340         Cygwin and make the appropriate definition.
7341         * math/complex-stub.h (nan): protect declaration.
7342
7343 1999-06-28  Benjamin Kosnik  <bkoz@haight.constant.com>
7344
7345         * bits/sbuf_iter.h: Rename internal data structure to prevent
7346         confusion between basic_ios and istreambuf_iterators internal
7347         basic_streambuf data member.
7348         * testsuite/24_iterators/istreambuf_iterator.cc: New file.
7349
7350         * bits/basic_string.h: Remove conditionals, add input_iterator
7351         version of S_construct again.
7352         * bits/string.tcc: Same.
7353         * src/string-inst.cc: And add explicit instantiation here.
7354         
7355         * src/gen-c++config.cc (_GNU_SOURCE): Take out both _GNU_SOURCE
7356         and __USE_GNU macro defines, as single __USE_GNU use leading to
7357         confusion on glibc2.1 systems (ie, RedHat 6.0).
7358         
7359         * src/Makefile.am (headers): Add std_utility to installed headers.
7360
7361 1999-06-25  John Potter  <jpotter@eagle.lhup.edu>
7362
7363         * stl/bits/stl_tree.h (insert_unique): Revert, just fix insert_equal.
7364
7365 1999-06-25  Gilles Zunino  <Gilles.Zunino@hei.fr>
7366
7367         * mknumeric_limits (LDFLAGS): Swap -lc and -lgcc.
7368
7369 1999-06-24  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7370
7371         * src/gen-c++config.cc (_GLIBCPP_*): Change all
7372         macros to include _GLIBCPP as a distinct namespace.
7373         * bits/*: And here.
7374         * src/*: And here.
7375         
7376         * stl/bits/std_stdexcept.h: Forward-declare __Named_exception ctor.
7377         * bits/basic_string.h: Remove __get_c_string.
7378         * src/stdexcept.cc: Define ctor here.
7379         * bits/ios_base.h: And fix ios_base::failure as well.
7380         * src/ios.cc: Define here. 
7381         
7382         * bits/std_streambuf.h: Add a private copy ctor and assignment
7383         operator wrapped in _G_RESOLVE_LIB_DEFECTS.
7384         * bits/ios_base.h: And here too.
7385         
7386         * bits/basic_string.h: Tweak.
7387         * testsuite/21_strings/nonmember.cc: Add operator+ tests.
7388
7389         * src/valarray.cc: Rename to. . .
7390         * src/valarray-inst.cc: This.
7391         * src/Makefile.am (sources): Change here.
7392         * src/Makefile.in: Regenerated.
7393         
7394 1999-06-24  Vadim Egorov  <egorovv@1c.ru>
7395
7396         * bits/string.tcc(basic_string<>::_Rep::_S_create): Fixed
7397         allocated size
7398
7399 1999-06-24  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7400             Tom Tromey  <tromey@cygnus.com>
7401         
7402         * configure.in (use_glibc2): Eek, correct for non-glibc systems.
7403         Use AM_CONDITIONAL to get us out of this jam. . 
7404         * libio/Makefile.am: Same.
7405         * */Makefile: Regenerated.
7406
7407 1999-06-24  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7408             John Potter  <jpotter@eagle.lhup.edu>
7409
7410         * stl/bits/stl_tree.h (insert_equal): Fix.
7411         * testsuite/23_containers/multiset.cc: New file.
7412         
7413 1999-06-23  Benjamin Kosnik  <bkoz@cygnus.com>
7414
7415         * configure.in (test for glibc2): Correct AC_TRY_COMPILE so that
7416         this works correctly on glibc-2 systems. This should allow
7417         simplified linking on these systems, and successful linking on Red
7418         Hat 6.0 systems.
7419         * configure, Makefile: Regenerate.
7420         
7421         * bits/std_cwctype.h: Add missing 'w' to _S_iswpunct_helper name. 
7422         
7423         * testsuite/ext: New directory.
7424         * testsuite/ext/headers.cc: New file.
7425
7426 1999-06-23  Vadim Egorov  <egorovv@1c.ru>
7427
7428         * stl/ext/hash_set: include missing headers
7429         * stl/ext/hash_map: Same
7430         * stl/ext/slist: Same
7431
7432 1999-06-17  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7433
7434         * bits/std_cmath.h: comment out modf. Kills build on hpux10.20
7435
7436 1999-06-15  Benjamin Kosnik  <bkoz@cygnus.com>
7437
7438         * src/Makefile.am (sources): Regenerate.
7439         * mkcheck: Add TESTS_FILE as a way of controlling what testcases
7440         are run.
7441
7442 1999-06-14  Benjamin Kosnik  <bkoz@cygnus.com>
7443
7444         * src/string-inst.cc: Change _S_construct signature, to
7445         track requested allocation size versus valid input iterator range.
7446         * bits/basic_string.h: Here too.
7447         * bits/string.tcc: And here.
7448
7449 1999-06-12  Benjamin Kosnik  <bkoz@cygnus.com>
7450
7451         * mkcheck (LOG_FILE): Correctly append errors. 
7452
7453         * stl/bits/stl_iterator.h: Revert previous, delirious, change.
7454
7455         * bits/basic_string.h: Change _Rep::_M_data to _Rep::_M_refdata,
7456         to clarify differences between basic_string::_M_data() calls and
7457         _Rep::_M_data() calls.
7458         * bits/std_string.h: Fix.
7459         Put in check for out_of_range in substr.
7460         * bits/string.tcc:  Fix for _S_find.
7461
7462         * testsuite/21_strings/compare.cc: Add tests.
7463         * testsuite/21_strings/find.cc: New file.
7464         * testsuite/21_strings/substr: New file.
7465         * testsuite/21_strings/replace.cc: New file.
7466         
7467 1999-06-11  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7468
7469         * bits/valarray_array.h: __restrict__ify pointers.
7470
7471         * bits/std_valarray.h: Tweak.
7472         (valarray<T>::cshift, valarray<T>::shift): use __builtin_alloca.
7473
7474         * bits/gslice_array.h: Tweak. Reflect changes in bits/gslice.h
7475
7476         * bits/gslice.h: Tweak.
7477         (class gslice::_Indexer): new class.
7478         (gslice::gslice(const gslice&)): implement copy-ctor to support
7479         ref-counted index. 
7480         (gslice::operator=(const gslice&)): support ref-counted index.
7481         (gslice::_M_convert_to_index): delete.
7482
7483         * src/valarray.cc: New file.
7484         (__gslice_to_index): turn a gslice into a valarray<size_t>
7485         (ctor gslice::_Indexer::_Indexer): implement.
7486
7487         * src/Makefile.am (sources): add valarray.cc
7488         * src/Makefile.in: regenerate.
7489
7490 1999-06-08  Benjamin Kosnik  <bkoz@cygnus.com>
7491
7492         * stl/bits/stl_iterator.h (__normal_iterator::const_iterator
7493         ctor): Put in a const_cast.
7494
7495         * testsuite/21_strings/invariants.cc: New file.
7496
7497         * testsuite/21_strings/insert.cc: Add exception handling bits.
7498         * testsuite/21_strings/ctor_copy_dtor.cc: Same.
7499
7500         * src/wstring-inst.cc: Add c++config.h include.
7501
7502         * bits/basic_string.h: Fix const operator[] for size == pos.
7503         Add _M_leak for rbegin, non-const.
7504         Add _M_leak for rend, non-const.
7505         Make member function at standards conformant.
7506         Add _S_terminal to _Rep for operator[] const, add this into
7507         c_str() as well.
7508         * bits/string.tcc: Add static member definition here,
7509         temporarily.
7510         
7511         * testsuite/21_strings/element_access.cc: Add tests.
7512
7513 1999-06-08  Vadim Egorov  <egorovv@1c.ru>
7514
7515          * bits/fstream.tcc (_M_really_overflow): Fixed size of
7516          conversion buffer.
7517
7518 1999-06-08  Phil Edwards  <pedwards@ball.com>
7519
7520         * bits/fstream.tcc (basic_filebuf::xsputn):  Fix off-by-one count
7521           caused when __testinit is true.
7522         * bits/ostream.tcc (basic_ostream::op<<(streambuf*)):  Write buffer
7523           using rdbuf()->sputn rather than _M_fnumput->put.
7524
7525 1999-06-08  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7526
7527         * testsuite/23_containers/bitset_ctor.cc: New file.
7528         * stl/bits/std_bitset.h (__BITSET_WORDS): Fix integration bug.
7529
7530 1999-06-08  Phil Edwards  <pedwards@ball.com>
7531
7532         * bits/fstream.tcc (basic_filebuf::underflow):  Fix, rename local vars.
7533
7534 1999-06-07  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7535
7536         * testsuite/21_strings/element_access.cc: Finish off these tests.
7537         * testsuite/21_strings/insert.cc (test01): Uncomment.
7538         * testsuite/21_strings/ctor_copy_dtor.cc (test01): Finish off ctors.
7539         * bits/basic_string.h: Tweak, okay, fix for real this time.
7540         * bits/string.tcc: Same.
7541         * bits/char_traits.h: Tweak.
7542
7543 1999-06-07  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7544
7545         * bits/std_cmath.h: Example of how to use the generated macro.
7546         * acconfig.h: Add macro for sinf here.
7547         * configure.in (LIBS): Add test for builtin math function sinf.
7548         * configure: Regenerated.
7549         
7550         * bits/basic_string.h: Fix _S_max_size.
7551
7552 1999-06-06  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7553
7554         * bits/basic_string.h: Fixes for out-of-memory segv for large strings.
7555         Remove _S_construct signature for forward_iterator_tag and
7556         input_iterator_tag.
7557         Clean _M_fold.
7558         * src/string-inst.cc: Same, tweaks. 
7559         * bits/string.tcc: Same, tweaks.
7560
7561         * testsuite/21_strings/ctor_copy_dtor.cc: Add/clarify tests.
7562         * mkcheck (LOG_FILE): Fix filebuf-[2,3].tst checks.
7563         * mknumeric_limits (LD_FLAGS): Add -nodefaultlibs -lc -lgcc as per
7564         Gaby.
7565
7566         * src/locale.cc: Final separation for char/wchar_t bits.
7567
7568 1999-06-05  Phil Edwards  <pedwards@ball.com>
7569
7570         * docs/index.html:  Added link to book upon request'n'agreement.
7571         * docs/23_containers/wrappers_h.txt:  Added.
7572         * docs/{23_containers,27_io}/howto.html:  Added sections.
7573
7574         * bits/std_fstream.h: Tweak.
7575         
7576 1999-06-05  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7577
7578         * src/ios.cc: Same here.
7579         * bits/std_iosfwd.h: More wchar_t defines.
7580
7581         * bits/basic_string.h: Tweaks. 
7582         * bits/string.tcc: Tweak. Fix _S_construct to check for max_size
7583         when doing error checking, as per LWG defect #83.
7584         
7585         * src/gen-c++config.cc: Fix comment.
7586         
7587         * testsuite/21_strings/ctor_copy_dtor.cc: New file, checks ctors,
7588         assignments, dtors.
7589         * testsuite/21_strings/element_access.cc: New file, checks for
7590         operator[], at(...).
7591         * testsuite/21_strings/insert.cc: New file, tests string::insert.
7592         * testsuite/21_strings/char_traits.cc: New file, tests
7593         for char_traits<char>.
7594         
7595         * bits/utility.h: Remove, again.
7596         * src/Makefile.am (std_headers): Remove utility.h.
7597         * src/Makefile.in (std_headers): Regenerate.
7598
7599         Alfred Minarik <a8601248@unet.univie.ac.at>
7600         * bits/basic_string.h: Move __out_of_range and __length_error into
7601         namespace std.
7602
7603 1999-06-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7604
7605         * testsuite/26_numerics/modf_float.cc: New file.
7606
7607         * bits/std_cmath.h (modf(float, float*)): Fix signature. Correct
7608         typo: use ::modff, not ::modf.
7609
7610 1999-06-03  Vadim Egorov  <egorovv@1c.ru>
7611
7612         * bits/string.tcc (basic_string::_M_mutate): Fixed memory
7613         allocation error
7614         * testsuite/21_strings/capacity.cc (test01): Test.
7615         
7616 1999-06-03  Phil Edwards  <pedwards@ball.com>
7617
7618         * bits/fstream.tcc:  Re-order inits to stop warnings.  Comment/move
7619           unused variables to within #if 0 blocks to do the same.
7620         * bits/std_fstream.h:  Fix typos (one prevents compilation).
7621
7622 1999-06-03  Benjamin Kosnik <bkoz@pacifica.cygnus.com>
7623
7624         * src/wstring-inst.cc: Fix.
7625
7626 1999-06-02  Benjamin Kosnik <bkoz@madcow.cygnus.com>
7627
7628         * bits/char_traits.h: Add _G_USE_WCHAR_T macro guards.
7629         * stl/bits/stl_string_fwd.h: Same.
7630         * bits/locale_facets.h: Same.
7631         * bits/locale_facets.tcc: Same.
7632         * src/wstring-inst.cc: And here.
7633         
7634         * src/gen-c++config.cc: Comment _G_USE_WCHAR_T. Leading to
7635         problems on HPUX 10.20.  
7636         * your-build-directory-here/bits/c++config.h: Just kidding, do it
7637         here as a temporary hack till the compiler/host problems get
7638         worked out.
7639
7640         * bits/locale_facets.tcc (num_get::do_get): Change from ifdef
7641         HAVE_STRTOLD to HAVE_STRTOLD && !(__hpux). Apparently, problems
7642         converting "long double" to struct long_double. Probably should be
7643         done with one macro (HAVE_STRTOLD) at configure time.
7644
7645         * bits/std_cmath.h: Comment out pow(double, int) defintion as
7646         gives re-declaration under hpux10.20. Revert previous change, as
7647         kills linux/x86, solaris 2.7, hpux builds. These should be done
7648         using autoconf, see std_cctype.h and the solutions started in
7649         configure.in (see config.h for the generated file.)
7650
7651         * mknumeric_limits (LDFLAGS): Remove '-nodefaultlibs -lc', as
7652         -nodefaultlibs prevents linking under HPUX 10.20 as __main is not
7653         defined.
7654
7655         * docs/index.html: Add some useful links.
7656         * docs/17_intro/contribute.html: Fix broken links.
7657
7658 1999-06-02  Benjamin Kosnik <bkoz@rhino.cygnus.com>
7659
7660         * mkcheck (LOG_FILE): Add !/bin/bash instead of cygnus-style
7661         paths. The rest of the world should be able to run this script
7662         now.
7663
7664         * src/Makefile.am ($(generated_headers)): Remove comment.
7665         * Makefile*: Regenerate.
7666         
7667         * bits/std_locale.h: Remove detritus.
7668         * bits/localefwd.h: Add <cctype> include to undefine the isspace
7669         macro.
7670
7671 1999-06-01  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7672
7673         * src/gen-c++config.cc: New file. Making c++config.h at configure
7674         time by catting this file (nee bits/config.h) with the build
7675         directories config.h. This is not a complete or perfect solution
7676         but is better than what was in place previously. 
7677         * bits/c++config.h: Rename/move to above.
7678         * src/Makefile.am (headers): Remove c++config.h.
7679         (myinstallheaders). Add.
7680         * Makefile*: Regenerated.
7681
7682         * bits/std_cwchar.h: Add include of c++config.h for HAVE_*
7683         definitions, so that wmemcmp, wcslen, wmemchr, etc are properly
7684         declared only if not present in the host's wchar.h.
7685
7686         * bits/locale_facets.tcc (std): Change _G_USE_STRTO* to HAVE_STRTO*.
7687         
7688         * bits/std_cmath.h: Define out, for the moment. Linux has no
7689         __buitin_fsqrtl? Probably need some kind of configure trickery
7690         here as well.
7691
7692         * src/Makefile.*: Regenerate.
7693         * bits/c++config.h: Add config.h include.
7694
7695         * bits/std_cwchar.h: Remove remaining #error guard.
7696         
7697         * acconfig.h: Add bits for HAVE_LC_MESSAGES.
7698
7699         * configure.in (LIBS): Replace previous effort for mbstate_t and
7700         strtold/strtof with this implementation.
7701
7702 1999 06-01  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7703
7704         * bits/std_cmath.h: Tweak. Add more functions. Use __builtin_xxx
7705         whenever possible.
7706
7707 1999-05-28  Benjamin Kosnik  <bkoz@cygnus.com>
7708
7709         * bits/locale_facets.tcc (std): Eek: this left in. Autoconf bits
7710         for determining mbstate_t differences across various hosts not
7711         finished. 
7712
7713 1999-05-26  Benjamin Kosnik  <bkoz@nabi.net>
7714
7715         * bits/locale_facets.tcc: Change to ifdef.
7716
7717         * bits/std_sstream.h (stringbuf::setbuf): Remove dynamic_cast.
7718         * bits/std_fstream.h (filebuf::setbuf): Same.
7719
7720         * bits/std_istream.h: Add ws declaration.
7721         * bits/istream.tcc: Stub out definition.
7722         
7723         * docs/index.html: Fix broken link for design.txt.
7724
7725         * configure.in: Test for mbstate_t. If wchar.h doesn't have it,
7726         then set _G_NEED_MBSTATE_T.
7727         * configure: Regenerate.
7728         * bits/c++config.h: Move mbstate_t define.
7729         * bits/std_cwchar.h: To here.
7730
7731 1999-05-25  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
7732
7733         * bits/std_sstream.h:
7734           basic_stringbuf<>::basic_stringbuf: fix.
7735           basic_stringbuf<>::setbuf: 
7736           remove the temporary __string_type object,
7737           remove the unnecessary dynymic_cast in the return value,
7738           change the type of the returned value from __streambuf_type*
7739           to basic_stringbuf<_CharT, _Traits, _Alloc>*.
7740
7741 1999-05-25  Phil Edwards  <pedwards@ball.com>
7742
7743         * bits/std_streambuf.h (streambuf::setbuf): Always return streambuf*. 
7744
7745 1999-04-25  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7746
7747         * bits/std_cmath.h: Tweak. Add float versions of the math functions
7748         in <math.h>.  <cmath> still incomplete and incorrekt.
7749
7750 1999-05-24  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7751
7752         * mknumeric_limits (LDFLAGS): set appropriate link flags.
7753         
7754 1999-05-23  Phil Edwards  <pedwards@ball.com>
7755
7756         * docs/17_intro/howto.html:  Added links to text docs,
7757         e.g., BUGS. 
7758         * docs/21_strings/howto.html:  Updated sections and links.
7759         * docs/21_strings/{gotw29a.txt,stringtok_h.txt}:  Added.
7760         * docs/faq/index.html:  Updated what-works for sixth
7761         snapshot. Also a number of "internal" links have been
7762         fixed, now that the web pages are the docs directory...
7763         * docs/faq/index.txt: Regenerated.
7764         
7765 1999-05-21   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7766
7767         * bits/basic_string.h: Add Nathan's documentation on the string class.
7768
7769         * testsuite/27_io/ios_members_static.cc: New file, for testing
7770         ios_base::sync_with_stdio.
7771
7772 1999-05-21   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7773
7774         * bits/std_locale.h: Simplify includes.
7775         * bits/loccore.h: Delete.
7776         * bits/localefwd.h: Renamed, trimmed.
7777         * bits/locfacets.h: Delete.
7778         * bits/locale_facets.h: Rename, expanded.
7779         * bits/loccore.tcc: Deleted.
7780         * bits/locfacets.tcc: Deleted.
7781         * bits/locale_facets.tcc: Resultant merge.
7782         * bits/std_fstream.h: Modify include.
7783         * bits/ostream.tcc: Same.
7784         * bits/istream.tcc: Same.
7785
7786         * src/locale-inst.cc: And here.
7787         * src/locale.cc: Ditto. 
7788         * src/Makefile.am: Updated.
7789         * src/Makefile.in: Rengenerated.
7790
7791         * bits/std_istream.h: Move istream::sentry ctor definition.
7792         * bits/istream.tcc: Move istream::sentry ctor here.
7793         Add more detailed locale include here for ctype member functions.
7794         * bits/ostream.tcc (std): And here.
7795
7796         * bits/sbuf_iter.h: Include std_streambuf.h
7797
7798         * bits/locfacets.h: Start separating this into a localeimp.h file.
7799         * bits/loccore.h: Start separating this into a localefwd.h file.
7800         Add std_climits for CHAR_BIT.
7801         
7802         * bits/ios_base.h (ios_base::sync_with_stdio): Stub in.
7803
7804         * bits/char_traits.h: Tweak.
7805
7806         * bits/ios_base.h: Remove INT_MAX, use 1<<16.
7807
7808         * bits/std_ostream.h: Remove c++config.h include.
7809         * bits/std_istream.h: Same.
7810         * bits/std_streambuf.h: Same.
7811         * bits/std_fstream.h: Same.
7812         * bits/std_sstream.h: And here.
7813         
7814         * bits/std_iosfwd.h: Add _G_RESOLVE_LIB_DEFECTS here for streampos.
7815         * bits/char_traits.h: Add include of std_cwchar.h for mbstate_t.
7816         * bits/fpos.h: Tweak, format.
7817
7818         * std/ciso646: New file.
7819         * bits/std_ciso646.h: New file.
7820         * src/Makefile.am (std_headers): Add ciso646.
7821         (headers): Add bits/std_ciso646.h.
7822         * src/Makefile.in: Regenerate.
7823         * testsuite/17_intro/header_ciso646.cc: New file, disable
7824         equivalance tests.
7825         
7826         * bits/fpos.h: Remove libio.h include.
7827         * bits/basic_file.h: And here.
7828         * bits/std_ios.h: Put here.
7829
7830         * src/ios.cc: Simplify includes, tweak.
7831         * bits/std_ios.h: Simplify include order. 
7832         * bits/ios_base.h: Modify ios_base::failure.
7833
7834         * stl/bits/std_numeric.h: Change include from stl_iterator to
7835         std_iterator.
7836         
7837 1999-05-19  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7838
7839         * std/iostream: Remove static member __ioint.
7840         * bits/std_iostream.h: Put here.
7841
7842         * stl/bits/std_numeric.h: Remove unneccessary std_iostream.h include.
7843         * stl/bits/stl_algobase.h: Same.
7844         * testsuite/27_io/iostream_objects.cc: Regression tests.
7845         * testsuite/27_io/hello.cc: Remove, subset of above.
7846         
7847 1999-05-19  Phil Edwards  <pedwards@ball.com>
7848         
7849         * docs/index.html: Tweak, update.
7850
7851 1999-05-18  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7852
7853         * docs/17_intro/RELEASE-NOTES: remove outdated
7854         documentation about numeric_limits. Correct CXXINCLUDE setting
7855         documentation.
7856
7857 1999-05-18  Phil Edwards  <pedwards@ball.com>
7858
7859         * docs/{17_intro,18_support,19_diagnostics,20_util,21_strings,
7860           22_locale,23_containers,24_iterators,25_algorithms,26_numerics,
7861           27_io}/howto.html:  Created, with some initial entries.
7862         * docs/faq/index.html:  Fixed some links.
7863         * docs/faq/index.txt:  Regenerated.
7864
7865 1999-05-18  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7866
7867         * bits/c++config.h (__GLIBCPP__): Set version to 19990518.
7868
7869         * docs/17_intro/RELEASE-NOTES: Update.
7870         * docs/index.html: Correct link to mailing list help page, update News.
7871         * docs/faq/index.html: Change fifth to sixth for snapshot.
7872         
7873         * src/Makefile.am (myinstallheaders): Bring over Gaby's changes to
7874         install $(top_builddir)/bits/std_limits.h into
7875         $(myincludepfx)/bits. This was mistakenly omitted from yesterday's
7876         Makefile.am changes.
7877         * *Makefile*: Regenerate using automake.
7878
7879         * mkcheck (LOG_FILE): Fix filebuf directory oddness.
7880         * testsuite/27_io/filebuf.cc: Same.
7881
7882 1999-05-18  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7883
7884         * docs/17_intro/CHECKLIST: update.
7885         * docs/17_intro/TODO: update.
7886
7887 1999-05-17  Phil Edwards  <pedwards@ball.com>
7888
7889         * docs/{17_intro,18_support,19_diagnostics,20_util,21_strings,
7890           22_locale,23_containers,24_iterators,25_algorithms,26_numerics,
7891           27_io}/howto.html:  Created, with some initial entries.
7892         * docs/faq/index.html:  Fixed some links.
7893         * docs/faq/index.txt:  Regenerated.
7894         
7895 1999-05-17  Benjamin Kosnik  <bkoz@unhappy.cygnus.com>
7896
7897         * src/Makefile.am (myinstallheaders): Missed removing missing.h. 
7898         * Makefile.in*: Regenerate.
7899
7900 1999-05-17  Benjamin Kosnik  <bkoz@happy.cygnus.com>
7901
7902         * bits/std_streambuf.h: Same.
7903
7904         * bits/loccore.h (_Bad_use_facet): Remove bits warned about.
7905         * bits/locfacets.h (std): Same.
7906         * bits/sstream.tcc: Same.
7907         * testsuite/27_io/stringstream.cc: Tweak.
7908
7909         * testsuite/27_io/filebuf.cc: Adjust.
7910         * testsuite/21_strings/capacity.cc (test01): Add more
7911         string::reserve tests.
7912
7913         * bits/c++config.h: Remove broken CCTYPE.
7914         * bits/std_cctype.h: Tweak, remove de-macroization, enable
7915         sequestered topper implementation.      
7916         * bits/std_cwctype.h: Same.
7917         
7918         * bits/missing.h: Remove.
7919         * bits/std_locale.h: Remove missing.h include.
7920         
7921         * stl/bits/std_bitset.h (bitset::bitset(string): Tweak to compile.
7922         
7923         * src/Makefile.am (headers): Add bits/std_cwctype.h.
7924         INCLUDES: Add top_builddir. 
7925         * src/Makefile.in: Regenerate.
7926
7927         * Makefile.am: Add check and check-install as new targets.
7928         * testsuite/make_check_libfree++: Move to. . .
7929         * mkcheck: Here.
7930         * configure.in: Tweak versions.
7931         * mknumeric_limits: Set paths correctly.
7932         
7933 1999-05-17  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7934         
7935         * src/Makefile.in (myinstallheaders): add rule to install
7936         std_limits.h. 
7937         
7938         * bits/slice.h (class slice): don't const-qualify data members
7939         since the copy and assignment operator is implicitly used. The
7940         valarray specification is definitively a bad one.
7941         
7942         * Makefile.in (generate-limits-sources): fix typo.
7943         
7944         * docs/text/TODO: update.
7945         * docs/text/CHECKLIST: update.
7946
7947         * bits/gslice.h (gslice): fix bugglet.
7948         (gslice::gslice): set _M_index_size to 0 whenever given lengths
7949         (lj) of size zero.
7950
7951         * src/Makefile.am (libstdc___la_SOURCES): add gen-num-limits.
7952         * src/Makefile.in (libstdc___la_SOURCES): keep in sync.
7953         [Note: **/Makefile.in should be generated from the corresponding
7954         Makefile.am.  The current situation is a litte chaotic.  ]
7955
7956 1999-05-16 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7957
7958         * mknumeric_limits: tweak.
7959
7960         * Makefile.in (all): add target generate-limits-sources.
7961         (generate-limits-sources): make a directory bits/ in top_builddir
7962         where the generated std_limits.h is put; generate limitsMEMBERs.cc
7963         directly under $(top_builddir)/src. Remains to put the appropriate
7964         rule for installing std_limits.h.
7965         
7966         * src/Makefile.in (headers): remove bits/std_limits.h to this list.
7967         (INCLUDES): add -I$(top_builddir) for bits/std_limits.h which is
7968         now generated at build-time in the build directory
7969         (libstdc___la_SOURCES): remove limitsMEMBERS.cc form this list
7970         * src/Makefile.am: reflect changes in src/Makefile.in
7971
7972 1999-05-12  Phil Edwards  <pedwards@ball.com>
7973
7974         * docs/faq/index.html: Add more entries (5.4,5.5), finish
7975         all but one empty entry.  Add links for HOWTOs, but no files yet.
7976         (Corrected HOWTO links are for bkoz's new scheme.)
7977         * docs/faq/index.txt: Regenerated.
7978         
7979 1999-05-12  Benjamin Kosnik  <bkoz@happy.cygnus.com>
7980
7981         * testsuite/17_intro/headers.cc: New file.
7982         * stl/bits/std_queue.h: Change stl_bvector.h include path.
7983         * bits/std_cwctype.h: New file.
7984         
7985         * testsuite/27_io/filebuf.cc: Need to tweak directory structure.
7986
7987 1999-05-11  Benjamin Kosnik  <bkoz@loony.cygnus.com>
7988
7989         * stl/bits/stl_config.h (__USE_MALLOC): Change underlying allocator.
7990         Check __USE_MALLOC before defining specializations containing
7991         __default_alloc_template.
7992         * src/stl-inst.cc: Here too.
7993
7994         * bits/basic_string.h: Change.
7995
7996         * testsuite/make_check_libfree++: More tweaks.
7997         * testsuite/21/capacity.cc: New file.
7998         
7999         * src/string.cc: Rename to be consistent with other inst files. 
8000         Rename to string-inst.cc.
8001         * src/string*.cc: Change include.
8002         * src/wstring.cc: Rename to wstring-inst.cc.
8003         * src/wstring*.cc: Ditto.
8004         * src/Makefile.in: Also here.
8005         * src/Makefile.am: Ditto.
8006
8007         * src/traits.cc: Remove.
8008         * src/wtraits.cc: Same.
8009
8010         Try a new way of organizing documentation, one with synchronicity
8011         between testsuites and docs subdirectories, and see who yelps.
8012         * docs/html: Remove, use chapter and subject specific directories
8013         instead of forcing things immediately into format of
8014         documentation.
8015         * docs/text: Same.
8016         * docs/image: Same.
8017         * docs/faq/text, docs/faq/html: Remove, put in the docs/faq
8018         directory and sort by filename and extension.
8019         * docs/17_intro, 18_support, 19_diagnostics, 20_util, 21_strings,
8020         22_locale, 23_containers, 24_iterators, 25_algorithms,
8021         26_numerics, 27_io: Add.
8022         * docs/17_intro/*: Populate with all the text files. . .
8023         * docs/index.html: Construct.
8024         
8025         * testsuite/*: Update with same names as the docs subdir.
8026         * testsuite/results: Where to stash conformance results for the
8027         different snapshots, so that progress/size/speed issues can be
8028         tracked over time.
8029         
8030 1999-05-10  Benjamin Kosnik  <bkoz@loony.cygnus.com>
8031         
8032         * src/string.cc: Add _S_copy_chars instantiation, as well as
8033         string::binary operators !=, ==, etc.
8034
8035         * src/Makefile.am (CXXFLAGS): Remove -fvtable-thunks.
8036         * src/Makefile.in (CXXFLAGS): Same here.
8037         * testsuite/make_check_libfree++ (CXX_FLAG): And here.
8038         
8039 1999-05-07  Benjamin Kosnik  <bkoz@cygnus.com>
8040
8041         * src/string.cc:  Add missing member functions to instantiation list.
8042
8043 1999-05-07  Benjamin Kosnik  <bkoz@cygnus.com>
8044
8045         * src/misc-inst.cc: Remove unused string instantiations.
8046
8047         * bits/string.tcc: Tweak, fix.
8048         * bits/basic_string.h: Format. Fix reported error with c_str().
8049
8050         * testsuite/make_check_libfree++: Tweak for shared builds.
8051         * testsuite/21/operations.cc: New file for testing c_str() etc.
8052
8053 1999-05-06  Benjamin Kosnik  <bkoz@cygnus.com>
8054             Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
8055
8056         * stl/bits/stl_vector.h: Fix the code of vector<> for usage with
8057         an iterator class.  Delineate pointer versus iterator differences
8058         in implementation.
8059         * 23/vector_capacity.cc: New file, tests for above.
8060         
8061 1999-05-06 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8062
8063         * mknumeric_limits: Fix typo. 'unsigned lont' should read
8064         'unsigned long'.
8065         * src/Makefile.am (libstdc___la_SOURCES): add limitsMEMBERS.cc,
8066         generated by mknumeric_limits to the list. Now std_limits.h is
8067         basically working. 
8068         * src/Makefile.in (generate-numeric-limits): new target to handle
8069         automatic generation of bits/std_limits.h and src/limitsMEMBERS.cc.
8070         (all): add target generate-numeric-limits.
8071         (libstdc___la_OBJECTS): add limitsMEMBERS.lo
8072         (libstdc___la_SOURCES): add limitsMEMBERS.cc
8073
8074 1999-05-05  Benjamin Kosnik  <bkoz@cygnus.com>
8075
8076         Irix build issues.
8077         * bits/c++config.h (_G_USE_CTYPE_ISBIT): Defines new macro for
8078         mask values in ctype_base. Move hacks for _ISBit to locfacets.h.
8079         * bits/locfacts.h: Here.
8080
8081 1999-05-05  Benjamin Kosnik  <bkoz@cygnus.com>
8082             Ulrich Drepper <drepper@cygnus.com> 
8083
8084         Solaris build issues.
8085         * bits/c++config.h: Define new macros, _G_USE_STRTOF and
8086         _G_USE_STRTOLD.
8087         
8088         * bits/locfacets.tcc (num_get::do_get): Tweak long double and
8089         float overloads to use the above macros. Account for the lack of
8090         strtold on some systems, and revert back to using sscanf.
8091
8092 1999-05-04  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
8093
8094         * bits/locfacets.tcc (num_get::do_get): Check the errno variable.
8095         Use strtoul/strtoull for unsigned types.  Check the ranges for
8096         short/unsigned short and if necessary for int/unsigned int.
8097
8098 1999-05-04  Benjamin Kosnik  <bkoz@cygnus.com>
8099
8100         * src/gen-num-limits.cc (round_style): Need to use mknumericlimits
8101         to generate bits/std_limits.h now, as the SGI std_limits.h is
8102         being depricated. Not done, but should be done immediately: need
8103         to make sure this script is run as part of the configuration
8104         process, because without it "make" in a configured build directory
8105         will fail. Also tweaked: added a space for float_round_style, and
8106         used static_cast of zero to default-initialize, which should be ok
8107         according to the standard. (see 8.5 p5 and 20.1.3).
8108         * mknumeric_limits (OUT_C): Need this for x86 long
8109         double extensions.
8110         
8111         * bits/basic_file.h: Include libio.h, not libioP.h.
8112         * src/basic_file.cc: And add libioP.h include here, so that
8113         _IO_init, et. al are well-declared.
8114
8115         * testsuite/make_check_libfree++ (LIB_PATH): Test installed
8116         headers, not source directory headers.
8117
8118         * src/Makefile.am (headers): Add stl_range_errors.h, also adjust
8119         for ext/*.  Also add basic_file.h.
8120         * src/Makefile.in (headers): Same.
8121         
8122         * bits/std_string.h: Reduce dependencies for faster
8123         pre-processing. Move istream and ostream specific defines into
8124         istream.tcc and ostream.tcc respectively.
8125         * bits/string.tcc: And here.
8126         * bits/basic_string.h: Move getline inline out-of-line, and to
8127         istream.tcc.
8128         * bits/istream.tcc: Move string::getline and operator>> here.
8129         * bits/ostream.tcc: And here too.
8130
8131         * bits/utility.h: Remove, as clashes with a standard header. Put
8132         __OUTOFRANGE and __LENGTHERROR macros into string.tcc for the time
8133         being, until this can be combined with SGI's approach.
8134         * bits/string.tcc: Add macros, as above.
8135         * bits/loccore.h: Add _Count_ones defines.
8136         * bits/std_string.h: And here too.
8137         * bits/std_locale.h: And here.
8138         * bits/std_ios.h: Take out include here.
8139         * src/Makefile.am (headers): Remove utility.h
8140         * src/Makefile.in (headers): Remove utility.h
8141
8142         * stl/bits/*: Update to SGI STL 3.20.
8143         * stl/ext/pthread_alloc: Delete this file.
8144         
8145 1999-05-04 Phil Edwards <pedwards@ball.com>
8146
8147         * docs/faq/html/index.html: Add more entries
8148         * docs/faq/html/index.txt: regenerated.
8149
8150 1999-05-04 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8151
8152         * src/gen-num-limits.cc (DO_DEFINE_MIN_MAX): fix typo.
8153
8154 1999-04-29  Benjamin Kosnik  <bkoz@haight.cygnus.com>
8155
8156         * bits/locfacets.tcc (num_get::do_get): Re-implement, with input
8157         from Ulrich and Nathan. Remove extraneous string class usage,
8158         tweak, clean, simplify and consolidate with a eye towards removing
8159         duplcate code. Use strto[l, ll, f, d, ld] instead of sscanf.
8160         Not done: dealing with leading zeros, wchar_t work.
8161         * bits/locfacets.h: And here too.
8162
8163         * doc: Remove.
8164         
8165 1999-04-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8166
8167         * docs/: add a FAQ.
8168         * docs/faq/: New directory.
8169         * docs/faq/html/: Likewise.
8170         * docs/faq/text/: Likewise.
8171         * docs/faq/html/index.html: New file.
8172         * docs/faq/html/index.txt: Likewise. Generated from 
8173         docs/faq/html/index.html by lynx.
8174
8175 1999-04-28  Benjamin Kosnik  <bkoz@happy.cygnus.com>
8176             Ryszard Kabatek and Branko Cibej 
8177
8178         * bits/locfacets.tcc: Modify.
8179
8180 1999-04-27  Benjamin Kosnik  <bkoz@happy.cygnus.com>
8181
8182         * bits/sbuf_iter.h: Clean, fix istreambuf_iterator, make
8183         conformant to 14882, wrap non-standard extensions with
8184         _G_RESOLVE_LIB_DEFECTS, remove detritus and cruft, rennovate.
8185         * bits/locfacets.tcc (num_get::do_get(bool)): Return correct iterator.
8186         
8187         * testsuite/27/istringstream_formatted.cc: Add tests.
8188         
8189         * bits/locfacets.h: Remove cruft from _Format_cache, continue
8190         commenting, simplify.
8191         * bits/locfacets.tcc: Same.
8192
8193         1999-04-27  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
8194         * bits/locfacets.tcc (num_get::do_get):
8195         Fix the sscanf format parameter 
8196         for long long 'll' (as in C9X) instead of 'l'.
8197         Fix the order of sscanf format parameters: "%dl" --> "%ld".
8198         Change the type of the local variable '__conv' from 'string'
8199         to 'const char*' and adapt the change.
8200         
8201 1999-04-26  Benjamin Kosnik  <bkoz@happy.cygnus.com>
8202
8203         * bits/locfacets.h: Document _Format_cache, and name data members
8204         after the corresponding functions in numpunct. For instance:
8205         _M_grsep -> _M_thousands_sep, and _M_decsep -> _M_decimal_point.
8206         Break apart _M_boolnames{2] into _M_truename and _M_falsename.
8207         * bits/locfacets.tcc: Same.
8208
8209         * bits/locfacets.h (num_get::_M_extract): Don't allow groupings to
8210         stop parsing--store for later analysis.
8211         * testsuite/27/istringstream_formatted.cc: Add cases.
8212         
8213 1999-04-25  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8214
8215         * bits/valarray_meta.h: tweak.
8216         (_UnFunBase, _BinFunBase, _BinFunBase1, _BinFunBase2, _BinBase1,
8217         _BinFunBase2): rename typedef-name _Tp to _Vt to keep the compiler
8218         happy -- boggus warning.
8219         * bits/std_valarray.h: Fix.
8220         (valarray<T>::shift): Fix. Update comment.
8221         (valarray<T>::cshift): Fix. 
8222
8223 1999-04-23  Benjamin Kosnik  <bkoz@cygnus.com>
8224         
8225         * testsuite/27filebuf-2.txt: Delete.
8226         * testsuite/27/filebuf.cc: Put output files directly into the
8227         correct subdirectory (27).
8228
8229         Alexandre Petit-Bianco <apbianco@cygnus.com>
8230         * testsuite/make_check_libfree++: Check generated (*.txt) file
8231         against stored results file (*.tst).
8232
8233 1999-04-22  Benjamin Kosnik  <bkoz@nabi.net>
8234
8235         * bits/locfacets.tcc: Fix.
8236
8237         * bits/fstream.tcc (filebuf::seekoff): Output current out pointer.
8238         (filebuf::overflow): Simplify.
8239         (filebuf::xsputn): Correctly handle indeterminate state.
8240
8241         * testsuite/27/istringstream_formatted.cc: Tweak.
8242         * testsuite/27/filebuf.cc: Tweak.
8243         * testsuite/27/filebuf-3.tst: Correct: this is the canonical
8244         results file, please use this in the future to guarantee filebuf
8245         positioning accuracy.
8246         * testsuite/27/filebuf-2.tst: Same.
8247         
8248 1999-04-21  Benjamin Kosnik  <bkoz@cygnus.com>
8249
8250         * bits/fstream.tcc (filebuf::xsputn): Add.
8251         * bits/std_fstream.h: Declare.
8252         
8253         * src/basic_file.cc (__basic_file::open): Add O_CREAT to open
8254         calls using ios_base::trunc.
8255
8256         * bits/sstream.tcc (streambuf::overflow): Fix crasher.
8257         
8258         * testsuite/make_check_libfree++ (LOG_FILE): Ugh. Another fix.
8259         * testsuite/27/27stringstream.cc: Same.
8260         * testsuite/27/27stringbuf.cc: More tweaks.
8261         * testsuite/27/27filebuf-2.txt: Remove.
8262
8263         * testsuite/27/27filebuf-1.tst: Append, to force byte size over
8264         BUFSIZE so that overflows/underflow can be tested with default
8265         buffer setting.  
8266         * testsuite/27/27filebuf-1.tst: Add.
8267
8268         * testsuite/*/*: Remove pre-pended chapter names, as they
8269         duplicate the chapter info contained in the enclosing directory
8270         anyway.
8271         
8272 1999-04-20  Benjamin Kosnik  <bkoz@cygnus.com>
8273
8274         * bits/streambuf.tcc (streambuf::xsputn): Re-implement to conform
8275         to sputc conditions.
8276
8277         * bits/ios_base.h: Define here.
8278         * src/ios.cc (ios_base::_M_clear): Remove hack.
8279         * bits/basic_ios.h: Fix rdstate().
8280
8281         * bits/sstream.tcc (streambuf::seekoff): Fix.
8282         * bits/fstream.tcc (filebuf::seekoff): Tweak comments.
8283
8284         * testsuite/make_check_libfree++ (LOG_FILE): More c-c-c-changes.
8285         * testsuite/24/24iterator.cc: Add/Fixes for DEBUG_ASSERT.
8286         * testsuite/27/27stringstream.cc: Same. 
8287         * testsuite/27/27stringbuf.cc: Same.
8288         * testsuite/27/27istringstream_formatted.cc: Same.
8289         * testsuite/27/27filebuf.cc: Same.
8290         
8291         * bits/locfacets.h: Remove specializations for messages<char> and
8292         messages<wchar_t> ctors. Same for moneypunct. Not required, not used.
8293         * src/locale.cc: Remove definitions for above.
8294         * src/misc-inst.cc: Revert, take out iomanip.h include. 
8295         * bits/std_iomanip.h: Tweak, format.
8296         
8297 1999-04-19  Benjamin Kosnik  <bkoz@cygnus.com>
8298
8299         * bits/loccore.h: Format, move inline.
8300         * bits/locfacets.tcc: Same.
8301         * bits/locfacets.h: Same.
8302
8303         Ulrich Drepper  <drepper@cygnus.com>
8304         * aclocal.m4: Re-generate.
8305         * configure, configure.in: Same.
8306         * m4/lc_messages.m4: New file.
8307
8308 1999-04-18  Benjamin Kosnik  <bkoz@cygnus.com>
8309
8310         * bits/std_ostream.h: Fix typedef for wchar_t instantiations.
8311         * bits/sstream.tcc: Tweak.
8312
8313         * std/iostream: Put __ioinit inside macro guards.
8314         
8315         * src/stlinst.cc: Delete and move to . . .
8316         * src/stl-inst.cc: New file, plus wrapping in namespace std.
8317         * src/Makefile.in: Change.
8318         * src/Makefile.am: Same.
8319         * src/misc-inst.cc: Add istringstream/ostringstream instantiations.
8320
8321         * testsuite/make_check_libfree++: Efficiently format for minimal
8322         space. Enforce stricter execution tests by enabling
8323         -DDEBUG_ASSERT.
8324         
8325 1999-04-16  Benjamin Kosnik  <bkoz@cygnus.com>
8326
8327         * docs/text/RELEASE-NOTES: Fix include typo.
8328
8329         * src/Makefile.am (headers): Add istream.tcc. 
8330         * src/Makefile.in (headers): Add istream.tcc. 
8331
8332         * ltconfig, ltmain.sh, libtool: Update to libtool-1.2g.
8333         
8334 1999-04-16  Benjamin Kosnik  <bkoz@cygnus.com>
8335
8336         * bits/locfacets.tcc (num_get::do_get(long)): Finish roughing in.
8337         * bits/locfacets.h (num_get::_M_extract): New functin:
8338         consolidate logic for do_get(...) members.
8339
8340         * bits/sbuf_iter.h (istreambuf_iterator::operator++()): Fix.
8341         * testsuite/27/27istringstream_formatted.cc: Add.
8342
8343 1999-04-16  Martin v. Loewis  <martin@mira.isdn.cs.tu-berlin.de>
8344
8345         * src/basic_file.cc (__basic_file::open): Fix thinko in
8346         _G_HAVE_IO_FILE_OPEN bits.
8347         * bits/std_istream.h (sentry::sentry(istream, bool)): Fix isspace bug.
8348         * bits/std_cmath.h: Add stdlib.h include for ldiv_t.
8349         * src/complex.cc (FCT): Qualify all functions with global namespace.
8350         * src/locale.cc: Don't qualify memcpy and setlocale.
8351         * src/stdexcept.cc (__out_of_range): Qualify out_of_range with std::.
8352         (__length_error): Likewise, for length_error.
8353         * src/stlinst.cc: Qualify instantiations with std::.
8354
8355 1999-04-15   Benjamin Kosnik  <bkoz@cygnus.com>
8356
8357         * C++STYLE: Add ChangeLog guidelines for member functions.
8358
8359         * doc/* : Delete.  
8360         * BADNAMES, BUGS, C++STYLE, CHECKLIST, COPYING,
8361         DESIGN, HEADER_POLICY, PROBLEMS, RELEASE-NOTES, TODO: Moved into
8362         docs/text and made less strident.
8363         
8364         * bits/fstream.tcc: Change non-standard ctor to match Sun's sematics.
8365         * bits/std_fstream.h: Same.
8366         * src/ios.cc: Same.
8367
8368         * bits/locfacets.h: Touch. 
8369         
8370 1999-04-15  Ulrich Drepper  <drepper@cygnus.com>
8371
8372         * math/cexp.c (cexp): Use NAN instead of nan("").
8373         Reported by joel reed <joelreed@yahoo.com>.
8374
8375         * libio/libioP.h: Define _IO_seek_fpos_t and _IO_seek_off_t based on
8376         _G_IO_IO_FILE_VERSION.  Use these types in the prototypes.
8377         * libio/fileops.c: Use _IO_seek_fpos_t and _IO_seek_off_t types
8378         instead of #if cascades.
8379         * libio/genops.c: Likewise.
8380         * libio/ioseekoff.c: Likewise.
8381         * libio/ioseekpos.c: Likewise.
8382         * libio/strops.c: Likewise.
8383         Patch by Chip Salzenberg <chip@perlsupport.com>.
8384
8385 1999-04-15  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8386
8387         * docs: New directory.
8388         * docs/html: Likewise.
8389         * docs/text: Likewise.
8390         * docs/image: Likewise.
8391
8392         * bits/std_cmath.h: Add new functions.
8393         (abs): overload for long and double.
8394         (div): overload for long.
8395
8396         * bits/valarray_array.h: Fix.
8397         * bits/gslice.h: Adjust friend.
8398         * bits/slice_array.h: likewise.
8399         * bits/valarray_meta.h: likewise.
8400
8401 1999-04-13   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
8402
8403         * bits/locfacets.h: More changes, for num_get for insertion
8404         operators for integral types. Comment fields in _Format_cache.
8405         * bits/locfacets.tcc: And here too: add preliminary long version.
8406         * testsuite/27/27istringstream_formatted.cc: Add cases.
8407
8408 1999-04-13   Mark Elbrecht  <snowball3@usa.net>
8409
8410         * configure.in: Add locale.h to AC_CHECK_HEADERS argument. Call
8411         AC_LC_MESSAGES macro.
8412         * aclocal.m4 (AC_LC_MESSAGES): New. Determines if a target
8413         supports LC_MESSAGES.
8414         * config.h.in: Add entry for HAVE_LC_MESSAGES.
8415         * src/locale.cc (locale::_S_normalize_category): Use the
8416         HAVE_LC_MESSAGES macro to check for LC_MESSAGES support instead of
8417         _G_NO_CLOCALE_HAS_MESSAGES.
8418         * aclocal.m4 (AM_PROG_LD): For DOS style paths, simplify test to
8419         '?:' from '?:\\' so any path beginning with a drive name matches.
8420
8421 1999-04-12   Mark Elbrecht  <snowball3@usa.net>
8422
8423         * src/basic_file.cc(sys_open) [O_BINARY]: Declare __testb.
8424
8425 1999-04-12   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
8426
8427         * bits/locfacets.h: Tweak.
8428         * bits/locfacets.tcc(do_get): Clean/fix bool method.
8429
8430         * testsuite/21/21nonmember.cc: Same.
8431         * testsuite/21/21compare.cc: Fix license.
8432         * testsuite/27/27istringstream_formatted.cc: New file.
8433
8434 1999-04-12  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8435
8436         * bits/valarray_meta.h: _BinFunBase1, _BinFunBase2, _BinBase1,
8437         _BinBase2: new template classes; put in there to work around a
8438         compiler limitation. The whole valarray architecture is now
8439         working.
8440
8441 1999-04-08  Benjamin Kosnik  <bkoz@haight.constant.com>
8442
8443         * bits/locfacets.tcc: Fix, format.
8444         * bits/locfacets.h: Fix.
8445         * src/locale.cc: Same, plus format.
8446
8447         * bits/basic_string.h: Re-add definition here.
8448         * src/string.cc: Take out.
8449
8450 1999-04-08  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8451
8452         * bits/std_valarray.h: tweak.
8453         * bits/valarray_array.h tweak. use _Expr.
8454         * bits/slice_array.h: likewise.
8455         * bits/gslice_array.h: likewise.
8456         * bits/mask_array.h: likewise.
8457         * bits/indirect_array.h: likewise.
8458         * bits/valarray_meta.h: tweak.
8459         _UnFunBase, _UnFunClos, _BinFunBase, _FunBase, _ValFunClos,
8460         _RefFunClos, _UnBase, _UnClos, _BinBase, _BinClos, _SClos, _GClos,
8461         _IClos: new template classes.
8462         _Meta: renamed to _Expr. Made template with args.
8463         _Constant: made template with two args.
8464
8465 1999-04-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8466
8467         * bits/valarray_array.h: tweak.
8468
8469 1999-04-06  Benjamin Kosnik  <bkoz@cygnus.com>
8470
8471         * bits/basic_string.h: Whoops--fix blip.
8472
8473 1999-04-06  Benjamin Kosnik  <bkoz@cygnus.com>
8474
8475         Update to SGI STL 3.13
8476         * bits/basic_string.h: Add __get_c_string definition.
8477         * stl/bits/stl_range_errors.h: New file.
8478         * stl/bits/std_bvector.h: Same.
8479         * stl/bits/*: Update.
8480
8481 1999-04-04 1999  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8482
8483         * bits/slice_array.h: tweak.
8484         * bits/gslice_array.h: tweak.
8485         * bits/mask_array.h: tweak.
8486         * bits/indirect_array.h: tweak.
8487         * bits/valarray_array.h: tweak.
8488         (__valarray_copy): replace copy with memcpy.
8489         * bits/std_valarray.h: use __valarray_copy whenever possible.
8490         use __valarray_fill instead of fill.
8491
8492 1999-04-02  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8493
8494         * src/gen-num-limits.cc: new file
8495         * mknumeric_limits: Ditto.
8496
8497 1999-03-30  Benjamin Kosnik  <bkoz@cygnus.com>
8498
8499         * bits/locfacets.tcc: Do a stub version of num_get for short, int,
8500         and long types.
8501         * bits/locfacets.h: Add num_get::get methods overloaded for int
8502         and short, to resolve ambiguous overloads in istream insertion
8503         operators.
8504
8505 1999-03-30  Benjamin Kosnik  <bkoz@cygnus.com>
8506
8507         * bits/std_istream.h: Fix.
8508         * bits/istream.tcc: Fix.
8509
8510 1999-03-30  Philip Martin  <pm@corris.dircon.co.uk>
8511
8512         * testsuite/24/24iterator.cc: fix ++/-- tests
8513
8514 1999-03-29  Benjamin Kosnik  <bkoz@cygnus.com>
8515
8516         * bits/std_ostream.h: Looks like this, actually: Fix up eh-isms.
8517         * bits/ostream.tcc: Same.
8518
8519         * bits/std_istream.h: Bring over ostream changes, implement member
8520         functions. Baseline.
8521         * bits/istream.tcc: New file.
8522
8523 1999-03-26  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8524
8525         * bits/gslice.h (class gslice): fix friends template.
8526
8527 1999-03-23  Benjamin Kosnik  <bkoz@cygnus.com>
8528
8529         * bits/std_ostream.h: Fix sentry objects, implement seekp, tellp,
8530         delete cruft, etc.
8531         * bits/ostream.tcc: Same.
8532
8533         * bits/std_istream.h: Minor tweaks.
8534
8535 1999-03-18  Benjamin Kosnik  <bkoz@cygnus.com>
8536
8537         * src/locale-inst.cc: Remove duplicate instantiations.
8538         * bits/locfacets.tcc: Tweak definitions of static member.
8539
8540 1999-03-18  Benjamin Kosnik  <bkoz@cygnus.com>
8541
8542         * bits/std_fstream.h: Format: prepend "__" in front of
8543         non-standard typedefs.
8544         * bits/fstream.tcc: Match.
8545         * bits/std_streambuf.h: Format: prepend "__" in front of
8546         non-standard typedefs.
8547
8548         * bits/sstream.tcc: Match.
8549         * bits/std_istream.h: Format.
8550         * src/locale-inst.cc: Add num_get instantiations.
8551
8552         * bits/std_sstream.h: Fix crash in stringstreams. Remove member
8553         _M_sb, a basic_stringbuf object, and use the basic_ios pointer
8554         _M_streambuf instead. Make initializations sane. Fix
8555         allocation/deallocation of _M_streambuf.
8556         * bits/std_ostream.h: Fix initialization code.
8557         (ctor): Eliminate redundant this->init(), let base class initialize.
8558         (default ctor): New. Assume base classes already initialzed.
8559         * bits/std_istream.h: Parallel work to ostream.
8560         (ctor): Eliminate redundant this->init(), let base class initialize.
8561         (default ctor): New. Assume base classes already initialzed.
8562         Fix initialization of basic_iostream.
8563
8564         * bits/std_fstream.h: While we're at it, make initializations sane
8565         here too. Now matches sstream.h.
8566
8567         * bits/string.tcc: Fix crash in basic_string::compare.
8568         * bits/basic_string.h: And here.
8569         * bits/c++config.h: Add comment about _G_USE_EXCEPTIONS.
8570
8571         * testsuite/make_check_libfree++: Check shared as well.
8572         * testsuite/27/27stringstream.cc: Add bits.
8573         * testsuite/27/27boolfmt.cc: Add bits.
8574         * testsuite/27/27octfmt.cc: Add bits.
8575
8576 1999-03-17  Benjamin Kosnik  <bkoz@happy.cygnus.com>
8577
8578         * configure.in (USE_LONG_DOUBLE): signbitl link error.
8579
8580         * bits/locfacets.h: Fix errors that cause build problems
8581         with current egcs (template parameters have class scope).
8582         * bits/locfacets.tcc: Same.
8583         * src/locale-inst.cc: Same, clean.
8584         * src/misc-inst.cc: Same, clean.
8585
8586 1999-03-17  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
8587
8588         * stl/bits/std_memory.h:  Modify auto_ptr::reset to reflect the
8589         standard. Re-apply this previous patch.
8590
8591 1999-03-17  Philip Martin  <pm@corris.dircon.co.uk>
8592
8593         * bits/basic_string.h: Use __normal_iterator<> for iterators.
8594         * bits/std_sstream.h: Support __normal_iterator<> iterators.
8595         * bits/string.tcc: Ditto.
8596         * src/misc-inst.cc: Ditto.
8597         * src/locale-inst.cc: Ditto.
8598         * stl/bits/stl_iterator.h: Add __normal_iterator<>.
8599         * stl/bits/stl_vector.h: Use __normal_iterator<> for iterators.
8600         * testsuite/24/24iterator.cc: Add test cases for basic_string and
8601         vector iterators.
8602
8603 1999-03-16  Benjamin Kosnik  <bkoz@cygnus.com>
8604
8605         * bits/locfacets.tcc: Remove macro hack.
8606         * bits/locfacets.h: Tweaks.
8607         * src/misc-inst.cc: Weed out locale-related instantiations.
8608         * src/locale-inst.cc: Same.
8609
8610         * RELEASE-NOTES: Make more changes.
8611         * bits/c++config.h: Bump version number.
8612
8613         * testsuite/make_check_libfree++: Collect diagnostics.
8614
8615         * bits/std_ostream.h: Fix ostream initialization/destruction
8616         problem, related to dtor cleanup and new cached facets, agggggggh.
8617         * bits/ostream.tcc: Tweak.
8618         * bits/locfacets.h: Remove all friends of iostream classes.
8619         * bits/ios_base.h: Same.
8620         * bits/streambuf.tcc: Tweak.
8621         * bits/std_streambuf.h: Tweak.
8622         * bits/std_fstream.h: Tweak.
8623         * bits/fstream.tcc: Tweak.
8624         * src/stdstreams.cc: Tweak.
8625         * src/ios.cc: Close streams.
8626
8627         * math/Makefile.in: Add missing files for shared link errors.
8628         * math/Makefile.am: Same.
8629
8630 1999-03-15  Benjamin Kosnik  <bkoz@cygnus.com>
8631
8632         * src/locale-inst.cc: More wchar_t instantiations.
8633         * src/misc-inst.cc: Missed a few bits.
8634         * testsuite/make_check_libfree++: Add static and shared runs.
8635         * src/ios.cc: Add clarity to ios_base::Init::~Init().
8636
8637 1999-03-15  Benjamin Kosnik  <bkoz@cygnus.com>
8638
8639         * bits/std_ostream.h: Format, expunge, simplify. Add cached
8640         facets. Resolve link errors.
8641         * bits/ostream.tcc: Same.
8642         * src/misc-inst.cc: Add ostream, wostream instantiations.
8643         * src/Makefile.am: Add missing bits for stdstreams.cc.
8644         * src/Makefile.in: Same.
8645         * bits/std_iosfwd.h: Format.
8646         * bits/locfacets.h (num_put): Add basic_ostream as a friend to
8647         num_put so that cached _M_fnumput pointer can be deleted in
8648         basic_ostream's dtor. Now everybody plays nice.
8649
8650 1999-03-12  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8651
8652         * bits/gslice.h (class gslice): Make friends valarray,
8653         gslice_array and _GliceExpression.
8654
8655 1999-03-11  Benjamin Kosnik  <bkoz@cygnus.com>
8656
8657         * RELEASE-NOTES: Update.
8658         * src/ios.cc: Use do proper init.
8659         * bits/std_streambuf.h: Tweak.
8660         * bits/std_iostream.h: Take out static member.
8661         * std/iostream: Put here.
8662         * bits/std_ostream.h: Non-default ctor shouldn't smash _M_streambuf.
8663         * bits/std_istream.h: Ditto.
8664         * bits/basic_ios.h: Format.
8665         * bits/ostream.tcc(write): Fix.
8666         * bits/fstream.tcc: Fix stdstreams ctor to do a proper
8667         initialization of the fstream class.
8668         * src/stdstreams.cc: I'm baaaaaaaack.
8669
8670 1999-03-10  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
8671
8672         * bits/ios_base.h: Correct comments. Add ios_base::init()
8673         functionality. Format, tweak, expunge, clean, bathe, and hang to dry.
8674         * src/misc-inst.cc: Add instantiations here.
8675         * src/ios.cc: Clean.
8676         * bits/std_iostream.h: Add wrappers, global ios_base::Init object.
8677         * src/stdstreams.cc: Delete this file, as now unnecessary.
8678         * bits/fstream.tcc: Add missing initialization bits for ctor.
8679         * src/Makefile.am (libstdc___la_SOURCES): Delete here as well.
8680         * src/Makefile.in (libstdc___la_OBJECTS): And here.
8681
8682         * bits/streambuf.tcc: Tweak.
8683         * bits/sstream.tcc: Here too.
8684
8685         * bits/fstream.tcc: And change definition as well.
8686         * bits/std_fstream.h: Change ctor.
8687         * src/basic_file.cc (sys_open): Add call that opens a specific fileno.
8688         * bits/basic_file.h: Add declarations.
8689
8690         * testsuite/27/27hello.cc: New file.
8691
8692         * bits/std_ostream.h: Move flush() inline.
8693         * bits/ostream.tcc: From here.
8694
8695         * bits/char_traits.h: Add include of fpos.h for streamoff/streampos.
8696         * bits/std_ios.h: Change include libio to only when necessary.
8697         * bits/fpos.h: Like here.
8698         * ios_base.h: And here.
8699
8700         * bits/locfacets.h: Change _Iostate to _Ios_Iostate.
8701         * bits/locfacets.tcc: Same.
8702         * bits/std_locale.h: Include std_ios.h not std_iosfwd.h.
8703         * bits/std_iosfwd.h: Move _Ios_Iostate to ios_base.h
8704
8705 1999-03-09  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
8706
8707         * bits/basic_ios.h: Change _M_ctype to _M_fctype.
8708
8709         * bits/std_streambuf.h: Clean, tweak.
8710         * bits/std_fstream.h: Same.
8711         * bits/std_sstream.h: Same.
8712         * bits/streambuf.tcc: Move most member functions out-of-line.
8713         * bits/fstream.tcc: Same.
8714         * bits/streambuf.tcc: Same.
8715
8716         * bits/basic_file.h(filepos_cur): Set correctly.
8717         (filepos_beg): Same.
8718         (seekpos): Change to __c_streampos.
8719         * src/basic_file.cc (std): Change to __c_streampos.
8720
8721         * testsuite/27/27filebuf.cc: Round one is finished.
8722         * testsuite/27/27filebuf-2.tst: New file, final output should match.
8723         * testsuite/27/27filebuf-3.tst: Same.
8724
8725 1999-03-08  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
8726
8727         * bits/basic_file.h: Fix typo, add comments about what to expect
8728         from the various member functions in __basic_file.
8729
8730         * bits/std_fstream.h: Re-do sync/underflow to work
8731         together. Change from sys_read to xsgetn and from sys_write to
8732         xsputn. As it should have been from the beginning. . .
8733
8734 1999-03-06  Benjamin Kosnik  <bkoz@haight.constant.com>
8735
8736         * bits/c++config.h (__GLIBCPP__): Add versioning macro.
8737
8738         * bits/basic_file.h(file_beg): New function.
8739         (file_cur): Ditto.
8740
8741         * testsuite/27/27filebuf.cc: Test in, out, in | out.
8742         * bits/std_fstream.h: More _M_mode refinements.
8743         (synch): Add bits for out mode only.
8744         * bits/std_streambuf.h(xsputn): Correct for filebufs.
8745         * bits/std_sstream.h: Ditto.
8746
8747 1999-03-03  Benjamin Kosnik  <bkoz@cygnus.com>
8748
8749         * bits/std_fstream.h: Fix _M_mode AND with ios_base::openmode.
8750         * testsuite/27/27filebuf.cc: Modify.
8751         * bits/c++config.h: Fix.
8752
8753 1999-03-02  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
8754
8755         * bits/c++config.h: New macro, _G_RESOLVE_LIB_DEFECTS, used to put
8756         code in place that diverges from the final standard, but has been
8757         brought up on the library mailing list.
8758
8759         * bits/std_fstream.h(underflow): Position all three internal
8760         buffer pointers at the same initial position. Re-implement with
8761         basic_filebuf abstraction.
8762         (overflow): Ditto.
8763         (seekoff): Ditto.
8764         (seekpos): Ditto.
8765         * bits/std_sstream.h: Move _M_mode down into base class
8766         basic_streambuf.
8767         * bits/sstream.tcc: Ditto.
8768         * bits/std_streambuf.h: Ditto.
8769
8770         * testsuite/27/27filebuf.cc: Tweak.
8771
8772 1999-02-27  Benjamin Kosnik  <bkoz@slap-happy.cygnus.com>
8773
8774         * bits/std_sstream.h: Ditto.
8775         * bits/std_fstream.h: Fix blip.
8776
8777 1999-02-26  Benjamin Kosnik  <bkoz@happy.cygnus.com>
8778
8779         * C++STYLE: Add cases.
8780         * bits/std_fstream.h: Format.
8781         * bits/std_streambuf.h: Ditto.
8782         * bits/std_sstream.h: Ditto.
8783
8784         * src/basic_file.cc(sys_seek): Fix stack delirium, by keeping
8785         return type for _IO_file_seek and __basic_file::seek the same size.
8786         * bits/basic_file.h: Ditto.
8787
8788 1999-02-26  Benjamin Kosnik  <bkoz@happy.cygnus.com>
8789
8790         * bits/fstream.tcc: Add include guards.
8791         * src/misc-inst.cc: Add instantiations for shared libes.
8792         * src/locale-inst.cc: Add instantiaions for use_facet.
8793         * bits/loccore.h: Remove specialization foward decls for
8794         use_facet<ctype>: perhaps add the whole lot of them later on.
8795         * bits/std_fstream.h: Fix.
8796         * bits/locfacets.h: Ditto.
8797         * src/stdstreams.cc: Disable wide streams for now.
8798
8799         * src/Makefile.am (CXXFLAGS): Change up.
8800         * src/Makefile.in (CXXFLAGS): Ditto.
8801
8802 1999-02-25  Benjamin Kosnik  <bkoz@happy.cygnus.com>
8803
8804         * src/basic_file.cc: Change to ios_base::seekdir from int.
8805         * bits/basic_file.h: Ditto.
8806         * bits/locfacets.h : Fix blip with new guard macros.
8807
8808 1999-02-25  Benjamin Kosnik  <bkoz@cygnus.com>
8809
8810         * stl/bits/stl_config.h (__STL_USE_STD_ALLOCATORS): Minor tweaking.
8811         * bits/c++config.h: Clean. Remove _G_NO_STREAMBUF_ITERATORS and
8812         _G_USE_NAMESPACE.
8813         * amm1/locale: Remove unused defines.
8814         * generic/locale: Ditto.
8815         * src/ios.cc: Ditto.
8816         * src/locale.cc: Ditto.
8817         * src/locale-inst.cc: Ditto.
8818         * src/localename.cc: Ditto.
8819         * src/stdstreams.cc: And here.
8820
8821         * bits/c++config.h (_G_USE_WCHAR_T): Fix.
8822         * bits/loccore.h: Simplify, clean, add wchar_t guards.
8823         * bits/loccore.tcc: Ditto.
8824         * bits/locfacets.h: Ditto.
8825         * src/locale-inst.cc: Ditto.
8826         * bits/locfacets.tcc: Add do_put long long here.
8827
8828 1999-02-24  Benjamin Kosnik  <bkoz@cygnus.com>
8829
8830         * bits/std_streambuf.h: Add cached ctype facet, _M_ctype.
8831         * bits/basic_ios.h: Clean. Replace _M_strbuf with
8832         _M_streambuf. Use cached _M_cvt in basic_streambuf.
8833         * bits/std_istream.h: Replace _M_strbuf with _M_streambuf.
8834         * bits/std_fstream.h: Tweak.
8835
8836         * bits/char_traits.h: Remove fpos definitions from here. . .
8837         * bits/fpos.h: New file, put them here. Eventually, this may allow
8838         the severing of char_traits and fpos dependancies.
8839         * src/Makefile.in: Add fpos.h.
8840         * src/Makefile.am: Ditto.
8841         * bits/std_string.h: Add fpos.h include here.
8842         * bits/std_ios.h: And here.
8843
8844         * bits/std_streambuf.h: Change _M_init to _M_initialized.
8845         * bits/ios_base.h: Remove cstdio include.
8846         * bits/std_ios.h: ... Place here.
8847
8848 1999-02-23  Benjamin Kosnik  <bkoz@loony.cygnus.com>
8849
8850         * src/Makefile.in (CXXFLAGS): Re-add -fvtable-thunks.
8851         * src/Makefile.am (CXXFLAGS): Re-add -fvtable-thunks.
8852
8853         * bits/basic_file.h: Comment, adjust arguments.
8854         * src/basic_file.cc: Ditto.
8855
8856         * bits/std_fstream.h(seekoff): Error is of fpos type, not integral
8857         type: check and convert accordingly. Re-interpet "resultant stream
8858         position" to indicate external byte sequence location, not internal
8859         buffer info.
8860
8861 1999-02-22  Benjamin Kosnik  <bkoz@loony.cygnus.com>
8862
8863         * mkcshadow: And change copyright here.
8864         * src/Makefile.am (CXXFLAGS): Add -g -O2. Add new header
8865         dependencies for stl_pthread_alloc.h, pthread_allocimpl.h,
8866         stl_thread.h, and stl_iterator_base.h.
8867         * src/Makefile.in (CXXFLAGS): Ditto.
8868         * stl/backward/pthread_alloc.h: Remove.
8869
8870 1999-02-19  Benjamin Kosnik  <bkoz@loony.cygnus.com>
8871
8872         * bits/std_streambuf.h (sungetc): Use standard defs for putback
8873         position.
8874         * bits/std_fstream.h (pbackfail): Correct.
8875         (sungetc): Test.
8876         (seekoff): Implement.
8877         (seekpos): Re-do.
8878         * testsuite/27/27filebuf.cc: Add test cases.
8879
8880 1999-02-18  Benjamin Kosnik  <bkoz@loony.cygnus.com>
8881
8882         * bits/std_fstream.h: Go with basic_file's interfaces for dealing
8883         with the external buffers, and stop mucking around with setting
8884         and re-setting the external buf's pointers. Aka, clarity and
8885         simplicity rule the day.
8886         * src/locale.cc: Use memcpy in codecvt::do_in and codecvt::do_out.
8887         Remove partial result and support code.
8888
8889 1999-02-18  Ulrich Drepper  <drepper@cygnus.com>
8890
8891         * configure.in: Add hypot, hypotf, atan2f, expf, and copysignf to
8892         list of function which have to be replaced.
8893         Remove expf from list of functions to test for.
8894         Define USE_LONG_DOUBLE in case the libm has partial support for long
8895         doubles.
8896         * Makefile.in: Regenerated.
8897         * config.h.in: Likewise.
8898         * configure: Likewise.
8899         * libio/Makefile.am (LIBIO_SRCS): Add missing backslash.
8900         * libio/Makefile.in: Regenerated.
8901         * src/Makefile.in: Regenerated.
8902         * string/Makefile.in: Regenerated.
8903         * math/Makefile.am (EXTRA_DIST): Add hypot.c, hypotf.c, hypotl.c,
8904         atan2f.c, expf.c, and $(EXTRA_yes).
8905         (EXTRA_yes): Add signbitl.c mycabsl.c.
8906         (libmath_la_LIBADD): Add $(EXTRA_$(USE_LONG_DOUBLE)).
8907         (libmath_la_SOURCES): remove long double versions.
8908         * math/Makefile.in: Regnerated.
8909         * math/atan2f.c: New file.
8910         * math/copysignf.c: New file.
8911         * math/expf.c: New file.
8912         * math/hypot.c: New file.
8913         * math/hypotf.c: New file.
8914         * math/hypotl.c: New file.
8915         * math/cargf.c: Use correct function and macro names.
8916         * math/ccos.c: Likewise.
8917         * math/ccosh.c: Likewise.
8918         * math/ccoshf.c: Likewise.
8919         * math/ccoshl.c: Likewise.
8920         * math/cexp.c: Likewise.
8921         * math/cexpf.c: Likewise.
8922         * math/cexpl.c: Likewise.
8923         * math/clog.c: Likewise.
8924         * math/clog10.c: Likewise.
8925         * math/clog10f.c: Likewise.
8926         * math/clog10l.c: Likewise.
8927         * math/clogf.c: Likewise.
8928         * math/clogl.c: Likewise.
8929         * math/copysignf.c: Likewise.
8930         * math/csin.c: Likewise.
8931         * math/csinf.c: Likewise.
8932         * math/csinh.c: Likewise.
8933         * math/csinhf.c: Likewise.
8934         * math/csinhl.c: Likewise.
8935         * math/csinl.c: Likewise.
8936         * math/csqrt.c: Likewise.
8937         * math/csqrtf.c: Likewise.
8938         * math/csqrtl.c: Likewise.
8939         * math/ctan.c: Likewise.
8940         * math/ctanf.c: Likewise.
8941         * math/ctanh.c: Likewise.
8942         * math/ctanhf.c: Likewise.
8943         * math/ctanhl.c: Likewise.
8944         * math/ctanl.c: Likewise.
8945
8946 1999-02-17  Benjamin Kosnik  <bkoz@cygnus.com>
8947
8948         * testsuite/27/27filebuf.cc: Add cases.
8949         * testsuite/27/27filebuf-1.txt: Remove inadvertent garbage.
8950         * bits/std_streambuf.h: Simplify, always have one return statement.
8951         * bits/std_fstream.h: Tweak comments in underflow.
8952
8953 1999-02-17  Ulrich Drepper  <drepper@cygnus.com>
8954
8955         * ltmain.sh: Update from libtool 1.2d and fix Solaris problems.
8956         * ltconfig: Likewise.
8957
8958 1999-02-16  Christophe Pierret  <cpierret@businessobjects.com>
8959
8960         * src/locale.cc: Fix assert.
8961
8962 1999-02-16  Benjamin Kosnik  <bkoz@cygnus.com>
8963
8964         FIXME: Still need some kind of solution for undefined math symbols.
8965         * src/Makefile.in (locale-inst.lo): Compile with
8966         -fimplicit-templates to fix Solaris link problem.
8967         * src/Makefile.am: Ditto.
8968         * libio/Makefile.in: Add stdfiles.c so that _IO_list_all is defined.
8969         * libio/Makefile.am: Ditto.
8970         * src/locale.cc: Provide some kind of def for _S_tolower.
8971         * bits/locfacets.h: Fix declarations of ctype<wchar_t> to
8972         match ctype<char> for _S_tolower, _S_toupper, _S_table.
8973
8974 1999-02-10  Benjamin Kosnik  <bkoz@cygnus.com>
8975
8976         * bits/loccore.tcc: Move member-template ctor inline...
8977         * bits/loccore.h: ...here.
8978         * src/locale-inst.cc: Add instantiation here.
8979
8980         * testsuite/27/27stringstream.cc: Tweak.
8981
8982         * bits/ostream.tcc: Include sbuf_iter.h.
8983
8984         * bits/ostream.tcc: Convert *this to ostreambuf_iterator before
8985         passing to num_put, as num_put's first argument is an interator,
8986         not basic_ostream.
8987
8988         * testsuite/make_check_libfree++: New file, runs through the
8989         existing test files in the testsuite directory and makes sure
8990         they link.
8991
8992 1999-02-10  Brendan Kehoe  <brendan@cygnus.com>
8993
8994         * testsuite/21/21compare.cc: Fix typo.
8995         * src/locale.cc (ctype<wchar_t>::_S_{toupper,tolower,table}):
8996         Don't try to provide non-linux versions, since it's impossible to
8997         initialize their const references with the integer 0, no matter
8998         how we try to cast it.
8999
9000 1999-02-10  Benjamin Kosnik  <bkoz@cygnus.com>
9001
9002         * bits/std_locale.h: Move std_vector.h dependency.
9003         * bits/std_ios.h: ...from here.
9004         * bits/std_string.h: ...and here.
9005         * src/locale.cc: ..to here.
9006         * bits/loccore.h: Ditto, add vector forward declaration,
9007         make locale::_Impl data members pointers not containers.
9008         * bits/loccore.tcc: Move out-of-line for now.
9009         * bits/locfacets.h: Move vector dependency from here...
9010         * bits/locfacets.tcc: ...to here.
9011         * src/localename.cc: ..and here.
9012         * src/locale-inst.cc: Add include of locfacets.tcc here.
9013
9014         * stl/bits/stl_string_fwd.h: Make __get_c_string non-static.
9015         * bits/basic_string.h: Can't use sizeof on an incomplete type.
9016         * bits/string.tcc: Tweak.
9017         * src/string.cc: And add __get_c_string def here.
9018
9019         * bits/std_fstream.h: Yeah, comment the fill_n idea out as impractical.
9020
9021         * src/stlinst.cc: Add include of stl_config.h.
9022
9023 1999-02-09  Benjamin Kosnik  <bkoz@cygnus.com>
9024
9025         * stl/bits/std_bitset.h: Update to SGI STL 3.12.
9026         * stl/bits/stl_config.h: Tweak, update.
9027         * stl/bits/std_stdexcept.h: Ditto, change stl_exception to
9028         std_exception.
9029         * stl/bits/std_memory.h: Reconstructed auto_ptr, Ditto.
9030         * stl/bits/std_functional.h: Ditto.
9031
9032         * stl/bits/stl_string.h: New file, SGI's string
9033         implementation. For reference only, corresponding to string in
9034         3.12 source.
9035         * stl/bits/stl_char_traits.h: As above.
9036
9037         * stl/bits/pthread_allocimpl.h: New file corresponding to
9038         pthread_alloc.
9039         * stl/bits/stl_pthread_alloc.h: New file corresponding to
9040         pthread_alloc.h
9041         * stl/bits/stl_threads.h: New file.
9042
9043         Note that SGI STL 3.12's file iterator.h is not used.
9044         * stl/bits/std_iterator.h: Ditto.
9045         * stl/bits/stl_iterator.h: Drop in replace.
9046         * stl/bits/stl_iterator_base.h: New file, drop in replace.
9047
9048         * stl/bits/stl_queue.h, stl_rope.h, stl_set.h, stl_stack.h,
9049         stl_string_fwd.h, stl_tempbuf.h, stl_tree.h, stl_vector.h,
9050         stl_pair.h, stl_multimap.h, stl_multiset.h, stl_list.h,
9051         stl_hashtable.h, stl_hash_set.h, stl_hash_map.h, stl_function.h,
9052         stl_deque.h, stl_alloc.h, stl_algo.h, stl_algobase.h, ropeimpl.h:
9053         Drop-in replace (ie, stop changing __SGI_STL_* to _CPP_BITS_* for
9054         preprocessor guards, but fixup include paths and names according
9055         to new directory layout).
9056
9057 1999-02-05  Benjamin Kosnik  <bkoz@cygnus.com>
9058
9059         * bits/std_fstream.h: Remove _M_open data member.
9060         * bits/fstream.tcc: Ditto.
9061
9062         * src/locale.cc: Tweak.
9063
9064         * bits/std_sstream.h: Simplify.
9065
9066         * bits/std_streambuf.h: Simplify.
9067         (sputc): Use correct definition of "write area."
9068
9069         * bits/std_fstream.h: Fix uflow.
9070         * src/basic_file.cc: Tweak.
9071         * testsuite/27/27filebuf.cc: Add tests.
9072         * testsuite/27/27filebuf-3.txt: Rename to *-2.txt.
9073
9074 1999-02-02  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
9075
9076         * bits/ios_base.h: Make protected.
9077
9078 1999-02-01  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
9079
9080         * bits/ios_base.h: Changes in the class ios_base:
9081         Rename _M_exceptions member to _M_exceptions_data.
9082         Make the member functions rdstate(), clear(), exceptions()
9083         and exceptions(iostate) protected and add the "_M_" prefix.
9084         * src/ios.cc: Ditto.
9085         * bits/basic_ios.h: Adapt the changes from ios_base.
9086
9087 1999-01-29  Benjamin Kosnik  <bkoz@cygnus.com>
9088
9089         * bits/std_fstream.h: Remove _M_flags, _M_equilibrate  as unnecessary.
9090         * bits/fstream.tcc: Ditto.
9091
9092         * bits/std_fstream.h (underflow): Resize deallocates memory and
9093         resets pointers in the internal cache according to new _M_buf. . dooh!
9094         * src/locale.cc: Mas changes with codecvt::do_in, do_out.
9095
9096 1999-01-29  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
9097
9098         * stl/bits/std_memory.h:  Modify auto_ptr::reset to reflect the
9099         standard.
9100
9101 1999-01-28  Benjamin Kosnik  <bkoz@cygnus.com>
9102
9103         * src/locale.cc (codecvt::do_in): Finer-grained tuning to take
9104         into account partial returns.
9105         (codecvt::do_out): Likewise.
9106
9107         * bits/char_traits.h: Change streamsize to be a signed type, as
9108         required by 27.4.1 Types p 2. (Changing to _IO_ssize_t.)
9109         * bits/std_streambuf.h: Make
9110         in_avail() and showmanyc() have streamsize as return types, so
9111         that showmanyc()'s return of eof won't underflow in_avail's return
9112         value and give a bogus result.
9113         * src/misc-inst.cc: And more changes. . .
9114
9115         * bits/std_streambuf.h (basic_streambuf): Add _M_buf_unified to keep
9116         track of joint in/out pointers into the internal buffer.
9117         (sbumpc): Add check for _M_buf_unified.
9118         (sputbackc): Ditto.
9119         (sungetc): Ditto.
9120
9121         * testsuite/27/27filebuf.cc: Add cases.
9122         * testsuite/27/27stringbuf.cc: Add showmanyc case.
9123
9124         * bits/std_fstream.h (close): Fix logic error.
9125         (open): Initialize internal pointers based on _M_buf and _M_buf_size.
9126         (showmanyc): Add underflow component, to match the standard.
9127
9128         * bits/fstream.tcc: Ditto.
9129
9130 1999-01-27  Benjamin Kosnik  <bkoz@cygnus.com>
9131
9132         * bits/basic_file.h: Match vtables w/ _IO_FILE_plus.
9133         * src/basic_file.cc: Ditto.
9134         * src/Makefile.in: Add -fvtable-thunks to CXXFLAGS: preferred
9135         format for dealing with _IO_file in libio.
9136
9137 1999-01-27  Ulrich Drepper  <drepper@cygnus.com>
9138
9139         * src/basic_file.cc: Include fcntl.h.
9140
9141 1999-01-27  Benjamin Kosnik  <bkoz@cygnus.com>
9142
9143         * libio/Makefile.in: Add fileops.lo, genops.lo to objects to debug
9144         libio calls.
9145         * bits/std_streambuf.h: Redefine read posion.
9146
9147         * bits/std_fstream.h: Temporary hack to get vtables working again.
9148         * bits/basic_file.h: Revert.
9149         * src/basic_file.cc: Ditto.
9150         * testsuite/27/27filebuf.cc: Tweak.
9151
9152 1999-01-26  Benjamin Kosnik  <bkoz@cygnus.com>
9153
9154         * bits/basic_file.h: Add showmanyc, underflow. .
9155         * src/basic_file.cc: Ditto.
9156
9157         * bits/std_fstream.h (showmanyc): Add bits to ping libio to see if more
9158         chars can be read.
9159
9160         * testsuite/27/27filebuf.cc: Add testcases.
9161         * src/basic_file.cc: Add O_CREAT to open calls with
9162         ios_base::trunc as part of the open mode.
9163
9164 1999-01-26  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
9165
9166         * bits/basic_ios.h: fix basic_ios::exceptions(iostate)
9167
9168 1999-01-25  Benjamin Kosnik  <bkoz@nabi.net>
9169
9170         * src/ios.cc (clear): Correct typo.
9171         * bits/ios_base.h: Tweak spacing.
9172
9173 1999-01-25  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
9174
9175         * bits/basic_ios.h: fix basic_ios::fail()
9176
9177 1999-01-25  Benjamin Kosnik  <bkoz@loony.cygnus.com>
9178
9179         * bits/basic_file.h: Include libioP.h from libio instead of here.
9180         * bits/iolibio.h: Remove.
9181         * bits/libio.h: Remove.
9182
9183 1999-01-22  Benjamin Kosnik  <bkoz@lunatic.cygnus.com>
9184
9185         * bits/std_fstream.h: Tweak cvt-> in call for newer egcs compilers.
9186
9187 1999-01-22  Ulrich Drepper  <drepper@cygnus.com>
9188
9189         * Makefile.am (SUBDIRS): Add libio.
9190         * configure.in: Add rule to test for glibc2.
9191
9192         * src/Makefile.am (INCLUDES): Add -I to libio subdir.
9193         (libstdc___la_LIBADD): Add libio.la.
9194
9195 1999-01-21  Benjamin Kosnik  <bkoz@cygnus.com>
9196
9197         * bits/basic_file.h: Make new abstraction for underlying C library
9198         FILE, named __basic_file.
9199         * src/basic_file.cc: New file.
9200         * bits/os_raw.h: Delete.
9201         * src/os_raw.cc: Delete.
9202         * src/Makefile.in: Tweak.
9203         * src/Makefile.am: Tweak.
9204         * bits/iolibio.h: Add this here, for the time being.
9205         * bits/libioP.h: Ditto.
9206
9207         * bits/ios_base.h: Delete unused defines.
9208         * src/locale.cc (codecvt<char, char, mbstate_t>::do_in): Use
9209         strcpy to copy between the two buffers.
9210
9211         * testsuite/27/27stringbuf.cc: Change license, fix in_avail tests.
9212         * testsuite/27/27filebuf.cc: New file.
9213         * testsuite/27/27filebuf-1.txt: Data file for above test.
9214         * testsuite/27/27filebuf-2.txt: Ditto.
9215
9216         * bits/std_streambuf.h (uflow): Re-implement default.
9217         * bits/std_fstream.h: Set _M_buf_size based on cstdio's BUFSIZ.
9218         Re-implement virtual functions.
9219         * bits/fstream.tcc: Delete unused mf's.
9220
9221 1998-12-31  Benjamin Kosnik  <bkoz@lunatic.cygnus.com>
9222
9223         * bits/fstream.tcc: Add fstream ctor for cin/cout/etc.
9224         * bits/std_fstream.h: Ditto.
9225         * src/stdstreams.cc: Ditto.
9226
9227         * math/cpowl.c: Fix header typo with last change.
9228
9229 1998-12-31  Benjamin Kosnik  <bkoz@loony.cygnus.com>
9230
9231         * COPYING: New file (GPL v 2).
9232         * LICENSE.STD: Remove.
9233         * ./*: Change license.
9234
9235 1998-12-30  Benjamin Kosnik  <bkoz@haight.constant.com>
9236
9237         * bits/std_streambuf.h (std): Remove static on _M_init.
9238         * bits/streambuf.tcc (std): Ditto.
9239
9240         * bits/std_fstream.h: Add changes as discussed with Nathan, including
9241         state_type and codecvt_type members, the allocation of an internal
9242         buffer, the streamlined codecvt calls, etc.
9243
9244 1998-12-21  Benjamin Kosnik  <bkoz@haight.constant.com>
9245
9246         * bits/std_sstream.h: Tweak.
9247         * bits/fstream.tcc: Remove unused stubs.
9248         * bits/std_fstream.h: Tweak.
9249
9250 1998-12-17  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
9251
9252         * bits/std_streambuf.h: Move _IO_file_flags into basic_filebuf.
9253         Remove unused _IO_* members, possibly put into filebuf, which may
9254         need them.
9255         * bits/std_fstream.h: Add _M_flag.
9256         * bits/sbuf_iter.h: Tweak.
9257
9258         * bits/std_cstdio.h: Add SEEK_SET, SEEK_END, SEEK_CUR.
9259         * bits/ios_base.h: Use.
9260
9261         * src/stdstreams.cc: Modify to reflect standard ctors for
9262         filebuf.
9263         * src/misc-inst.cc: Ditto.
9264
9265         * bits/os_raw.h: Wrap in std namespace. Model parameters on
9266         underlying C library calls instead of the underlying unix
9267         filesystem.
9268         * src/os_raw.cc (_S_os_open): Use fopen, and compute a mode
9269         string as per p.659.
9270         (_S_os_close): Model on fopen.
9271         (_S_os_read): Model on fread.
9272         (_S_os_write): Model on fwrite.
9273         (_S_os_seek): Model on fseek.
9274
9275         * bits/ios_base.h: Tweak.
9276         * bits/std_iosfwd.h: Wrap libio.h include with extern "C".
9277         * bits/std_sstream.h: Tweak.
9278         * bits/sstream.tcc: Remove old, uncalled code.
9279         * bits/std_fstream.h: Major reconstruction.
9280         * bits/fstream.tcc: Disable for the time being.
9281
9282 1998-12-11  Benjamin Kosnik  <bkoz@haight.constant.com>
9283
9284         * bits/basic_string.h: Fix insert method.
9285         * stl/bits/stl_iterator.h: Remove previous hack.
9286         * bits/std_streambuf.h (sbumpc): Correct increment/return oddness.
9287         * bits/std_sstream.h: Fix more regressions.
9288         * testsuite/27/27stringbuf.C: Add (almost) complete tests.
9289
9290 1998-12-09 Benjamin Kosnik  <bkoz@loony.cygnus.com>
9291
9292         * bits/basic_string.h: Tweak.
9293
9294         * stl/bits/stl_iterator.h: Specialize iterator_traits for int so
9295         that string::append can be instantiated. HACK--checkin
9296         basic_string::iterator class.
9297
9298 1998-12-07  Benjamin Kosnik  <bkoz@haight.constant.com>
9299
9300         * bits/std_sstream.h: Tweak.
9301         * bits/sstream.tcc: Tweak ctors.
9302
9303         FIXME invalid friend defs. . WHERE ARE THEY??
9304
9305         * bits/sbuf_iter.h (istreambuf_iterator::equal): Change to new
9306         names for basic_streambuf data members.
9307
9308         * bits/std_streambuf.h: Add getloc() initialization bits.
9309         basic_streambuf(): Initialize with global locale data.
9310         imbue(): Set _M_init.
9311
9312         * bits/std_streambuf.h(seekoff, seekpos): Complete with invalid
9313         stream pos == pos_type(off_type(-1)).
9314         in_avail(): Complete default implementation.
9315         snextc, sbumpc, sputbackc, sungetc, sputc, setg, xsputn,
9316         underflow, uflow, xsgetn, showmany, sync: Ditto.
9317
9318         * bits/std_streambuf.h: _M_snextc_helper(): Remove.
9319
9320         * bits/streambuf.tcc (sputbackc): Temporarily remove, need to
9321         re-populate with in-line member functions that are too big.  Add
9322         initialization for _M_init.
9323
9324 1998-12-03  Benjamin Kosnik  <bkoz@cygnus.com>
9325
9326         * bits/sstream.tcc: Convert _Allocator to _Alloc.  Add typedefs
9327         for basic_string and basic_streambuf. Scope _IO_buf_* pointers to
9328         streambuf_type.
9329
9330         * src/stdstreams.cc (std): Disable wchar_t instantiations.
9331
9332         * bits/c++config.h (_G_DEPRICATED): Add.
9333         (_G_USE_WCHAR_T): Add.
9334         * bits/std_streambuf.h: Radical reconstruction of basic_streambuf.
9335         Take out _Streambuf_base. Put _IO_FILE data member in basic_filebuf.
9336         * bits/streambuf.tcc (sputbackc): Remove ctor anti-def, Tweak.
9337         * bits/std_fstream.h: Add comment for implementation.
9338         * src/streambuf.cc: Remove.
9339         * src/Makefile.in: Remove streambuf.lo.
9340         * src/misc-inst.cc: Tweak.
9341
9342 1998-12-02  Benjamin Kosnik  <bkoz@cygnus.com>
9343
9344         * bits/std_sstream.h: Add const_cast to rdbuf returns.
9345         * testsuite/27stringstream.C: Modify.
9346
9347 1998-11-25  Benjamin Kosnik  <bkoz@haight.constant.com>
9348
9349         * src/Makefile.in (libstdc___la_OBJECTS): Add streambuf.lo.
9350         (libstdc___la_SOURCES): Ditto.
9351
9352         * bits/streambuf.tcc: Tweak.
9353
9354         * src/streambuf.cc: New file, add out-of-line definitions for
9355         _Streambuf_base.
9356
9357         * src/misc-inst.cc: Remove _Streambuf_base instantiations.
9358         Comment out wchar_t versions of the buffer instantiations, for now.
9359
9360         * bits/std_streambuf.h: Wrap libio.h include with extern "C".
9361         Remove template wrapper around _Streambuf_base.
9362         Move IO_* data members into _Streambuf_base.
9363         Move _Streambuf_base members into streambuf.tcc.
9364
9365         * bits/c++config.h (_G_USE_LIBIO): Enable.
9366
9367 1998-11-02  Nathan Myers <ncm@cantrip.org>
9368
9369         * CHECKLIST: downgrade iterator implementations
9370         * DESIGN: fill out notes about unimplemented features
9371
9372 1998-10-31  Nathan Myers <ncm@cantrip.org>
9373
9374         * CHECKLIST: itemized list of all interfaces, and status of each.
9375
9376 1998-10-30  Nathan Myers  <ncm@cantrip.org>
9377
9378         * RELEASE-NOTES: add notes about optional includes, linking, running
9379         * src/Makefile.am: handle header installs properly
9380         * src/Makefile.in: regenerate from new src/Makefile.am
9381
9382 1998-10-30  Benjamin Kosnik  <bkoz@loony.cygnus.com>
9383
9384         * bits/basic_string.h: Revert npos pending ciso646.
9385         * src/Makefile.am: Revert CXX flags for now.
9386         * src/Makefile.in: Ditto.
9387
9388 1998-10-30  Brendan Kehoe  <brendan@cygnus.com>
9389
9390         * bits/std_sstream.h: Re-order ctors to put base before member
9391         inits.
9392
9393 1998-10-30  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
9394
9395         * stl/bits/std_memory.h: Fix typo.
9396
9397 1998-10-30  Nathan Myers <ncm@cantrip.org>
9398
9399         * src/string[A-Z]+.cc: change back to include "string.cc".
9400         * src/Makefile.am: revert filename changes.  We need a different
9401         way to keep filenames in std/ from confusing Make.
9402         * bits/basic_string.h: define _S_max_size right, return it from
9403         string::max_size(); churn definition of npos again.
9404         * bits/string.tcc: fix _S_frob_size to avoid uint overflow.
9405         * bits/ios.cc: remove #ifdef on ios_base locale member initialization
9406         * BUGS: clear cruft.
9407         * C++STYLE: Touchup for release.
9408         * CHECKLIST: Touchup for release.
9409         * DESIGN: New file.
9410         * LICENSE.STD: Add requirement to retain copyrights and to provide
9411         the license with any copies.
9412         * README: Update for release.
9413         * TODO: Minor touchup for release.
9414         * RELEASE-NOTES: prepare for release
9415
9416 1998-10-29  Ulrich Drepper  <drepper@cygnus.com>
9417
9418         * src/string[A-Z]+.cc: Include stdstring.cc, not string.cc.
9419
9420         * src/Makefile.am (CXXFLAGS): Define _GNU_SOURCE.
9421
9422         * src/Makefile.am (CXXLINK): New variable.  Make sure we don't use
9423         CXX to generate the shared object.
9424
9425         * src/Makefile.am (headers): Remove duplicated char_traits.h.
9426
9427 1998-10-29  Brendan Kehoe  <brendan@cygnus.com>
9428
9429         * bits/basic_string.h (basic_string<>::max_size): Subtract 1, not
9430         2, from npos, solving infinite loop problems.
9431
9432 1998-10-29 18:41  Ulrich Drepper  <drepper@cygnus.com>
9433
9434         * src/Makefile.am: Add rules to install headers.
9435
9436 1998-10-29  Nathan Myers <ncm@cantrip.org>
9437
9438         * bits/std_ostream.h: Remove #ifdef on operator<< for long double
9439         * bits/ostream.tcc:   Remove #ifdef on operator<< for long double
9440         * shadow/libio.h:
9441         * shadow/unistd.h:
9442         * shadow/bits/wrap_libio.h:
9443         * shadow/bits/wrap_unistd.h: New files.
9444
9445 1998-10-29  Brendan Kehoe  <brendan@cygnus.com>
9446
9447         * bits/ostream.tcc (operator<<): Wrap with #ifdef
9448         _G_HAVE_LONG_DOUBLE_IO, to match bits/std_ostream.h.
9449
9450 1998-10-29  Ulrich Drepper  <drepper@cygnus.com>
9451
9452         * src/Makefile.am: Add temporarily rules to make sure misc-inst.cc
9453         is not compiled with -fno-implicit-templates in effect.
9454
9455         * src/Makefile.am (EXTRA_SOURCES): Add string.cc and wstring.cc here.
9456         (libstdc___la_SOURCES): Add all the string*.cc and wstring*.cc files.
9457         * src/stringADDCS.cc: Wrapper around string.cc to define individual
9458         function.
9459         * src/stringADDPS.cc: Likewise.
9460         * src/stringADDSC.cc: Likewise.
9461         * src/stringADDSP.cc: Likewise.
9462         * src/stringADDSS.cc: Likewise.
9463         * src/stringBIST.cc: Likewise.
9464         * src/stringBOST.cc: Likewise.
9465         * src/stringCHTR.cc: Likewise.
9466         * src/stringEQPS.cc: Likewise.
9467         * src/stringEQSP.cc: Likewise.
9468         * src/stringEQSS.cc: Likewise.
9469         * src/stringEXTRA.cc: Likewise.
9470         * src/stringGEPS.cc: Likewise.
9471         * src/stringGESP.cc: Likewise.
9472         * src/stringGESS.cc: Likewise.
9473         * src/stringGETLI.cc: Likewise.
9474         * src/stringGTPS.cc: Likewise.
9475         * src/stringGTSP.cc: Likewise.
9476         * src/stringGTSS.cc: Likewise.
9477         * src/stringINSER.cc: Likewise.
9478         * src/stringLEPS.cc: Likewise.
9479         * src/stringLESP.cc: Likewise.
9480         * src/stringLESS.cc: Likewise.
9481         * src/stringLTPS.cc: Likewise.
9482         * src/stringLTSP.cc: Likewise.
9483         * src/stringLTSS.cc: Likewise.
9484         * src/stringMAIN.cc: Likewise.
9485         * src/stringNEPS.cc: Likewise.
9486         * src/stringNESP.cc: Likewise.
9487         * src/stringNESS.cc: Likewise.
9488         * src/stringSCOPY.cc: Likewise.
9489         * src/wstringADDCS.cc: Wrapper around wstring.cc to define individual
9490         functions.
9491         * src/wstringADDPS.cc: Likewise.
9492         * src/wstringADDSC.cc: Likewise.
9493         * src/wstringADDSP.cc: Likewise.
9494         * src/wstringADDSS.cc: Likewise.
9495         * src/wstringBIST.cc: Likewise.
9496         * src/wstringBOST.cc: Likewise.
9497         * src/wstringCHTR.cc: Likewise.
9498         * src/wstringEQPS.cc: Likewise.
9499         * src/wstringEQSP.cc: Likewise.
9500         * src/wstringEQSS.cc: Likewise.
9501         * src/wstringEXTRA.cc: Likewise.
9502         * src/wstringGEPS.cc: Likewise.
9503         * src/wstringGESP.cc: Likewise.
9504         * src/wstringGESS.cc: Likewise.
9505         * src/wstringGETLI.cc: Likewise.
9506         * src/wstringGTPS.cc: Likewise.
9507         * src/wstringGTSP.cc: Likewise.
9508         * src/wstringGTSS.cc: Likewise.
9509         * src/wstringINSER.cc: Likewise.
9510         * src/wstringLEPS.cc: Likewise.
9511         * src/wstringLESP.cc: Likewise.
9512         * src/wstringLESS.cc: Likewise.
9513         * src/wstringLTPS.cc: Likewise.
9514         * src/wstringLTSP.cc: Likewise.
9515         * src/wstringLTSS.cc: Likewise.
9516         * src/wstringMAIN.cc: Likewise.
9517         * src/wstringNEPS.cc: Likewise.
9518         * src/wstringNESP.cc: Likewise.
9519         * src/wstringNESS.cc: Likewise.
9520         * src/wstringSCOPY.cc: Likewise.
9521         * src/string.cc: Remove now unneeded #defines now.
9522
9523 1998-10-29 Nathan Myers <ncm@cantrip.org>
9524
9525         * bits/locfacets.tcc: Define num_put::put(... const void*), improve
9526         integer formatting.
9527         * bits/ostream.tcc: Delete cruft, rewrite various op<< as members,
9528         add definitions for double, long double, const void*.
9529         * bits/std_ostream.h: Move op<<'s back into class ostream,
9530         define some in-line.
9531         * bits/string.tcc: fix unnecessary-copying bug in op[], typos in
9532         string construction from input iterators that Brendan reported.
9533
9534
9535 1998-10-28  Brendan Kehoe  <brendan@cygnus.com>
9536
9537         * stl/bits/stl_pair.h (op!=, op>, p<=, op>=): Add missing definitions.
9538
9539         * bits/valarray_meta.h (class _Constant): Move declaration to the
9540         top, so the rest of the file can grok it.
9541         (_ApplyBinaryFunction::operator[]): Add missing parenthesis.
9542
9543         * bits/std_sstream.h (basic_ostringstream::str): Fix typo of extra
9544         semicolon.
9545         (basic_stringstream::str, both instances): Likewise.
9546
9547 1998-10-28 Nathan Myers <ncm@cantrip.org>
9548
9549         * bits/locfacets.h: fix num_put<>::falsename()
9550         * bits/locfacets.tcc: fix _Format_cache<>::_M_populate bool name init
9551         * testsuite/27/27octfmt.C, testsuite/27/27octfmt.C: new tests
9552         * bits/locfacets.tcc: touch up _S_group_digits.
9553         * src/misc-inst.cc: adjust _S_group_digits insts to match.
9554
9555 1998-10-27 Nathan Myers <ncm@cantrip.org>
9556
9557         * stl/bits/stl_config.h: Turn off long long support, for now.
9558         * src/locale-inst.cc: Instantiate num_put<> only for
9559         ostreambuf_iterator, num_get only for istreambuf_iterator.
9560         * src/misc-inst.cc: Delete duplicate locale-related instantiations,
9561         add lots of new instantiations for num_put support function templates;
9562         remove junk about __match_parallel for ostreambuf_iterator.
9563
9564 1998-10-27 Nathan Myers <ncm@cantrip.org>
9565
9566         * bits/locfacets.tcc: Make num_put's digit grouping work.
9567         * bits/string.tcc: More uglification.
9568         * src/ios.cc: initialize format cache right
9569
9570 1998-10-26 Nathan Myers <ncm@cantrip.org>
9571
9572         * bits/basic_string.h: Uglify more names.
9573         * bits/fstream.tcc: Rewrite some filebut output handling.
9574         * bits/ios_base.h: Cosmetic.
9575         * bits/locfacets.h: Changes to _Format_cache for support of num_put.
9576         Also, specialize its default ctor for optimal default case.
9577         #ifdef out "long long" prototypes for now.
9578         * bits/locfacets.tcc: Do complete, optimized num_put<>::do_put
9579         implementation for integer types.  (Still needs optimized
9580         std::copy() applied to ostreambuf_iterator to be optimal.)
9581         * bits/ostream.tcc: Write operator<< for long, bool types.
9582         Make other operators<< non-members, per spec.  (Many still
9583         not implemented.)  Identify those that fail to create a sentry.
9584         * bits/sbuf_iter: Cosmetic.
9585         * bits/std_fstream.h: Add some filebuf members.
9586         * bits/std_locale.h: Include <limits> for use in bits/locfacets.h
9587         * bits/std_ostream.h: Make member operators<< global, per spec.
9588         (Should do the same in std_istream.h.)
9589         * bits/std_string.h: Include <limits> for use in bits/locfacets.h
9590         * bits/string.tcc: Uglify names
9591         * shadow/bits/std_cstdlib.h: Optimize std::div and std::ldiv.
9592         * src/ios.cc: Specialize _Format_cache<> for char and wchar_t,
9593         for optimal default behavior.
9594
9595 1998-10-26  Benjamin Kosnik  <bkoz@loony.cygnus.com>
9596
9597         * src/Makefile.in (libstdc___la_SOURCES): Add misc-inst.cc again.
9598
9599 1998-10-21 Nathan Myers <ncm@cantrip.org>
9600
9601         * src/locale.cc: make ctype operations actually work for glibc
9602         * CHECKLIST: add a comprehensive (i.e. huge) implementation
9603         checklist of stdlib facilities.  Not filled in yet.
9604
9605 1998-10-20 Nathan Myers <ncm@cantrip.org>
9606
9607         * bits/string.tcc: fix patching NULs on string ends.
9608
9609 1998-10-19 Nathan Myers <ncm@cantrip.org>
9610
9611         * bits/std_iosfwd.h: eliminate "basic_" prefix on streambuf
9612         iterator forward declarations
9613         * bits/sbuf_iter.h: eliminate default template argument definitions
9614         on streambuf iterators (rely on <iosfwd> decls).
9615         * TODO: add note about lazy facet construction
9616         * bits/basic_ios.h: hit operator void* again.  This should be the
9617         last time we need to touch it.
9618         * bits/basic_ios.h: copyfmt now returns *this.
9619         * bits/basic_string.h: fix npos again.  npos cannot be defined as zero.
9620         * bits/basic_string.h: put back overloaded constructors; adjust
9621         behavior for default allocator on copy constructor.
9622         * bits/char_traits.h: make not_eof return correct type.
9623         * bits/loccore.h: remove call to bits/std_stdexcept.h; subincludes
9624         cannot be in non-standard headers or we get include loops (bad)
9625         * bits/loccore.h: delete ifdef'd out workarounds for old compiler bugs.
9626         * bits/loccore.h: add apparatus to support lazy construction of
9627         facets.
9628         * bits/locfacets.tcc: Uglify names in __match_parallel decl.
9629         * bits/std_ios.h: add include of <typeinfo> to get bad_cast for
9630         locale use_facet<> failure.
9631         * bits/std_locale.h: same.
9632         * bits/std_string.h: same.
9633         * bits/std_stdexcept.h: change exception member __msg from a
9634         reference to a regular object.
9635         * bits/string.tcc: add pasting a NUL on the end of strings after
9636         each operation. We had already left room for it, but previously
9637         plugged it only on a call to c_str(), but the WG changed the
9638         requirement when I wasn't looking.  (Can't leave them alone for
9639         a second without they break something else.)
9640         * bits/valarray_meta.h: add Gaby's changes from 981018.
9641         * src/locale.cc: add new type _Bad_use_facet to be thrown on
9642         failure of use_facet<>().
9643         * src/stdexcept.cc: remove pragma, remove bkoz's #if 0,
9644         comment out leftover member definitions
9645
9646 1998-10-16  Ulrich Drepper  <drepper@cygnus.com>
9647
9648         * string/Makefile.am: Revert last change.
9649         * math/Makefile.am: Likewise.
9650
9651 1998-10-15  Benjamin Kosnik  <bkoz@haight.constant.com>
9652
9653         * bits/std_sstream.h: Fix typo.
9654
9655 1998-10-15  Benjamin Kosnik  <bkoz@haight.constant.com>
9656
9657         * src/Makefile.am (libstdc___la_SOURCES): Add misc-inst.cc.
9658
9659         * bits/std_sstream.h: Add typedefs, member definitions. Clean.
9660         * bits/std_stdexcept.h: Remove.
9661
9662 1998-10-15  Benjamin Kosnik  <bkoz@haight.constant.com>
9663
9664         * src/misc-inst.cc: Tweak again.
9665
9666         * bits/std_sstream.h: Move out-of-line definitions to sstream.tcc.
9667         * bits/sstream.tcc: New file.
9668
9669 1998-10-15  Ulrich Drepper  <drepper@cygnus.com>
9670
9671         * configure.in: Test for machine/param.h, sys/machine.h and fp.h.
9672         Don't run AC_C_BIGENDIAN if machine/param.h or sys/machine.h are
9673         available.
9674
9675         * math/mathconf.h: Include sys/machine.h, machine/param.h and fp.h
9676         if available.
9677         (INFINITE_P): Use IS_INF macro if available.
9678
9679 1998-10-15  Ulrich Drepper  <drepper@cygnus.com>
9680
9681         * math/Makefile.am (EXTRA_LTLIBRARIES): Renamed from
9682         noinst_LTLIBRARIES.
9683         * string/Makefile.am: Likewise.
9684
9685 1998-10-15  Ulrich Drepper  <drepper@cygnus.com>
9686
9687         * configure.in (AC_CHECK_FUNCS): Add finite, qfinite, fpclass, and
9688         qfpclass.
9689         (AC_CHECK_HEADERS): Add machine/endian.h.  If no header specifying
9690         endianess is available run AC_C_BIGENDIAN.
9691
9692         * math/clog10l.c: Add ugly hack around bug in Irix 6.2 header until
9693         fixincludes is fixed.
9694         * math/clogl.c: Likewise.
9695         * math/csqrtl.c: Likewise.
9696         * math/mycabsl.c: Likewise.
9697
9698         * math/mathconf.h: Include machine/endian.h if possible.  If no
9699         header describing endianess is available rely on WORDS_BIGENDIAN
9700         macro.
9701         (FINITE_P, FINITEF_P, FINITEL_P): Use finite functino if available.
9702         (INFINITE_P, INFINITEF_P, INFINITEL_P): Use fpclass function if
9703         available.
9704
9705         * src/complex.cc (polar): Don't use sincos on OSF machines.
9706
9707 1998-10-09  Benjamin Kosnik  <bkoz@loony.cygnus.com>
9708
9709         * src/locale-inst.cc: Don't instantiate time_get for
9710         ostreambuf_iterators as time_get::do_get_weekday and
9711         time_get::do_get_monthname use __match_parallel, which is illegal
9712         for ostreambuf_iterators to use, as they don't have operator== or
9713         operator!=.
9714         * bits/std_stdexcept.h: Add dtor definitions.
9715         Use stl/bits/std_stdexcept.h instead of this file?
9716         * bits/sbuf_iter.h : Tweak.
9717         * src/misc-inst.cc: Tweak.
9718
9719 1998-10-09  Benjamin Kosnik  <bkoz@haight.constant.com>
9720
9721         * bits/std_stdexcept.h: New file.
9722         * src/stdexcept.cc: Define the following:
9723         logic_error::what()
9724         runtime_error::what()
9725
9726         * src/misc-inst.cc: New file.
9727         * src/Makefile.in (libstdc___la_SOURCES): Add misc-inst.cc.
9728         (libstdc___la_OBJECTS): Add misc-inst.lo.
9729
9730         * bits/basic_string.h: Disable non-standard ctor declarations.
9731         * bits/string.tcc: Disable definitions as well.
9732         * src/string.cc: Disable <ios> dependancies.
9733         * bits/sbuf_iter.h (std): Add default to template parameter for
9734         ostreambuf_iterator and istreambuf_iterator.
9735         * bits/std_iosfwd.h: Change istreambuf_iterator to
9736         basic_istreambuf_iterator. Likewise for ostreambuf.
9737         * bits/locfacets.tcc (__match_parallel): Fix typo.
9738         * src/ios.cc (imbue): Remove the _G_HAVE_LOCALE guards around
9739         ios_base::imbue.
9740         * bits/std_streambuf.h: Define _Streambuf_base::getloc().
9741         * bits/std_istream.h: Define the following:
9742         get (basic_streambuf<char_type,_Traits>& __sb, char_type __delim)
9743         get (char_type* __s, streamsize __n, char_type __delim);
9744         getline (char_type* __s, streamsize __n, char_type __delim)
9745         * bits/loccore.h : FIXME friend template code for use_facet.
9746         Add std_stdexcept.h include so that range_error will be defined.
9747         Add explicit conversion to string for range_error throws. (HACK?)
9748
9749 1998-10-8  Ulrich Drepper  <drepepr@cygnus.com>
9750
9751         * configure.in: Check for sincos, sincosf, and sincosl.
9752         * src/complex.cc (polar): Use sincos if available.
9753
9754         * bits/c++config.h: Fix hack to get LONG_LONG* definitions on Linux.
9755         * stl/bits/std_limits.h: Include bits/c++config.h.  HACK!!!
9756
9757         * math/clog10.c: Fix typo (FP_INIFITE_P -> INFINITE_P).
9758
9759         * math/cpow.c: Use c_log, not clog.
9760         * math/cpowf.c: Likewise.
9761         * math/cpowl.c: Likewise.
9762
9763         * math/cexp.c: Remove unused fpclassify calls.  Use FINITE_P instead
9764         of isfinite call.
9765
9766         * math/mathconf.h (FINITE_P, FINITEF_P, FINITEL_P): Define using
9767         isfinite macro if it is available.
9768         (INFINITE_P, INFINITEF_P, INFINITEL_P): Define using isinf macro.
9769
9770         * math/ccosf.c: Use appropriate test macros for this type.
9771         * math/ccoshf.c: Likewise.
9772         * math/ccoshl.c: Likewise.
9773         * math/ccosl.c: Likewise.
9774         * math/cexpf.c: Likewise.
9775         * math/cexpl.c: Likewise.
9776         * math/clog10f.c: Likewise.
9777         * math/clog10l.c: Likewise.
9778         * math/clogf.c: Likewise.
9779         * math/clogl.c: Likewise.
9780         * math/csinf.c: Likewise.
9781         * math/csinhf.c: Likewise.
9782         * math/csinhl.c: Likewise.
9783         * math/csinl.c: Likewise.
9784         * math/csqrtf.c: Likewise.
9785         * math/csqrtl.c: Likewise.
9786         * math/ctanf.c: Likewise.
9787         * math/ctanhf.c: Likewise.
9788         * math/ctanhl.c: Likewise.
9789         * math/ctanl.c: Likewise.
9790
9791 1998-10-06  Benjamin Kosnik  <bkoz@bliss.nabi.net>
9792
9793         * bits/basic_ios.h: Fix previous change.
9794
9795 1998-10-06  Benjamin Kosnik  <bkoz@bliss.nabi.net>
9796
9797         * bits/basic_ios.h: Add const_cast<basic_ios&>
9798         (operator void*): As per 5.2.9 p 2, make sure static_cast is
9799         well-formed.
9800         * bits/char_traits.h: No _CharT for specialization, change to 0.
9801         * bits/basic_string.h: As per 9.4.2 p4, initialize with
9802         constant-initializer.
9803         * bits/locfacets.tcc: Add template parameter to initialization list.
9804
9805 1998-10-02  Benjamin Kosnik  <bkoz@loony.cygnus.com>
9806
9807         * bits/basic_string.h: Should just be <, not <=.
9808
9809 1998-10-01  Benjamin Kosnik  <bkoz@bliss.nabi.net>
9810
9811         * bits/string.tcc (compare): Fix for strings that are similar, but
9812         not the same length.
9813
9814 1998-09-04  Brendan Kehoe  <brendan@cygnus.com>
9815
9816         * bits/c++config.h: For __linux__, define _GNU_SOURCE.  This is
9817         required for us to get LONG_LONG_{MIN,MAX} out of gcc's limits.h.
9818         We can't check for __GLIBC__ here, since this header can be read
9819         before any system one (that would lead to features.h) being used.
9820
9821         * stl/bits/stl_config.h (__STL_LONG_LONG): Re-enabled
9822
9823         * stl/bits/std_limits.h [__STL_LONG_LONG]: Fix usage to use
9824         LONG_LONG_MIN, LONG_LONG_MAX, and ULONG_LONG_MAX.
9825
9826         * stl/bits/stl_config.h: Don't do __STL_LONG_LONG, it uses
9827         LONGLONG_{MIN,MAX} which I can't find the origin of.
9828
9829 1998-09-03  Brendan Kehoe  <brendan@cygnus.com>
9830
9831         * stl/bits/stl_iterator.h: Add extern decl of cin for now; where
9832         should this come from, if not iostream.h?
9833         (class istream_iterator): Make the new operator!= a friend also.
9834
9835         * stl/bits/stl_config.h: Define __STL_HAS_WCHAR_T,
9836         __STL_MEMBER_TEMPLATE_CLASSES, and __STL_LONG_LONG.  Don't include
9837         _G_config.h like the egcs one does.
9838
9839 1998-09-01  Brendan Kehoe  <brendan@cygnus.com>
9840
9841         * bits/string.tcc: Call `_M_destroy' instead of `destroy'.
9842
9843         * bits/valarray_meta.h: Throughout, rename _Expr typedefs to be
9844         _Expr1 (or _Expr_def if it's taken), and change definitions.
9845         Avoids redecl of the template parm.
9846
9847         * bits/string.tcc (basic_string copy ctor): Fix typo in declaration.
9848         (operator>>): Initialize __ERROR with ios_base::goodbit, not 0.
9849
9850         * bits/std_streambuf.h (_POSIX_SOURCE): Only define if it's not
9851         already done.
9852
9853         * src/locale-inst.cc: New file, **TOTAL HACK**.  There has GOT to
9854         be a better way to do this.
9855
9856         * src/stlinst.cc: New file.
9857
9858         * BUGS: New file, with various discovered bugs that need to be
9859         fixed.
9860
9861         * Makefile.in, math/Makefile.in, string/Makefile.in,
9862         src/Makefile.in: Reran automake.
9863
9864         Workarounds, these may not all be the final fixes:
9865
9866         * bits/basic_ios.h (class basic_ios): Make _M_strbuf be protected,
9867         not private, for basic_istream::get() in std_istream.h to be able
9868         to use it.
9869         (basic_ios::operator void*): Don't use static_cast for the false
9870         case.
9871         (basic_ios::copyfmt): Fix `rhs.except' to be `rhs.exceptions ()'.
9872         This appears to have been in sep94, but didn't get corrected
9873         afterwards.
9874
9875         * bits/basic_string.h (npos): Don't init here.
9876         * bits/string.tcc: Instead, do initialization here, to -1 instead
9877         of the size_type destructor.
9878
9879         * src/traits.cc, src/wtraits.cc: New files.
9880         * bits/char_traits.h: For char_traits<char> and
9881         char_traits<wchar_t>, declare static, but define over in the src
9882         files.
9883
9884         * bits/gslice.h: Comment out forward decls of _Array, valarray,
9885         gslice_array, and _GsliceExpression.
9886
9887         * bits/std_cstdio.h [__sparc__ && __svr4__]: #undef all of
9888         clearerr, feof, ferror, getc, getchar, putc, putchar, stdin,
9889         stdout, and stderr.  Note we do get unresolved refs to stdin, but
9890         that'll get fixed by the "true" solution.
9891
9892         * bits/std_ios.h: Include <bits/std_streambuf.h> to get the
9893         definition of basic_streambuf.h, which is used in basic_ios.h to
9894         call pubimbue.
9895
9896         * bits/std_streambuf.h: Don't include libio.h for now.
9897         (class basic_streambuf): Define missing methods pubimbue and
9898         getloc.
9899
9900         * src/Makefile.am (libstdc___la_SOURCES): Add stdexcept.cc,
9901         ios.cc, os_raw.cc, stdstreams.cc, locale.cc, localename.cc,
9902         locale-inst.cc, stlinst.cc, traits.cc, wtraits.cc.
9903
9904         * src/ios.cc: Instantiate basic_ios<char> and basic_ios<wchar_t>.
9905
9906         * src/locale.cc: Come up with munged versions of _S_toupper,
9907         _S_tolower, and _S_table instead of the glibc-specific ones, so
9908         they're at least defined, if not necessarily usable.  The glibc
9909         ones on any other system will yield unresolved refs to
9910         __ctype_{b,toupper,tolower}.
9911
9912         * src/string.cc: Define all of ADDCS, ADDPS, et al.  Add
9913         basic_ios, basic_istream, basic_ostream.  Don't do char_traits
9914         anymore cuz of the explicit specialization in char_traits.h.
9915         Also add _S_string_copy, but this doesn't fix it -- cf the BUGS
9916         file for the details.
9917
9918         * stl/bits/stl_algobase.h (equal): Fix to do `! (x==y)'.
9919         * stl/bits/stl_iterator.h (__distance): Likewise.
9920
9921         * stl/bits/stl_iterator.h: As with 8/18 set, define missing op!=,
9922         op>, op<=, and op>= for reverse_iterator.  Also add op!= for
9923         istream_iterator.
9924
9925 1998-08-26  Brendan Kehoe  <brendan@cygnus.com>
9926
9927         * bits/string.tcc (basic_string::compare (const char*)): Fix to
9928         return 0, not 1.
9929
9930 1998-08-25  Brendan Kehoe  <brendan@cygnus.com>
9931
9932         This should really be fixed with __asm__ directives renaming the
9933         symbol, but keeping the function.
9934         * math/clogf.c (c_logf): Renamed from `clogf'.
9935         * math/clogl.c (c_logl): Renamed from `clogl'.
9936         * math/complex-stub.h (c_logf, c_logl): Change decls.
9937
9938         * bits/locfacets.h (class _Numeric_get): For friend decls, rename
9939         _CharT and _InIter parms, since they duplicate the enclosing ones.
9940
9941 1998-08-19  Brendan Kehoe  <brendan@cygnus.com>
9942
9943         Deal with conflict of the iostreams `clog' and our internal
9944         complex number `clog'.
9945         * src/complex.cc: Call `c_log' instead of `clog'.
9946         * math/clog.c (c_log):: Renamed from clog.
9947         * math/complex-stub.h (c_log): Renamed from clog decl.
9948
9949         * bits/locfacets.h (class _Numeric_get): Tweak fwd decls of the
9950         get/put classes.
9951         (num_put::put): #if 0 long long version, since we don't declare or
9952         define the long long version of do_put.
9953
9954 1998-08-18 Nathan Myers <ncm@cantrip.org>
9955
9956         * bits/basic_string.h: add basic_string<>::push_back(), fix return
9957         type of get_allocator (thanks to Ryszard Kabatek).
9958         * bits/char_traits.h: make init order of fpos<> members
9959         match decl order.
9960         * bits/ios_base.h: fix decls of ios_base bitmask & enum types, add
9961         flags _S_fd_in etc. for special filebuf ctor.
9962         * bits/locfacets.h: make _Numeric_get and _Format_cache public
9963         to work around problems in friend declarations.
9964         * bits/locfacets.tcc: qualify _S_get_cache in num_get<>::get(..bool&),
9965         fix random type errors & typos
9966         * bits/std_fstream.h: major refitting to bypass libio (for now),
9967         instrument to use bits/fstream.tcc template definitions
9968         * bits/std_iosfwd.h: mess with wrappers
9969         * bits/std_istream.h: remove meaningless comment
9970         * bits/std_ostream.h: instrument to work with ostream.tcc.
9971         * bits/std_streambuf.h: instrument to work with streambuf.tcc
9972         * bits/fstream.tcc: template defs for <fstream>
9973         * bits/ostream.tcc: template defs for <ostream>
9974         * bits/streambuf.tcc: template defs for <streambuf>
9975         * bits/os_raw.h: thin OS interface wrapper, to bypass libio (for now).
9976         * Delete .cc files, replace with bits/*.tcc
9977         src/fstream.cc
9978         src/istream.cc
9979         src/ostream.cc
9980         src/streambuf.cc
9981         * Add files:
9982         src/os_raw.cc: thin interface to OS, to bypass libio (for now).
9983         src/stdstreams.cc: cout, cin, etc. definitions
9984         (these still need work: must be init'd before user statics.)
9985
9986
9987 1998-08-18  Brendan Kehoe  <brendan@cygnus.com>
9988
9989         Sent to SGI before checkin:
9990         * stl/bits/stl_vector.h (operator!=, operator>, operator<=,
9991         operator>=): Define.
9992         * stl/bits/stl_bvector.h (vector<bool>::flip): Define method.
9993         * stl/bits/stl_deque.h (operator!=, operator>, operator<=,
9994         operator>=): Define.
9995         (operator==, operator<): Add inline.
9996         * stl/bits/stl_map.h (operator!=, operator<, operator<=,
9997         operator>=): Define.
9998         * stl/bits/stl_multimap.h (operator!=, operator<, operator<=,
9999         operator>=): Define.
10000         * stl/bits/stl_list.h (operator!=, operator<, operator<=,
10001         operator>=): Define.
10002         * stl/bits/stl_set.h (operator!=, operator<, operator<=,
10003         operator>=): Define.
10004         * stl/bits/stl_multiset.h (operator!=, operator<, operator<=,
10005         operator>=): Define.
10006
10007         * bits/std_valarray.h (_Shift_left, _Shift_right): Inherit from
10008         unary_function.
10009
10010 1998-08-15 Nathan Myers <ncm@cantrip.org>
10011
10012         * bits/ios_base.h: change nominal bitmask and enum types to real enums
10013         * bits/locfacets.h: make _Format_cache bool names usable by num_get
10014         * bits/locfacets.tcc: make num_get<>::get(... bool&) use _Format_cache
10015         * bits/std_fstream.h: minor cleanups: ctors delegate to open()
10016         * bits/std_iosfwd.h: more bitmask changes, for ios_base::iostate
10017         * bits/std_sstream.h: formatting cleanups
10018
10019 1998-08-14 Nathan Myers <ncm@cantrip.org>
10020
10021         * bits/locfacets.tcc: implement num_get<>::do_get(..., bool&)
10022         * bits/locfacets.tcc: implement time_get<>::do_get_weekday
10023         * bits/locfacets.tcc: implement time_get<>::do_get_monthname
10024         * bits/locfacets.h:   fix missing argument in do_get_monthname
10025         (this is a bug in the standard, ref. 36 in my list.)
10026         * bits/locfacets.h: make month and day name caches mutable
10027         * bits/locfacets.tcc: various typos in get() functions
10028         * bits/sbuf_iter.h: fix omission in istreambuf_iterator::op++().
10029         * bits/std_streambuf.h: fix typo in sgetn (Brendan)
10030
10031 1998-08-12 Nathan Myers <ncm@cantrip.org>
10032         * move streambuf iterators to bits/sbuf_iter.h
10033         * optimize streambuf iterators
10034         * begin generalizing streambuf
10035         * begin implementing num_get<>::get (starting with bool)
10036         * patch stl/bits/stl_config.h so that relops operators are
10037         contained properly, out of the way.
10038
10039 1998-07-24 Nathan Myers <ncm@cantrip.org>
10040         * Fold in SGI 3.11 changes (uglified names, some algorithm
10041           improvements, very minor bug fixes.)
10042         * Uglify names elsewhere to match (s/_T/_Tp/).
10043         * Begin work on optimized streambuf
10044         * Put complex.cc in namespace std:: (thanks Martin)
10045
10046 1998-07-17 Nathan Myers <ncm@cantrip.org>
10047
10048         * bits/char_traits.h: add _Char_traits_match template.
10049         * bits/string.tcc: fix bugs in various find_last* members.
10050         * bits/basic_string.h: redeclare member _S_find.
10051         * stl/bits/stl_iterator.h: change member names in nonstandard
10052           templates bidirectional_reverse_iterator and
10053           random_access_reverse_iterator to match expected changes
10054           in upstream source.
10055         * src/string.cc: fix definitions of stream operators.
10056
10057 1998-07-14 16:06  Ulrich Drepper  <drepper@cygnus.com>
10058
10059         * Makefile.am (SUBDIRS): Add string.
10060
10061         * configure.in: Test for long double functions separately.  Test for
10062         ISO C 89 float functions.  Test for endian.h and sys/isa_defs.h.
10063         Generate string/Makefile.
10064
10065         * bits/c++config.h: Define mbstate_t for Solaris.
10066
10067         * bits/char_traits.h: Remove unused #if.
10068
10069         * bits/std_cwchar.h: Declare wide char string functions.
10070
10071         * m4/stringfcts.m4: New file.
10072
10073         * math/complex-stub.h: Declare nan.
10074         * math/nan.c: New file.
10075
10076         * math/mathconf.h: Hack around missing endian.h file.
10077         Handle missing NAN definition.
10078         Handle missing float math functions.
10079
10080         * src/Makefile.am (libstdc___la_LIBADD): Add libstring.la.
10081         (libstdc___la_LDFLAGS): Set version information.
10082
10083         * src/complexl.cc: Don't compile any code if no long double functions
10084         are available.
10085
10086         * string/Makefile.am: New file.
10087         * string/dummy.c: New file.
10088         * string/wmemchr.c: New file.
10089         * string/wmemcmp.c: New file.
10090         * string/wmemcpy.c: New file.
10091         * string/wmemmove.c: New file.
10092         * string/wmemset.c: New file.
10093
10094 1998-07-14 10:45  Ulrich Drepper  <drepper@cygnus.com>
10095
10096         * configure.in: Make it work.
10097         * install-sh: New file.
10098         * missing: New file.
10099         * mkinstalldirs: New file.
10100         * m4/mathfcts.m4: New file.
10101         * math/Makefile.am: New file.
10102
10103         * bits/std_complex.h (conj): Mark specializations as inline.
10104
10105         * math/carg.c: New file.
10106         * math/cargf.c: New file.
10107         * math/cargl.c: New file.
10108         * math/mycabs.c: New file.
10109         * math/mycabsf.c: New file.
10110         * math/mycabsl.c: New file.
10111         * math/signbit.c: New file.
10112         * math/signbitf.c: New file.
10113         * math/signbitl.c: New file.
10114
10115         * math/ccos.c: Avoid ISO C 9x functionality.
10116         * math/ccosf.c: Likewise.
10117         * math/ccosh.c: Likewise.
10118         * math/ccoshf.c: Likewise.
10119         * math/ccoshl.c: Likewise.
10120         * math/ccosl.c: Likewise.
10121         * math/cexp.c: Likewise.
10122         * math/cexpf.c: Likewise.
10123         * math/cexpl.c: Likewise.
10124         * math/clog.c: Likewise.
10125         * math/clog10.c: Likewise.
10126         * math/clog10f.c: Likewise.
10127         * math/clog10l.c: Likewise.
10128         * math/clogf.c: Likewise.
10129         * math/clogl.c: Likewise.
10130         * math/cpow.c: Likewise.
10131         * math/cpowf.c: Likewise.
10132         * math/cpowl.c: Likewise.
10133         * math/csin.c: Likewise.
10134         * math/csinf.c: Likewise.
10135         * math/csinh.c: Likewise.
10136         * math/csinhf.c: Likewise.
10137         * math/csinhl.c: Likewise.
10138         * math/csinl.c: Likewise.
10139         * math/csqrt.c: Likewise.
10140         * math/csqrtf.c: Likewise.
10141         * math/csqrtl.c: Likewise.
10142         * math/ctan.c: Likewise.
10143         * math/ctanf.c: Likewise.
10144         * math/ctanh.c: Likewise.
10145         * math/ctanhf.c: Likewise.
10146         * math/ctanhl.c: Likewise.
10147         * math/ctanl.c: Likewise.
10148
10149         * math/complex-stub.h: New file.
10150
10151         * math/mathconf.h: New file.
10152
10153         * src/Makefile.am: New file.
10154
10155         * src/complex.cc: Use mathconf.h instead of complex.h.
10156         Don't use cabs, always use __mycabs.
10157
10158 1998-02-13  Brendan Kehoe  <brendan@cygnus.com>
10159
10160         * iterator (class reverse_iterator): Do some tweaks to be in sync
10161         w/ the FDIS.