OSDN Git Service

2004-03-23 Benjamin Kosnik <bkoz@redhat.com>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog-2000
1 2000-12-31  Alexandre Oliva  <aoliva@redhat.com>
2
3         * include/c_std/bits/std_cstdlib.h (mblen): Protect against macro.
4
5 2000-12-23  Benjamin Kosnik  <bkoz@redhat.com>
6
7         * src/Makefile.am (CSTD_INCLUDES): Change from CSHADOW_INCLUDES.
8         (strstream.cc): Add special rule for deprecated files.
9         * libsupc++/Makefile.am (INCLUDES): Sync.
10         * acinclude.m4 (GLIBCPP_EXPORT_INCLUDES): And here.
11
12         Reported by Fred Fish  <fnf@ninemoons.com>
13         * include/backward/iomanip.h: Remove backward from include
14         * include/backward/strstream.h: Same.
15         * include/backward/stream.h: Same.
16         * include/backward/ostream.h: Same.
17         * include/backward/istream.h: Same.
18         * src/strstream.cc: And here.
19
20         Reported by  Brad Garcia  <bgarcia@laurelnetworks.com>
21         * src/string-inst.cc (_S_find): Use generic template.
22         * include/bits/string.tcc (_S_find): Remove specializations
23         
24 2000-12-22  Benjamin Kosnik  <bkoz@fillmore.redhat.com>
25
26         Attempt to make locale visible in gdb.
27         * include/bits/std_locale.h: Remove codecvt.h include.
28         * include/bits/locale_facets.h: Add here, after ctype decls.
29         * include/bits/codecvt.h: Remove std namespace, as assumed to be
30         in std now.
31
32         * include/bits/locale_facets.h: Consistently move generic static
33         member definitions directly after generic facet declarations.
34         * include/bits/locale_facets.tcc: From here.
35
36         * src/locale.cc: Organize locale::id static definitions for
37         required facets.
38         * src/codecvt.cc (codecvt<char...>): Remove locale::id definition.
39         (codecvt<wchar_t...>): Same.
40         * src/localename: And here.
41         
42         * include/bits/localefwd.h (_Count_ones): Change _S_count to _M_count.
43         Same for _M_halfcount.
44
45 2000-12-22  Alexandre Oliva  <aoliva@redhat.com>
46
47         * mknumeric_limits: Output to temporary files, and rename them at
48         the end.
49
50 2000-12-21  Benjamin Kosnik  <bkoz@redhat.com>
51
52         * configure.in: Change GLIBCPP_ENABLE_SHADOW to
53         GLIBCPP_ENABLE_CHEADERS.
54         * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Change to
55         ENABLE_CHEADERS.  C_INCLUDE_DIR defaults to c_std from c. 
56         * aclocal.m4: Regenerate.
57         * configure: Regenerate.
58         * include/c: Move to ...
59         * include/c_std: ...here.
60         * include/c_std: Move to ...
61         * include/c_shadow: ...here.
62         * include/c: Repopulate, with simple headers.
63         * docs/html/configopts.html: Adjust docs.
64         
65 2000-12-21  Joseph S. Myers  <jsm28@cam.ac.uk>
66
67         * acinclude.m4, configure.in, mkcheck.in,
68         testsuite/21_strings/ctor_copy_dtor.cc,
69         testsuite/21_strings/inserters_extractors.cc,
70         testsuite/23_containers/map_operators.cc,
71         testsuite/23_containers/vector_element_access.cc,
72         testsuite/25_algorithms/lower_bound.cc,
73         testsuite/27_io/ifstream_members.cc,
74         testsuite/27_io/istream_extractor_arith.cc,
75         testsuite/27_io/istream_unformatted.cc,
76         testsuite/27_io/ofstream_members.cc,
77         testsuite/27_io/ostream_inserter_char.cc,
78         testsuite/27_io/ostream_inserter_other.cc,
79         testsuite/27_io/ostream_manip.cc, testsuite/27_io/streambuf.cc:
80         Change sourceware.cygnus.com and sources.redhat.com URLs for
81         libstdc++ web pages and list archives to point to gcc.gnu.org
82         * aclocal.m4, configure: Regenerate.
83
84 2000-12-21  Gabriel Dos Reis  <gdr@codesourcery.com>
85
86         * src/Makefile.am (sources): Remove complex.cc, complexf.cc and
87         complexl.cc from list.
88         * src/Makefile.in: Regenerate.
89         * src/complex.cc: Remove.
90         * src/complexf.cc: Likewise.
91         * src/complexl.cc: Likewise.
92
93         * libmath/Makefile.am (EXTRA_LONG_DOUBLE_yes): Remove csqrtl.c
94         (EXTRA_DIST): Remove csqrt.c and csqrtf.c.
95         * libmath/Makefile.in: Regenerate.
96         * libmath/complex-stub.h: Remove.
97         * libmath/csqrt.c: Likewise.
98         * libmath/sqrtf.c: Likewise.
99         * libmath/sqrtl.c: Likewise.
100         * libmath/mathconf.h: Remove <complex.h> and "complex-stub.h"
101         #inclusion. 
102         
103         * include/bits/std_complex.h (sqrt<>): Define primary template.
104         (complex<>): Remove sqrt friend declarations.
105
106         * configure.in: Initialize with src/ios.cc.
107         * configure: Regenerate.
108         * acinclude.m4: Remove check for csqrt* and <complex.h>
109         * aclocal.m4: Regenerate.
110         * config.h.in: Regenerate.
111         * Makefile.in: Regenerate.
112
113 2000-12-20  Phil Edwards  <pme@sources.redhat.com>
114
115         * acinclude.m4 (SECTION_FLAGS, OPT_LDFLAGS):  Fix minor thinko.
116         * aclocal.m4:  Regenerate.
117         * configure:  Ditto.
118         * Makefile.in:  Ditto.
119         * libio/Makefile.in:  Ditto.
120         * libmath/Makefile.in:  Ditto.
121         * libsupc++/Makefile.in:  Ditto.
122         * src/Makefile.in:  Ditto.
123
124         * include/bits/istream.tcc:  Fix clause reference in comment.
125
126 2000-12-20  Benjamin Kosnik  <bkoz@fillmore.constant.com>
127
128         * testsuite/17_intro/headers_c.cc (main): New file.
129
130         * acinclude.m4 (SECTION_FLAGS): Only set if --enable-debug is not
131         passed.
132         (OPT_LDFLAGS): And here.
133         * aclocal.m4: Regenerate.
134         * configure: Regenerate.
135         
136 2000-12-19  Curtis Janssen  <cljanss@ca.sandia.gov>
137
138         * src/ios.cc (ios_base::_M_grow_words(int ix)): Fix libstdc++/1089.
139         * testsuite/27_io/ios_base_storage.cc (test01): New file.
140
141 2000-12-19  Benjamin Kosnik  <bkoz@fillmore.constant.com>
142
143         * configure.in: Don't turn on long long by default.
144         (gxx_target_include_dir): Adjuse comment.
145         * configure: Regenerate.
146         * include/c/bits/std_cstdio.h: Remove c++config.h include.
147         * src/locale.cc: Formatting tweaks.
148         * testsuite/22_locale/ctype.cc (char<unsigned char>): Provide
149         member functions.
150
151 2000-12-19  Loren J. Rittle  <ljrittle@acm.org>
152
153         * testsuite/22_locale/ctype.cc (test01): Correct ~ operator usage.
154
155 2000-12-19  Mark Kettenis  <kettenis@gnu.org>
156
157         * configure.target: Support the Hurd.
158
159 2000-12-19  Benjamin Kosnik  <bkoz@fillmore.redhat.com>
160
161         * config/os/solaris/solaris2.5/bits/ctype_inline.h (is): Same.
162         * config/os/solaris/solaris2.6/bits/ctype_inline.h (is): Same.
163         * config/os/solaris/solaris2.7/bits/ctype_inline.h (is): Same.
164         * config/os/newlib/bits/ctype_inline.h (is): Same.
165         * config/os/irix/bits/ctype_inline.h (is): Same.
166         * config/os/bsd/netbsd/bits/ctype_inline.h (is): Same.
167         * config/os/bsd/freebsd/bits/ctype_inline.h (is): Same.
168         * config/os/aix/bits/ctype_inline.h (is): Same.
169         * config/os/gnu-linux/bits/ctype_inline.h (is): Revert.
170         * config/os/generic/bits/ctype_inline.h (is): Non-table based
171         implementation.
172
173         * testsuite/22_locale/ctype_char_members.cc (test01): Use binary
174         operator correctly.
175         (test01): Check 'A' for alnum, upper, alpha.
176
177 2000-12-19  Gabriel Dos Reis  <gdr@codesourcery.com>
178
179         * include/bits/std_complex.h (complex<float>::operator-=): Fix
180         thinko. 
181
182 2000-12-18  Benjamin Kosnik  <bkoz@redhat.com>
183
184         * configure.in: Set os_include_dir for cross_compiles.
185         * configure: Regenerate.
186         * configure.target (l_glibcpp_cxxflags): Don't try to be clever
187         when assigning ATOMICITYH. Only special case the special cases...
188
189 2000-12-18  Joseph S. Myers  <jsm28@cam.ac.uk>
190
191         * docs/html/17_intro/COPYING: Update to current
192         ftp://ftp.gnu.org/pub/gnu/Licenses/COPYING-2.0 (fixes references
193         to 19yy as example year in copyright notice).
194
195 2000-12-15  Benjamin Kosnik  <bkoz@redhat.com>
196
197         * configure.in (gxx_target_include_dir): Install target-dependent
198         include files in a target-dependent place.
199         * configure: Regenerate.
200         * src/Makefile.am: Add in support here.
201         * src/Makefile.in: Regenerate.
202
203 2000-12-14  Benjamin Kosnik  <bkoz@fillmore.redhat.com>
204
205         * src/Makefile.am (myinstallheaders): Install backwards headers in
206         prefix, not prefix/backward.
207         * src/Makefile.in: Regenerate.
208
209 2000-12-14  Benjamin Kosnik  <bkoz@haight.redhat.com>
210
211         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Revert changes
212         touching copysignf, atan2f, expf.
213         (GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT): Add it back here.
214         * aclocal.m4: Regenerate.
215         * configure: Regenerate.
216         
217 2000-12-14  Benjamin Kosnik  <bkoz@fillmore.redhat.com>
218
219         * configure.in (CXX): Exit out if mknumeric_limits fails.
220         * mknumeric_limits (CXX): Use BUILD_DIR/g++, not g++ in
221         path. Consistency with tests_flags.in.
222
223 2000-12-14  Benjamin Kosnik  <bkoz@haight.redhat.com>
224
225         * include/c/bits/*.h: Remove include_next, replace with include,
226         as include_next does not work host-x-host, and include_next not
227         necessary.
228
229 2000-12-13  Benjamin Kosnik  <bkoz@redhat.com>
230
231         * include/bits/locale_facets.h (ctype<char>): Remove throw specs not in
232         base class signature.
233         * config/os/*/bits/ctype_inline.h (is): Same.
234         
235 2000-12-13  Benjamin Kosnik  <bkoz@redhat.com>
236
237         * config/os/generic/bits/ctype_base.h (ctype_base): Consistency
238         with linux.
239         * config/os/generic/bits/ctype_inline.h (is): Same.
240         * config/os/solaris/solaris2.5/bits/ctype_inline.h (is): Same.
241         * config/os/solaris/solaris2.5/bits/ctype_base.h: Same.
242         * config/os/solaris/solaris2.6/bits/ctype_inline.h (is): Same.
243         * config/os/solaris/solaris2.6/bits/ctype_base.h: Same.
244         * config/os/solaris/solaris2.7/bits/ctype_inline.h (is): Same.
245         * config/os/solaris/solaris2.7/bits/ctype_base.h: Same.
246         * config/os/irix/bits/ctype_inline.h (is): Same.
247         * config/os/irix/bits/ctype_base.h (ctype_base): Same.
248         * config/os/aix/bits/ctype_inline.h (is): Same.
249         * config/os/aix/bits/ctype_base.h (ctype_base): Same.
250         * config/os/bsd/netbsd/bits/ctype_inline.h (is): Same.
251         * config/os/bsd/netbsd/bits/ctype_base.h (ctype_base): Same.
252         * config/os/bsd/freebsd/bits/ctype_base.h (ctype_base): Same.
253         * config/os/bsd/freebsd/bits/ctype_inline.h (is): Same.
254         * config/os/newlib/bits/ctype_inline.h (is): Same.
255         * config/os/newlib/bits/ctype_base.h (ctype_base): Same.
256
257         * testsuite/22_locale/ctype_char_members.cc (test01): Add tests, fix.
258         * testsuite/22_locale/ctype.cc (test01): Add tests for
259         ctype_base::mask bitmask features.
260         * src/locale.cc: Define const static data for ctype_base.
261         * config/os/gnu-linux/bits/ctype_base.h (ctype_base): Make
262         ctype_base::mask type an integer type, not an enum.
263         * config/os/gnu-linux/bits/ctype_inline.h (is): Implement correctly.
264         * include/bits/locale_facets.h: Tweaks.
265         
266         * include/bits/ios_base.h: Formatting tweaks.
267
268         * docs/html/17_intro/C++STYLE: Add.
269
270 2000-12-12  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
271
272         * acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Don't link ctype
273         files here...
274         * configure.in: Rather, do it once for all targets here. Clean up
275         canadian cross and cross compile targets for linux-targeted
276         crosses.
277         * configure: Regenerate.
278         * aclocal.m4: Regnerate.
279         * acconfig.h: Add more defines.
280         * config.h.in: Regenerate.
281         
282 2000-12-12  Angela Marie Thomas <angela@cygnus.com>
283
284         * configure.in: Fix case for host-x-linux
285         * configure: Regenerate.
286
287 2000-12-10  Alexandre Petit-Bianco  <apbianco@cygnus.com>
288
289         * src/Makefile.am (libstdc++.INC:): 2000-12-05 reverted to include
290         2000-11-12 hunk.
291         * src/Makefile.in: Rebuilt.
292
293 2000-12-09  Jason Merrill  <jason@redhat.com>
294
295         * testsuite/20_util/auto_ptr.cc (test07): Remove test that tries
296         to copy-initialize an auto_ptr<Base> from an auto_ptr<Derived>; it
297         isn't supposed to work anymore.
298
299 2000-12-09  Phil Edwards  <pme@sources.redhat.com>
300
301         Move the HTML-containing subdirs from 'docs' to 'docs/html'.
302         * README:  Update the locations of instructions.
303         * docs/doxygen/run_doxygen:  New file, stub.
304
305         * docs/Makefile:  Moved...
306         * docs/configopts.html:  Likewise.
307         * docs/documentation.html:  Likewise.
308         * docs/install.html:  Likewise.
309         * docs/lib3styles.css:  Likewise.
310         * docs/17_intro/BADNAMES:  Likewise.
311         * docs/17_intro/BUGS:  Likewise.
312         * docs/17_intro/C++STYLE:  Likewise.
313         * docs/17_intro/CHECKLIST:  Likewise.
314         * docs/17_intro/COPYING:  Likewise.
315         * docs/17_intro/DESIGN:  Likewise.
316         * docs/17_intro/HEADER_POLICY:  Likewise.
317         * docs/17_intro/PROBLEMS:  Likewise.
318         * docs/17_intro/RELEASE-NOTES:  Likewise.
319         * docs/17_intro/TODO:  Likewise.
320         * docs/17_intro/contribute.html:  Likewise.
321         * docs/17_intro/headers_cc.txt:  Likewise.
322         * docs/17_intro/howto.html:  Likewise.
323         * docs/17_intro/libstdc++-assign.txt:  Likewise.
324         * docs/17_intro/organization:  Likewise.
325         * docs/17_intro/porting-howto.html:  Likewise.
326         * docs/18_support/howto.html:  Likewise.
327         * docs/19_diagnostics/howto.html:  Likewise.
328         * docs/20_util/howto.html:  Likewise.
329         * docs/21_strings/gotw29a.txt:  Likewise.
330         * docs/21_strings/howto.html:  Likewise.
331         * docs/21_strings/stringtok_h.txt:  Likewise.
332         * docs/21_strings/stringtok_std_h.txt:  Likewise.
333         * docs/22_locale/codecvt.html:  Likewise.
334         * docs/22_locale/ctype.html:  Likewise.
335         * docs/22_locale/howto.html:  Likewise.
336         * docs/22_locale/locale.html:  Likewise.
337         * docs/23_containers/howto.html:  Likewise.
338         * docs/23_containers/wrappers_h.txt:  Likewise.
339         * docs/24_iterators/howto.html:  Likewise.
340         * docs/25_algorithms/howto.html:  Likewise.
341         * docs/26_numerics/howto.html:  Likewise.
342         * docs/27_io/howto.html:  Likewise.
343         * docs/27_io/iostreams_hierarchy.pdf:  Likewise.
344         * docs/ext/howto.html:  Likewise.
345         * docs/faq/index.html:  Likewise.
346         * docs/faq/index.txt:  Likewise.
347         * docs/html/Makefile:  ...to here.
348         * docs/html/configopts.html:  Likewise.
349         * docs/html/documentation.html:  Likewise.
350         * docs/html/install.html:  Likewise.
351         * docs/html/lib3styles.css:  Likewise.
352         * docs/html/17_intro/BADNAMES:  Likewise.
353         * docs/html/17_intro/BUGS:  Likewise.
354         * docs/html/17_intro/C++STYLE:  Likewise.
355         * docs/html/17_intro/CHECKLIST:  Likewise.
356         * docs/html/17_intro/COPYING:  Likewise.
357         * docs/html/17_intro/DESIGN:  Likewise.
358         * docs/html/17_intro/HEADER_POLICY:  Likewise.
359         * docs/html/17_intro/PROBLEMS:  Likewise.
360         * docs/html/17_intro/RELEASE-NOTES:  Likewise.
361         * docs/html/17_intro/TODO:  Likewise.
362         * docs/html/17_intro/contribute.html:  Likewise.
363         * docs/html/17_intro/headers_cc.txt:  Likewise.
364         * docs/html/17_intro/howto.html:  Likewise.
365         * docs/html/17_intro/libstdc++-assign.txt:  Likewise.
366         * docs/html/17_intro/organization:  Likewise.
367         * docs/html/17_intro/porting-howto.html:  Likewise.
368         * docs/html/18_support/howto.html:  Likewise.
369         * docs/html/19_diagnostics/howto.html:  Likewise.
370         * docs/html/20_util/howto.html:  Likewise.
371         * docs/html/21_strings/gotw29a.txt:  Likewise.
372         * docs/html/21_strings/howto.html:  Likewise.
373         * docs/html/21_strings/stringtok_h.txt:  Likewise.
374         * docs/html/21_strings/stringtok_std_h.txt:  Likewise.
375         * docs/html/22_locale/codecvt.html:  Likewise.
376         * docs/html/22_locale/ctype.html:  Likewise.
377         * docs/html/22_locale/howto.html:  Likewise.
378         * docs/html/22_locale/locale.html:  Likewise.
379         * docs/html/23_containers/howto.html:  Likewise.
380         * docs/html/23_containers/wrappers_h.txt:  Likewise.
381         * docs/html/24_iterators/howto.html:  Likewise.
382         * docs/html/25_algorithms/howto.html:  Likewise.
383         * docs/html/26_numerics/howto.html:  Likewise.
384         * docs/html/27_io/howto.html:  Likewise.
385         * docs/html/27_io/iostreams_hierarchy.pdf:  Likewise.
386         * docs/html/ext/howto.html:  Likewise.
387         * docs/html/faq/index.html:  Likewise.
388         * docs/html/faq/index.txt:  Likewise.
389
390 2000-12-08  Phil Edwards  <pme@sources.redhat.com>
391
392         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO):  New conditional,
393           GLIBCPP_BUILD_LIBIO, true iff building libio.
394         * libio/Makefile.am:  Use; set noinst_LTLIBRARIES empty if false.
395         * aclocal.m4:  Regenerated.
396         * config.h.in:  Regenerated.
397         * configure:  Regenerated.
398         * libio/Makefile.in:  Regenerated.
399         * libmath/Makefile.in:  Regenerated.
400
401 2000-12-08  Gabriel Dos Reis  <gdr@codesourcery.com>
402
403         * libmath/Makefile.am (EXTRA_LONG_DOUBLE_yes): Remove ccosl,
404         cexpl, clog10l, csinhl, ctanhl, ctanl.
405         (EXTRA_DIST): Remove ccos, ccosf, csin, csinf, ccosh, ccoshf,
406         csing, csinhf, clog10, clog10f, ctan, ctanf, ctanh, ctanhf.
407         * libmath/Makefile.in: Regenarate.
408         * libmath/ccos.c: Remove.
409         * libmath/ccosf.c: Likewise.
410         * libmath/ccosl.c: Likewise.
411         * libmath/csin.c: Likewise.
412         * libmath/csinf.c: Likewise.
413         * libmath/csinl.c: Likewise.
414         * libmath/ctan.c: Likewise.
415         * libmath/ctanf.c: Likewise.
416         * libmath/ctanl.c: Likewise.
417         * libmath/ccosh.c: Likewise.
418         * libmath/ccoshf.c: Likewise.
419         * libmath/ccoshl.c: Likewise.
420         * libmath/csinh.c: Likewise.
421         * libmath/csinhf.c: Likewise.
422         * libmath/csinhl.c: Likewise.
423         * libmath/ctanh.c: Likewise.
424         * libmath/ctanhf.c: Likewise.
425         * libmath/ctanhl.c: Likewise.
426         * libmath/cexp.c: Likewise.
427         * libmath/cexpf.c: Likewise.
428         * libmath/cexpl.c: Likewise.
429         * libmath/clog10.c: Likewise.
430         * libmath/clog10f.c: Likewise.
431         * libmath/clog10l.c: Likewise.
432         * libmath/complex-stub.h: Remove forward declaration of functions
433         mentioned above.
434
435         * include/bits/std_complex.h(tan, tanh): Define primary templates. 
436         (complex<>): Remove friend declarations for tan<> and tanh<>.
437         * src/complex.cc(tan, tanh): Remove specializations.
438
439         * acinclude.m4: Remove check for ccos, ccosf, ccosl, ccosh,
440         ccoshf, ccoshl, csin, csinf, csinl, csinh, csinhf, csinhl, cexp,
441         cexpf, cexpl, ctan, ctanf, ctanl, ctanh, ctanhf, ctanhl.
442         * aclocal.m4: Regenarate.
443         * configure: Regenarate.
444
445 2000-12-08  Gabriel Dos Reis  <gdr@codesourcery.com>
446
447         * acinclude.m4: Don't forget to remove check for cpowl as it is no
448         longer needed, nor is the corresponding stub existent.
449         * aclocal.m4: Regenarate.
450         * configure: Regenarate.
451
452 2000-12-07  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
453
454         * config/os/generic/bits/ctype_base.h (ctype_base): Change space mask.
455
456         * config/os/generic/bits/ctype_noninline.h (ctype): Remove default
457         arguments in definition.
458         * config/os/solaris/solaris2.7/bits/ctype_noninline.h (ctype): Same.
459         * config/os/solaris/solaris2.6/bits/ctype_noninline.h (ctype): Same.
460         * config/os/solaris/solaris2.5/bits/ctype_noninline.h (ctype): Same.
461         * config/os/newlib/bits/ctype_noninline.h (ctype): Same.
462         * config/os/irix/bits/ctype_noninline.h (ctype): Same.
463         * config/os/hpux/bits/ctype_noninline.h (ctype): Same.
464         * config/os/bsd/netbsd/bits/ctype_noninline.h (ctype): Same.
465         * config/os/bsd/freebsd/bits/ctype_noninline.h (ctype): Same.
466         * config/os/aix/bits/ctype_noninline.h (ctype): Same.
467
468         * include/bits/locale_facets.h: Tweak.
469         
470 2000-12-06  Benjamin Kosnik  <bkoz@kredhat.com>
471
472         * include/bits/locale_facets.h (ctype): Remove _Ctype_nois and
473         _Ctype and replace with common __ctype_abstract_base.
474         (ctype<wchar_t>::_M_convert_to_wmask): Move to locale.cc.
475         * config/os/gnu-linux/bits/ctype_noninline.h (ctype<char>::ctype):
476         And here.
477         * config/os/solaris/solaris2.7/bits/ctype_noninline.h (ctype): Same.
478         * config/os/solaris/solaris2.6/bits/ctype_noninline.h (ctype): Same.
479         * config/os/solaris/solaris2.5/bits/ctype_noninline.h (ctype): Same.
480         * config/os/newlib/bits/ctype_noninline.h (ctype): Same.
481         * config/os/irix/bits/ctype_noninline.h (ctype): Same.
482         * config/os/hpux/bits/ctype_noninline.h (ctype): Same.
483         * config/os/generic/bits/ctype_noninline.h (ctype): Same.
484         * config/os/aix/bits/ctype_noninline.h (ctype): Same.
485         * config/os/bsd/netbsd/bits/ctype_noninline.h (ctype): Same.
486         * config/os/bsd/freebsd/bits/ctype_noninline.h (ctype): Same.
487         * src/locale-inst.cc: Clean instantiations.
488         * src/locale.cc (ctype<char>): Add definitions here. 
489         (ctype<wchar_t>::_M_wmask): Move definitions here.
490         
491         * config/os/generic/bits/ctype_inline.h (ctype<char>::is):
492         Implement in a generic way, with only "C" functionality and no
493         knowlege of the target os.
494         * config/os/generic/bits/os_defines.h: Change comments to C++ style.
495         * testsuite/22_locale/ctype_char_members.cc (test01): Add tests.
496         
497         * include/bits/codecvt.h (ctype_byname): Remove specializations,
498         as not required.
499         * include/bits/localefwd.h (codecvt_byname): And here.
500         * src/codecvt.cc: Remove codecvt_byname specializations.
501         
502         * include/c/bits/std_cstdio.h: Include c++config.h.
503
504 2000-12-06  Phil Edwards  <pme@sources.redhat.com>
505
506         * acinclude.m4 (GLIBCPP_CHECK_*_DECL_AND_LINKAGE_*):  Pre-test
507           whether the cached result is present.
508         * aclocal.m4:  Regenerate.
509         * configure:  Regenerate.
510         * Makefile.in:  Regenerate.
511         * libio/Makefile.in:  Regenerate.
512         * libmath/Makefile.in:  Regenerate.
513         * libsupc++/Makefile.in:  Regenerate.
514         * src/Makefile.in:  Regenerate.
515
516 2000-12-06  Richard Earnshaw  <rearnsha@arm.com>
517
518         * configure.target (*-*-freebsd, *-*-netbsd): Correct paths to 
519         os_include_dir.
520
521 2000-12-05  Jeffrey A Law  <law@cygnus.com>
522
523         * configure.target (hpux): Set os_include_dir.
524         * config/os/hpux/bits/ctype_base.h: New file
525         * config/os/hpux/bits/ctype_inline.h: New file
526         * config/os/hpux/bits/ctype_noinline.h: New file
527         * config/os/hpux/bits/os_defines.h: New file
528
529 2000-12-05  Alexandre Petit-Bianco  <apbianco@redhat.com>
530
531         * src/Makefile.am (libstdc++.INC): Revert for libjava builds.
532         * src/Makefile.in: Regenerate.
533         
534 2000-12-05  Benjamin Kosnik  <bkoz@haight.redhat.com>
535
536         * acinclude.m4 (EXTRA_CXX_FLAGS): And here.
537         * include/c/bits/std_cstdlib.h (std ): Change macro to
538         _GLIBCPP_NEED_LLDIV_T.
539         * acconfig.h: Remove unused MBSTATE_T bits.
540         * configure.in: Same.
541         * aclocal.m4: Regenerate.
542         * configure: Regenerate.
543         * config.h.in: Regenerate.
544         
545 2000-12-05  Benjamin Kosnik  <bkoz@fillmore.redhat.com>
546
547         * acinclude.m4: Change up to reflect new directory organization.
548         Add in bits for NetBSD.
549         * aclocal.m4: Regenerate.
550         * configure: Regenerate.
551         * config/os/bsd: New directory.
552         * config/os/netbsd: Move to...
553         * config/os/bsd/netbsd: ...here.
554         * config/os/freebsd: Move to...
555         * config/os/bsd/freebsd: ...here.
556
557 2000-12-05  Benjamin Kosnik  <bkoz@haight.redhat.com>
558
559         * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Check for
560         lldiv_t. Allow the use of os-specific defines while checking for
561         long-long functions by the inclusion of os_defines.h.
562         * aclocal.m4: Regenerate.
563         * configure.in: Add comments.
564         * configure: Regenerate.
565         * acconfig.h: Add _GLIBCPP_HAVE_LLDIV_T.
566         * config.h.in: Regenerate.
567         * config/os/gnu-linux/bits/os_defines.h: Fix typos and
568         duplications in comments.
569
570 2000-12-05  Richard Earnshaw  <rearnsha@arm.com>
571
572         * config/os/freebsd/bits/ctype_base.h: Update comments about other
573         BSD variants.
574
575 2000-12-05  Richard Earnshaw  <rearnsha@arm.com>
576
577         * config/os/freebsd/bits/*.h: Move here from config/os/bsd/bits.
578         * aclocal.m4: Adjust accordingly.
579         * configure.target: Likewise.
580         * configure: Regenerate.
581
582 2000-12-05  Richard Earnshaw  <rearnsha@arm.com>
583
584         * config/cpu/arm/bits/atomicity.h: Add support for compiling Thumb
585         code.
586
587 2000-12-05  Richard Earnshaw  <rearnsha@arm.com>
588
589         Support for NetBSD.
590         * aclocal.m4: Add test for NetBSD's ctype support.
591         * configure: Regenerate.
592         * configure.target: Support NetBSD.
593         * config/os/netbsd/bits/ctype_base.h: New file.
594         * config/os/netbsd/bits/ctype_inline.h: New file.
595         * config/os/netbsd/bits/ctype_noinline.h: New file.
596         * config/os/netbsd/bits/os_defines.h: New file.
597
598 2000-12-05  Gabriel Dos Reis  <gdr@codesourcery.com>
599
600         * src/complex.cc (pow): Remove definitions for explicit
601         specializations. 
602         * libmath/mathconf.h: Remove declarations for c_log, c_logf,
603         c_logl. 
604         * libmath/complex-stub.h: Remove declarations for cpow, cpowf,
605         cpowl. 
606         * libmath/cpow.c: Remove.
607         * libmath/cpowf.c: Remove.
608         * libmath/cpowl.c: Remove.
609         * libmath/Makefile.am (EXTRA_LONG_DOUBLE_yes): Remove c_logl,
610         cpowl, 
611         (EXTRA_DIST): Remove c_log, c_logf, carg, cargf.
612         * libmath/Makefile.in: Regenarate.
613         * libmath/c_log.c: Remove
614         * libmath/c_logf.c: Likewise.
615         * libmath/c_logl.c: Likewise.
616         * libmath/carg.c: Likewise.
617         * libmath/cargf.c: Likewise.
618         * libmath/cargl.c: Likewise.
619         * include/bits/std_complex.h (pow): Define primary templates.
620         (complex<>): Remove friend declarations for pow<>().
621         * acinclude.m4: Remove check for c_log, c_logf, c_logl, carg,
622         cargf.
623         * aclocal.m4: Regenarate.
624         * configure: Regenarate.
625
626 2000-12-03  Joseph S. Myers  <jsm28@cam.ac.uk>
627
628         * docs/configopts.html, docs/documentation.html,
629         docs/install.html, docs/17_intro/BADNAMES,
630         docs/17_intro/contribute.html, docs/17_intro/howto.html,
631         docs/18_support/howto.html, docs/19_diagnostics/howto.html,
632         docs/20_util/howto.html, docs/21_strings/howto.html,
633         docs/22_locale/howto.html, docs/23_containers/howto.html,
634         docs/24_iterators/howto.html, docs/25_algorithms/howto.html,
635         docs/26_numerics/howto.html, docs/27_io/howto.html,
636         docs/ext/howto.html, docs/faq/index.html, docs/faq/index.txt: Sync
637         with wwwdocs.
638
639 2000-12-01  Phil Edwards  <pme@sources.redhat.com>
640
641         * docs/download.html:  Remove.
642         * docs/footer.ihtml:  Remove.
643         * docs/header.ihtml:  Remove.
644         * docs/index.html:  Remove.
645         * docs/links.html:  Remove.
646         * docs/mail.html:  Remove.
647         * docs/status.html:  Remove.
648         * docs/thanks.html:  Remove.
649
650 2000-12-01  Phil Edwards  <pme@sources.redhat.com>
651
652         * mkcheck.in:  Count static and shared results separately.
653
654 2000-12-01  Loren J. Rittle  <ljrittle@acm.org>
655
656         * mkcheck.in:  Correct typo.
657
658 2000-12-01  Gabriel Dos Reis  <gdr@codesourcery.com>
659
660         * src/cmath.cc: Remove.
661         * src/Makefile.am (c_base_headers): Add bits/cmath.tcc.
662         (sources): Remove cmath.cc
663         * src/Makefile.in: Regenerate.
664
665         * include/c/bits/std_cmath.h (__cmath_power<>): Declare.
666         (__cmath_abs<>): New function.
667         (abs, fabs): Use __cmath_abs when no direct support is available.
668         (__pow_helper<>): New function.
669         (pow): Define here.  Use __pow_helper<>.
670
671         * include/c/bits/cmath.tcc: New file.
672
673 2000-11-29  Benjamin Kosnik  <bkoz@redhat.com>
674
675         Fixes for build directories with colons, AIX build problems.
676         * src/Makefile.am: Cleanups, add documentation.
677         (libstdc++.INC): Simplify rule.
678         (myinstallheaders): Consolidate install rules.
679         (myinstalldirs): New, make directores.
680         (base_headers): Subdivide based on install directory.
681         (ext_headers): New.
682         (backward_headers): New.
683         (headers): Remove.
684         (c_headers): Remove, unused.
685         (c_shadow_headers): Split up, deal with conditional usage in a
686         sane manner.
687         * src/Makefile.in: Regenerate.
688         
689 2000-11-29  Phil Edwards  <pme@sources.redhat.com>
690
691         Sync with the documentation from wwwdocs.
692         * docs/Makefile:  New file (rebuilds FAQ text version).
693         * docs/configopts.html:  Update.
694         * docs/documentation.html:  Update.
695         * docs/download.html:  Update.
696         * docs/index.html:  Update.
697         * docs/install.html:  Update.
698         * docs/links.html:  Update.
699         * docs/mail.html:  Update.
700         * docs/status.html:  Update.
701         * docs/thanks.html:  Update.
702         * docs/27_io/howto.html:  Update.
703         * docs/faq/index.html:  Update for 2.91.
704         * docs/faq/index.txt:  Update for 2.91.
705         * docs/footer.html:  Removed.
706         * docs/footer.ihtml:  New file.
707         * docs/gccrebuild.html:  Removed.
708         * docs/header.html:  Removed.
709         * docs/header.ihtml:  New file.
710
711 2000-11-29  Loren J. Rittle  <ljrittle@acm.org>
712
713         * tests_flags.in: Correct typo.
714
715 2000-11-29  Gabriel Dos Reis  <gdr@codesourcery.com>
716
717         * tests_flags (SH_FLAGS, ST_FLAGS): Move them back to ...
718         * mkcheck.in (SH_FLAGS, ST_FLAGS): ...here
719
720 2000-11-29  Gabriel Dos Reis  <gdr@codesourcery.com>
721
722         * src/Makefile.am (sources): Add bitset.cc
723         * src/Makefile.in: Regenrate.
724
725         * include/bits/std_bitset.h (_GLIBCPP_BITSET_BITS_PER_WORD): New
726         macro. Replace __BITS_PER_WORDS throughout.
727         (__BITS_PER_WORDS): Remove.
728         (bitset<>::_M_do_find_first, bitset<>::_M_do_find_next): Move
729         definitions to src/bitset.cc.
730
731         * src/bitset.cc (bitset<>::_M_do_find_first,
732         bitset<>::_M_do_find_next):  Define here.
733         (_Bit_count<>::_S_bit_count, _Find_one<>::_S_first_one): Define
734         here. Explicitly instantiate definitions.
735
736 2000-11-28  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
737
738         * config/cpu/powerpc/bits/atomicity.h (__exchange_and_add): Silence
739         preprocessor multi-line string warnings.
740         (__atomic_add): Likewise.
741         (__compare_and_swap): Likewise.
742         (__always_swap): Likewise.
743         (__test_and_set): Likewise.
744         * config/cpu/arm/bits/atomicity.h (__exchange_and_add): Likewise.
745         (__atomic_add): Likewise.
746         (__compare_and_swap): Likewise.
747         (__always_swap): Likewise.
748         (__test_and_set): Likewise.
749
750 2000-11-28  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
751
752         Update for 2.91 release.
753         * include/bits/c++config (__GLIBCPP__): Update.
754         * docs/17_intro/RELEASE-NOTES: Update.
755         * docs/status.html: Update, remove bogus autotools disinformation.
756         
757 2000-11-27  Benjamin Kosnik  <bkoz@redhat.com>
758
759         * tests_flags.in (LTCXX): Change CXX_FLAG to CXXFLAGS.
760
761         * testsuite/22_locale/ctor_copy_dtor.cc: Adjust formatting.
762         * testsuite/27_io/istream_extractor_arith.cc (test11): New
763         testcase, based on libstdc++/90.
764         
765 2000-11-27  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
766
767         * config/cpu/arm/bits/atomicity.h (__exchange_and_add): Add
768         __volatile__ to asm.
769         (__atomic_add): Likewise.
770         (__compare_and_swap): Likewise.
771         (__always_swap): Likewise.
772         (__test_and_set): Likewise.
773         
774         * config/cpu/powerpc/bits/atomicity.h: Replace '__ATOMICITY_INLINE'
775         with 'inline'.
776         (__exchange_and_add): Add __volatile__ to asm.
777         (__atomic_add): Likewise.
778         (__compare_and_swap): Likewise.
779         (__always_swap): Likewise.
780         (__test_and_set): Likewise.
781         
782 2000-11-27  Gabriel Dos Reis  <gdr@codesourcery.com>
783
784         * tests_flags.in: Update documentation to reflect the change
785         below.
786
787 2000-11-26  Benjamin Kosnik  <bkoz@fillmore.constant.com>
788
789         * tests_flags.in: Export CXX, CXXFLAGS.
790         * mkcheck.in: Grab them.
791
792 2000-11-26  David Billinghurst  <David.Billinghurst@riotinto.com>
793             Benjamin Kosnik  <bkoz@redhat.com>
794         
795         * mkcheck.in: Add exe extension to printnow executable, abstract
796         out call to this with TIMER_COMMAND.
797         * configure.target (l_glibcpp_cxxflags): Add cygwin support.
798         * acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Correct paths.
799         * aclocal.m4: Regenerate.
800         * configure: Regenerate.
801         
802 2000-11-26  Benjamin Kosnik  <bkoz@redhat.com>
803
804         * testsuite/27_io/istream_unformatted.cc (test05): Fixup.
805
806 2000-11-26  Benjamin Kosnik  <bkoz@redhat.com>
807
808         * acinclude.m4: Only sanity check for compiler version when
809         configuring. More fixes for 'make clean'.
810         * aclocal.m4: Regenerate.
811         * configure: Regenerate.
812         
813 2000-11-26  Gabriel Dos Reis  <gdr@codesourcery.com>
814
815         * libmath/Makefile.am (EXTRA_LONG_DOUBLE_yes): Remove cabsl.c 
816         * libmath/Makefile.in: Regenerate.
817         * libmath/cabs.c: Remove.
818         * libmath/cabsf.c: Likewise.
819         * libmath/cabsl.c: Likewise.
820         * libmath/complex-stub.h: Remove declarations for cabs*.
821
822         * acinclude.m4: Remove check for cabs*. 
823         * aclocal.m4: Regenerate.
824
825         * Makefile.in: Regenerate.
826
827 2000-11-26  Gabriel Dos Reis  <gdr@codesourcery.com>
828
829         * tests_flags.in: New file. Split out of ...
830         * mkcheck.in: ... this. Move flags computation into
831         tests_flags.in. 
832         * configure.in: Add support for tests_flags.
833         * confiigure: Regenerate.
834
835 2000-11-25  Joseph S. Myers  <jsm28@cam.ac.uk>
836
837         * acinclude.m4: Change C9X references to refer to C99.
838         * aclocal.m4, configure: Regenerate.
839         * config/os/gnu-linux/bits/os_defines.h, src/complex.cc,
840         testsuite/22_locale/codecvt_wchar_t_char.cc,
841         include/bits/stl_config.h, include/c/bits/std_cwchar.h,
842         libmath/mathconf.h: Change C9X references to refer to C99.
843
844 2000-11-25  Benjamin Kosnik  <bkoz@redhat.com>
845             Richard Earnshaw  <rearnsha@arm.com> 
846
847         * src/Makefile.am (INCLUDES): Remove unconditional use of
848         _GNU_SOURCE and _ISOC99_SOURCE macros.
849         * src/Makefile.in: Regenerate.
850         
851 2000-11-24  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
852
853         * testsuite/22_locale/codecvt_wchar_t_char.cc (main): Add
854         _GLIBCPP_USE_WCHAR_T guards.
855
856         * configure.in (AC_OUTPUT_COMMANDS): Remove, just run scripts as
857         is, so that checks for existence of generated files actually work.
858         * configure: Regenerate.
859
860 2000-11-23  Hans-Peter Nilsson  <hp@bitrange.com>
861
862         * config/os/gnu-linux/bits/os_defines.h: Include <features.h>.
863         If not glibc 2.1 or higher, include <gnu/types.h> and define
864         __off64_t as __loff_t and #define __THROW as empty.
865
866         * libio/libio.h [__P]: Move __THROW and __PMT into their own
867         ifndef:s.
868
869 2000-11-23  David Edelsohn  <edelsohn@gnu.org>
870
871         * porting.texi: Expand libtool information.
872
873 2000-11-23  Gabriel Dos Reis  <gdr@codesourcery.com>
874
875         * include/bits/ios_base.h (ios_base::failure::~failure,
876         ios_base::failure::what): Move definition to ...
877
878         * src/ios.cc (ios_base::failure::~failure): ... here.
879         src/ios.cc (ios::failure::what): Likewise.
880
881 2000-11-22  Benjamin Kosnik  <bkoz@redhat.com>
882
883         Make deprecated strstream header consistent with new and new.h.
884         * include/backward/strstream.h: Add. Use using declarations to
885         scope strstreambuf, istrstream, ostrstream, strstream to global
886         scope.
887         * include/backward/strstream: Remove using declarations.
888         * src/Makefile.am (base_headers): Add strstream.
889         * src/Makefile.in: Regenerate.
890
891         * include/backward/new.h (_CPP_BACKWARD_NEW_H): Change macro guard
892         to be consistent with other headers.
893
894 2000-11-22  Richard Henderson  <rth@redhat.com>
895
896         * config/os/bsd/bits/ctype_inline.h (is): Fix order of expressions.
897         
898 2000-11-22  Phil Edwards  <pme@sources.redhat.com>
899
900         * porting.texi:  Minor tweaks to vocabulary.
901
902 2000-11-22  Loren J. Rittle  <ljrittle@acm.org>
903
904         * include/backward/strstream.h: Reinstate the `using'
905         statements.
906
907 2000-11-22  Loren J. Rittle  <ljrittle@acm.org>
908
909         * src/Makefile.am (base_headers): Add missing backwards headers.
910         * src/Makefile.in: Regenerate.
911
912 2000-11-21  scott snyder  <snyder@fnal.gov>
913
914         * config/c_io_stdio.cc (seekoff): Fix return value.
915         (seekpos): Likewise.
916         (sys_seek): Likewise.
917
918 2000-11-21  Loren J. Rittle  <ljrittle@acm.org>
919
920         * mkcheck.in (explanation): Retain output of all failing
921         compiles.  Don't add gratuitous space to the log file.
922
923 2000-11-21  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
924
925         * src/strstream.cc: Adjust includes.
926         * src/Makefile.am (base_headers): Remove std_strstream.h, add
927         backwards/strstream.h.
928         (std_headers): Remove strstream.
929         * src/Makefile.in: Regenerate.
930         * libsupc++/Makefile.am (headers): Remove new.h
931         * libsupc++/Makefile.in: Regenerate.
932         * include/std/strstream: Remove.        
933         * include/backward/strstream.h: Replace with...
934         * include/bits/std_strstream.h: ...this. Move.
935         * include/backward/complex.h: Remove SGIisms.
936         * include/backward/streambuf.h: Same.
937         * include/backward/stream.h: Same.
938         * include/backward/ostream.h: Same.
939         * include/backward/istream.h: Same.
940         * include/backward/iostream.h: Same.
941         * include/backward/iomanip.h: Same.
942         * include/backward/fstream.h: Same.
943         * libsupc++/new.h: Add using declarations for bad_alloc,
944         nothrow_t, and nothrow, move to ...
945         * include/backward/new.h: ...here.
946
947 2000-11-21  Mark Mitchell  <mark@codesourcery.com>
948
949         * porting.texi: New file.
950
951 2000-11-21  Branko Cibej  <brankoe@xbc.nu>
952
953         * config/os/solaris/solaris2.6/bits/os_defines.h: Define
954         _XOPEN_SOURCE, _LARGEFILE64_SOURCE, __EXTENSIONS__, __off_t,
955         __off64_t and __ssize_t.
956         * config/os/solaris/solaris2.5/bits/os_defines.h: For now, use the
957         same configuration as above.
958         
959 2000-11-21  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
960
961         * acinclude.m4 (AC_LC_MESSAGES): Check for locale.h.
962         * aclocal.m4: Regenerate.
963         * configure: Renerate.
964
965 2000-11-20  Benjamin Kosnik  <bkoz@redhat.com>
966
967         * mkcheck.in (explanation): Don't paste output of passing compiles
968         into log file. Use -static. Get version info.
969
970         * testsuite/23_containers/vector_ctor.cc (test02): Fix thinko.
971
972 2000-11-20  Gabriel Dos Reis  <gdr@codesourcery.com>
973
974         * include/bits/std_complex.h (complex<double>): Constructor
975         complex<double>::complex(const complex<float>&) is not explicit;
976         since it is a promotion.
977         (complex<long double>): Constructors taking complex<float> and
978         complex<double> are not explicit.
979
980 2000-11-20  Benjamin Kosnik  <bkoz@redhat.com>
981
982         * include/bits/std_complex.h: Tweaks, include cmath for abs overloads.
983         * src/complex.cc: Remove cmath include, formatting tweaks, remove
984         dead code.
985         * include/c/bits/std_cmath.h: Formatting tweaks.
986         * testsuite/26_numerics/complex_value.cc: New file, for catching
987         bits gleaned from libstdc++/106.
988
989         * testsuite/23_containers/vector_ctor.cc (test02): Add test from
990         libstdc++/102.
991         
992 2000-11-20  Joseph S. Myers  <jsm28@cam.ac.uk>
993
994         * include/bits/c++config, include/bits/ios_base.h,
995         include/bits/std_streambuf.h: Correct spelling of "deprecated".
996
997 2000-11-19  Mark Mitchell  <mark@codesourcery.com>
998
999         * libsupc++/exception_support.cc (__throw_bad_cast): Name it 
1000         __cxa_bad_cast under the new ABI.
1001         (__throw_bad_typeid): Name it __cxa_bad_typeid under the new ABI.
1002         * libsupc++/pure.cc (__pure_virtual): Name it __cxa_pure_virtual
1003         under the new ABI.
1004
1005 2000-11-18  Mark Mitchell  <mark@codesourcery.com>
1006
1007         * libsupc++/exception_support.h: New header file.
1008         * libsupc++/vec.cc: Include it.
1009         (__cxa_vec_new2): Recatch exceptions before rethrows.
1010         (__cxa_vec_new3): Likewise.
1011         (__cxa_vec_ctor): Likewise.
1012         (__cxa_vec_cctor): Likewise.
1013         (__cxa_vec_dtor): Likewise.
1014         (__cxa_vec_delete2): Likewise.
1015         (__cxa_vec_delete3): Likewise.
1016
1017 2000-11-17  Theodore Papadopoulo  <Theodore.Papadopoulo@sophia.inria.fr>
1018
1019         * include/bits/stl_tree.h: Overload operators == and != to be able
1020         to handle the case (const_iterator,iterator) and
1021         (iterator,const_iterator), thus fixing libstdc++/737 and the like.
1022         * testsuite/23_containers/map_operators.cc (test02): New tests.
1023         
1024 2000-11-17  Loren J. Rittle  <ljrittle@acm.org>
1025
1026         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Correct last patch
1027           to ``make --enable-cstdio=stdio the default''.
1028         * libstdc++-v3/aclocal.m4: Rebuilt.
1029         * libstdc++-v3/configure: Rebuilt.
1030
1031 2000-11-17  Phil Edwards  <pme@sources.redhat.com>
1032
1033         * acinclude.m4 (GLIBCPP_ENABLE_ATOMICITY):  Move switch statement
1034           contents to...
1035         * configure.target:  ...here.  Enable generic atomic ops, and warn.
1036         * aclocal.m4:  Regenerated.
1037         * configure:  Ditto.
1038         * Makefile.in:  Ditto.
1039         * libio/Makefile.in:  Ditto.
1040         * libmath/Makefile.in:  Ditto.
1041         * libsupc++/Makefile.in:  Ditto.
1042         * src/Makefile.in:  Ditto.
1043
1044 2000-11-16  Loren J. Rittle  <ljrittle@acm.org>
1045
1046         * include/bits/locale_facets.tcc (num_get<_CharT,
1047           _InIter>::do_get(...)): Add missing typename keyword.
1048
1049 2000-11-16  Mark Mitchell  <mark@codesourcery.com>
1050
1051         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Make 
1052         --enable-cstdio=stdio the default.  Disable wide character support
1053         in that event.
1054         * configure.in: Move GLIBCPP_ENABLE_C_MBCHAR after
1055         (GLIBCPP_ENABLE_CSTDIO).
1056         * config/c_io_stdio.h: Don't include <libio.h>, don't define
1057         __c_wfile_type.
1058         * aclocal.m4: Regenerated.
1059         * configure: Likewise.
1060         * Makefile.in: Likewise.
1061         * libio/Makefile.in: Likewise.
1062         * libmath/Makefile.in: Likewise.
1063         * libsupc++/Makefile.in: Likewise.
1064         * src/Makefile.in: Likewise.
1065         
1066 2000-11-16  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
1067
1068         * config/c_io_stdio.h: Include stddef.h.
1069
1070 2000-11-16  Mark Mitchell  <mark@codesourcery.com>
1071
1072         * config/c_io_stdio.h (streamsize): Make it a typedef for
1073         ptrdiff_t.
1074         (wstreamsize): Likewise.
1075
1076         * config/c_io_stdio.h: Include libio.h.
1077
1078 2000-11-15  Mark P Mitchell  <mark@codesourcery.com>
1079
1080         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Substitute libio_la.
1081         * src/Makefile.am (libstdc___la_LIBADD): Use it.
1082         * aclocal.m4: Regenerated.
1083         * configure: Likewise.
1084         * Makefile.in: Likewise.
1085         * libio/Makefile.in: Likewise.
1086         * libmath/Makefile.in: Likewise.
1087         * libsupc++/Makefile.in: Likewise.
1088         * src/Makfile.in: Likewise.
1089         
1090 2000-11-15  Mark Mitchell  <mark@codesourcery.com>
1091
1092         * mkcheckin.in: Move check for bash version 2 later in the file.
1093
1094         * include/bits/basic_string.h (basic_string::_Rep::_S_max_size):
1095         Make it const.
1096         (basic_string::_Rep::_S_terminal): Likewise.
1097         * include/bits/string.tcc (basic_string::_Rep::_S_max_size):
1098         Likewise.
1099         (basic_string::_Rep::_S_terminal): Likewise.
1100         
1101 2000-11-15  David Billinghurst  <David.Billinghurst@riotinto.com>
1102
1103         * mkcheck.in:  Add function size_command() for irix.
1104
1105 2000-11-14  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1106
1107         * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPOR): Set LIBS back to
1108         initial value.
1109         (GLIBCPP_EXPORT_INCLUDES): Only export TOPLEVEL_INCLUDES if
1110         building a canadian cross. This should fix the remaining java
1111         build issues.
1112         * aclocal.m4: Regenerate.
1113         * configure: Regenerate.
1114         
1115         * include/bits/c++config (__GLIBCPP__): Set release version for 2.91.
1116
1117 2000-11-14  Phil Edwards  <pme@sources.redhat.com>
1118
1119         * mkcheck.in: On a platform where we don't know how to extract
1120         section sizes, just set them to zero.  Use old method of reading
1121         file contents.
1122
1123 2000-11-13  Loren J. Rittle  <ljrittle@acm.org>
1124
1125         * config/c_io_stdio.h: Don't define __c_wfile_type
1126         when _GLIBCPP_USE_WCHAR_T is not defined.
1127
1128 2000-11-13  Phil Edwards  <pme@sources.redhat.com>
1129
1130         * acinclude.m4 (GLIBCPP_CHECK_TARGET):  New macro, replacing
1131         GLIBCPP_CHECK_CPU and GLIBCPP_CHECK_OS, sourcing configure.target.
1132         (GLIBCPP_CONFIGURE):  Call new macro here.
1133         * configure.host:  Cleanup.
1134         * configure.in:  Remove those two macros.
1135         * configure.target:  New file.
1136         * aclocal.m4:  Regenerated.
1137         * configure:  Ditto.
1138         * Makefile.in:  Ditto.
1139         * libio/Makefile.in:  Ditto.
1140         * libmath/Makefile.in:  Ditto.
1141         * libsupc++/Makefile.in:  Ditto.
1142         * src/Makefile.in:  Ditto.
1143
1144         * mkcheck.in:  Use libtool.  Split things out into functions.
1145
1146 2000-11-12  Alexandre Petit-Bianco  <apbianco@cygnus.com>
1147
1148         * Makefile.am (tmp-libstdsc++.INC:): Do not use -I$(top_builddir).
1149         * Makefile.in: Regenerate.
1150
1151 2000-11-12  David Edelsohn  <edelsohn@gnu.org>
1152
1153         * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Add test for
1154         libiconv.a providing wchar_t support functions.
1155         * aclocal.m4: Regenerate.
1156         
1157 2000-11-12  Loren J. Rittle  <ljrittle@acm.org>
1158
1159         * acinclude.m4 (GLIBCPP_ENABLE_ATOMICITY): Handle FreeBSD.
1160         * aclocal.m4, configure: Rebuilt.
1161
1162 2000-11-12  Brent Verner  <brent@rcfile.org>
1163
1164         * include/c_std/bits/wrap_langinfo.h: New file.
1165         * include/c_std/langinfo.h: New file.
1166         * include/bits/codecvt.h (__enc_trants::__enc_traits()): Bring in
1167         CODESET from _C_legacy::CODESET if using shadow headers.
1168         * src/Makefile.am: Add new files.
1169         * src/Makefile.in: Regenerate.
1170         
1171 2000-11-12  Mark Mitchell  <mark@codesourcery.com>
1172
1173         * include/c/bits/std_cmath.h (abs): Change extern "C" declaration
1174         of `abs (double)' to ...
1175         (fabs): this.
1176
1177         * config/os/solaris/solaris2.7/bits/os_defines.h: Define
1178         __EXTENSIONS__.
1179
1180 2000-11-11  Mark P Mitchell  <mark@codesourcery.com>
1181
1182         * include/bits/basic_file.h (__basic_file): Don't use __c_wfile_type
1183         when _GLIBCPP_USE_WCHAR_T is not defined.
1184
1185 2000-11-10  Phil Edwards  <pme@sources.redhat.com>
1186
1187         * include/bits/codecvt.h (__iconv_adaptor):  New adaptor function,
1188           courtesy of Alexandre Oliva, to handle const/non-const signatures.
1189           (codecvt::do_out):  Use.
1190           (codecvt::do_in):  And here.
1191
1192 2000-11-10  Gabriel Dos Reis  <gdr@codesourcery.com>
1193
1194         * include/bits/cpp_type_traits.h: Fix typos.  Adjust formatting.
1195
1196 2000-11-10  Gabriel Dos Reis  <gdr@codesourcery.com>
1197
1198         * include/bits/localefwd.h (_Count_ones<>::_S_halfcount,
1199         _Count_ones<>::_S_count): Turn into enumerators.
1200
1201 2000-11-08  Mark Mitchell  <mark@codesourcery.com>
1202
1203         * include/bits/codecvt.h (codecvt::do_out): Make it const-correct.
1204         (codecvt::do_in): Likewise.
1205
1206 2000-11-08  David Edelsohn  <edelsohn@gnu.org>
1207
1208         * src/locale-inst.cc: Add explicit instantiations of
1209         _M_fill_insert and fill_n<..., unsigned long,...> .
1210
1211 2000-11-06  Gabriel Dos Reis  <gdr@codesourcery.com>
1212
1213         * include/bits/std_complex.h (conj): Undo double removal.
1214
1215 2000-11-06  Alexandre Oliva  <aoliva@redhat.com>
1216
1217         * acinclude.m4 (LIB_AC_PROG_CXX): Remove CXX from the list of
1218         alternatives for CXX_libstdcxx, now that it is useless.
1219         * aclocal.m4, configure: Rebuilt.
1220
1221 2000-11-04  Mark Mitchell  <mark@codesourcery.com>
1222
1223         * acinclude.m4 (LIB_AC_PROG_CXX): Set CXX_libstdcxx from CXX.
1224         * aclocal.m4: Regenerated.
1225         * configure: Likewise.
1226
1227         * acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Fix punctuation in
1228         use of `test'.
1229         * aclocal.m4: Regenerated.
1230         * configure: Likewise.
1231
1232 2000-11-04  Alexandre Oliva  <aoliva@redhat.com>
1233
1234         * acinclude.m4 (CXX): Prevent it from being cached.
1235         * aclocal.m4, configure, */Makefile.in: Rebuilt.
1236
1237 2000-11-03  David Edelsohn <dje@watson.ibm.com>
1238
1239         * acinclude.m4 (GLIBCPP_CHECK_OS): Add AIX target selecting threads
1240           flag based on multilib definition of $CXX.
1241         * mknumeric_limits (LDFLAGS): Add AIX target linking with pthreads
1242           based on multilib definition of $CXX.
1243         * config/os/aix/bits/os_defines.h (_G_USING_THUNKS): Define as 0.
1244
1245 2000-11-03  Phil Edwards  <pme@sources.redhat.com>
1246
1247         * acinclude.m4:  Cleanups.
1248         * aclocal.m4:  Regenerated.
1249         * configure:  Ditto.
1250         * Makefile.in:  Ditto.
1251         * libio/Makefile.in:  Ditto.
1252         * libmath/Makefile.in:  Ditto.
1253         * libsupc++/Makefile.in:  Ditto.
1254         * src/Makefile.in:  Ditto.
1255
1256         * docs/install.html:  Removal of EGCS.
1257         * docs/23_containers/wrappers_h.txt:  Likewise.
1258         * docs/faq/index.html:  Likewise.
1259         * docs/faq/index.txt:  Regenerated.
1260         * docs/thanks.html:  More people.
1261
1262 2000-11-03  David Edelsohn  <edelsohn@gnu.org>
1263
1264         * include/c/bits/std_cwchar.h: Undefine macro that conflicts
1265         with function name defined in this file.
1266
1267 Thu Nov  2 23:19:20 2000  Mark P Mitchell  <mark@codesourcery.com>
1268
1269         * include/c/bits/std_cctype.h: Undefine macros that conflict
1270         with function names defined in this file.
1271         * include/c/bits/std_cstdio.h: Likewise.
1272
1273 2000-11-02  Mark Mitchell  <mark@codesourcery.com>
1274
1275         * acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Fix typo.
1276
1277 Thu Nov  2 10:11:45 2000  Mark P Mitchell  <mark@codesourcery.com>
1278
1279         * acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Add support for IRIX.
1280         * aclocal.m4: Regenerated.
1281         * Makefile.in: Regenerated.
1282         * libio/Makefile.in: Likewise.
1283         * libmath/Makefile.in: Likewise.
1284         * libsupc++/Makefile.in: Likewise.
1285         * src/Makefile.in: Likewise.
1286         * configure: Likewise.
1287         * config/os/irix/bits/ctype_base.h: Revise.
1288         * config/os/irix/bits/ctype_inline.h: Likewise.
1289         * config/os/irix/bits/ctype_noninline.h: Likewise.
1290
1291         * testsuite/22_locale/codecvt_unicode_char.cc: Don't run it
1292         if not _GLIBCPP_USE_WCHAR_T.
1293         * testsuite/22_locale/codecvt_unicode_wchar_t.cc: Likewise.
1294         * testsuite/22_locale/ctor_copy_dtor.cc: Likewise.
1295         * testsuite/22_locale/ctype_wchar_t_members.cc: Likewise.
1296         
1297         * mkcheck.in: Fix echoing of -rpath option.
1298         
1299         * config/os/irix/bits/atomicity.h (_Atomic_word): Make it a
1300         signed type.
1301         (__exchange_aand_add): Adjust accordingly.
1302         (__atomic_add): Likewise.
1303         
1304 2000-11-02  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1305
1306         * src/locale.cc: Match orderings for static members.
1307         * include/bits/fstream.tcc: Fixes for cin.
1308
1309 2000-11-02  Gabriel Dos Reis  <gdr@codesourcery.com>
1310
1311         * include/bits/std_complex.h (complex<>): Remove (cos<>, cosh<>,
1312         exp<>, log<>, log<>, sin, sinh<>) friend declarations.
1313         (cos, cosh, sin, sinh): Define primary templates.
1314
1315         * src/complex.cc (cos<>, cosh<>, sin<>, sinh<>): Comment out
1316         definitions. 
1317
1318 2000-11-01  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1319
1320         * bits/basic_file.h (_M_open_mode): Change signature, move
1321         specializations to..
1322         * config/c_io_libio.cc: ...here.
1323         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Add sdtio option, remove wince.
1324         * aclocal.m4: Regenerate.
1325         * configure: Regenerate.
1326         * config/c_io_stdio.h: New file.
1327         * config/c_io_stdio.cc: New file.
1328         * docs/configopts.html: Modify documentation.
1329         
1330 2000-10-31  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1331
1332         * include/c/bits/std_cwctype.h: Add more undefs.
1333
1334 2000-10-31  Gabriel Dos Reis  <gdr@codesourcery.com>
1335
1336         * include/bits/std_complex.h (norm): Forward declare.
1337         (complex<>): Comment out friend declaration of conj<>.
1338         (conj<>): Comment out specialization.
1339         (exp, log, log10): Define primary templates.
1340
1341         * src/complex.cc (exp<>, log<>, log10<>): Comment out
1342         specializations. 
1343
1344 2000-10-31  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1345
1346         * include/bits/std_complex.h: Remove duplicate definition of conj.
1347         * include/c/bits/std_cwctype.h: Consistent placement of undefs.
1348         
1349 2000-10-31  Gabriel Dos Reis  <gdr@codesourcery.com>
1350
1351         * src/complex.cc (arg, polar): Comment out specializations.
1352
1353         * include/bits/std_complex.h (complex<>): Remove arg<> friend
1354         declaration. 
1355         (arg): Define primary template.
1356         (polar): Likewise.
1357         (conj): Likewise.
1358
1359 2000-10-31  Gabriel Dos Reis  <gdr@codesourcery.com>
1360
1361         * include/c/bits/std_cwctype.h: #undef possible function-like
1362         macro definitions of iswxxx functions, which might be brought in
1363         by <wctype.h>.  Those macro definitions prevent build on some
1364         linux-based systems.
1365         
1366         * include/bits/std_complex.h (complex<>): Comment out friend
1367         declarations of abs<> specializations.
1368         (abs): Define primary template.
1369
1370         * src/complex.cc (abs): Comment out specialization definition.
1371
1372 2000-10-30  Phil Edwards  <pme@sources.redhat.com>
1373
1374         * acinclude.m4 (GLIBCPP_ENABLE_DEBUG):  Raise debugging level from
1375           the default of 2 to 3.
1376         * configure.in:  Fix minor typos.  SUBST the values of enable_shared
1377           and enable_static so that mkcheck will be aware of them.  Put the
1378           test for gconv.h in with all the other header tests.
1379         * aclocal.m4:  Regenerate.
1380         * configure:  Ditto.
1381         * Makefile.in:  Ditto.
1382         * libio/Makefile.in:  Ditto.
1383         * libmath/Makefile.in:  Ditto.
1384         * libsupc++/Makefile.in:  Ditto.
1385         * src/Makefile.in:  Ditto.
1386
1387         * config/os/solaris/solaris2.7/bits/os_defines.h:  Define
1388           _G_USING_THUNKS to 0.
1389
1390 2000-10-30  Benjamin Kosnik  <bkoz@redhat.com>
1391
1392         * src/complex_io.cc : Remove ancient defines.
1393         * config/os/gnu-linux/bits/os_defines.h: Add defines.
1394         * libsupc++/tinfo2.cc: Change to cstddef.
1395
1396         * include/bits/codecvt.h: Add include of c++config.h, so that
1397         __USE_GNU gets defined. (Important for alpha.)
1398
1399         * include/c/bits/std_cwctype.h: Same.
1400         * include/c/bits/std_ctime.h: And here.
1401         * include/c/bits/std_cstdarg.h: Same.
1402         * include/c/bits/std_csignal.h: Same.
1403         * include/c/bits/std_csetjmp.h: Same.
1404         * include/c/bits/std_clocale.h: Same.
1405         * include/c/bits/std_climits.h: Touch.
1406         * include/c/bits/std_cfloat.h: Same.
1407         * include/c/bits/std_cerrno.h: Same.
1408         * include/c/bits/std_cwchar.h: Same.
1409         * include/c/bits/std_cassert.h: Same.
1410         * include/c/bits/std_cctype.h: Same.    
1411         * include/c/bits/std_cstddef.h: And here.
1412         * include/c/bits/std_cstdlib.h: And here.
1413         * include/c/bits/std_cstdio.h: Same.
1414         * include/c/bits/std_cstring.h: Add names to namespace std::.
1415
1416         * include/bits/c++config (_GNU_SOURCE): Move linux-specific macros
1417         from here...
1418         (_ISOC99_SOURCE): And this one....
1419         * config/os/gnu-linux/bits/os_defines.h: ...to here.
1420         
1421         * include/bits/codecvt.h (codecvt<_InternT, _ExternT,
1422         __enc_traits>::do_in): Don't cast to const, this is a bug in glibc
1423         prior to 2.2.
1424         (codecvt<_InternT, _ExternT, __enc_traits>::do_out): Same.
1425         * include/c/bits/std_cwchar.h: Add using declarations for mbstate_t.
1426         
1427 2000-10-30  Steven King  <sxking@uswest.net>
1428
1429         * include/bits/codecvt.h: Add cast.
1430         * include/c_std/stdio.h: Re-add printf using declaration.
1431         * include/c_std/bits/std_cstdio.h: Same
1432         * testsuite/22_locale/codecvt_wchar_t_char.cc: Fixup testsuite.
1433         * testsuite/22_locale/ctor_copy_dtor.cc: Same.
1434         * testsuite/22_locale/facet.cc: Same.
1435         * testsuite/22_locale/global_templates.cc: Same.
1436         * testsuite/22_locale/operators.cc: Same.
1437         * testsuite/22_locale/static_members.cc: Same.
1438         * testsuite/26_numerics/c_math.cc: Same.
1439         * testsuite/26_numerics/complex_inserters_extractors.cc: Same.
1440         * testsuite/27_io/fpos.cc: Same.
1441         * testsuite/27_io/istream_extractor_arith.cc: Same.
1442         * testsuite/27_io/istream_unformatted.cc: Same.
1443         * testsuite/27_io/ostream_inserter_arith.cc: Same.
1444         * testsuite/27_io/streambuf.cc: Same.
1445
1446 2000-10-30  Mark Mitchell  <mark@codesourcery.com>
1447
1448         * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT): Check 
1449         for cabs, cabsf, and cabsl, too.
1450         * aclocal.m4: Regenerated.
1451         * config.h.in: Likewise.
1452         * configure: Likewise.
1453         * libmath/Makefile.am (libmath_la_SOURCES): Remove cabs.c and
1454         cabsf.c.
1455         * libmath/Makefile.in: Regenerated.
1456         * libmath/complex-stub.h (cabs): Don't declare if the system
1457         already provides this function.
1458         (cabsf): Likewise.
1459         (cabsl): Likewise.
1460         * src/complex.cc (abs): Directly use `hypot' since we can't call
1461         cabs on IRIX.
1462
1463 2000-10-30  Joseph S. Myers  <jsm28@cam.ac.uk>
1464
1465         * acinclude.m4: Update URL on egcs.cygnus.com to point to
1466         gcc.gnu.org.
1467         * aclocal.m4, configure: Regenerate.
1468         * src/gen-num-limits.cc, include/bits/c++config,
1469         include/bits/stl_config.h: Remove EGCS references.
1470
1471 2000-10-29  Mark Mitchell  <mark@codesourcery.com>
1472
1473         * mkcheck.in (test_file): Use -rpath, rather than --rpath, when
1474         building shared executables.
1475
1476 2000-10-29   Mark Harig <mharig@landmark.com>
1477
1478         * src/Makefile.am: Change logic for include dir options.
1479         * src/Makefile.in: Regenerate.
1480         * libsupc++/Makefile.am: Ditto.
1481         * libsupc++/Makefile.in: Regenerate.
1482         
1483 2000-10-29  Benjamin Kosnik  <bkoz@redhat.com>
1484
1485         * configure.in: Simplify use of AC_CACHE_SAVE.  Put linked files
1486         in $(top_builddir)/include/bits, not $(top_builddir)/bits, to help
1487         with libgcj build issues and improve consistency with the source
1488         directory's include directory setup.
1489         * configure: Regenerate.
1490         * acinclude.m4: Same here.
1491         * aclocal.m4: Regenerate.
1492         * mknumeric_limits (OUT_H): Also change paths here.
1493         * mkcheck.in (C_DIR): And here.
1494         * mkc++config (OUT_H): And here.
1495         * libmath/Makefile.am (INCLUDES): And here.
1496         * src/Makefile.am (INCLUDES): Change to $(top_builddir)/include.
1497         * libio/Makefile.am: Ditto.
1498         * libsupc++/Makefile.am (INCLUDES): Ditto.
1499
1500 2000-10-29  Mark Mitchell  <mark@codesourcery.com>
1501
1502         * config/c_io_libio.cc (basic_file<char>::__basic_file): 
1503         Don't pass a NULL _IO_wide_data to _IO_no_init when
1504         _GLIBCPP_USE_WCHAR_T is not defined.
1505         * config/c_io_libio.h (_IO_codecvt): Don't declare when 
1506         _GLIBCPP_USE_WCHAR_T is not defined.
1507         * config/c_io_libio_codecvt.c: Don't compile it 
1508         when _GLIBCPP_USE_WCHAR_T is not defined.
1509         * include/bits/codecvt.h (codecvt<_InternT, _ExternT, __enc_traits):
1510         Don't define this specialization when _GLIBCPP_USE_WCHAR_T 
1511         is not defined.
1512         * include/bits/locale_facets.h (<bits/std_cwctype.h>): Don't
1513         include it when _GLIBCPP_USE_WCHAR_T is not defined. 
1514         * src/codecvt.cc (__enc_traits::_S_max_size): Don't define
1515         when _GLIBCPP_USE_WCHAR_T is not defined.
1516         * src/localename.cc (locale::_Impl::_M_construct_collate):
1517         Don't call wide-character functions when _GLIBCPP_USE_WCHAR_T is 
1518         not defined.
1519         (locale::_Impl::_M_construct_ctype): Likewise.
1520         (locale::_Impl::_M_construct_monetary): Likewise.
1521         (locale::_Impl::_M_construct_numeric): Likewise.
1522         (locale::_Impl::_M_construct_time): Likewise.
1523         (locale::_Impl::_M_construct_messages): Likewise.
1524         
1525         * acinclude.m4 (GLIBCPP_ENABLE_ATOMICITY): Handle IRIX.
1526         * aclocal.m4: Regenerated.
1527         * configure: Likewise.
1528         * config/os/irix/bits/atomicity.h: New file.
1529         * config/os/irix/bits/os_defines.h (_POSIX_SOURCE): Undefine.
1530         (__off_t): Define.
1531         (__off64_t): Likewise.
1532         (__ssize_t): Likewise.
1533         (_G_USING_THUNKS): Define to zero.
1534         
1535 2000-10-28  Mark Mitchell  <mark@codesourcery.com>
1536
1537         * src/string-inst.cc (basic_string<C>::npos): Explicitly
1538         instantiate it.
1539
1540 2000-10-26  Benjamin Kosnik  <bkoz@redhat.com>
1541
1542         * include/c/bits/std_cmath.h: Fix double declarations in namespace std.
1543
1544         Clean up naming, consistency in "C" library autoconf testing.
1545         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): For consistency, change to
1546         GLIBCPP_CHECK_CTYPE_SUPPORT.
1547         (GLIBCPP_CHECK_STDLIB_SUPPORT): Add.
1548         * aclocal.m4: Regenerate.
1549         * configure.in: And here. 
1550         Add call to GLIBCPP_CHECK_STDLIB_SUPPORT.
1551         * configure: Regenerate.
1552         
1553 2000-10-26  David Edelsohn  <edelsohn@gnu.org>
1554
1555         * acinclude.m4 (GLIBCPP_CHECK_STDLIB_DECL_AND_LINKAGE_2): New macro.
1556         (GLIBCPP_CHECK_MATH_SUPPORT): Use it to test for strtold.
1557         
1558 2000-10-26  Phil Edwards  <pme@sources.redhat.com>  
1559             David Edelsohn  <dje@watson.ibm.com>
1560
1561         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Comment out
1562         --gc-sections stuff entirely to avoid misleading people.
1563         (GLIBCPP_ENABLE_CSTDIO): Merge need_libio and need_xtra_libio.
1564         * libio/Makefile.am (LIBIO_SRCS,LIBIO_WSRCS,LIBIO_XTRA_SRCS):
1565         Rearrange and merge.
1566         * libio/libio.h: Simplify, make fewer assumptions.  Define those
1567         macros which must be defined.
1568         * config/os/solaris/solaris2.7/bits/os_defines.h: Simplify as a
1569         result.
1570
1571 2000-10-26  Mark Mitchell  <mark@codesourcery.com>
1572
1573         * include/backward/streambuf.h: New file.
1574
1575 2000-10-26  David Edelsohn  <dje@watson.ibm.com> 
1576         
1577         * config/os/aix/bits/ctype_inline.h (is): Use __OBJ_DATA directly.
1578         * config/os/aix/bits/ctype_noninline.h (do_tolower): Fix typo.
1579         * config/os/aix/bits/os_defines.h: Add AIX defines.
1580
1581 2000-10-26  Benjamin Kosnik  <bkoz@redhat.com>
1582
1583         * acinclude.m4 (GLIBCPP_ENABLE_LONG_DOUBLE): Remove.
1584         * aclocal.m4: Regenerate.
1585         * configure.in: Remove GLIBCPP_ENABLE_LONG_DOUBLE.
1586         * configure: Regenerate.
1587         * docs/configopts.html: Remove.
1588         * src/complexl.cc: Revert.
1589         * config.h.in: Remove.
1590         * include/c_std/bits/std_cmath.h: Remove guards based on
1591         _GLIBCPP_USE_LONG_DOUBLE.
1592         * include/c/bits/std_cmath.h: Same. Format. Match c_std behavior
1593         with respect to long double signatures.
1594
1595         * config/os/aix/bits/ctype_noninline.h (ctype): Remove throw
1596         specification.
1597         * config/os/newlib/bits/ctype_noninline.h (ctype): And here.
1598         * config/os/solaris/solaris2.6/bits/ctype_noninline.h (ctype): Same.
1599         * config/os/solaris/solaris2.5/bits/ctype_noninline.h (ctype): Same.
1600         * config/os/generic/bits/ctype_noninline.h (ctype): Same.
1601         * config/os/bsd/bits/ctype_noninline.h (ctype): Same.
1602
1603 2000-10-26  Gabriel Dos Reis  <gdr@codesourcery.com>
1604
1605         * include/bits/std_valarray.h (valarray::valarray): Fix thinko.
1606         Use __valarray_copy_construct only where appropriate.
1607
1608 2000-10-25  Mark Mitchell  <mark@codesourcery.com>
1609
1610         * Makefile.in (check): Don't make mkcheck executable.
1611         (check-install): Likewise.
1612         * configure.in (AC_OUTPUT): Make mkcheck executable.
1613         * mkcheck.in (top_srcdir): New variable.
1614         (INC_PATH): Set the path to the backward and ext directories
1615         correctly.
1616         
1617 2000-10-25  Phil Edwards  <pme@sources.redhat.com>
1618
1619         * configure.in:  Check for gconv.h.
1620         * libio/wfileops.c:  Wrap gconv.h in HAVE_GCONV_H.
1621
1622         * config/c_io_libio_codecvt.c:  Change __mbstate_t to __c_mbstate_t.
1623         * libio/_G_config.h:  And here.
1624         * libio/iofwide.c:  And here.
1625         * libio/libio.h:  And here.
1626
1627         * config/os/solaris/solaris2.7/bits/ctype_noninline.h:  Remove
1628           exception specification to match declaration.
1629         * include/bits/locale_facets.tcc:  Include bits/std_clocale.h.
1630
1631 2000-10-24   Mark Harig <mharig@landmark.com>
1632
1633         * docs/configopts.html: Added documentation for the
1634         "--enable-version-specific-runtime-libs" and
1635         "--with-gxx-include-dir" configuration switches.
1636
1637 2000-10-24  Benjamin Kosnik  <bkoz@redhat.com>
1638
1639         * include/bits/stl_pair.h (make_pair): Add LWG solution.
1640
1641         * testsuite/21_strings/compare.cc (test01): Inject namespace std
1642         into the mix.
1643
1644         * mkcheck.in (MAX_MEM_USAGE): Bump up to 3072. Strangely enough,
1645         this works. 
1646
1647 2000-10-24  Levente Farkas  <lfarkas@mindmaker.hu>
1648
1649         * include/bits/std_bitset.h (_M_do_find_next): Fix typo.
1650
1651 2000-10-24  Phil Edwards  <pme@sources.redhat.com>
1652
1653         * acconfig.h:  List _GLIBCPP_USE_THREADS.
1654         * acinclude.m4:  General formatting cleanup (tabs/spaces), typo
1655           correction, etc.  Add comments about following *real* changes
1656           where they are used.
1657           (GLIBCPP_ENABLE_C_MBCHAR):  New test...
1658           (GLIBCPP_CHECK_WCHAR_T_SUPPORT):  ...results used here.
1659           (GLIBCPP_ENABLE_CSTDIO):  Define need_wlibio iff wide characters
1660           are requested.
1661           (GLIBCPP_ENABLE_THREADS):  If threads are used, define new
1662           macro _GLIBCPP_USE_THREADS in c++config.h.
1663           (GLIBCPP_ENABLE_SHADOW):  For C_INCLUDE_DIR, change () to {} as
1664           this is used in both makefiles and shell scripts (mkcheck).
1665         * configure.in:  Call GLIBCPP_ENABLE_C_MBCHAR.
1666
1667         * libio/_G_config.h:  Wrap _IO_MTSAFE_IO in _GLIBCPP_USE_THREADS.
1668         * config/c_io_libio.h:  In nonthreaded case, typedef __c_lock to
1669           something harmless, like int.
1670
1671         * config/os/aix/bits/os_defines.h:  Guard with _GLIBCPP_OS_DEFINES,
1672           add comment/instructions.
1673         * config/os/bsd/bits/os_defines.h:  Ditto.
1674         * config/os/generic/bits/os_defines.h:  Ditto.
1675         * config/os/gnu-linux/bits/os_defines.h:  Ditto.
1676         * config/os/irix/bits/os_defines.h:  Ditto.
1677         * config/os/newlib/bits/os_defines.h:  Ditto.
1678         * config/os/solaris/solaris2.5/bits/os_defines.h:  Ditto.
1679         * config/os/solaris/solaris2.6/bits/os_defines.h:  Ditto.
1680
1681         * mkcheck.in:  Limit the available heap size for testsuite
1682           binaries, initially at 2MB.
1683
1684 2000-10-23  Benjamin Kosnik  <bkoz@redhat.com>
1685
1686         * testsuite/21_strings/compare.cc (test01): Add using declarations.
1687
1688         * include/c_std/bits/std_cerrno.h: And here.
1689         * include/c_std/bits/std_cassert.h: Tweaks.
1690
1691         * mkcheck.in: Simplify.
1692         
1693         * acinclude.m4 (GLIBCPP_ENABLE_LONG_DOUBLE): Simplify.
1694         (GLIBCPP_ENABLE_LONG_LONG): Same.
1695         * aclocal.m4: Regenerate.
1696
1697         * src/Makefile.am (c_shadow_headers): Add features.h,
1698         bits/wrap_features.h.
1699         * src/Makefile.in: Regenerate.
1700         * include/c_std/features.h: New file.
1701         * include/c_std/bits/wrap_features.h (_CPP_WRAP_FEATURES_H): New
1702         file. Need to have c++config.h included before this file so
1703         _ISOC99_SOURCE around.
1704
1705         * include/c_std/sys/cdefs.h: Hack.
1706         * include/c_std/stdlib.h: Same, use c++config.h.
1707         * include/c_std/bits/std_cstdlib.h: Use _GLIBCPP_HAVE_STRTOLD.
1708
1709         * include/c_std/bits/std_cassert.h: Fix.
1710         * include/c_std/bits/std_cerrno.h: Make consistent.
1711
1712         * include/c_std/bits/std_csetjmp.h (setjmp): Unscope global
1713         declaration from ::_C_legacy to _C_legacy.
1714
1715         * include/c_std/bits/std_cstdio.h: same with printf.
1716         * include/c_std/stdio.h: And here.
1717
1718         * include/c_std/bits/std_cstdlib.h: abort, exit comment.
1719         * include/c_std/stdlib.h: Same here.
1720         
1721 2000-10-23  Benjamin Kosnik  <bkoz@redhat.com>
1722
1723         * testsuite/21_strings/compare.cc (test01): Add using declarations.
1724
1725         * include/c_std/bits/std_cerrno.h: And here.
1726         * include/c_std/bits/std_cassert.h: Tweaks.
1727
1728         * mkcheck.in: Simplify.
1729         
1730         * acinclude.m4 (GLIBCPP_ENABLE_LONG_DOUBLE): Simplify.
1731         (GLIBCPP_ENABLE_LONG_LONG): Same.
1732         * aclocal.m4: Regenerate.
1733
1734         * src/Makefile.am (c_shadow_headers): Add features.h,
1735         bits/wrap_features.h.
1736         * src/Makefile.in: Regenerate.
1737         * include/c_std/features.h: New file.
1738         * include/c_std/bits/wrap_features.h (_CPP_WRAP_FEATURES_H): New
1739         file. Need to have c++config.h included before this file so
1740         _ISOC99_SOURCE around.
1741
1742         * include/c_std/sys/cdefs.h: Hack.
1743         * include/c_std/stdlib.h: Same, use c++config.h.
1744         * include/c_std/bits/std_cstdlib.h: Use _GLIBCPP_HAVE_STRTOLD.
1745
1746         * include/c_std/bits/std_cassert.h: Fix.
1747         * include/c_std/bits/std_cerrno.h: Make consistent.
1748
1749         * include/c_std/bits/std_csetjmp.h (setjmp): Unscope global
1750         declaration from ::_C_legacy to _C_legacy.
1751
1752         * include/c_std/bits/std_cstdio.h: same with printf.
1753         * include/c_std/stdio.h: And here.
1754
1755         * include/c_std/bits/std_cstdlib.h: abort, exit comment.
1756         * include/c_std/stdlib.h: Same here.
1757         
1758 2000-10-21  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1759
1760         * acinclude.m4 (GLIBCPP_ENABLE_LONG_DOUBLE): New macro.
1761         * aclocal.m4: Regenerate.
1762         * configure.in: Use it.
1763         * configure: Regenerate.
1764         * src/complexl.cc: Fixup.
1765         * include/c_std/bits/std_cmath.h: Fixup.
1766         * include/c/bits/std_cmath.h: Fixup.
1767         * docs/configopts.html: Add docs.
1768         
1769         * docs/links.html: Add links to defects list, standards FAQ.
1770
1771         * testsuite/21_strings/ctor_copy_dtor.cc (test01): Disable tests
1772         with string creation that allocate huge ammounts of memory.
1773
1774         * include/c/bits/std_cstddef.h: Put size_t, ptrdiff_t in
1775         namepace std.
1776
1777 2000-10-21  Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
1778
1779         * libsupc++/exception.cc: Use namespace std.
1780         * libsupc++/new: DITTO.
1781         * libsupc++/new_op.cc: DITTO.
1782         * libsupc++/new_opnt.cc: DITTO.
1783         * libsupc++/new_opv.cc: DITTO.
1784         * libsupc++/new_opvnt.cc: DITTO.
1785         * libsupc++/tinfo.cc: DITTO.
1786         * libsupc++/tinfo.h: DITTO.
1787         * libsupc++/vec.cc: DITTO.
1788         * libsupc++/Makefile.am: Blank lines removal.
1789
1790 2000-10-21  Joseph S. Myers  <jsm28@cam.ac.uk>
1791
1792         * docs/configopts.html, docs/install.html, docs/17_intro/BADNAMES,
1793         docs/17_intro/howto.html, docs/18_support/howto.html,
1794         docs/19_diagnostics/howto.html, docs/20_util/howto.html,
1795         docs/21_strings/howto.html, docs/22_locale/howto.html,
1796         docs/23_containers/howto.html, docs/24_iterators/howto.html,
1797         docs/25_algorithms/howto.html, docs/26_numerics/howto.html,
1798         docs/27_io/howto.html, docs/ext/howto.html, docs/faq/index.html:
1799         Remove many EGCS references; use current absolute URLs on
1800         gcc.gnu.org or sources.redhat.com for messages in list archives.
1801         * docs/faq/index.txt: Regenerate.
1802
1803 2000-10-19  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1804
1805         * testsuite/22_locale/codecvt_unicode_char.cc (test01): Adjust
1806         creation of state_type for unicode_codecvt to take into account
1807         the byte order markings. Add distinct tests for UCS-2BE and UCS-2LE.
1808         * testsuite/22_locale/codecvt_unicode_wchar_t.cc (test01): Same.
1809         * include/bits/codecvt.h (__enc_traits): Add support for encodings
1810         that need a byte order marker. Needed for correct unicode support.
1811
1812         * src/locale.cc: Remove explicit qualification std::.
1813         (locale::locale(const char* __name)): Revert, as named locale
1814         support not finished.
1815         * src/localename.cc (locale::_Impl:: _Impl(size_t __numfacets,
1816         size_t __refs, bool __has_name = false, string __name): Move
1817         default argument...
1818         * include/bits/localefwd.h: Here.
1819         
1820 2000-10-18  Chip Salzenberg  <chip@valinux.com>
1821
1822         * libio/libio.h (_IO_USER_LOCK): Define.
1823
1824 2000-10-18  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1825
1826         * libsupc++/Makefile.am (exception): Change exception.cc to
1827         exception_support.cc.
1828         (CXXLINK): Remove bogus --tag CC.
1829         * libsupc++/Makefile.in: Regenerate.
1830         * libsupc++/exception.cc: Move to...
1831         * libsupc++/exception_support.cc: ...here.
1832
1833         * src/Makefile.am: Remove bogus --tag CC.
1834         * src/Makefile.in: Regenerate.
1835         
1836         * include/bits/locale_facets.tcc (use_facet): Simplify.
1837         * include/bits/locale_facets.h (use_facet<ctype<char> >): Correct
1838         use_facet declaration. Replace 'const ctype<T>' with ctype<T>.
1839         (use_facet<ctype<wchar_t> >): Same.
1840         * src/locale-inst.cc: Remove explicit instantiation.
1841         * src/locale.cc: Correct signature here too.
1842         (_Bad_use_facet::what()): Correct error string.
1843         * include/bits/localefwd.h: Correct comment.
1844
1845         * mkcheck.in (C_DIR): Change libsupc++/include to libsupc++.
1846
1847 2000-10-17  Martin Buchholz <martin@xemacs.org>
1848
1849         * testsuite/27_io/istream_seeks.cc: Fix spelling typo.
1850         * testsuite/27_io/ostream_seeks.cc: Similarly.
1851
1852 2000-10-17  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1853
1854         via Alexandre Oliva  <aoliva@redhat.com>
1855         * libsupc++/Makefile.am: Add --tag CXX, --tag CC, comments.
1856         * libsupc++/Makefile.in: Regenerate.
1857         * src/Makefile.am: Duplicate code.
1858         * src/Makefile.in: Regenerate.
1859         
1860         * acinclude.m4 (GLIBCPP_ENABLE_RELIBGCC): Take this out.
1861         * aclocal.m4: Regenerate.
1862         * configure.in: And here.
1863         * configure: Regenerate.
1864
1865         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Disable
1866         test for SECTION_LDFLAGS.
1867
1868 2000-10-16  Benjamin Kosnik  <bkoz@gnu.org>
1869
1870         Shadow headers would work if libsupc++ was strict about namespaces.
1871         This only possible if g++ maps std::size_t -> size_t. (Hint hint.)
1872         * include/c_std/assert.h: Add guards.
1873         * include/c_std/bits/std_climits.h: Correct typo.
1874         * include/c_std/ctype.h: Remove #error.
1875
1876         * libio/libioP.h: Break up extern "C" bits around includes.
1877         * libio/libio.h: Only include C headers, or else _C_legacy namespaces
1878         will be nested.
1879         * libio/libioP.h: Same here.
1880
1881 2000-10-15 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
1882
1883         * include/c_std/unistd.h: Define some types only when defined in
1884         the original unistd.h.
1885         * include/c_std/bits/std_cstddef.h: Explicitly ask for the
1886         definition of size_t, ptrdiff_t and NULL.
1887         * include/c_std/bits/wrap_unistd.h: Blank lines removal.
1888
1889 2000-10-15  Phil Edwards  <pme@sources.redhat.com>
1890
1891         * docs/configopts.html:  Remove libgcc-rebuild; HTML formatting.
1892
1893 2000-10-13  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1894             Mark Harig  <markh@landmark.com>
1895
1896         * src/Makefile.am (toolexeclibdir): Add support fo
1897         VERSION_SPECIFIC_LIBS and --with-gxx-include-dir.
1898         * src/Makefile.in: Regenerate.
1899         * libsupc++/Makefile.am: Same.
1900         (glibcppinstalldir): Adjust.
1901         * libsupc++/Makefile.in: Regenerate.
1902         * Makefile.am: Remove gxx_include_dir. Remove INCLUDE. 
1903         * Makefile.in: Regenerate.
1904         * docs/configopts.html: Add descriptions of flags.
1905         
1906 2000-10-11  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1907
1908         * libsupc++/Makefile.am: Use it.
1909         * libio/Makefile.am: Use it.
1910         * libmath/Makefile.am: Use it.
1911         * src/Makefile.am: Use it.
1912         * Makefile.am (AM_MAKEFLAGS): Remove includes.
1913
1914         * acinclude.m4 (GLIBCPP_EXPORT_INCLUES): Move include macros here.
1915         (GLIBCPP_EXPORT_FLAGS): Move CXX flag setting here.
1916         * configure.in: Use it.
1917
1918         * mkcheck.in (SRC_DIR): Use C_INCLUDE_DIR.
1919
1920         * src/Makefile.am (CXXCOMPILE): Remove.
1921         * src/Makefile.in: Regenerate.
1922         * libsupc++/Makefile.am (CXXCOMPILE): Same here.
1923         * libsupc++/Makefile.in: Regenerate.
1924
1925         * include/c_std/*: Merge with shadow.
1926         * include/c_std/bits/*: Same.
1927
1928         * shadow: Remove directory.
1929         * shadow/*: De-populate.
1930         
1931 2000-10-11  Phil Edwards  <pme@sources.redhat.com>
1932
1933         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES):  Comment out
1934           exception-throwing code for linker test.
1935         * aclocal.m4:  Regenerate.
1936         * configure:  Regenerate.
1937
1938 2000-10-10  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1939
1940         * Makefile.am (LIBSUPCXX_INCLUDES): Adjust.
1941         * libsupc++/include: Remove
1942         * libsupc++/include/*: Move to ...
1943         * libsupc++: Here.
1944         * libsupc++/Makefile.am (glibcppinstall_HEADERS): Install headers.
1945         (glibcppinstalldir): New.
1946         
1947         * src/Makefile.am (c_base_headers): New.
1948         (c_shadow_headers): New
1949         (c_headers): New.
1950         (myinstallheaders): Correct install issues.
1951         * src/Makefile.in: Regenerate.
1952         
1953         * Makefile.am (CSHADOW_INCLUDES): Simplify.
1954         * Makefile.in: Regenerate.
1955         * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Add c_include_dir.
1956         * aclocal.m4: Regenerate.
1957         * mkcheck.in (SRC_DIR): Use it.
1958         
1959         * include/bits/std_stdexcept.h: And here.
1960         * include/bits/std_ios.h: Change std_exception.h to exception.
1961         * src/locale.cc: And here.
1962         * src/locale-inst.cc: And here.
1963         
1964         * include/bits/valarray_array.h: And here.
1965         * include/bits/stl_alloc.h: And here.
1966         * include/bits/stl_algobase.h: And here.
1967         * include/bits/pthread_allocimpl.h: And here.
1968         * include/bits/stl_construct.h: Change to std_new.h to new.
1969
1970         * include/bits/locale_facets.h: Change std_typeinfo.h to typeinfo.
1971
1972         * src/Makefile.am (INCLUDES): Add LIBSUPCXX_INCLUDES.
1973         (headers): Remove duplicated headers.
1974         (std_headers): And here.
1975         * src/Makefile.in: Regenerate.
1976         * libsupc++/Makefile.am (LIBSUPCXX_INCLUDES): Remove.
1977         * libsupc++/Makefile.in: Regenerate.
1978         * Makefile.am (LIBSUPCXX_INCLUDES): Add here.
1979         (AM_MAKEFLAGS): And here.
1980         * Makefile.in: Regenerate.
1981         * include/bits/std_typeinfo.h: Remove.
1982         * include/bits/std_new.h: Remove
1983         * include/bits/std_exception.h: Remove.
1984         * std/new: Remove.
1985         * std/typeinfo: Remove.
1986         * std/exception: Remove.
1987
1988         * libio/_G_config.h (__need_ptrdiff_t): Add.
1989         
1990         * libsupc++/include/new: Change stddef.h to cstddef.
1991         * libsupc++/tinfo.h: Change limits.h to climits.
1992         * libsupc++/pure.cc: Comment out _GNU_LIBRARY_ bits, as this
1993         renders the file uncompilable. Add copyright.
1994
1995         * include/c_std/bits/std_cstddef.h: Don't bring wchar_t into std
1996         namespace, as it is a fundamental type.
1997
1998 2000-10-09  Richard Henderson  <rth@cygnus.com>
1999
2000         * libsupc++/pure.cc: New file.
2001         * libsupc++/Makefile.am (INCLUDES): Add top_builddir.
2002         (sources): Add pure.cc.
2003         * libsupc++/Makefile.in: Regenerate.
2004
2005 2000-10-09  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2006
2007         * docs/configopts.html: Edit.
2008
2009         * libio/Makefile.am (INCLUDES): Remove duplicates, simplify.
2010         * libio/Makefile.in: Regenerate.
2011         * libmath/Makefile.am (INCLUDES): Remove duplicates, simplify.
2012         * libmath/Makefile.in: Regenerate.
2013         * libsupc++/Makefile.am (INCLUDES): Remove duplicate.
2014         * libsupc++/Makefile.in: Regenerate.
2015
2016         * Makefile.am (AM_MAKEFLAGS): Add GLIBCPP_INCLUDES,
2017         TOPLEVEL_INCLUDES, LIBMATH_INCLUDES, LIBIO_INCLUDES,
2018         CSHADOW_INCLUDES up here.
2019         * Makefile.in: Regenerate.
2020         * src/Makefile.am (CSHADOW_INCLUDES): Add include/c_std, include/c
2021         for shadow headers.
2022         (myinstallheaders): Change glibcpp_includedir to GLIBCPP_INCLUDES.
2023         Move GLIBCPP_INCLUDES, TOPLEVEL_INCLUDES, LIBMATH_INCLUDES,
2024         LIBIO_INCLUDES, CSHADOW_INCLUDES up Makefile hierarchy.
2025         * src/Makefile.in: Regenerate.
2026         
2027         * include/c: New directory.
2028         * include/c/bits/(std_cassert.h, std_cctype.h, std_cerrno.h,
2029         std_cfloat.h, std_climits.h, std_clocale.h, std_cmath.h,
2030         std_csetjmp.h, std_csignal.h, std_cstdarg.h, std_cstddef.h,
2031         std_cstdio.h, std_cstdlib.h, std_cstring.h, std_ctime.h,
2032         std_cwchar.h, std_cwctype.h): Add, moving from...
2033         * include/bits: ...here.
2034         * include/c_std: New directory.
2035         * include/c_std/bits/*: Populate from...
2036         * shadow: ...here. Remove directory.
2037         
2038 2000-10-08   Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2039
2040         * libsupc++/Makefile.am (INCLUDES): Add toplevel include directory.
2041         (INCLUDES): Add glibcpp_includedir.
2042         * libsupc++/Makefile.in: Regenerate.
2043
2044         * acinclude.m4 (GLIBCPP_CHECK_OS): Link to os_defines.h.
2045         * aclocal.m4: Regenerate.
2046         * config/os/*/bits/os_defines: Adjust copyright dates.
2047         
2048 2000-10-08  Phil Edwards  <pme@sources.redhat.com>
2049
2050         * include/bits/c++config:  Include <bits/os_defines.h>
2051         * config/os/aix/bits/os_defines.h:  New file.
2052         * config/os/bsd/bits/os_defines.h:  Ditto.
2053         * config/os/generic/bits/os_defines.h:  Ditto.
2054         * config/os/gnu-linux/bits/os_defines.h:  Ditto.
2055         * config/os/irix/bits/os_defines.h:  Ditto.
2056         * config/os/newlib/bits/os_defines.h:  Ditto.
2057         * config/os/solaris/solaris2.5/bits/os_defines.h:  Ditto.
2058         * config/os/solaris/solaris2.6/bits/os_defines.h:  Ditto.
2059         * config/os/solaris/solaris2.7/bits/os_defines.h:  Ditto.
2060
2061 2000-10-07  David Edelsohn  <dje@watson.ibm.com> 
2062         
2063         * config/os/aix/bits/atomicity.h: New file.
2064
2065 2000-10-07  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2066         
2067         * acinclude.m4: Remove CPU_FLAGS
2068         * libio/Makefile.am: Here too.
2069         * Makefile.am: Here too.
2070         
2071         * src/Makefile.am (CONFIG_INCLUDES): Remove.
2072         (INCLUDES): Remove CONFIG_INCLUDES.
2073         (cpu_headers): Remove.
2074         (myinstallheaders): Remove cpu_headers.
2075         (generated_headers): Rename to build_headers.
2076         (build_headers): Add atomicity.h, ctype_base.h,
2077         ctype_specializations.h.
2078         
2079         * config/os: New directory.
2080         * config/aix: Move to...
2081         * config/bsd: Move to...
2082         * config/generic: Move to...
2083         * config/gnu-linux: Move to...
2084         * config/irix: Move to...
2085         * config/newlib: Move to...
2086         * config/solaris: Move to...
2087         * config/os/*: Here.
2088
2089 2000-10-07  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2090
2091         * acinclude.m4: Remove CPU_FLAGS
2092         * libio/Makefile.am: Here too.
2093         * Makefile.am: Here too.
2094         
2095         * src/Makefile.am (CONFIG_INCLUDES): Remove.
2096         (INCLUDES): Remove CONFIG_INCLUDES.
2097         (cpu_headers): Remove.
2098         (myinstallheaders): Remove cpu_headers.
2099         (generated_headers): Rename to build_headers.
2100         (build_headers): Add atomicity.h, ctype_base.h,
2101         ctype_specializations.h.
2102
2103         * config/os: New directory.
2104         * config/aix: Move to...
2105         * config/bsd: Move to...
2106         * config/generic: Move to...
2107         * config/gnu-linux: Move to...
2108         * config/irix: Move to...
2109         * config/newlib: Move to...
2110         * config/solaris: Move to...
2111         * config/os/*: Here.
2112         
2113 2000-10-06  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2114
2115         * src/Makefile.am: Remove OPTIMIZE_CXXFLAGS, WARN_CXXFLAGS,
2116         CONFIG_CXXFLAGS from here, and move to...
2117         * src/Makefile.in: Regenerate.
2118         * Makefile.am: ... here. Clean.
2119         (OPTIMIZE_CXXFLAGS): Move up Makefile hierarchy to here.
2120         (WARN_CXXFLAGS): Same.
2121         (CONFIG_CXXFLAGS): Same.
2122         * Makefile.in: Regenerate.
2123         * libsupc++/Makefile.am: Use top-level OPTIMIZE_CXXFLAGS,
2124         WARN_CXXFLAGS, CONFIG_CXXFLAGS as part of local AM_CXXFLAGS.
2125         * libsupc++/Makefile.in: Regenerate.
2126                 
2127         Change math to libmath.
2128         * math: Move to libmath, delete.
2129         * libmath: New directory.
2130         * libmath/*: Populate.
2131         * src/Makefile.am (LIBMATH_INCLUDES): Change to libmath.
2132         (libstdc___la_LIBADD): Same.
2133         * src/Makefile.in: Regenerate.
2134         * configure.in: Add AC_OUTPUT for libmath/Makefile.
2135         * configure: Regenerate.
2136         * Makefile.am (SUBDIRS): Add libmath.
2137         * Makefile.in: Regenerate.
2138         * README (file): Change name.
2139         
2140 2000-10-06  Benjamin Kosnik  <bkoz@cygnus.com>
2141             Richard Henderson  <rth@cygnus.com>
2142             Alexandre Oliva  <aoliva@redhat.com>
2143         
2144         * libsupc++: New directory.
2145         * libsupc++/*: Populate.
2146         * libsupc++/Makefile.am (INCLUDES): Add -I../../gcc for
2147         eh-common.h, gansidecl.h.
2148         * configure.in: Add in libsupc++/Makefile to AC_OUTPUT.
2149         * configure: Regenerate.
2150         * Makefile.am (SUBDIRS): Add libsupc++.
2151         * Makefile.in: Regenerate.
2152         * src/Makefile.am (libstdc___la_LIBADD): Add in libsupc++.la
2153         * src/Makefile.in: Regenerate.
2154         * libio/Makefile.am: Remove extraneous, confusing bits.
2155         * libio/Makefile.in: Regenerate.
2156         
2157 2000-10-05  Brent Verner  <brent@rcfile.org>
2158
2159         * bits/istream.tcc [basic_istream::get(basic_streambuf&)]: Removed
2160         test for _M_gcount < in_avail(), as in_avail() only reports info
2161         for current buffer, causing method to return at end of buffer.
2162         * testsuite/27_io/istream_unformatted.cc [test07()]: New test.
2163         * testsuite/27_io/istream_unformatted-3.txt: New file.
2164         * testsuite/27_io/istream_unformatted-3.tst: New file.
2165
2166 2000-10-05  Benjamin Kosnik  <bkoz@fillmore.constant.com>
2167
2168         * README (file): Adjust directory structures.
2169         * mkcheck.in (INC_PATH): Adjust for header changes.
2170
2171 2000-10-05  Phil Edwards  <pme@sources.redhat.com>
2172
2173         * acinclude.m4 (GLIBCPP_CHECK_CTYPE):  Tweaks to message texts
2174           for public relations purposes.
2175         * aclocal.m4:  Regenerated.
2176         * configure:  Regenerated.
2177
2178         * docs/ext/howto.html:  Additional explanation about hashing.
2179
2180 2000-10-05  Benjamin Kosnik  <bkoz@cygnus.com>
2181
2182         * include: New directory.
2183         * include/backward: New directory.
2184         * include/bits: New directory.
2185         * include/ext: New directory.
2186         * include/std: New directory.
2187         * include/*/*: Populate.
2188
2189         * backwards: Move to include/backwards, delete.
2190         * bits: Move to include/bits, delete.
2191         * ext: Move to include/ext, delete.
2192         * std: Move to include/std, delete.
2193         
2194         * src/complex.cc: Adjust include of mathconf.
2195
2196         * mkc++config (BASE_H): Add include.
2197
2198         * src/Makefile.am: Support for topleve sources include directory.
2199         (INCLUDES): Add LIBMATH_INCLUDE.
2200         * src/Makefile.in: Regenerate.
2201         * math/Makefile.am (INCLUDES): Append /include.
2202         * math/Makefile.in: Regenerate.
2203         * libio/Makefile.am (INCLUDES): Add glibcpp_includedir.
2204         * libio/Makefile.in: Regenerate.
2205         
2206 2000-10-04  Benjamin Kosnik  <bkoz@gnu.org>
2207
2208         * libio/_G_config.h : Re-guard the __mbstate_t declaration.
2209
2210 2000-10-03  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2211
2212         * docs/22_locale/howto.html: Add link to proto-documentation on
2213         locales.
2214         * docs/documentation.html: Rename links for clarity.
2215
2216         * src/Makefile.am (headers): Remove unistd.h, wrap_unistd.h. Add
2217         fcntl.h, iolibio.h, libioP.h, pthread.h, iconv.h. 
2218         * src/Makefile.in: Regenerate.
2219         
2220 2000-10-02  Steven King  <sxking@uswest.net>
2221
2222         * mkcshadow: Fixed script to output proper include guard.
2223         * bits/char_traits.h: Cleaned up types in char_traits<char> functions.
2224         * libio/_G_config.h: Hacked to make work with shadow heraders.
2225         * shadow/*: Hacked to make shadow headers work. 
2226
2227 2000-10-02  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2228
2229         Self-compile with shadow headers.
2230         * acconfig.h (_GLIBCPP_USE_SHADOW_HEADERS): Define. Eventually,
2231         like _GLIBCPP_USE_NAMESPACES before it, this macro will die when
2232         it becomes the default way the library is built.
2233         * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): New macro.
2234         * config/gnu-linux/bits/ctype_base.h (ctype_base): Use it.
2235         * config/gnu-linux/ctype.cc (ctype): Use it.
2236         
2237         * src/localename.cc (locale::_Impl::_M_replace_categories): Remove
2238         call to assert.
2239         * src/locale.cc: Explicitly cast mbstate_t to void* in calls to
2240         memset. This should not be necessary, but an ambiguous overload
2241         with it in.
2242
2243         * shadow/bits/std_cwchar.h: Fix.
2244         * shadow/wchar.h: Fix.
2245
2246         * config/gnu-linux/bits/ctype_base.h (ctype_base): Inject ctype
2247         enums into namespace std:: for ctype_base enum. Other OS types
2248         will have to do this as well.
2249         * config/gnu-linux/ctype.cc (ctype): Inject ctype data into
2250         namespace std, in particular __ctype_toupper, __ctype_tolower,
2251         __ctype_b.
2252
2253         * shadow/iolibio.h: New file.
2254         * shadow/bits/wrap_iolibio.h: New file.
2255         * shadow/libioP.h: New file.
2256         * shadow/bits/wrap_libioP.h: New file.
2257         * shadow/bits/wrap_fcntl.h: New file.
2258         * shadow/fcntl.h: New file.
2259         * shadow/iconv.h: New file. Inject iconv names into the global
2260         namespace, unmangled for the moment.
2261         * shadow/bits/wrap_iconv.h: New file.
2262         * shadow/unistd.h: Remove. Useless.
2263         * shadow/bits/wrap_unistd.h: Remove.
2264         
2265         * src/Makefile.am: Take out machine-ansi.h, add fcntl.h unistd.h.
2266         * src/Makefile.in: Regenerate.
2267         
2268         * config/c_io_libio.h (_IO_codecvt): Change to normal C++ decl.
2269         
2270         * shadow/libio.h: Fix.
2271         * shadow/bits/wrap_libio.h: Fix.
2272
2273         * shadow/bits/std_clocale.h: Remove typedef struct construct,
2274         which will not compile.
2275         * shadow/bits/std_ctime.h: Same.
2276         
2277         * shadow/pthread.h: New file. Put pthreads types and functions
2278         into global scope, which is probably not the correct long-term
2279         solution but has to be done at the moment before libio wrappers
2280         can even be started.
2281         * shadow/bits/wrap_pthread.h: New file.
2282
2283         * bits/std_ios.h: Formatting tweak.
2284         * shadow/bits/std_cstdio.h: Format. Remove extraneous bits.
2285
2286         * acinclude.m4 (GLIBCPP_CHECK_COMPILER_FEATURES): Add -Werror to
2287         tests for compiler features.
2288         * aclocal.m4: Regenerate.
2289         * configure: Regenerate.
2290         
2291         * config/c_io_libio.cc: Remove fcntl.h include, as SEEK_SET
2292         redefined.
2293         * libio/libioP.h: Comment out fcntl.h include.
2294
2295         * shadow/math.h: Add in float and long declarations, as per ISO C9X.
2296
2297         * bits/c++config: Define _ISOC99_SOURCE.
2298
2299         * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Add -fno-builtins to
2300         CSHADOWFLAGS, as well as _ISOC99_SOURCE.
2301         * aclocal.m4: Regenerate.
2302         * configure: Regenerate.
2303         * src/Makefile.am (CSHADOW_INCLUDES): Enable, again.
2304         (CSHADOW_INCLUDES): Add -I$(top_srcdir)/std before shadow include dir.
2305         (CXXCOMPILE): Remove $(DEFS), which searches $(top_srcdir) before
2306         std or shadow directories.
2307         (LTCXXCOMPILE): Same.
2308         (INCLUDES): Add $(top_builddir) before $(top_srcdir).
2309         (AC_CXXFLAGS): Add CSHADOWFLAGS.
2310         * src/Makefile.in: Regenerate.
2311
2312         * src/complex.cc (FCT): Change ::name to name.
2313         * src/complexl.cc (FCT): Same. Use _GLIBCPP_USE_LONG_LONG here.
2314         * src/complexf.cc (FCT): Same.
2315
2316         * src/complexf.cc: Remove FCT define, as things are properly
2317         overloaded in the std namespace with the shadow headers.
2318         * src/complexl.cc: Same.
2319         * src/complex.cc: Same.
2320         
2321 2000-09-25  Phil Edwards  <pme@sources.redhat.com>
2322
2323         * docs/documentation.html:  Add link to...
2324         * docs/ext/howto.html:  ...this.  New dir/file, describing library
2325           extensions (both ours and SGI's).
2326         * docs/faq/index.html:  Small updates.
2327         * docs/faq/index.txt:  Regenerate.
2328
2329 2000-09-25 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
2330
2331         * bits/basic_file.h (_M_open_mode): Remove extra qualifier.
2332
2333 2000-09-25  Levente Farkas  <lfarkas@mindmaker.hu>
2334
2335         * ext/stl_hashtable.h (_M_copy_from): Change __copy to __local_copy.
2336         
2337 2000-09-19  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2338
2339         * src/localename.cc (locale::_Imp) : Remove typedefs.   
2340         * bits/localefwd.h (locale::locale(const locale& __other, _Facet*
2341         __f): Consistency check, call _Imp ctor with reference argument
2342         of 1.
2343         * bits/localefwd.h: Change _S_num_categories to
2344         _S_categories_num. Add new data member, _S_facets_num, which is
2345         the number of standard facets.
2346
2347 2000-09-19  Phil Edwards  <pme@sources.redhat.com>
2348
2349         * docs/21_strings/howto.html:  Fix editor lossage from last commit.
2350
2351 2000-09-19  Phil Edwards  <pme@sources.redhat.com>
2352
2353         * docs/thanks.html:  More thanks.
2354         * docs/18_support/howto.html:  Fix thinko.
2355         * docs/21_strings/howto.html:  Minor tweaks and updates to URLs.
2356           Redo the string transformation notes and link to...
2357         * docs/22_locale/howto.html:  ...here.
2358
2359 2000-09-18  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2360
2361         * src/locale-inst.cc: Add time_put_byname and
2362         time_get_byname instantiations.
2363         * bits/locale_facets.h: Correct default, private derivation to
2364         public derivation in _byname declarations.
2365         * src/locale.cc (locale::classic()): Simplify.
2366         * src/localename.cc (locale::_Impl:: _Impl(const _Impl& __other,
2367         const string& __name, category __cat, size_t __refs): Re-work for
2368         named locales.
2369         (_M_normalize_category_names): Remove.
2370
2371         * testsuite/22_locale/global_templates.cc (test01): Tweaks.
2372         * testsuite/22_locale/ctor_copy_dtor.cc (test01): More tests.
2373
2374 2000-09-18  Yuri V. Baskakov  <yuribsk@lab.sun.mcst.ru>
2375
2376         * bits/std_bitset.h (operator>>): Change to char_type.
2377
2378 2000-09-15  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2379
2380         * src/locale.cc (locale::locale(const char* __name)): Consolidate
2381         name setting. Add checks for NULL __name pointers. Remove calls to
2382         _S_initialize() as initial locale initialization can either be
2383         assumed, or needs to be made consistent throughout locale
2384         constructors.
2385         (locale::locale(const locale& __other, const char* __name,
2386         category __cat): Add checks for NULL name. Add checks for
2387         assignment to self.
2388         * src/localename.cc (locale::_Impl:: _Impl(const _Impl& __other,
2389         const string& __name, category __cat, size_t __refs)): Set correct
2390         name, has_name values.
2391         * testsuite/22_locale/ctor_copy_dtor.cc (test01): More tests.
2392         * docs/22_locale/locale.html: New file, more unfinished docs...
2393         
2394 2000-09-14  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2395
2396         * src/locale.cc (locale::name()): Implement.
2397         (_Impl(size_t __numfacets, size_t __refs, bool __namep = false,
2398         string __name = "*")): Change signature.
2399         (locale::classic): Initialize the "C" locale as a named locale.
2400         * bits/localefwd.h (locale): Change _M_num_references to
2401         _M_references. Eliminate _M_cached_name_ok. Rename _M_cached_name
2402         to _M_name.
2403         * bits/localefwd.h: Tweaks.
2404         * src/localename.cc: Tweaks.
2405         * testsuite/22_locale/ctor_copy_dtor.cc (test01): Add tests.
2406         (test01): Fix.
2407
2408         * bits/basic_string.h: Consistency check, change _M_state ->
2409         _M_references.
2410
2411 2000-09-14  Brendan Kehoe  <brendan@zen.org>
2412
2413         * bits/string.tcc (_Rep::_S_max_size): Use typename for its size_type
2414         return type.
2415
2416         * src/Makefile.an (headers): Also install backward/fstream.h.
2417         * src/Makefile.in: Regenerate.  
2418
2419         * bits/char_traits.h (char_traits<_CharT>::get_state,
2420         char_traits<char>::get_state, char_traits<wchar_t>::get_state): Pass
2421         argument in by reference, not by value. Uglify to _S_get_state.
2422         (char_traits<*>::__eos): Uglify to _S_eos.
2423         * bits/std_ostream.h (ends(basic_ostream<_CharT, _Traits>& __os)):
2424         Change __eos to _S_eos.
2425         
2426 2000-09-13  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2427
2428         * testsuite/22_locale/static_members.cc: New file.
2429         * testsuite/22_locale/ctor_copy_dtor.cc: New file.
2430         * src/locale.cc: Minor formatting tweaks.
2431
2432 2000-09-12  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2433
2434         * testsuite/22_locale/global_templates.cc (test01): Add negative
2435         tests for use_facet.
2436
2437         * bits/localefwd.h (locale::operator()): Minor tweaks.
2438         * bits/locale_facets.tcc (locale::operator()): Same.
2439         * testsuite/22_locale/operators.cc: New file.
2440
2441         * testsuite/22_locale/facet.cc (output_iterator): Remove
2442         gnu_input_iterator, gnu_output_iterator.
2443
2444 2000-09-11  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2445
2446         * acinclude.m4 (GLIBCPP_CHECK_GNU_MAKE): Remove test != "0". 
2447         * aclocal.m4: Regenerate.
2448         * configure: Regenerate.
2449
2450         * bits/c++config (__GLIBCPP__): Update, in the hopes of making a
2451         snapshot release soon.
2452         (_GNU_SOURCE): Define this in the header files, as ISO C99 support
2453         is pretty much assumed.
2454
2455         * testsuite/22_locale/global_templates.cc: New file. Add tests for
2456         use_facet and has_facet.
2457
2458         * bits/codecvt.h (codecvt<_InT, _ExT, __enc_traits>::do_out):
2459         Modify/correct iconv signatures for glibc2.2.
2460
2461 2000-09-10  Branko Cibej  <branko.cibej@hermes.si>
2462
2463         * acinclude.m4 (GLIBCPP_CHECK_GNU_MAKE): Replace "grep -q" with
2464           "grep -c".
2465
2466 2000-09-09  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2467
2468         * bits/localefwd.h (locale::_Impl): Scope out types to public.
2469         (locale): Make _Impl declaration public.
2470
2471 2000-09-08  Felix Natter  <fnatter@gmx.net>
2472
2473         * docs/17_intro/porting-howto.html:  New version.
2474
2475 2000-09-07  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2476
2477         * config/cpu/i386/bits/atomicity.h (__exchange_and_add): Change unused
2478         to __unused__.
2479         * config/cpu/ia64/bits/atomicity.h (__exchange_and_add): And here.
2480         * config/cpu/i486/bits/atomicity.h (__exchange_and_add): And here.
2481
2482 2000-09-07  Phil Edwards  <pme@sources.redhat.com>
2483
2484         Add bits for --enable-maintainer-mode:
2485         - turns on enable_debug
2486           (doing "--enable-maint --disable-debug" will DTRT)
2487         - turns on -Werror, now off by default
2488         * acinclude.m4: Add bits.
2489         * aclocal.m4: Regenerate.
2490         * configure.in: Add defaults for GLIBCPP_ENABLE_DEBUG.
2491         * configure: Regenerate.        
2492         
2493 2000-09-07  Benjamin Kosnik  <bkoz@cygnus.com>
2494
2495         * bits/std_cwctype.h: Remove yesterday's hacks.
2496
2497 2000-09-07  Brad Garcia  <bgarcia@laurelnetworks.com>
2498
2499         * bits/stl_tree.h: Make operators !=, == type safe for map, set.
2500         * testsuite/23_containers/set_operators.cc: New file. Should not
2501         compile.  
2502         * testsuite/23_containers/map_operators.cc: New file. Ditto.
2503         
2504 2000-09-06  Richard Henderson  <rth@cygnus.com>
2505             Benjamin Kosnik  <bkoz@cygnus.com>
2506
2507         * acinclude.m4 (GLIBCPP_CHECK_CPU): Add ia64 support.
2508         * aclocal.m4: Regenerate.
2509         * configure: Regenerate.
2510         * config/cpu/ia64: New directory.
2511         * config/cpu/ia64/bits: New directory.
2512         * config/cpu/ia64/bits/atomicity.h: New file.
2513         
2514 2000-09-06  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2515         
2516         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Force glibc_satisfactory
2517         to no, so that libstdc++-v3's libio will be built on glibc-2.2
2518         systems. 
2519         * aclocal.m4: Regenerate.
2520         * configure: Regenerate.
2521         * */Makefile.in: Regenerate.
2522
2523         * bits/std_cwctype.h: Put in temporary hack to work around -O2 +
2524         glibc 2.1.x unsigned errors. Or disable -Werror by default...
2525
2526         * testsuite/23_containers/vector_element_access.cc: New file.
2527         * bits/stl_config.h (__STL_THROW_RANGE_ERRORS): Define.
2528
2529 2000-09-06  Levente Farkas  <lfarkas@mindmaker.hu>
2530
2531         * bits/string.tcc: Fix up more parameter names.
2532
2533 2000-09-06  Alexandre Oliva  <aoliva@redhat.com>
2534
2535         * configure: Rebuilt with new libtool.m4.
2536
2537 2000-09-01  Benjamin Kosnik  <bkoz@cygnus.com>
2538
2539         * src/locale-inst.cc: Remove pre-instantiation of unicode
2540         codecvt types. Now unnecessary, as locale header now correct.
2541
2542 2000-08-31  Benjamin Kosnik  <bkoz@cygnus.com>
2543
2544         * bits/locale_facets.tcc (_S_build_float_format): Move ...      
2545         * src/locale.cc: Here.          
2546         * bits/locale_facets.tcc (num_get::_M_extract): Clean up generic
2547         definition. Move specialization to ...
2548         * src/locale.cc: Here.  
2549         * bits/locale_facets.tcc: Move _Format_cache specializations to ...
2550         * src/locale.cc: Here.
2551         * bits/locale_facets.tcc: Move use_facet<ctype> specializations to ...
2552         * src/locale.cc: Here.
2553
2554         * bits/std_locale.h: Note that locale_facets.tcc should be
2555         included here, for standards conformance. It may increase
2556         compile times though. For the time being, enable.
2557         * testsuite/22_locale/facet.cc: New file, some parts commented out
2558         for the time being.
2559
2560         * mkcheck.in: Append total time to test summary file.
2561
2562         * bits/sbuf_iter.h : Formatting tweaks.
2563
2564         Clean up static const data member definitions.
2565         * src/locale.cc: Add definitions for all missing locale,
2566         locale::_Imp, and locale::id static data members.
2567         (ctype<char>): Add table_size define.
2568         (money_base): Add _S_default_pattern, uglify.
2569         * bits/localefwd.h: Add definitions for static members of _Count_ones.
2570         * bits/locale_facets.h: Tweaks.
2571         * bits/locale_facets.tcc: Tweaks.       
2572         * bits/string.tcc: Add definition for npos.
2573         * bits/ios_base.h: Tweaks.
2574         * bits/ios_base.h (ios_base::Init::_M_ios_base_init): Change to
2575         _S_ios_base_init.
2576         * src/ios.cc: And here. Add _S_local_words definition.
2577         Add definitions for __ios_flags const static data.
2578         * src/codecvt.cc: Same for __enc_traits.
2579         * src/locale-inst.cc: Remove money_base data member definition
2580         here.
2581
2582 2000-08-30  Benjamin Kosnik  <bkoz@redhat.com>
2583
2584         * testsuite/22_locale/ctype_wchar_t_members.cc (test01): New file.
2585
2586         * docs/22_locale/codecvt.html: Re-number.
2587         * docs/22_locale/howto.html: Add entry for ctype
2588         documentation. Add entry for Nathan's introduction to locales
2589         paper.
2590         * docs/22_locale/ctype.html: New file. In progress...
2591
2592         * docs/22_locale/codecvt.html: Formatting cleanups.
2593         * src/locale.cc (ctype<wchar_t>::do_is): Fix thinko.
2594
2595 2000-08-30  Phil Edwards  <pme@sources.redhat.com>
2596
2597         * docs/22_locale/codecvt.html:  Behind-the-scenes ASCII->HTML
2598           tweaks for certain browsers.
2599
2600 2000-08-29  Benjamin Kosnik  <bkoz@redhat.com>
2601
2602         * bits/locale_facets.h (ctype<char>): Remove __table_type.
2603         Add include for bits/std_cwctype.h, for wctype_t.
2604         * src/locale.cc (ctype<wchar_t>): Implement.
2605         * config/gnu-linux/bits/ctype_base.h (ctype_base): Remove mask
2606         typedef, instead name enum.
2607         * config/gnu-linux/bits/ctype_specializations.h: Tweak.
2608         * config/gnu-linux/ctype.cc: Tweak.     
2609         * testsuite/22_locale/ctype.cc: Tweak.
2610         
2611         * bits/codecvt.h (__enc_traits): Uglify names.
2612         
2613 2000-08-28  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2614
2615         * docs/22_locale/codecvt.html: Add more bits, format. 
2616         * bits/codecvt.h: Add copy ctor, rename types.
2617         * testsuite/22_locale/codecvt_unicode_char.cc: Tweak.
2618         
2619         * libio/iofwide.c: Tweak.
2620         
2621 2000-08-28  Phil Edwards  <pme@sources.redhat.com>
2622
2623         * docs/configopts.html:  Mention new options.
2624         * docs/install.html:  Formatting changes for platform-specific
2625           pre-reqs, previously only Cygwin.
2626         * docs/mail.html:  Fix new link.
2627         * docs/thanks.html:  A couple more people.
2628         * docs/26_numerics/howto.html:  Fix typo.
2629
2630 2000-08-24  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2631
2632         * docs/22_locale/howto.html: Add notes on codecvt implementation.
2633         * docs/22_locale/codecvt.html: New file. In progress.
2634         
2635 2000-08-24  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2636
2637         * acconfig.h: Revert.
2638         * acinclude.m4: Revert.
2639         * libio/_G_config.h: Revert.
2640         * libio/libio.h: Revert.
2641         
2642 2000-08-23  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>      
2643
2644         * bits/codecvt.h: Tweaks.
2645         * testsuite/22_locale/codecvt_unicode_wchar_t.cc (test01): Fix up
2646         initial string literals for UCS4.
2647
2648 2000-08-23  Phil Edwards  <pme@sourceware.cygnus.com>
2649
2650         * acconfig.h:  _GLIBCPP_USING_THREADS and some workaround types added.
2651         * acinclude.m4:  New macro, GLIBCPP_ENABLE_WCHAR.  Set the threads
2652           definition as well, and some minor spelling/spacing fixes.  If
2653           building libio, check for certain typedefs.
2654         * libio/_G_config.h:  Wrap _IO_MTSAFE_IO in _GLIBCPP_USING_THREADS.
2655           Conditionally define _LARGEFILE64_SOURCE, otherwise the 64-bit types
2656           will never be there.
2657         * libio/libio.h:  In the null case, _IO_lock_t can't just be void.
2658         * src/string-inst.cc:  Use _GLIBCPP_USE_WCHAR_T.
2659
2660         * configure.in:  Update the cache a bit more often.
2661
2662         * mkcheck.in:  For check-install, also need to -I the testsuite dir.
2663
2664 2000-08-22  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2665
2666         * src/locale-inst.cc: Add codecvt<unicode_t, wchar_t,
2667         __enc_traits> instantiations for has_facet and use_facet.
2668         * testsuite/22_locale/codecvt_unicode_wchar_t.cc: New file, for
2669         testing two-byte unicode encodings converted to four-byte UCS4
2670         encodings.
2671
2672         * bits/codecvt.h (codecvt<__enc_traits>): Fix do_unshift.
2673         * testsuite/22_locale/codecvt_unicode_char.cc (test01): Add
2674         correct state/encoding information.
2675
2676         * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Add wcsrtombs,
2677         mbsrtowcs checks as codecvt<wchar_t, char, mbstate_t> needs them
2678         now.
2679         Add checks for langinfo.h, nl_langinfo function call.
2680         * libio/iofwide.c (_IO_fwide): Simplify, as nl_langinfo is assumed.
2681
2682 2000-08-22  Richard B. Kreckel  <Richard.Kreckel@Uni-Mainz.DE>
2683
2684         * config/cpu/alpha/bits/atomicity.h: Change __attribute__
2685         ((unused)) to __attribute__ ((__unused__)).
2686         * config/cpu/arm/bits/atomicity.h: Same.
2687         * config/cpu/generic/bits/atomicity.h: Same.
2688         * config/cpu/i386/bits/atomicity.h: Same.
2689         * config/cpu/i486/bits/atomicity.h: Same.
2690         * config/cpu/powerpc/bits/atomicity.h: Same.
2691         * config/cpu/sparc/sparc32/bits/atomicity.h: Same.
2692         * config/cpu/sparc/sparc64/bits/atomicity.h: Same.
2693
2694 2000-08-22  Levente Farkas  <lfarkas@mindmaker.hu>
2695
2696         * bits/basic_string.h: Fix up parameter names.
2697
2698 2000-08-22  Brent Verner <brent@rcfile.org>
2699
2700         * src/Makefile.am (INCLUDES): Put $(CSHADOW_INCLUDES) before
2701         $(top_srcdir)
2702         * src/Makefile.in: Regenerate.
2703         
2704 2000-08-21  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2705
2706         * bits/codecvt.h: Implement codecvt<wchar_t, char, mbstate_t>. Fix
2707         up __enc_traits template so as to be marginally useful.
2708         * src/codecvt.cc: And here.
2709         * bits/char_traits: Tweak.
2710         * bits/locale_facets.h: Tweak.
2711         * bits/locale_facets.tcc: Tweak.
2712         * bits/localefwd.h: Tweak.
2713         * src/locale-inst.cc: Add use_facet/has_facet instantiations here.
2714         * testsuite/22_locale/codecvt_wchar_t_cc.cc: New file.
2715         * testsuite/22_locale/codecvt_char_char.cc: New file.
2716         * testsuite/22_locale/codecvt_unicode_char.cc: New file.
2717         
2718 2000-08-21  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>
2719
2720         * bits/std_cmath.h (std::abs): Overload for int and long.
2721
2722 2000-08-20  Benjamin Kosnik  <bkoz@gnu.org>
2723
2724         * src/string-inst.cc: Tweak instantiations for new-gxx-abi.
2725
2726 2000-08-19  Gabriel Dos Reis  <gdr@codesourcery.com>
2727
2728         * bits/valarray_array.h (__valarray_min, __valarray_max): Fix
2729         thinko. Diagnostic messages really need to be improved for
2730         template argument deduction.
2731
2732 2000-08-18  Benjamin Kosnik  <bkoz@gnu.org>
2733
2734         * bits/valarray_meta.h: Fix typos...
2735
2736 2000-08-18  Gabriel Dos Reis  <gdr@codesourcery.com>
2737
2738         * bits/valarray_meta.h (_Expr<>::shift, _Expr::cshift,
2739         _Expr<>::apply): Implement. 
2740
2741 2000-08-18  Gabriel Dos Reis  <gdr@codesourcery.com>
2742
2743         * bits/valarray_meta.h (_Expr<>::min, _Expr<>::max): Implement.
2744
2745         * bits/valarray_array.h (__valarray_min, __valarray_max): New
2746         function. 
2747
2748 2000-08-17  Mark Mitchell  <mark@codesourcery.com>
2749
2750         * bits/localefwd.h (std::locale): Use explicit `class' specified
2751         when declaring friends.
2752         * bits/std_fstream.h (std::basic_filebuf): Likewise.
2753
2754 2000-08-16  Alexandre Oliva  <aoliva@redhat.com>
2755
2756         * src/Makefile.am (libstdc++.INC): Renamed from INCLUDES.
2757         * src/Makefile.in: Regenerate.
2758
2759 2000-08-15  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2760
2761         * bits/codecvt.h: New file.
2762         * src/codecvt.cc: New file.
2763         * bits/std_locale.h: Add include here.
2764         * src/Makefile.am (headers): Add codecvt.h
2765         (sources): Add codecvt.cc.
2766         * src/Makefile.in: Regenerate.
2767         * bits/locale_facets.h (codecvt): Re-implement. Rename _Codecvt to
2768         __codecvt_abstract_base in an attempt to point some light this way...
2769         Move __enc_traits and codecvt bits to codecvt.h.
2770         * src/locale-inst.cc: Remove codecvt<wchar_t, wchar_t, mbstate_t>
2771         explicit instantiation. Separate out codecvt instantiations, simplify.
2772         * src/locale.cc: Move codecvt bits to codecvt.cc
2773
2774 2000-08-15  Alexandre Oliva  <aoliva@redhat.com>
2775
2776         * src/Makefile.am (INCLUDES): New target file, with all -I flags.
2777         * src/Makefile.in: Regenerate.
2778
2779 2000-08-14  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2780
2781         C/C++ io merge/sync.
2782         * libio/fileops.c
2783         * libio/genops.c
2784         * libio/iofclose.c
2785         * libio/iofopen.c
2786         * libio/iofwide.c
2787         * libio/libio.h
2788         * libio/libioP.h
2789         * libio/stdio.c
2790         * libio/wfileops.c
2791         * libio/wgenops.c
2792         * config/c_io_libio.cc (__basic_file): Add hacky casts to
2793         ((struct _IO_FILE_plus *) in ctors.
2794         (__basic_file<wchar_t>): Adjust _wide_data->_codecvt to just _codecvt.
2795         * libio/Makefile.am: Fix copyright. Remove cleanup.c.
2796         * libio/cleanup.c: Remove.
2797         * libio/filedoalloc.c (_IO_file_doallocate): Don't call
2798         _IO_cleanup_registration_needed, even if not libc.
2799                 
2800         * testsuite/27_io/stringstream.cc (test02): Fix.
2801
2802 2000-08-14  Brent Verner <brent@rcfile.org>
2803
2804         * testsuite/debug_assert.h: new file
2805         * testsuite/*/*.cc: s/test\s*&=([^;]+);/VERIFY($1);/g
2806         changed conditional #include <c?assert.?h?> to
2807         unconditional #include <debug_assert.h>
2808         * mkcheck.in: added $SRC_DIR/testsuite to include search path
2809         for testsuite compile command.
2810
2811 2000-08-14  Levente Farkas  <lfarkas@mindmaker.hu>
2812
2813         * bits/std_fstream.h: Remove duplicate typdefs for ofstream and
2814         wofstream, filebuf, wfilebuf, fstream, wfstream.
2815         * bits/std_streambuf.h: Same for streambuf, wstreambuf.
2816         * bits/std_sstream.h: Same for stringstream and wstringstream.
2817         Same for stringbuf, wstringbuf, istringstream, wistringstream,
2818         ostringstream, wostringstream.
2819         
2820         * testsuite/26_numerics/valarray.cc: Add test.
2821
2822 2000-08-14  Zack Weinberg  <zack@wolery.cumb.org>
2823
2824         * configure: Regenerate after change to ../libtool.m4.
2825
2826 2000-08-10  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2827
2828         * bits/locale_facets.tcc: Formatting tweaks.
2829         * bits/locale_facets.h (__enc_traits): Start integrating this
2830         into codecvt, ctype. Formatting tweaks.
2831
2832 2000-08-09  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2833
2834         Preliminary wchar_t implementation, with trivial encodings.
2835         * docs/configopts.html: Add bits about canonical configure option
2836         checking.
2837
2838         * testsuite/27_io/iostream_objects.cc: Replace this file (which
2839         has newly-declared-illegal mixing of wide/narrow stdstreams) with...
2840         * testsuite/27_io/narrow_stream_objects.cc: New file.
2841         * testsuite/27_io/wide_stream_objects.cc: New file.
2842
2843         * bits/fstream.tcc (underflow): Temporarily hack a solution
2844         together that writes from the external file to the internal
2845         buffers. This removes codecvt from the loop, and is incorrect.
2846         (_M_really_overflow): Same here.
2847
2848         * testsuite/21_strings/inserters_extractors.cc (test05): Tweaks.
2849         
2850 2000-08-08  Benjamin Kosnik  <bkoz@cygnus.com>
2851             Ulrich Drepper  <drepper@cygnus.com>
2852
2853         * config/c_io_libio.h: Tweak.
2854         * config/c_io_libio_codecvt.c: New file.
2855         * libio/Makefile.am: Add c_codecvt.c.
2856         * libio/Makefile.in: Regenerate.
2857         * libio/genops.c (_IO_unbuffer_write): Don't call _IO_SETBUF if the
2858         stream is not orientated.
2859
2860         * acinclude.m4: Add config/c_io_libio_codecvt.c dummy file, until
2861         encoding gets fleshed out.
2862
2863         * bits/basic_file.h: Add specialization declarations.
2864         * config/c_io_libio.cc: Add specializations for pbackfail, uflow.
2865
2866         * config/c_io_libio.h: Add __c_wfile_type.
2867         * bits/basic_file.h: Add _M_wfile.
2868
2869         * config/c_io_libio.cc (__basic_file<char>): Initialize the
2870         streams without setting the orientation of the underlying FILE to
2871         either wide or narrow.
2872         (__basic_file<wchar_t>)): Enable tricky wchar_t io bits.
2873
2874 2000-08-07  Felix Natter  <fnatter@gmx.net>
2875
2876         * docs/17_intro/porting-howto.html:  New version.
2877
2878 2000-08-03  Mark Mitchell  <mark@codesourcery.com>
2879
2880         * bits/locale_facets.h (ctype::ctype): Don't name unused
2881         parameters.
2882
2883 2000-08-01  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2884
2885         * docs/install.html: Edit bits about requiring a special version
2886         of the autotools.
2887
2888 2000-07-31  Benjamin Kosnik  <bkoz@cygnus.com>
2889
2890         * libio/fileops.cc: Update to current glibc sources.
2891         * libio/genops.c: Same.
2892         * libio/iofwide.c: Same.
2893         * libio/libio.h: Same.
2894         * libio/libioP.h: Same.
2895         * libio/wfiledoalloc.c: Same.
2896         * libio/wgenops.c: Same.
2897         
2898 2000-07-28  Alexandre Oliva  <aoliva@redhat.com>
2899
2900         * acinclude.m4: Include ../libtool.m4.
2901         * aclocal.m4, configure: Rebuilt.
2902         
2903 2000-07-26  Phil Edwards  <pme@sourceware.cygnus.com>
2904
2905         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES):  Test for GNU ld
2906           before trying to use any of its options.
2907           (CHECK_MATH_DECL*,CHECK_BUILTIN_MATH_DECL*):  Cache tests.
2908         * aclocal.m4:  Regenerate.
2909         * configure.in:  Having found GNU make, name it.
2910         * configure:  Regenerate.
2911         * docs/install.html:  Mention possible problems with caching.
2912         * src/Makefile.am (CXXLINK):  Use new OPT_LDFLAGS.
2913         * src/Makefile.in:  Regenerate.
2914         * libio/Makefile.in:  Regenerate.
2915         * math/Makefile.in:  Regenerate.
2916         * Makefile.in:  Regenerate.
2917
2918 2000-07-26  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2919
2920         * src/misc-inst.cc (std): Remove instantiations.
2921
2922         * acinclude.m4: Add forward-looking bits for autoconf.
2923         * aclocal.m4: Regenerate.
2924
2925         * bits/ostream.tcc (ostream::operator<<): Fix const char* case.
2926
2927 2000-07-25  Benjamin Kosnik  <bkoz@gnu.org>
2928
2929         * configure.in: Change AM_PROG_LIBTOOL to AC_PROG_LIBTOOL. Change
2930         it back for current versions of maintainer-tools...
2931         * acinclude.m4: Some cleanups...
2932         * aclocal: Regenerated.
2933         * configure: Regenerated.
2934         
2935         * src/Makefile.am (CXXLINK): Add -Wl,-01 to the link line for
2936         optimizing/adapting the hash table using GNU ld.
2937         * src/Makefile.in: Regenerate.
2938         
2939 2000-07-24  H.J. Lu  <hjl@gnu.org>
2940
2941         * src/Makefile.am (LIBIO_INCLUDES): Set to -I$(top_srcdir)/libio
2942         even if GLIBCPP_NEED_LIBIO is false. The installed glibc header
2943         files don't include private libio header files needed by
2944         libstdc++ v3.
2945         * src/Makefile.in: Rebuild.
2946
2947 2000-07-24  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2948
2949         * bits/std_fstream.h: Parameterize __basic_file.
2950         * config/c_io_libio.cc: Add wchar_t methods for parameterization.
2951         * bits/basic_file.h: Same here.
2952
2953         * bits/istream.tcc (getline): Tweaks.
2954
2955         * bits/fstream.tcc: Shorten __retval to __ret.
2956         * bits/ostream.tcc: Same.
2957         * bits/sbuf_iter.h: Same.
2958         * bits/sstream.tcc: Same.
2959         * bits/streambuf.tcc: Same.
2960         * bits/std_fstream.h: Same.
2961         * src/string-inst.cc: Same.
2962         * src/ios.cc: Same.
2963         * config/c_io_libio.cc: Same.
2964         * bits/string.tcc: Same.
2965         * bits/std_streambuf.h: Same.
2966
2967 2000-07-23  Brent Verner <brent@rcfile.org>
2968
2969         * bits/istream.tcc: istream::getline(char_type*, streamsize,
2970         char_type) make compliant
2971         * testsuite/27_io/istream_unformatted.cc: test for compliant behavior
2972
2973 2000-07-23  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2974
2975         * acinclude.m4 (enable_cshadow_headers): Fix problems with blddir
2976         and srcdir used to define CSHADOW_INCLUDES..
2977
2978         * configure.in: For consistency, change .sanity_warned to
2979         stamp-sanity-warned.
2980
2981         * acinclude.m4: Tweak formatting.
2982         * Makefile.am (check): Call mkcheck with full pathname for build
2983         directory...
2984         (check-install): And here.
2985         * Makefile.in: Regenerate.
2986         
2987 2000-07-22  Gabriel Dos Reis  <gdr@codesourcery.com>
2988
2989         Line up with libstdc++-v2 version of valarray.
2990         * bits/valarray_array.h (__valarray_product): Make inline.
2991         * src/valarray-inst.cc (__valarray_product): Remove explicit
2992         instantiation. 
2993
2994 2000-07-21  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2995
2996         * src/stl-inst.cc: Change __sink_unused_warning to unsigned int
2997         for alpha.
2998
2999         * testsuite/26_numerics/complex_inserters_extractors.cc (testall):
3000         Change return type to void.
3001         * testsuite/25_algorithms/lower_bound.cc: Add return values.
3002         * testsuite/17_intro/header_ciso646.cc: Modify.
3003         * bits/locale_facets.h: Add return values for the generic cases.
3004
3005 2000-07-21  H.J. Lu  (hjl@gnu.org)
3006
3007         * acinclude.m4: Include <features.h> for glibc testing.
3008         * aclocal.m4: Likewise.
3009
3010         * configure: Rebuild.
3011
3012 2000-07-20  H.J. Lu  (hjl@gnu.org)
3013
3014         * acinclude.m4: Change "#pragma system_header" to
3015         "#pragma GCC system_header".
3016         * aclocal.m4: Likewise.
3017         * bits/std_cmath.h: Likewise.
3018         * bits/std_cassert.h: Likewise.
3019         * bits/std_cctype.h: Likewise.
3020         * bits/std_cerrno.h: Likewise.
3021         * bits/std_cfloat.h: Likewise.
3022         * bits/std_climits.h: Likewise.
3023         * bits/std_clocale.h: Likewise.
3024         * bits/std_cwchar.h: Likewise.
3025         * bits/std_csetjmp.h: Likewise.
3026         * bits/std_csignal.h: Likewise.
3027         * bits/std_cstdarg.h: Likewise.
3028         * bits/std_cstddef.h: Likewise.
3029         * bits/std_cstdio.h: Likewise.
3030         * bits/std_cstdlib.h: Likewise.
3031         * bits/std_cstring.h: Likewise.
3032         * bits/std_ctime.h: Likewise.
3033         * bits/std_cwctype.h: Likewise.
3034         * bits/std_exception.h: Likewise.
3035         * bits/std_new.h: Likewise.
3036         * bits/std_typeinfo.h: Likewise.
3037         * shadow/bits/std_cassert.h: Likewise.
3038         * shadow/bits/std_cctype.h: Likewise.
3039         * shadow/bits/std_cerrno.h: Likewise.
3040         * shadow/bits/std_cfloat.h: Likewise.
3041         * shadow/bits/std_climits.h: Likewise.
3042         * shadow/bits/std_clocale.h: Likewise.
3043         * shadow/bits/std_cmath.h: Likewise.
3044         * shadow/bits/std_csetjmp.h: Likewise.
3045         * shadow/bits/std_csignal.h: Likewise.
3046         * shadow/bits/std_cstdarg.h: Likewise.
3047         * shadow/bits/std_cstddef.h: Likewise.
3048         * shadow/bits/std_cstdio.h: Likewise.
3049         * shadow/bits/std_cstdlib.h: Likewise.
3050         * shadow/bits/std_cstring.h: Likewise.
3051         * shadow/bits/std_ctime.h: Likewise.
3052         * shadow/bits/std_cwchar.h: Likewise.
3053         * shadow/bits/std_cwctype.h: Likewise.
3054         * shadow/bits/wrap_libio.h: Likewise.
3055         * shadow/bits/wrap_unistd.h: Likewise.
3056         * shadow/sys/cdefs.h: Likewise.
3057
3058         * configure: Rebuild.
3059
3060 2000-07-20  Jakub Jelinek  <jakub@redhat.com>
3061
3062         * config/cpu/sparc/sparc64/bits/atomicity.h (__exchange_and_add):
3063         Use extended word instructions to match 64bit _Atomic_word.
3064         (__atomic_add): Likewise.
3065         * math/clog10l.c (clog10l): Use M_PIl if defined.
3066         * math/c_logl.c (c_logl): Likewise.
3067         * math/signbitl.c (__signbitl): Adapt for IEEE quad long doubles.
3068         * math/mathconf.h (ieee_quad_double_shape_type): New type.
3069         (GET_LDOUBLE_MSW64): New define.
3070
3071 2000-07-20  Benjamin Kosnik  <bkoz@cygnus.com>
3072
3073         * bits/std_streambuf.h: Add bits for pback buffers here, so that
3074         in_avail, etc can use them.
3075         * bits/std_fstream.h: Ditto.
3076         * bits/fstream.tcc: Ditto.
3077         * testsuite/27_io/filebuf.cc: Tweaks.
3078         * testsuite/27_io/filebuf-3.tst: Correct for pbackfail bits.
3079
3080 2000-07-19  Benjamin Kosnik  <bkoz@cygnus.com>
3081
3082         * src/localename.cc: Same.
3083         * src/locale.cc: Same.
3084         * bits/localefwd.h: _M_init_facet to _M_facet_init.
3085
3086         * bits/locale_facets.h: _M_init_boolnames to _M_boolnames_init.
3087
3088         * bits/std_sstream.h: Change _M_init_stringbuf to _M_stringbuf_init.
3089
3090         * bits/fstream.tcc: Change _M_init_filebuf to _M_filebuf_init.
3091         * bits/std_fstream.h: Same.
3092
3093         * bits/basic_string.h: Tweaks.
3094         
3095 2000-07-19  Phil Edwards  <pme@sourceware.cygnus.com>
3096
3097         * docs/18_support/howto.html:  Update.
3098
3099 2000-07-19  Benjamin Kosnik  <bkoz@milou.soma.redhat.com>
3100
3101         Internal consistency checks.....
3102         * bits/ios_base.h: Change _M_locale_ios to _M_ios_locale.
3103         * src/ios.cc: Same.
3104         
3105         * bits/basic_ios.h: Change _M_fctype_ios to _M_ios_fctype.
3106         * bits/basic_ios.tcc: Same.
3107         
3108         * bits/std_streambuf.h: Change _M_locale_buf to _M_buf_locale.
3109         Change _M_fctype_buf to _M_buf_fctype.
3110         * bits/fstream.tcc: Same.
3111
3112         * bits/std_streambuf.h: Change _M_buf_bump to _M_out_cur_move.
3113         Change _M_locale_set to _M_buf_locale_init.
3114         * bits/streambuf.tcc: Same.
3115         * bits/sstream.tcc: Same.
3116         * bits/fstream.tcc: Same.
3117
3118         * bits/std_streambuf.h: Make typedefs consistent.
3119         (_M_buf_bump): Be more careful with input sequence.
3120
3121         * bits/std_sstream.h: Same.
3122         * bits/std_fstream.h: Same.
3123
3124 2000-07-18  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3125
3126         * acinclude.m4: Tweaks.
3127         * config/c_io_libio.cc: Tweaks.
3128         * bits/sstream.tcc (stringbuf::pbackfail): Simplify.
3129         * libio/_G_config.h: Don't define _G_HAVE_ST_BLKSIZE.
3130         * libio/[iofwide.c, wfiledoalloc.c, wfiteopos.c, wgenops.c]: New files.
3131         * libio/iofclose.c iofopen.c, stdio.c: New files.
3132         * libio/Makefile.am: Add files, add flags, etc.
3133         * src/Makefile.am (sources): Add filebuf.cc.
3134         * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT):
3135         (GLIBCPP_ENABLE_CSTDIO): Versioning testing, etc etc.
3136
3137 2000-07-17  Phil Edwards  <pme@sourceware.cygnus.com>
3138
3139         * acinclude.m4:  Import CHECK_GNU_MAKE from autoconf macro archive.
3140         * configure.in:  Use it.  Also print reminders one time.
3141         * aclocal.m4:  Regenerate.
3142         * configure:  Regenerate.
3143
3144 2000-07-15  Gabriel Dos Reis  <gdr@codesourcery.com>
3145
3146         * bits/valarray_array.h (__valarray_get_storage): New function.
3147         (_Array<>::Array): Use it.
3148         * bits/std_valarray.h (valarray<>::valarray): Likewise.
3149         (valarray<>::resize): Likewise.  Tweak.
3150         * src/valarray-inst.cc (__valarray_product): Tweak.
3151
3152 2000-07-11  Phil Edwards  <pme@sourceware.cygnus.com>
3153
3154         * docs:  Update sourceware->sources in every HTML file.  Minor updates.
3155
3156 2000-07-07  Benjamin Kosnik  <bkoz@soma.redhat.com>
3157
3158         Clean up configure/build longstanding issues.
3159         * src/Makefile.am (AC_CXXFLAGS): Don't set @SECTION_LDFLAGS@ here.
3160         (CXXLINK): Add here, instead.
3161
3162         * Makefile.am (check-install): Make sure mkcheck has execute privs.
3163         (check): Same here.
3164         * configure.in (AC_OUTPUT_COMMANDS): Remove hacks here.
3165
3166         * configure.in (AC_OUTPUT_COMMANDS): Link c_io_libio.h and
3167         c_io_libio.cc instead of copying.
3168         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Do link here.
3169
3170         * configure.in (AC_OUTPUT_COMMANDS): Link $THREADS.h and
3171         c++threads.h instead of copying.
3172         * acinclude.m4 (GLIBCPP_ENABLE_THREADS): Do link here.
3173         Tweaks.
3174         
3175         * config/c_io_libio.cc (__basic_file::_M_open_mode): Consolidate.
3176         * bits/basic_file.h: Declare.
3177
3178         * mkcheck.in (TESTS_FILE): Use -v instead of --version.
3179
3180 2000-07-07   brent verner  <brent@rcfile.org> 
3181
3182         * testsuite/27_io/istream_unformatted.cc (test05): New test.
3183
3184 2000-07-07  Benjamin Kosnik  <bkoz@gnu.org>
3185
3186         * bits/istream.tcc (istream::getline): Minor tweaks.
3187
3188 2000-07-07  Phil Edwards  <pme@sourceware.cygnus.com>
3189
3190         * docs/download.html:  Mention gcc_update.
3191         * docs/configopts.html:  Minor updates.
3192         * docs/gccrebuild.html:  Ditto.
3193         * docs/18_support/howto.html:  More tips, explanations, and reminders.
3194         * docs/19_diagnostics/howto.html:  Ditto.
3195         * docs/21_strings/howto.html:  Ditto.
3196         * docs/24_iterators/howto.html:  Ditto.
3197         * docs/25_algorithms/howto.html:  Ditto.
3198         * docs/26_numerics/howto.html:  Ditto.
3199
3200 2000-07-05  brent verner  <brent@rcfile.org> 
3201
3202         * testsuite/27_io/ifstream_members.cc (test01): Add tests.
3203         * testsuite/27_io/ofstream_members.cc (test01): Add tests.
3204         * config/c_io_libio.cc (__basic_file::open): Unset
3205         ~_IO_DELETE_DONT_CLOSE.
3206
3207 2000-07-05  Zack Weinberg  <zack@wolery.cumb.org>
3208         
3209         * bits/gslice_array.h, bits/indirect_array.h, bits/mask_array.h,
3210         bits/slice_array.h, bits/std_valarray.h, bits/valarray_meta.h:
3211         Do not paste anything after 'operator' keyword.
3212
3213 2000-07-03  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3214
3215         * bits/std_memory.h: Revert.
3216
3217 2000-07-03  Brendan Kehoe  <brendan@zen.org>
3218
3219         * bits/std_complex.h: Fix parens. Format.
3220         
3221 2000-07-03  scott snyder  <snyder@fnal.gov>
3222
3223         * bits/locale_facets.tcc (_M_extract): Only figure out the base
3224         from the input if base == 0.
3225         * testsuite/27_io/istream_extractor_arith.cc: Test reading a
3226         number with a leading `0' in hex mode.
3227
3228         * shadow/bits/std_cmath.h: Fix typo in _GLIBCPP_HAVE_CEILL test.
3229
3230         * mkinclosure: Change `==' to `=' in test.
3231
3232 2000-07-03  Chip Salzenberg  <chip@valinux.com>
3233
3234         * src/Makefile.am (libio_headers): _G_config.h is found in srcdir,
3235         not builddir.
3236         * src/Makefile.in: Regenerate.
3237
3238 2000-07-01  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3239             Ulrich Drepper  <drepper@purist.soma.redhat.com>
3240
3241         Sync libio to glibc-2.2 current CVS. 
3242         * libio/_G_config.h: New file.
3243         * libio/wfileops.c: New file.
3244         * libio/wfiledoalloc.c: New file.
3245         * libio/wgenops.c: New file.
3246         * libio/iofwide.c: New file.
3247         * libio/Makefile.am: Tweaks.
3248         * libio/Makefile.in: Regenerate.
3249         * libio/gen-params: Remove. Generic replacement for this yet undone.
3250         * libio/[filedoalloc.c, fileops.c, genops.c, iolibio.h, libio.h,
3251         libioP.h, stdfiles.c]: Update.
3252         * config/c_io_libio.cc: Tweaks.
3253         * acinclude.m4: Complete hacks to test wide io.
3254         * aclocal.m4: Regenerate.
3255         * configure: Regenerate.
3256         * src/Makefile.am: Update.
3257         * src/Makefile.in: Regenerate.
3258
3259         * math/cargl.c: Remove underscores.
3260         
3261         * bits/locale_facets.h: Tweaks. Start adding iconv details
3262         and notes.
3263         * bits/locale_facets.tcc: Tweaks.
3264         * bits/std_cwchar.h: Tweaks.
3265         
3266 2000-06-29  scott snyder  <snyder@fnal.gov>
3267
3268         * bits/concept_checks.h
3269         (__less_then_comparable_requirement_violation): Only check for <.
3270         * testsuite/25_algorithms/lower_bound.cc: New file.
3271         
3272 2000-06-29  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3273
3274         * testsuite/27_io/ostream_manip.cc (test02): Add tests.
3275         * bits/ostream.tcc: Tweak.
3276         * bits/std_fstream.h (basic_filebuf::setbuf): Reset
3277         _M_buf_size_opt too.
3278         * bits/std_streambuf.h (basic_streambuf::~basic_streambuf): Zero
3279         out _M_buf_size_opt.
3280         * bits/std_sstream.h (basic_stringbuf::_M_init_stringbuf): Set
3281         _M_buf_size_opt out here.
3282         * bits/char_traits.h (char_traits::eos): Non standard member
3283         function, uglify to __eos. Return char_type().
3284         * bits/std_ostream.h: Change.
3285
3286         * testsuite/27_io/ostream_seeks.cc: New file.
3287         * testsuite/27_io/ostream_seeks-1.tst: New file.
3288         * testsuite/27_io/istream_unformatted.cc (main): Move test04 and
3289         test05 to...
3290         * testsuite/27_io/istream_seeks.cc: New file.
3291
3292 2000-06-29  Branko Cibej  <branko.cibej@hermes.si>
3293
3294         * bits/std_memory.h (auto_ptr_ref): Reworked and defined only if
3295         _GLIBCPP_RESOLVE_LIB_DEFECTS.
3296         (auto_ptr): _M_ptr changed to void*.
3297         (suto_ptr::get): Cast _M_ptr to element type.
3298         (auto_ptr::auto_ptr(auto_ptr<Tp1>)): Test implicit convetsion.
3299         (auto_ptr::~auto_ptr): Use this->get() instead of _M_ptr.
3300         (auto_ptr::operator*): Likewise.
3301         (auto_ptr::operator->): Likewise.
3302         (auto_ptr::release): Likewise.
3303         (auto_ptr::reset): Likewise.
3304         (auto_ptr::auto_ptr(auto_ptr_ref)): Initialize from __ref._M_release.
3305         (auto_ptr::operator auto_ptr_rev<_Tp1>): Updated.
3306         Define nested auto_ptr_ref unless _GLIBCPP_RESOLVE_LIB_DEFECTS.
3307         Define operator=(auto_ptr_ref) if _GLIBCPP_RESOLVE_LIB_DEFECTS.
3308
3309 2000-06-28  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3310
3311         * testsuite/27_io/filebuf.cc: Tweak.
3312         * testsuite/27_io/filebuf_members.cc (test_01): Fix.
3313         * config/c_io_libio.cc (__basic_file::~__basic_file): Match libio
3314         filebuf dtor.
3315         (__basic_file::basic_file): Clean, add calls similar to
3316         _IO_file_attach.
3317         (__basic_file::open): Clean.
3318         (__basic_file::sys_open): Clean.
3319
3320         * bits/std_fstream.h: Revert.
3321         * bits/fstream.tcc (filebuf::close()): Revert.
3322         (filebuf::basic_filebuf()): Revert.
3323
3324 2000-06-27  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3325
3326         Update to SGI STL 3.3
3327         * ext/hash_map, ext/hash_set, ext/slist, ext/stl_bvector.h,
3328         ext/stl_rope.h, ext/ropeimpl.h: Update.
3329         * bits/std_bitset.h, bits/std_map, bits/std_memory.h,
3330         bits/stl_algo.h, bits/stl_algobase.h, bits/stl_alloc.h,
3331         bits/stl_config.h, bits/stl_construct.h, bits/stl_deque.h,
3332         bits/stl_function.h, bits/stl_heap.h, bits/stl_iterator.h,
3333         bits/stl_iterator_base.h, bits/stl_list.h, bits/stl_map.h,
3334         bits/stl_multimap.h, bits/stl_multiset.h, bits/stl_numeric.h,
3335         bits/stl_queue.h, bits/stl_set.h, bits/stl_stack.h,
3336         bits/stl_string_fwd.h, bits/stl_threads.h, bits/stl_three.h,
3337         bits/stl_uninitialized.h, bits/stl_vectory.h: Update.
3338
3339         * src/Makefile.am (headers): Add new files.
3340         * src/Makefile.in: Regenerate.
3341         * src/stl-inst.cc (std): Add instantiation for __sink_unused_warning.
3342         * bits/concept_checks.h: New file.
3343         * bits/container_concepts.h: New file.
3344         * bits/sequence_concepts.h: New file.
3345         
3346 2000-06-27  H.J. Lu  <hjl@gnu.org>
3347             Loren J. Rittle  <ljrittle@acm.org>
3348
3349         * mkcheck.in: Add support to print standard flags needed to
3350         test g++ in build tree.  Enhance command line error checking.
3351
3352 2000-06-27  Phil Edwards  <pme@sourceware.cygnus.com>
3353
3354         * docs/install.html:  Fix minor typo as reported.
3355
3356 2000-06-26  Brent Verner <brent@rcfile.org>
3357
3358         * bits/string.tcc (string::rfind): Fix.
3359         * testsuite/21_strings/rfind.cc: New file.
3360         
3361 2000-06-26  Anthony Williams  <anthony@anthonyw.cjb.net>
3362
3363         * testsuite/21_strings/ctor_copy_dtor.cc: Fixed logic error.
3364         
3365 2000-06-26  Branko Cibej  <branko.cibej@hermes.si>
3366
3367         * testsuite/27_io/filebuf_members.cc (test_01): Fixed typos.
3368
3369         * mkcheck.in: Make the *.txt and *.tst files writable after
3370           copying them to $TEST_DIR.
3371
3372         * testsuite/27_io/ostream_inserter_arith.cc: Renamed
3373           __TEST_NUMPUT_VERBOSE to TEST_NUMPUT_VERBOSE.  Define
3374           TEST_NUMPUT_VERBOSE only if DEBUG_ASSERT.
3375         
3376 2000-06-23  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3377
3378         * bits/fstream.tcc (basic_filebuf::basic_filebuf(fd)): Use it.
3379         (basic_filebuf::close): Use it.
3380         * bits/std_fstream.h (basic_filebuf): Remove default arguments for
3381         filebuf ctor.
3382         (basic_filebuf): Add _M_fileno_based data member.
3383         As reported by brent verner <brent@rcfile.org> 
3384         * testsuite/27_io/filebuf_members.cc: New file.
3385         * testsuite/27_io/filebuf_members-1.tst: New file.
3386
3387         * bits/std_fstream.h: Formatting tweaks.
3388         * testsuite/27_io/ofstream_members.cc: New file.
3389         * testsuite/27_io/ofstream_members-1.tst: New file.
3390         * testsuite/27_io/ifstream_members.cc: New file.
3391         * testsuite/27_io/ifstream_members-1.tst: New file.
3392
3393 2000-06-23  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3394             Ulrich Drepper  <drepper@cygnus.com>
3395         
3396         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Add -D_GNU_SOURCE, so
3397         that all the freaky stuff like sincos will be around...
3398
3399 2000-06-22  Branko Cibej  <branko.cibej@hermes.si>
3400
3401         * Makefile.am (AM_MAKEFLAGS): Added WERROR to list of flags.
3402
3403 2000-06-22 Steven King <sxking@uswest.net>
3404
3405         * acinclude.m4: Check for sinl, _sinl using 1 parameter.
3406
3407 2000-06-22  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3408
3409         * acinclude.m4 (GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT): Redo. Use the
3410         same approach as GLIBCPP_CHECK_MATH_SUPPORT, only don't try to
3411         link against libm and don't use -fno-builtins...
3412         * math/mathconf.h: Change up builtin macros to new schema.
3413         * bits/std_cmath.h: And here. Wheee!
3414         * shadow/bits/std_cmath.h: And here.
3415         * acconfig.h: Change up builtin macros here.
3416         * math/cosf.c:  Remove.
3417         * math/fabsf.c:  Likewise.
3418         * math/sinf.c:  Likewise.
3419         * math/sqrtf.c:  Likewise.
3420         * math/Makefile.am (EXTRA_DIST):  Remove those four files.
3421         * math/Makefile.in:  Regenerate.
3422
3423 2000-06-22  Anthony Williams  <anthony@anthonyw.cjb.net>
3424
3425         * testsuite/21_strings/find.cc: Patch.
3426
3427 2000-06-22  Benjamin Kosnik  <bkoz@soma.redhat.com>
3428
3429         * acinclude.m4 (GLIBCPP_CHEC_LINKER_FEATURES): Use gcc + -x c++ as
3430         an easy way to get at g++ without having to link in libstdc++.
3431
3432 2000-06-21  Benjamin Kosnik  <bkoz@soma.redhat.com>
3433
3434         Fix alpha, powerpc build failures.
3435         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Substantially
3436         re-write. Need to check for both proper declaration when using a
3437         c++ compiler, and "C" linkage when linking. Do both, and if both
3438         exist, then define the HAVE_* bits in config.h.
3439         (GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE): New, uber-macro. Does all.
3440         (GLIBCPP_CHECK_LINKER_FEATURES): Actually link and run this
3441         program, doh.
3442
3443 2000-06-20  Anthony Williams  <anthony@anthonyw.cjb.net>
3444
3445         * bits/string.tcc: Fix find.
3446         * testsuite/21_strings/find.cc: Patch.
3447         
3448 2000-06-20  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3449
3450         * docs/install.html: Update where to get automake, where to get
3451         binutils.
3452         * acinclude.m4: Need -fno-builtins too, so gcc doesn't recognize
3453         builtins.
3454
3455 2000-06-19  Benjamin Kosnik  <bkoz@soma.redhat.com>
3456
3457         * acinclude.m4 ((GLIBCPP_CHECK_MATH_SUPPORT): Revert last change.
3458         Add -Werror-implicit-function-declaration instead.
3459
3460         Regenerate with fixed maintainer-tools.
3461         * aclocal.m4: Regenerate.
3462         * configure: Regenerate.
3463         * libio/Makefile.in: Regenerate.
3464         * src/Makefile.in: Regenerate.
3465         
3466 2000-06-19  Russell Davidson  <russell@ehess.cnrs-mrs.fr>
3467
3468         * testsuite/27_io/istream_extractor_arith.cc: Patch.
3469         * bits/locale_factets.tcc: Tweak.
3470         
3471 2000-06-19  Raja R Harinath  <harinath@cs.umn.edu>
3472         
3473         * src/Makefile.am: change @WERROR@ to $(WERROR) so that this can
3474         be overridden on the command line for individual files.
3475
3476 2000-06-19  Benjamin Kosnik  <bkoz@soma.redhat.com>
3477
3478         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Can't use
3479         AC_LANG_CPLUSPLUS as this tries to link in libstdc++, which we are
3480         building. Use -x c++ instead, which does not attempt to link
3481         libstdc++.
3482
3483         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Actually check for
3484         not coring when we hit a try/throw block, which was the problem
3485         with the linker support...
3486
3487         * docs/17_intro/contribute.html: Add bits about getting to the LWG
3488         issues pages.
3489         * docs/documentation.html: Rename link to make more accurate and scary.
3490         * docs/gccrebuild.html: Edit for clarity as these are no longer
3491         separate projects.
3492         * docs/install.html: Add bits about binutils for
3493         -ffunction-sections, -fdata-sections, -Wl,--gc-sections
3494
3495         * configure.in: Add call for GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT.
3496         * math/Makefile.am (EXTRA_DIST): Change USE_LONG_DOUBLE to
3497         USE_COMPLEX_LONG_DOUBLE.
3498         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Break into
3499         GLIBCPP_CHECK_MATH_SUPPORT and GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT.
3500         Works around irregularies in powerpc "C" compiler, but a good idea
3501         anyway.
3502
3503         * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_COMPILER_SUPPORT):
3504         New. Merge both old compiler bug checks for complex into this.
3505
3506 2000-06-19  Anthony Williams  <anthony@anthonyw.cjb.net>
3507         
3508         * testsuite/21_strings/find.cc: Empty strings can be found at all
3509         positions. Modified.
3510
3511 2000-06-19  Branko Cibej  <branko.cibej@hermes.si>
3512
3513         * testsuite/20_utilities: New directory.        
3514         * testsuite/20_utilities/auto_ptr.cc: New file.
3515         
3516 2000-06-14  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3517
3518         * src/Makefile.am (string_sources): Simplify, assuming that with
3519         -ffunction-sections, -fdata-sections, -Wl,--gc-sections, all this
3520         hacking is not necessary.
3521         (wstring_sources): Same.
3522         (OPTIMIZE_CXXFLAGS): Enable -fdata-sections -ffunction-sections
3523         -Wl,--gc-sections.
3524         * src/string-inst.cc: Remove macro blocks.
3525         * mkcheck.in (CXX_FLAG): Add bits here.
3526         
3527         * src/string-inst.cc: Remove iostream-related string instantiations.
3528         * src/misc-inst.cc: Add here.
3529
3530         * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION): Change FMTFLAGS
3531         to WFMT_FLAGS.
3532         * aclocal.m4: Regenerate.
3533         * configure.in: Change up.
3534         * configure: Regenerate.
3535         
3536 2000-06-13  Steven King  <sxking@uswest.net>
3537
3538         * acinclude.m4:  Fixup some of the builtin math tests and add tests for
3539         __builtin_fmod* and test libm for fmodf, fmodl or _fmodf, _fmodl.
3540         * acconfig.h: Add entries for fmod*.
3541
3542 2000-06-13  Branko Cibej  <branko.cibej@hermes.si>
3543
3544         * bits/std_cmath.h:  Fix typos in tests (*_FMODFF -> *_FMODF).
3545         Test  *_MODFF not *_MODF for modf(float, float*).
3546         (modf(float, float*)): Remove reference to _C_legacy.
3547
3548 2000-06-13  Benjamin Kosnik  <bkoz@redhat.com>
3549         
3550         * acinclude.m4 (enable_cshadow_headers): Change CSHADOWFLAGS to
3551         _GNU_SOURCE instead of _ISOC9X_SOURCE, as _GNU_SOURCE is the
3552         superset, and already defined at top level.
3553         * aclocal.m4: Regenerate.
3554         * configure: Regenerate.
3555
3556         * docs/17_intro/contribute.html: Plead with people to use -cp.
3557         
3558 2000-06-13  Anthony Williams  <anthony@anthonyw.cjb.net>
3559
3560         * testsuite/23_containers/bitset_ctor.cc: Qualify reverse wth std::.
3561
3562         * testsuite/27_io/filebuf.cc: Changed calls to
3563         fpos<>._M_position() to implicit calls to operator streamoff().
3564         * testsuite/27_io/iostream_objects.cc: Removed #include <ciso646>,
3565         as not needed. Revert, as part of standard.
3566         * testsuite/27_io/ostream_inserter_arith.cc: Replaced explicit
3567         call to numpunct<>._M_init() with overrides of the appropriate
3568         virtual functions.
3569
3570         * testsuite/27_io/stringstream.cc: Removed unnecessary char *
3571         pointers from test01, so no need to call base(), which isn't
3572         guaranteed to be implemented as iterators may themselves be pointers
3573         * testsuite/27_io/stringbuf.cc: Removed unnecessary calls to
3574         _M_position() - use implicit conversion to streamoff instead
3575
3576 2000-06-13  Thomas Holenstein  <thomas@hex.ch>
3577  
3578         * bits/stl_iterator.h: Added inline to operators == to >=.
3579
3580 2000-06-13  Brent Verner <brent@rcfile.org>
3581
3582         * bits/streambuf.tcc: repaired _S_copy_streambufs()
3583         * testsuite/27_io/ostream_inserter_other.cc (test03): Added testcase.
3584         
3585 2000-06-12  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3586
3587         * bits/locale_facets.h (ctype<wchar_t>): Remove unnecessary data
3588         members.
3589         * src/locale.cc: Add cwchar include here. Remove incorrect
3590         definitions, and stub them out.
3591         * config/generic/ctype.cc (ctype): Remove ctype<wchar_t> bits.
3592         * config/solaris/solaris2.7/ctype.cc (ctype): Same.
3593         * config/solaris/solaris2.5/ctype.cc (ctype): Same.
3594         * config/newlib/ctype.cc: Same.
3595         * config/gnu-linux/ctype.cc: Same.
3596         * config/bsd/ctype.cc: Same.
3597         * config/aix/ctype.cc: Same.
3598
3599 2000-06-12  Branko Cibej  <branko.cibej@hermes.si>
3600
3601         * config/solaris/solaris2.6/ctype.cc (do_toupper, do_tolower): Use
3602         towupper and towlower to convert wide characters.
3603
3604 2000-06-12  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3605
3606         * mkcheck.in: Clean up confusion regarding NAME, PRE_NAME.
3607
3608 2000-06-08  Branko Cibej  <branko.cibej@hermes.si>
3609
3610         * acinclude.m4 (GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT):  Check for
3611           sinf, cosf, fabsf, and sqrtf; add to LIBMATHOBJS if missing.
3612         * aclocal.m4:  Regenerate.
3613         * configure:  Regenerate.
3614         * math/cosf.c:  New file.
3615         * math/fabsf.c:  Likewise.
3616         * math/sinf.c:  Likewise.
3617         * math/sqrtf.c:  Likewise.
3618         * math/Makefile.am (EXTRA_DIST):  Add those four files.
3619         * math/Makefile.in:  Regenerate.
3620
3621 2000-06-08  Phil Edwards  <pme@sourceware.cygnus.com>
3622
3623         * testsuite/26_numerics/complex_inserters_extractors.cc:  Need cmath.
3624
3625 2000-06-06  Steven King  <sxking@uswest.net>
3626
3627         * acconfig.h: Added defines for HAVE_BUILTIN math functs for float,
3628         double and long double.  Added defines for HAVE libm math functs for
3629         float and long double.
3630         * aclocal.m4: Added configure checks for builtin math funcs and libm
3631         support for float and long double versions of the math functions.
3632         * config.h.in: Added undefs for math functs.
3633         * configure: Regenerate.
3634         * math/mathconf: Changed the _GLIBCPP_HAS_BUILTIN_* to
3635         _GLIBCPP_HAVE_BUILTIN_*.
3636         * bits/std_cmath.h: Added long double support.  Use builtins for
3637         float, double and long if available, otherwise, use libm versions if
3638         availible, otherwise, punt.
3639         * shadow/bits/std_cmath.h: ditto
3640
3641 2000-06-02  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3642
3643         * bits/locale_facets.h: Tweak.
3644         * src/locale.cc (codecvt<wchar_t>): Tweak. 
3645         
3646         * bits/locale_facets.h (_Format_cache): _S_ecks -> _S_x. 
3647         * bits/locale_facets.tcc (num_get<char>::_M_extract): Fix for hex.
3648
3649         * bits/basic_string.h: Move data member up.
3650         * src/string-inst.cc: Fix instantiations.
3651         * bits/string.tcc: Fix types.
3652         
3653 2000-06-02  Anthony Williams  <anthony@anthonyw.cjb.net>
3654
3655         * testsuite/21_strings/replace.cc (test01): Qualify find with std::.
3656
3657 2000-06-01  Benjamin Kosnik  <bkoz@gnu.org>
3658
3659         * bits/std_cwctype.h: Clean.
3660         * bits/std_cwchar.h: Clean, remove cruft.
3661
3662         * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Re-work, add bits
3663         for beginning iconv support.
3664         Remove _GLIBCPP_HAS_WCHAR_MIN_MAX, roll into _GLIBCPP_USE_WCHAR_T
3665         macro.
3666         * acconfig.h: Remove _GLIBCPP_HAS_WCHAR_MIN_MAX.
3667         * bits/limits_generic.h: Remove.
3668         * src/gen-num-limits.cc: Same.
3669         
3670         * src/locale.cc: Tweaks.
3671
3672         * bits/char_traits.h: Tweaks.
3673
3674 2000-05-31  Russell Davidson  <russell@ehess.cnrs-mrs.fr> 
3675
3676         * bits/locale_facets.tcc (num_get<char>::_M_extract): Fix signage,
3677         exponent, scientific formatting issues.
3678         * testsuite/27_io/istream_extractor_arith.cc (test09): Add tests.
3679         
3680 2000-05-31  Branko Cibej  <branko.cibej@hermes.si>
3681
3682         * bits/limits_generic.h (numeric_limits<wchar_t>): Use WCHAR_MIN
3683         and WCHAR_MAX instead of WCHART_MIN and WCHART_MAX.
3684
3685 2000-05-31  Nathan Myers  <ncm@cantrip.org>
3686  
3687        * docs/thanks.html: edit own credits
3688
3689 2000-05-31  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3690
3691         * bits/generic_shadow.h: Remaining _C_Shadow -> _C_shadow fix.
3692         
3693         * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Add strtoull checks...
3694
3695         * mkcheck.in (SH_FLAG): Add in -Wl,--rpath -Wl,$LIB_PATH. Tweaks.
3696         
3697 2000-05-31 Steven King <sxking@uswest.net>
3698
3699         * shadow/time.h: fix typo
3700         * shadow/wchar.h: ifdef __USE_GNU for wcsdup
3701         * shadow/bits/std_cwchar.h: ditto
3702         * shadow/bits/std_cstdlib.h: add overloads of abs and div for long
3703         and long long.
3704
3705 2000-05-26  Phil Edwards  <pme@sourceware.cygnus.com>
3706
3707         * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG):  If strtoll isn't
3708           available, force --disable.  Need to flesh this out; make smarter.
3709         * aclocal.m4:  Regenerate.
3710         * configure:  Regenerate.
3711
3712         * mkcheck.in:  Minor tweaks.
3713         * docs/download.html:  Fix typo.
3714
3715 2000-05-25  Benjamin Kosnik  <bkoz@milou.soma.redhat.com>
3716
3717         * inclosure: Change to...
3718         * mkinclosure: This.
3719         Fix paths to bash.      
3720         * mkcshadow: Fix paths to bash.
3721         
3722         * src/Makefile.am: Tweaks. Do cshadow header trickery at build time.
3723         * src/Makefile.in: Regnerate.
3724         * acinclude.m4 (GLIBCPP_COMPILER_VERSION): Fix typo.
3725         (GLIBCPP_ENABLE_SHADOW): Do a less gross hack.
3726         * aclocal.m4: Regenerate.
3727         * mkcheck.in (INC_PATH): Tweak. 
3728         
3729         * configure.in: Enable long long by default.
3730         * configure: Regenerate.
3731         
3732         * mkcheck.in (LIB_PATH): Revert.
3733
3734 2000-05-24   Nathan "I don't write ChangeLog Entries" Myers  <ncm@cantrip.org>
3735
3736         * config/cpu/i486: New directory.
3737         * config/cpu/i486/bits: New directory.
3738         * config/cpu/i486/bits/atomicity.h: New file.
3739         * config/cpu/i386/bits/atomicity.h (__compare_and_swap): Delete
3740         'cmpxchgl' asm.
3741         * acinclude.m4 (GLIBCPP_CHECK_CPU): Enable i386.
3742         
3743 2000-05-24  Loren J. Rittle  <ljrittle@acm.org>
3744
3745         * backward/alloc.h (__default_alloc_template): Only expose
3746           implementation-specific symbol, if it exists in the
3747           configuration.
3748         * backward/iostream.h (ends): Expose symbol.
3749         * backward/strstream.h: New file.
3750         * backward/stream.h: New file.
3751         * backward/ostream.h: New file.
3752         * backward/istream.h: New file.
3753         * backward/fstream.h: New file.
3754         * backward/complex.h: New file.
3755         * backward/iomanip.h: New file.
3756
3757         * mkcheck.in (LIB_PATH): Add -R bits.
3758
3759         * math/carg.c (carg): Replace __atan2 with atan2.
3760
3761 2000-05-24  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3762
3763         * Makefile.am (TAGS): Construct.
3764         * Makefile.in: Rengerate.
3765         * src/Makefile.am: Tweak.
3766         * src/Makefile.in: Tweak.
3767         * configure.in: Tweak.
3768
3769         * bits/c++config.h: Rename to ...
3770         * bits/c++config: This.
3771         * mkc++config: Adjust.
3772         
3773         * m4: Remove.
3774         * m4/lc_message.m4: Merge into acinclude.m4.
3775         * m4/mathfcts.m4: Same.
3776         * m4/stringfcts.m4: Same.
3777         * acinclude.m4: Add here.
3778         * configure: Regnerate.
3779         
3780         * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION): Remove
3781         OPTLEVEL. Add FMTFLAGS.
3782         * aclocal.m4: Regenerate.
3783         * src/Makefile.am (AC_CXXFLAGS): Take out OPTLEVEL, as this has
3784         been disabled due to higher-level Makefiles running amuck over
3785         this bit, and add in FMTFLAGS so that formatting is clear. 
3786         * src/Makefile.in: Regenerate.
3787         * configure: Regenerate.
3788
3789         * src/ios.cc (ios_base::sync_with_stdio): Clean up buffers from
3790         initialization.
3791
3792         * docs/download.html: Remove references to Cygwin-specific bits,
3793         as this can now be built natively.
3794         Update with current information.
3795
3796 2000-05-24  Phil Edwards  <pme@sourceware.cygnus.com>
3797
3798         * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION):  If we can use
3799           -fdiagnostics-show-location=once, do so.  Expand AC_LANG_* to
3800           enclose other tests in this macro, including future ones.
3801         * aclocal.m4:  Regenerate.
3802         * configure:  Regenerate.
3803
3804         * docs/faq/index.html:  Update location of libg++ FAQ.
3805         * docs/faq/index.txt:  Regenerate.
3806
3807 2000-05-22  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
3808
3809         * docs/17_intro/libstdc++-assign.txt: Change Cygnus to FSF.
3810
3811 2000-05-22  Phil Edwards  <pme@sourceware.cygnus.com>
3812
3813         * mkcheck.in:  Tweak for Solaris 8.  Additional minor output comment.
3814
3815 2000-05-22  Phil Edwards  <pme@sourceware.cygnus.com>
3816
3817         * acinclude.m4:  If the new pragma isn't supported, don't kill -Werror;
3818           keep -Werror and add -Wno-unknown-pragma.  -Werror Is Good.
3819         * aclocal.m4:  Regenerate.
3820         * configure:  Regenerate.
3821
3822 2000-05-19   Nathan C. Myers  <ncm@cantrip.org>
3823
3824         * bits/generic_shadow.h: s/swamp/legacy/
3825
3826 2000-05-19  Phil Edwards  <pme@sourceware.cygnus.com>
3827
3828         * acinclude.m4:  Clean up comments on newer checks.
3829           (GLIBCPP_CHECK_COMPILER_VERSION):  Check for system_header
3830           pragma support.  Remove WERRORSUPPRESS variable, add WERROR.
3831         * aclocal.m4:  Regenerate.
3832         * configure:  Regenerate.
3833         * Makefile.in:  Regenerate.
3834         * libio/Makefile.in:  Regenerate.
3835         * math/Makefile.in:  Regenerate.
3836         * src/Makefile.am:  Tell make's WERROR to depend on configure's WERROR.
3837         * src/Makefile.in:  Regenerate.
3838         * docs/configopts.html:  Document changes to --enable names.
3839
3840 2000-05-18  Chip Salzenberg  <chip@valinux.com>
3841
3842         * bits/ostream.tcc (_S_pad_char): Function template should not be
3843         static.
3844         * bits/streambuf.tcc (_S_copy_streambufs): Likewise.
3845         * src/string-inst.cc (__destroy_aux): Instantiate for string*.
3846
3847 2000-05-18  Nathan C. Myers  <ncm@cantrip.org>
3848
3849         * mkcshadow: Change C_Swamp to C_legacy.
3850         * shadow/*: Same.
3851         * shadow/bits/*: Same.
3852         s/C_Swamp/C_legacy/g
3853         s/SWAMP/LEGACY/g
3854         s/_Shadow/_shadow/g
3855
3856 2000-05-18  Anthony Williams  <anthony@anthonyw.cjb.net> 
3857
3858         * bits/locale_facets.tcc (num_get::_M_extract): Change char* to
3859         const char*.
3860         * src/string-inst.cc (string::_S_find): Same.
3861         
3862 2000-05-18  Benjamin Kosnik  <bkoz@gnu.org>
3863
3864         * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Change to
3865         --enable-cshadow-headers. Add output messages.
3866         (GCC_ENABLE_LONG_LONG): Change to --enable-long-long, no
3867         underscores (like the rest of the enable options.) Add output messages.
3868         * aclocal.m4: Regenerate.
3869         * configure: Regenerate.
3870         * configure.in: Touch.
3871         
3872 2000-05-17  Benjamin Kosnik  <bkoz@cygnus.com>
3873
3874         * mkcheck.in: Enable shared library testing.
3875
3876 2000-05-17  Nathan C. Myers  <ncm@cantrip.org>
3877
3878         * bits/std_cmath.h: fix sqrt(float)
3879
3880 2000-05-16  Loren J. Rittle  <ljrittle@acm.org>
3881
3882         * bits/std_cassert.h: Use system_header pragma.
3883         * bits/std_cctype.h: Likewise.
3884         * bits/std_cerrno.h: Likewise.
3885         * bits/std_cfloat.h: Likewise.
3886         * bits/std_climits.h: Likewise.
3887         * bits/std_clocale.h: Likewise.
3888         * bits/std_cmath.h: Likewise.
3889         * bits/std_csetjmp.h: Likewise.
3890         * bits/std_csignal.h: Likewise.
3891         * bits/std_cstdarg.h: Likewise.
3892         * bits/std_cstddef.h: Likewise.
3893         * bits/std_cstdio.h: Likewise.
3894         * bits/std_cstdlib.h: Likewise.
3895         * bits/std_cstring.h: Likewise.
3896         * bits/std_ctime.h: Likewise.
3897         * bits/std_cwchar.h: Likewise.
3898         * bits/std_cwctype.h: Likewise.
3899         * bits/std_exception.h: Likewise.
3900         * bits/std_new.h: Likewise.
3901         * bits/std_typeinfo.h: Likewise.
3902         * shadow/bits/std_cassert.h: Likewise.
3903         * shadow/bits/std_cctype.h: Likewise.
3904         * shadow/bits/std_cerrno.h: Likewise.
3905         * shadow/bits/std_cfloat.h: Likewise.
3906         * shadow/bits/std_climits.h: Likewise.
3907         * shadow/bits/std_clocale.h: Likewise.
3908         * shadow/bits/std_cmath.h: Likewise.
3909         * shadow/bits/std_csetjmp.h: Likewise.
3910         * shadow/bits/std_csignal.h: Likewise.
3911         * shadow/bits/std_cstdarg.h: Likewise.
3912         * shadow/bits/std_cstddef.h: Likewise.
3913         * shadow/bits/std_cstdio.h: Likewise.
3914         * shadow/bits/std_cstdlib.h: Likewise.
3915         * shadow/bits/std_cstring.h: Likewise.
3916         * shadow/bits/std_ctime.h: Likewise.
3917         * shadow/bits/std_cwchar.h: Likewise.
3918         * shadow/bits/std_cwctype.h: Likewise.
3919         * shadow/bits/wrap_libio.h: Likewise.
3920         * shadow/bits/wrap_unistd.h: Likewise.
3921         * shadow/sys/cdefs.h: Likewise.
3922
3923 2000-05-16  Nathan C. Myers  <ncm@cantrip.org>
3924
3925         It appears that gcc-2.96 supports the keyword "and" now.
3926         * bits/std_ciso646.h: remove.
3927         * std/ciso646: gut.
3928         * testsuite/17_intro/header_ciso646.c: enable testing.
3929         * src/Makefile.am, src/Makefile.in: remove mention of
3930         bits/std_ciso646.h
3931
3932 2000-05-16  Nathan C. Myers  <ncm@cantrip.org>
3933        
3934        * mkcshadow: fix typo s/_C_Swamp_/_C_Swamp/.
3935
3936 2000-05-16  Phil Edwards  <pme@sourceware.cygnus.com>
3937
3938         * acinclude.m4:  Fix typo, switch to decaf...
3939         * aclocal.m4:  Regenerate.
3940         * configure:  Regenerate.
3941
3942 2000-05-16  Phil Edwards  <pme@sourceware.cygnus.com>
3943
3944         * acinclude.m4 (GLIBCPP_ENABLE_SHADOW):  New macro, stub.
3945         * aclocal.m4:  Regenerate.
3946         * configure.in:  Call.
3947         * configure:  Regenerate.
3948         * docs/configopts.html:  Stub documentation.
3949
3950 2000-05-14  Nathan Myers  <ncm@cantrip.org>
3951
3952         * mkcshadow: build in more-correct directory, create cshadow/
3953         directory if needed, report progress.
3954
3955 2000-05-14  LLeweLLyn Reese  <llewelly@dbritsch.dsl.xmission.com>
3956
3957         * src/Makefile.am: Fix tr commands.
3958         * src/Makefile.am: Remove references to [w]stringCTORDUPAL.[lo,cc]
3959         * src/string-inst.cc: Remove extra instantiation of
3960           S::basic_string(S::size_type, C, S::allocator_type const&);
3961         * src/string-inst.cc: Remove extra template keyword.
3962
3963 2000-05-14  Loren J. Rittle  <ljrittle@acm.org>
3964
3965         * config/bsd/bits/ctype_base.h: Add support for plain BSD4.4.
3966         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Enhance bsd tests.
3967         * aclocal.m4: Regenerate.
3968         * configure: Regenerate.
3969         * */Makefile.in: Regenerate.
3970
3971 2000-05-11  Phil Edwards  <pme@sourceware.cygnus.com>
3972
3973         * acinclude.m4:  Fix minor typo with ctypes, add more sanity to
3974           enable-cxx-flags, and remove GLIBCPP_ENABLE_NAMESPACES altogether.
3975         * aclocal.m4:  Regenerate.
3976         * configure.in:  Non-blank arguments break fewer Linuxes.
3977         * configure:  Regenerate.
3978         * src/Makefile.am:  Re-order AC_CXXFLAGS components.
3979         * src/Makefile.in:  Regenerate.
3980
3981 2000-05-10  Benjamin Kosnik  <bkoz@redhat.com>
3982
3983         * bits/std_cmath.h: Tweaks.
3984         * math/mathconf.h: Tweaks and fixes for HP-UX 11.
3985         (sqrtf): Define away iff !builtin and !in <math.h>. 
3986         (sinf): Same.
3987         (cosf): Same.
3988         (fabsf): Same.
3989         At some point this directory should be converted to c++, the
3990         autoconf tests should be run by the c++ compiler (not c), and
3991         <cmath> should be used instead of math.h.
3992         Move declaration of nan() here.
3993         * math/complex-stub.h (cabsl): Remove nan() declaration.
3994
3995         Finish up FreeBSD4.0 support.
3996         * config/bsd/ctype.cc: Scope out toupper, tolower calls.
3997         * config/generic/ctype.cc: And here.
3998         * testsuite/21_strings/char_traits.cc (test02): Guard with
3999         _GLIBCPP_USE_WCHAR_T.
4000
4001         via Phil Edwards  <pme@sourceware.cygnus.com>
4002         * bits/std_cctype.h: Remove _GLIBCPP_USE_NAMESPACES.
4003         * acconfig.h: And here.
4004         * acinclude.m4: Same.
4005         * testsuite/27_io/istream.cc: And here.
4006         * testsuite/27_io/ostream.cc: And here.
4007
4008 2000-05-09  Benjamin Kosnik  <bkoz@gnu.org>
4009
4010         * acinclude.m4 (GLIBCPP_CHECK_CPU): Change powerpc bits to
4011         -mcpu=powerpc.
4012         * src/Makefile.am: Disable ENABLE_CXX_FLAGS stuff for the moment.
4013         
4014         * config/generic/bits/ctype_specializations.h (ctype<char>::is):
4015         Make more generic.
4016
4017         * config/bsd: New directory.
4018         * config/bsd/ctype.cc: New.
4019         * config/bsd/bits/ctype_base.h (ctype_base): New.
4020         * config/bsd/bits/ctype_specializations.h: New.
4021         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add bsd tests.
4022         
4023 2000-05-09  Phil Edwards  <pme@sourceware.cygnus.com>
4024
4025         * acinclude.m4:  New macro, GLIBCPP_ENABLE_CXX_FLAGS.
4026         * configure.in:  Call.
4027         * src/Makefile.am:  Append results of macro to AC_CXXFLAGS.
4028         * aclocal.m4:  Regenerate.
4029         * configure:  Ditto.
4030         * src/Makefile.in:  Ditto.
4031         * docs/configopts.html:  Document.
4032         * docs/download.html:  Fix typo (close quote).
4033         * docs/footer.html:  Update.
4034
4035 2000-05-09  Loren J. Rittle  <ljrittle@acm.org>
4036
4037         * backward/iostream.h: Expose endl.  Guard wide types.
4038         * src/Makefile.am (headers): Update list to match files.
4039         * src/Makefile.in: Regenerate.
4040
4041 2000-05-09  Vadim Egorov  <egorovv@mailandnews.com>
4042             Benjamin Kosnik  <bkoz@gnu.org>
4043             Nathan Myers  <ncm@cantrip.org>
4044             Dietmar Kuehl  <dietmar_kuehl@yahoo.com> 
4045
4046         * bits/streambuf.tcc (basic_streambuf::xsgetn): Fix uflow case.
4047         (basic_streambuf::xsputn): Make consistent.
4048         * testsuite/27_io/filebuf.cc: Add tests.
4049         
4050 2000-05-08  Steven King  <sxking@uswest.net>
4051
4052         * bits/char_traits.h: Use wchar_t utility functions for
4053         char_traits<wchar_t> methods.
4054         * testsuite/21_string/char_traits.cc: New (test02): test
4055         char_traits<wchar_t>
4056
4057 2000-05-08  Benjamin Kosnik  <bkoz@cygnus.com>
4058
4059         * acinclude.m4 (GLIBCPP_CXXFLAGS): Add bits for solaris2.8.
4060
4061         * bits/fstream.tcc (filebuf::_M_init_filebuf): Don't set
4062         _M_buf_size based on macro, instead use _M_buf_size_opt.
4063         * bits/std_streambuf.h (basic_streambuf): Add _M_buf_size_opt.
4064         (basic_streambuf()): Set _M_buf_size_opt.
4065         * testsuite/27_io/filebuf.cc (filebuf): Use _M_buf_size_opt
4066         instead of _M_buf_size.
4067
4068 2000-05-04  Branko Cibej  <branko.cibej@hermes.si>
4069
4070         * src/complex_io.cc: Don't instantiate inserters and extractors
4071         for wide-character streams unless _GLIBCPP_USE_WCHAR_T is defined.
4072
4073 2000-05-03  Phil Edwards  <pme@sourceware.cygnus.com>
4074             Felix Natter <fnatter@gmx.net>
4075
4076         * docs/footer.html:  Update to see if it takes effect.
4077         * docs/thanks.html:  More people.
4078         * docs/17_intro/headers_cc.txt:  Copy from testsuite, since that can't
4079           be seen from the web pages.  Rename for browser-friendliness...
4080         * docs/17_intro/howto.html:  ...and update here.
4081         * docs/17_intro/porting-howto.html:  Changes from Felix.
4082         * docs/gccrebuild.html:  Mention v3->egcs move.
4083         * docs/faq/index.html:  Ditto.  Also misc tweaks and URL updates.
4084         * docs/faq/index.txt:  Regenerate.
4085
4086 2000-05-01  Benjamin Kosnik  <bkoz@redhat.com>
4087
4088         * config/cpu/powerpc/bits/atomicity.h (__exchange_and_add): More
4089         fixes.
4090
4091 2000-05-01  Vadim Egorov  <egorovv@@mailandnews.com>
4092
4093         * bits/char_traits.h: Fix parameter types.
4094         * bits/string.tcc: Avoid traits_type::move.
4095
4096 2000-05-01  Benjamin Kosnik  <bkoz@haight.constant.com>
4097
4098         * src/Makefile.am (AC_CXXFLAGS): Add CPUFLAGS here.
4099         * src/Makefile.in: Regenerate.
4100         * acinclude.m4 (GLIBCPP_ENABLE_DEBUG): Revert.
4101
4102 2000-04-30  Steven King <sxking@uswest.net>
4103
4104         * bits/locale_facets.h: Fix syntax  error.
4105         * bits/std_fstream.h: ditto
4106
4107 2000-04-30  Benjamin Kosnik  <bkoz@gnu.org>
4108
4109         * config/cpu/powerpc/bits/atomicity.h (__compare_and_swap): Fix typo.
4110
4111         * mknumeric_limits (trait_name): Fix copyright notice.
4112         * src/gen-num-limits.cc: Explicitly instantiate epsilon and
4113         round_error data members of struct value. This works around
4114         weak-linking issues on AIX, HPUX.
4115
4116 2000-04-29  Phil Edwards  <pme@sourceware.cygnus.com>
4117
4118         * docs/download.html:  Add link to list of mirror sites.
4119
4120 2000-04-28  Loren J. Rittle  <ljrittle@acm.org>
4121
4122         * mkcheck.in: Rely on exit status instead of the presence of a
4123         core file.  Added comments on how/where to save core and exe
4124         files.  Move shell wildcards outside quotes and fix core path.
4125         
4126 2000-04-27  scott snyder  <snyder@fnal.gov>
4127
4128         * src/misc-inst.cc: Explicitly instantiate ifstream and ofstream
4129         classes.
4130
4131 2000-04-26  Nathan C. Myers  <ncm@cantrip.org>
4132
4133         * bits/basic_string.h: include <bits/atomicity.h> instead
4134         of <atomicity.h>, and use the uglified names.
4135         * config/cpu/*/atomicity.h: replace with bits/atomicity.h;
4136         uglify names, eliminate dependence on <inttypes.h>.
4137         * src/Makefile.in, src/Makefile.am: refer to correct place
4138         for atomicity.h header.
4139
4140 2000-04-25 Steven King <sxking@uswest.net>
4141
4142         * bits/basic_string.h: Fix syntax error.
4143
4144 2000-04-25  Benjamin Kosnik  <bkoz@redhat.com>
4145
4146         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Improve checks for
4147         USE_LONG_DOUBLE.
4148         (GLIBCPP_ENABLE_DEBUG): If alpha, use -gdwarf-2.
4149         * math/Makefile.am (EXTRA_LONG_DOUBLE_yes): Add all the long
4150         versions to this as copysignl is needed anyway for these targets.
4151         * math/Makefile.in: Regenerate.
4152         
4153         * bits/streambuf.tcc (streambuf::xsgetn): Tweak.
4154         * bits/fstream.tcc (underflow): Cast to libio types.
4155         * bits/basic_file.h (seekoff): Fixes for alpha: use __c_streamoff.
4156         * config/c_io_libio.cc (seekoff): And here.
4157         
4158 2000-04-24  Loren J. Rittle  <ljrittle@acm.org>
4159
4160         * mkcheck.in: Report compiler version used for test.  Find
4161         the built _G_config.h instead of any old installed version.
4162
4163 2000-04-24  Loren J. Rittle  <ljrittle@acm.org>
4164
4165         * config/generic/ctype.cc (do_toupper): Remove dependence on
4166         non-portable/non-existent lookup table.
4167         (do_tolower): Same.
4168         
4169 2000-04-24  Nathan Myers  <ncm@cantrip.org>
4170
4171         * src/string-inst.cc: More fixing.
4172
4173 2000-04-24  Benjamin Kosnik  <bkoz@gnu.org>
4174
4175         * bits/stl_iterator.h: Pedantic fixing.
4176         * bits/std_sstream.h: And here.
4177         * bits/string.tcc: And here.
4178
4179 2000-04-24  Felix Natter <fnatter@gmx.net> 
4180
4181         * docs/17_intro/howto.html: Add bits.
4182         * docs/17_intro/porting-howto.html: New file.
4183         
4184 2000-04-24  Branko Cibej  <branko.cibej@hermes.si>
4185
4186         * acinclude.m4(GLIBCPP_CHECK_WCHAR_T_SUPPORT): Expand
4187         @libinst_wstring_la@ to libinst-wstring.la when specializing for
4188         wchar_t, to empty string otherwise.
4189         * src/Makefile.am: (EXTRA_LTLIBRARIES): New.
4190         (sources): Remove $(string_sources) and $(wstring_sources).
4191         (libstdc___la_LIBADD): Add libinst-string.la and @libinst_wstring_la@.
4192         (libstdc___la_DEPENDENCIES): New.
4193         (libinst_string_la_SOURCES, libinst_wstring_la_SOURCES): New.
4194
4195 2000-04-20  Benjamin Kosnik  <bkoz@redhat.com>
4196
4197         * bits/std_sstream.h: Tweak formatting.
4198         * bits/std_fstream.h: Make types public.
4199
4200         * testsuite/27_io/streambuf.cc: Fix for alpha.
4201
4202         Brad Garcia <bgarcia@laurelnetworks.com>
4203         * bits/locale_facets.h (numpunct::numpunct(size_t)): Fix bool
4204         initialization.
4205         * testsuite/27_io/ios_manip_fmtflags.cc (test02): Add test for
4206         bool formatting.
4207         
4208 2000-04-19  Nathan Myers  <ncm@cantrip.org>
4209
4210         * src/string-inst: consolidate _S_create,
4211         destroy, leak, clone members into stringMAIN and stringMUTATE
4212         object files.
4213         * src/Makefile.am: Above, and eliminate dependence on
4214         wstring-inst.cc.
4215         * src/wstring-inst.cc: Remove.
4216
4217 2000-04-18  Benjamin Kosnik  <bkoz@redhat.com>
4218
4219         * src/Makefile.am (AC_CXXFLAGS): Activate debugging code, again.
4220         Add flags for specialized rules dealing with instantiations.
4221         
4222         * src/string-inst.cc: Add instantiations missing from shared
4223         libraries--see stringEQ, stringCONSC.
4224         * src/Makefile.am (wstring_sources): Add.
4225         (string_sources): Same.
4226         * src/Makefile.in: Regenerate.
4227         
4228         * stl/*: Integrate contents of this directory into top-level
4229         directories.
4230         * ext/bvector hash_map hash_set rope ropeimpl.h slist
4231         stl_bvector.h stl_hash_fun.h stl_hashtable.h stl_rope.h tree: Add.
4232         * bits/pthread_allocimpl.h std_algorithm.h std_bitset.h
4233         std_deque.h std_functional.h std_iterator.h std_list.h std_map.h
4234         std_memory.h std_numeric.h std_queue.h std_set.h std_stack.h
4235         std_stdexcept.h std_strstream.h std_utility.h std_vector.h
4236         stl_algo.h stl_algobase.h stl_alloc.h stl_config.h stl_construct.h
4237         stl_deque.h stl_function.h stl_heap.h stl_iterator.h
4238         stl_iterator_base.h stl_list.h stl_map.h stl_multimap.h
4239         stl_multiset.h stl_numeric.h stl_pair.h stl_pthread_alloc.h
4240         stl_queue.h stl_range_errors.h stl_raw_storage_iter.h stl_relops.h
4241         stl_set.h stl_stack.h stl_string_fwd.h stl_tempbuf.h stl_threads.h
4242         stl_tree.h stl_uninitialized.h stl_vector.h type_traits.h: Add.
4243         * backward/algo.h algobase.h alloc.h bvector.h defalloc.h deque.h
4244         function.h hash_map.h hash_set.h hashtable.h heap.h iterator.h
4245         list.h map.h multimap.h multiset.h pair.h rope.h set.h slist.h
4246         stack.h tempbuf.h tree.h vector.h: Add.
4247         * README (file): Update.
4248         * docs/documentation.html: README not being found.
4249         * src/Makefile.am (sources): Take out stl directory.
4250         * mkcheck.in (SRC_DIR): And here.
4251         * src/Makefile.in: Regenerate.
4252         
4253 2000-04-18  Levente Farkas  <lfarkas@mindmaker.hu>
4254
4255         * stl/bits/stl_function.h: Add bits so that const and non-const
4256         both work.
4257         
4258 2000-04-18  scott snyder  <snyder@fnal.gov>
4259
4260         * stl/bits/stl_map.h (class map): Fix default for _Alloc template
4261         parameter.  Get rid of use of __STL_DEFAULT_ALLOCATOR and
4262         __STL_LIMITED_DEFAULT_TEMPLATES macros.
4263         * stl/bits/stl_multimap.h (class multimap): Likewise.  Get rid of
4264         use of __STL_DEPENDENT_DEFAULT_TMPL macro.
4265
4266 2000-04-18  scott snyder  <snyder@fnal.gov>
4267
4268         * stl/bits/stl_config.h (__STL_DEPENDENT_DEFAULT_TMPL): Deleted
4269         this macro.
4270
4271         * stl/ext/hash_map (class hash_map, class hash_multimap): Get rid
4272         of use of __STL_DEPENDENT_DEFAULT_TMPL macro.
4273         * stl/ext/hash_set (class hash_set, class hash_multiset):
4274         Likewise.
4275         * stl/bits/stl_function.h (struct constant_unary_fun, struct
4276         constant_binary_fun): Likewise.
4277         * stl/bits/stl_queue.h (class queue, class priority_queue): Likewise.
4278         * stl/bits/stl_stack.h (class stack): Likewise.
4279         * stl/bits/stl_set.h (class set): Likewise.
4280         * stl/bits/stl_multiset.h (class multiset): Likewise.
4281
4282         * stl/bits/stl_iterator.h (class reverse_bidirectional_iterator,
4283         class reverse_iterator): Get rid of use of
4284         __STL_LIMITED_DEFAULT_TEMPLATES macro.
4285
4286         * stl/bits/stl_config.h (__STL_DEFAULT_ALLOCATOR): Deleted this
4287         macro.
4288
4289         * stl/bits/stl_deque.h (class deque): Get rid of use of
4290         __STL_DEFAULT_ALLOCATOR macro.
4291         * stl/bits/stl_list.h (class list): Likewise.
4292         * stl/bits/stl_multiset.h (class multiset): Likewise.
4293         * stl/bits/stl_set.h (class set): Likewise.
4294         * stl/bits/stl_string_fwd.h (class basic_string): Likewise.
4295         * stl/bits/stl_tree.h (class _Rb_tree, class rb_tree): Likewise.
4296         * stl/bits/stl_vector.h (class vector): Likewise.
4297         * stl/ext/ropeimpl.h (rotate): Likewise.
4298         * stl/ext/hash_map (class hash_map, class hash_multimap):
4299         Likewise.
4300         * stl/ext/hash_set (class hash_set, class hash_multiset):
4301         Likewise.
4302         * stl/ext/slist (class slist): Likewise.
4303         * stl/ext/stl_bvector.h (class bit_vector): Likewise.
4304         * stl/ext/stl_rope.h (class rope): Likewise.
4305         * src/locale.cc (_Impl): Likewise.
4306         * src/localename.cc (_Impl): Likewise.
4307         * bits/localefwd.h (_Impl): Likewise.
4308
4309 2000-04-18  Phil Edwards  <pme@sourceware.cygnus.com>
4310
4311         * docs/install.html:  Cleanup, minor changes.
4312         * docs/17_intro/howto.html:  Ditto.
4313
4314 2000-04-18  Nathan Myers  <ncm@cantrip.org>
4315
4316         * bits/basic_string.h: Remove "inline" from member _S_find.
4317         
4318         * src/string-inst.cc: Rewrite to reflect non-inline template
4319         instantiations in string.tcc.
4320         
4321         * src/stringADDCS.cc, stringADDPS.cc, stringADDSC.cc, stringADDSP.cc,
4322         stringADDSS.cc, stringBIST.cc, stringBOST.cc, stringCHTR.cc,
4323         stringEQPS.cc, stringEQSP.cc, stringEQSS.cc, stringEXTRA.cc,
4324         stringGEPS.cc, stringGESP.cc, stringGESS.cc, stringGETLI.cc,
4325         stringGTPS.cc, stringGTPS.cc, stringGTSP.cc, stringGTSS.cc,
4326         stringINSER.cc, stringLEPS.cc, stringLESP.cc, stringLESS.cc,
4327         stringLESP.cc, stringLTPS.cc, stringLTPS.cc, stringLTSP.cc,
4328         stringLTSS.cc, stringMAIN.cc, stringNEPS.cc, stringNESP.cc,
4329         stringNESS.cc, stringSCOPY.cc: Remove.
4330         * src/wstringADDCS.cc, etc: Remove.
4331
4332         Benjamin Kosnik  <bkoz@haight.constant.com>
4333         * src/Makefile.am: Modify to reflect above.
4334         * src/Makefile.in: Regenerate.
4335         
4336 2000-04-17  Benjamin Kosnik  <bkoz@cygnus.com>
4337
4338         * docs/install.html (--enable-libstdcxx-v3): Clean up install docs.
4339
4340 2000-04-13  Benjamin Kosnik  <bkoz@haight.cygnus.com>
4341
4342         * bits/std_fstream.h (filebuf::sync): Need to use the abstracted
4343         io interface here instead of the libio particulars.
4344
4345         * config/threads-posix.h: Consistency with stl_config.h.
4346
4347         * mkcheck.in (CXX_FLAG): Add DDEBUG_ASSERT back in.
4348         
4349 2000-04-13  Loren J. Rittle  <ljrittle@acm.org>
4350
4351         * mknumeric_limits: Rename generic type template parameter name
4352         '_T' to '_Tp'.
4353         * stl/bits/type_traits.h: Ditto.
4354
4355 2000-04-06  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
4356
4357         * mkcheck.in (SRC_DIR): Change default mkcheck behavior, so that
4358         it is more useful for --enable-libstdcxx-v3. Use the built
4359         compilers with v3, instead of compilers in PATH, and don't
4360         re-include include directories for checking the install.
4361
4362 2000-04-05  Benjamin Kosnik  <bkoz@cygnus.com>
4363
4364         * src/Makefile.am (AM_CXXFLAGS): Disable NAMESPACES, as this is on
4365         by default when using --enable-libstdcxx-v3.
4366         * src/Makefile.in: Regenerate.
4367         * configure.in: Disable GLIBCPP_ENABLE_NAMESPACES,
4368         GLIBCPP_ENABLE_RELIBGCC for --enable-libstdcxx-v3 flag.
4369         * configure: Regenerate.
4370         * mkcheck.in: Deal with NAMESPACES.
4371         
4372 2000-04-05  Petter Urkedal  <petter@matfys.lth.se>
4373
4374         * src/cmath.cc: New file...
4375         (pow(*, int)): Define functions...
4376         * src/Makefile.am (sources): ...register file.
4377         * src/Makefile.in: Regenerate.
4378         * bits/std_cmath.h (pow): ...declare functions here, and remove
4379         old definitions.
4380
4381 2000-04-04  Benjamin Kosnik  <bkoz@redhat.com>
4382         
4383         * acinclude.m4 (GCC_OBJDIR): Tweaks
4384
4385 2000-04-03  Benjamin Kosnik  <bkoz@redhat.com>
4386         
4387         * acinclude.m4 (GLIBCPP_CHECK_CPU): Add arm configure bits.
4388         * config/cpu/arm: New directory.
4389
4390         Jesper Skov  <jskov@redhat.com>
4391         * config/cpu/arm/atomicity.h: New file.
4392         
4393 2000-03-31  Benjamin Kosnik  <bkoz@redhat.com>
4394
4395         * stl/bits/stl_config.h: Make _STL_THREADS depend on _REENTRANT.
4396         Remove unused bits. Clean.
4397         
4398 2000-03-29  Benjamin Kosnik  <bkoz@cygnus.com>
4399
4400         * testsuite/25_algorithms: New directory.
4401         * testsuite/25_algorithms/min_max.cc: New file.
4402
4403 2000-03-29  scott snyder  <snyder@fnal.gov>
4404
4405         * bits/locale_facets.tcc (do_put): Allow a couple extra digits of
4406         precision beyond that which we get from numeric_limits::digits10.
4407
4408         * stl/bits/stl_algobase.h (max, min): Don't use comparison
4409         operator.
4410
4411         * testsuite/23_containers/bitset_shift.cc: Fix.
4412
4413         * testsuite/27_io/ios_manip_fmtflags.cc (test01): Don't give a
4414         temporary to imbue().
4415
4416         * bits/std_fstream.h (sync): Resync libio's idea of the current
4417         file position with the external file.
4418
4419 2000-03-28  Benjamin Kosnik  <bkoz@cygnus.com>
4420
4421         * testsuite/27_io/istream_extractor_arith.cc.cvs: Fix merge
4422         mistake.
4423
4424         * bits/std_fstream.h (filebuf::is_open): Check for _M_file before
4425         attempting calls to it. 
4426         * bits/fstream.tcc (ctors): Don't call _M_init_filebuf in
4427         ctors. Instead, call _M_init_filebuf ...
4428         (open): Here, as suggested by 27.8.1.3. 
4429         * src/ios.cc (ios_base::Init::Init()): Clean up default filebufs
4430         properly when initializing cout/cin/cerr.
4431
4432 2000-03-27  Russell Davidson  <russell@ehess.cnrs-mrs.fr>
4433
4434         * testsuite/23_containers/multiset.cc (main): Clean up for namespaces.
4435         * testsuite/22_locale/ctype_char_members.cc: And here.
4436         * testsuite/27_io/streambuf.cc (streambuf): And here.
4437         * testsuite/27_io/ostream_inserter_char.cc (test06): And here.
4438         * testsuite/27_io/istream_unformatted.cc (test05): And here.
4439         * testsuite/27_io/istream_extractor_arith.cc: And here.
4440         * testsuite/27_io/ios_manip_basefield.cc (test02): And here.
4441         * testsuite/27_io/ios_base_members_static.cc: And here.
4442         * bits/std_climits.h (_CPP_CLIMITS): Fix typo.
4443
4444 2000-03-27  Chris Faylor  <cgf@cygnus.com>
4445         
4446         * configure.in: Remove setting of CXX if canadian cross.
4447         * configure: Regenerate.
4448
4449 2000-03-27  Nathan Myers  <ncm@zembu.com>
4450
4451         * bits/sstream.tcc: Optimize.
4452         * bits/basic_string.h(string::append): Don't inline.
4453         * bits/string.tcc: Move out-of-line.
4454         
4455 2000-03-27  Phil Edwards  <pme@sourceware.cygnus.com>
4456
4457         * acinclude.m4:  (GLIBCPP_CHECK_COMPILER_VERSION)  When using <2.96,
4458           define WERRORSUPPRESS so that the inlining warnings won't kill us.
4459         * aclocal.m4:  Regenerate.
4460         * configure:  Regenerate.
4461         * src/Makefile.am:  Use WERRORSUPPRESS for the files that need it.
4462         * src/Makefile.in:  Regenerate.
4463
4464         * docs/install.html:  Almost complete rewrite.
4465
4466 2000-03-25  Phil Edwards  <pme@sourceware.cygnus.com>
4467
4468         * docs/install.html:  Explain -Werror problem at "#Werror" mark.
4469         * docs/faq/index.html:  Testsuite will die horribly if new libgcc.a
4470           not installed.
4471         * docs/faq/index.txt:  Regenerate.
4472
4473 2000-03-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br> 
4474
4475         * src/Makefile.am (libio_headers_install): Fix.
4476         * src/Makefile.in: Regenerate.
4477         
4478 2000-03-24  Benjamin Kosnik  <bkoz@cygnus.com>
4479
4480         * docs/17_intro/RELEASE-NOTES: Fix typos.
4481         * docs/index.html: Update.
4482         * docs/17_intro/BUGS: Update.
4483         * docs/status.html: Update for 2.90.8 release.
4484
4485 2000-03-23  Phil Edwards  <pme@sourceware.cygnus.com>
4486
4487         * Makefile.am:  Better error message when missing libgcc2.ready.
4488         * Makefile.in:  Regenerate.
4489         * acinclude.m4:  Fastidious nitpicking reformatting.
4490         * aclocal.m4:  Regenerate.
4491         * configure:  Regenerate.
4492         * mkcheck.in:  Must use same namespace settings as the library being
4493           tested.  Also log ST_FLAG, since it's being passed.
4494         * docs/install.html:  Add brief chunk on configuration.
4495         * docs/17_intro/RELEASE-NOTES:  Fix minor Cygwin typo.
4496         * docs/23_containers/howto.html:  Mention MT-safe string.
4497         * docs/faq/index.html:  Minor updates.
4498         * docs/faq/index.txt:  Regerarate.
4499
4500 2000-03-22  Benjamin Kosnik  <bkoz@cygnus.com>
4501
4502         * bits/sstream.tcc (seekoff): Fix for gptr() null cases.
4503         Return newoff. 
4504         * bits/fstream.tcc (seekoff): Sync.
4505         (seekpos): Sync.
4506         * testsuite/27_io/ostream_unformatted.cc: New file.
4507         * testsuite/27_io/stringbuf.cc: Fix.
4508         * testsuite/27_io/istream_unformatted.cc (test04): Fix.
4509         
4510         * config/newlib/bits/ctype_base.h (ctype_base): Fix.
4511         * config/newlib/ctype.cc (ctype): Change __ctype -> _ctype_.
4512
4513         * src/complex_io.cc (operator>>complex): Tweak.
4514
4515         * config/cpu/alpha/atomicity.h: Explicitly typedef uint32_t, int32_t if
4516         <inttypes.h> does not exist.
4517         * config/cpu/sparc/sparc64/atomicity.h: Same.
4518         * config/cpu/sparc/sparc32/atomicity.h: Same.
4519         * config/cpu/powerpc/atomicity.h: Same.
4520         * config/cpu/i386/atomicity.h: Same.
4521         * config/cpu/generic/atomicity.h: Same.
4522         * configure.in: Check for inttypes.h.
4523         * configure: Regnerate.
4524
4525 2000-03-21  Benjamin Kosnik  <bkoz@cygnus.com>
4526
4527         * bits/std_sstream.h (_M_init_stringbuf): Set initial ate position
4528         correctly.
4529         * testsuite/27_io/ostream_inserter_char.cc (test06): Add tests for ate.
4530
4531         * docs/17_intro/RELEASE-NOTES (New): Add bits.
4532
4533         * configure.in: Move AC_CHECK_HEADERS to a point where we know we
4534         are compiling natively.
4535
4536         * libio/*: Update to CVS libio from egcs.
4537         
4538 2000-03-21  Phil Edwards  <pme@sourceware.cygnus.com>
4539
4540         * docs/download.html:  Document use of -z9 for CVS.
4541         * docs/index.html:  Add target date (no link) for future snapshot.
4542
4543 2000-03-21  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4544
4545         * bits/slice_array.h: Rename generic type template parameter name
4546         '_T' to '_Tp'. 
4547         * bits/mask_array.h: Ditto
4548
4549 2000-03-20  Benjamin Kosnik  <bkoz@cygnus.com>  
4550
4551         * *: Change copyright holder from "Cygnus Solutions" to "Free
4552         Software Foundation, Inc."
4553         
4554         * docs/configopts.html: Explain what "hella versions" means.
4555         * docs/install.html: Some tweaks--nice job on this Phil.
4556         * docs/documentation.html: Add a direct link to configuration options.
4557
4558         * src/Makefile.am (OPTIMIZE_CXXFLAGS): Add in extras.
4559         * docs/17_intro/RELEASE-NOTES (New): Add.
4560         * bits/c++config.h (__GLIBCPP__): Bump version.
4561
4562         * config/c_io_libio.cc (__basic__file(__c_lock*)): Change argument
4563         type to match prototype.
4564
4565 2000-03-20  Phil Edwards  <pme@sourceware.cygnus.com>
4566
4567         * docs/install.html:  Update for new funky build procedure.  Move
4568           description of 'configure' options to...
4569         * docs/configopts.html:  ...here.  New file.
4570         * docs/17_intro/howto.html:  Updates for new snapshot.
4571         * docs/20_util/howto.html:  Ditto.
4572         * docs/21_strings/howto.html:  Ditto.
4573         * docs/21_strings/stringtok_std_h.txt:  Fix example typos.
4574         * docs/22_locale/howto.html:  Ditto.
4575         * docs/23_containers/howto.html:  Ditto.
4576         * docs/faq/index.html:  Ditto.
4577
4578 2000-03-18  Petter Urkedal  <petter@matfys.lth.se>
4579             Benjamin Kosnik  <bkoz@gnu.org>
4580         
4581         * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_SUPPORT): Move code for main
4582         to the right place.
4583         * aclocal.m4: Regenerate.
4584         * configure: Regenerate.
4585
4586 2000-03-16  Benjamin Kosnik  <bkoz@cygnus.com>
4587             scott snyder  <sss@karma.fnal.gov>
4588         
4589         * config/c_io_libio.h: Add __c_lock.
4590         * config/threads-no.h: Same here.
4591         * config/threads-posix.h: Add __mutext_type typedef.
4592         * config/c_io_libio.cc: basic_file ctor takes lock arg. 
4593         * bits/basic_file.h: Ctor takes lock arg. 
4594         * bits/std_fstream.h: Add _M_lock.
4595         * bits/fstream.tcc: Supply it to basic_file ctor.
4596
4597         * mkcheck.in (resultstext): Change [[ to [.
4598
4599         * testsuite/27_io/ostream_inserter_char.cc (test06): Tweak.
4600
4601         * bits/locale_facets.h: Tweak.  
4602
4603         * stl/bits/stl_config.h: Fix defines.
4604         
4605 2000-03-16  Benjamin Kosnik  <bkoz@cygnus.com>
4606
4607         * mkcheck.in (INC_PATH): Add paths from cpu_include_dir to find
4608         atomicity.h
4609         * configure: Regenerate.
4610         * aclocal.m4: Regnerate.
4611         
4612 2000-03-16  Nathan Myers  <ncm@zembu.com>
4613
4614         * bits/string.tcc: Add MT support.
4615         * bits/basic_string.h: Same.
4616         
4617 2000-03-16  Phil Edwards  <pme@sourceware.cygnus.com>
4618
4619         * configure.in:  Make --enable-namespaces and -libgcc-rebuild=../..
4620           the defaults.
4621         * configure:  Regenerate.
4622
4623         * config/solaris/solaris2.7/ctype.cc:  Fix unsigned/signed comparison.
4624
4625 2000-03-16  Phil Edwards  <pme@sourceware.cygnus.com>
4626
4627         * acinclude.m4 (GLIBCPP_CHECK_CTYPE):  If Sol2.5 ctype is found, keep
4628           checking for 2.[67].  (GLIBCPP_ENABLE_RELIBGCC):  No longer ignore
4629           any defaults passed in.
4630         * aclocal.m4:  Regenerate.
4631
4632 2000-03-16  Phil Edwards  <pme@sourceware.cygnus.com>
4633
4634         * mkcheck.in:  Report total successes and failures.
4635
4636 2000-03-15  Benjamin Kosnik  <bkoz@cygnus.com>
4637
4638         * config/cpu: New directory, intended to be used to provide
4639         cpu-specific configuration files. In particular, assembly language
4640         primitives for thread safety.
4641         * config/cpu/alpha: Populate.
4642         * config/cpu/alpha/atomicity.h: New file.
4643         * config/cpu/arm: Populate.
4644         * config/cpu/generic: Populate.
4645         * config/cpu/generic/atomicity.h: New file.
4646         * config/cpu/hppa: Populate.
4647         * config/cpu/i386: Populate.
4648         * config/cpu/i386/atomicity.h: New file, take from i486.
4649         * config/cpu/m68k: Populate.
4650         * config/cpu/mips: Populate.
4651         * config/cpu/powerpc: Populate.
4652         * config/cpu/powerpc/atomicity.h: New file.
4653         * config/cpu/sparc: Populate.
4654         * config/cpu/sparc/sparc32: Populate.
4655         * config/cpu/sparc/sparc64: Populate.
4656         * config/cpu/sparc/sparc32/atomicity.h: New file.
4657         * config/cpu/sparc/sparc64/atomicity.h: New file.       
4658
4659         * src/Makefile.am (myinstallheaders): Add install routines.
4660         * acinclude.m4 (GLIBCPP_CHECK_CPU):Add configuration for the
4661         cpu dir.
4662         * configure.in: Add.
4663
4664         * config/default: Adopt glibc naming conventions, and so move to
4665         * config/generic: Here.
4666         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Modify default case to generic.
4667         
4668 2000-03-15  Bill Thompson  <billt@toast.net>
4669
4670         * testsuite/27_io/ostream_inserter_char.cc (test06): Add test.
4671
4672 2000-03-14  Phil Edwards  <pme@sourceware.cygnus.com>
4673
4674         * docs/17_intro/howto.html:  Add missing "TOC" entry, and new section.
4675
4676         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Fixup.
4677         * aclocal.m4: Regenerate.
4678         * configure: Regenerate.
4679
4680 2000-03-13  scott snyder  <snyder@fnal.gov>
4681             Jason Merrill  <jason@cygnus.com>
4682         
4683         * bits/locale_facets.h (class ctype, class ctype<char>, class
4684         ctype<wchar_t>): More mask fixes.
4685         * testsuite/22_locale/ctype.cc: Test for the problem.
4686
4687 2000-03-13  Benjamin Kosnik  <bkoz@cygnus.com>
4688
4689         * acconfig.h: Add bits.
4690         * configure.in: Move AM_PROG_LIBTOOL up in file.
4691         Tweak cross compiling info. 
4692         * configure: Regenerate.
4693
4694         * mknumeric_limits (XCOMPILE): Echo compilation line for
4695         gen-num-limits.cc
4696
4697         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add aix checks.
4698         * aclocal.m4: Regenerate.
4699         * configure: Regenerate.
4700         * config/aix/ctype.cc (ctype): Tweak.
4701         * config/aix/bits/ctype_base.h (ctype_base): Tweak.
4702         * config/aix/bits/ctype_specializations.h: New file.
4703
4704 2000-03-10  scott snyder  <snyder@fnal.gov>
4705
4706         * stl/bits/stl_vector.h (_M_assign_aux): Fix for __normal_iterator 
4707         conversions.
4708         * testsuite/23_containers/vector_modifiers.cc (test01): Add a
4709         regression test for the problem.
4710
4711 2000-03-09  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
4712         
4713         * testsuite/27_io/streambuf.cc (class testbuf): Same here.      
4714         * bits/fpos.h: And here.
4715         * bits/std_ostream.h: Same here.
4716         * bits/std_istream.h: Same here.
4717         * bits/basic_ios.h: Same here.
4718         * bits/std_fstream.h: Same here.
4719         * bits/sbuf_iter.h (std): Here too.
4720         * bits/std_sstream.h: Make types public.
4721
4722         * src/misc-inst.cc: Use size_t instead of unsigned int. 
4723         * bits/locale_facets.tcc (_S_format): For now, cast to char. I
4724         suppose this should be ctype::narrow... all the ctype<wchar_t>
4725         stuff needs to be cleaned up.
4726
4727 2000-03-09  Phil Edwards  <pme@sourceware.cygnus.com>
4728
4729         * docs/gentop:  Remove entire directory, finally.
4730
4731 2000-03-09  scott snyder  <snyder@fnal.gov>
4732
4733         * bits/std_cmath.h (modf): Fix pointer overrun.
4734         * testsuite/26_numerics/c_math.cc (test04, main): Add a regression 
4735         test for the problem.
4736
4737 2000-03-09  Phil Edwards  <pme@sourceware.cygnus.com>
4738
4739         Looks like changes to the #include'd files must be followed by a
4740         change to the #include'ing files to take effect.  Caveat emptor.
4741         * docs/header.html:  New file, for server-side include.
4742         * docs/footer.html:  New file, for server-side include.
4743         * docs/documentation.html:  Change to use SSI.
4744         * docs/download.html:  Ditto.
4745         * docs/index.html:  Ditto.
4746         * docs/mail.html:  Ditto.
4747         * docs/status.html:  Ditto.
4748         * docs/thanks.html:  Ditto, plus minor updates.
4749         * docs/how.html:  Remove.
4750
4751 2000-03-09  Benjamin Kosnik  <bkoz@gnu.org>
4752
4753         Preliminary alpha-linux support.
4754         * src/locale.cc (ctype<wchar_t>): Use correct types...
4755         * bits/locale_facets.h (ctype<char>): Add __table_type typedef.
4756         (ctype<wchar_t>): Same.
4757         * bits/locale_facets.h (ctype<wchar_t>): Have char and wchar_t
4758         types match for table_size (size_t).
4759
4760         * config/gnu-linux/ctype.cc (ctype): Change char_type to wchar_t
4761         as per char specialization.
4762         * config/*/ctype.cc: Same.
4763         
4764 2000-03-09  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4765
4766         * bits/locale_facets.h (_Ctype<>::mask): Import from base class
4767         _Ctype_nois<>.  Template base classes are never examinated in
4768         first-phase name-lookup. 
4769
4770 2000-03-08  Benjamin Kosnik  <bkoz@gnu.org>
4771
4772         Add Solaris 2.5.1 support.
4773         * config/solaris/solaris2.5/bits/ctype_base.h (ctype_base): And here.
4774         * config/solaris/solaris2.5/ctype.cc: Fixup.
4775         * config/solaris/solaris2.5/bits/ctype_specializations.h: Add.
4776         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add bits for solaris2.5.1.
4777         * aclocal.m4: Regenerate.
4778         * configure: Regenerate.
4779         
4780         * config/default/ctype.cc (ctype): Fixup.
4781
4782 2000-03-07  Benjamin Kosnik  <bkoz@blues.cygnus.com>
4783
4784         * testsuite/27_io/filebuf.cc: Activate init code from yesterday...
4785         * testsuite/27_io/ostream_inserter_arith.cc (testcases): Fix for
4786         non-wchar_t case.
4787
4788 2000-03-07  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4789
4790         * bits/cpp_type_traits.h: Expand on this file purpose.
4791
4792 2000-03-06  Benjamin Kosnik  <bkoz@gnu.org>
4793
4794         * bits/locale_facets.h (ctype<char>): Remove static members, and
4795         re-work initialization code.
4796         (ctype<wchar_t>): Same.
4797         Move _S_touppper to _M_toupper and initialize in ctor.
4798         Move _S_tolower  to _M_tolower and initialize in ctor.  
4799         Move _S_table to _M_ctable and initialize in ctor.
4800         * bits/locale_facets.h (std): And here.
4801         * src/locale.cc (std): Tweak.
4802         * config/gnu-linux/ctype.cc: Change initialization here.
4803         * config/newlib/ctype.cc: And here.
4804         * config/solaris/solaris2.7/ctype.cc: And here.
4805         * config/solaris/solaris2.6/ctype.cc: And here.
4806         
4807         * bits/localefwd.h: Tweak.
4808         * bits/std_streambuf.h: Tweak formatting.
4809
4810         * testsuite/27_io/filebuf.cc: Remove BUFSIZ dependencies.
4811
4812 2000-03-05  Chip Salzenberg  <chip@valinux.com>
4813
4814         * src/misc-inst.cc (basic_iostream<>):  Instantiate.
4815
4816 2000-03-02  Phil Edwards  <pme@sourceware.cygnus.com>
4817             Kevin Atkinson  <kevinatk@home.com> 
4818
4819         Initial grab of SGI's strstream implementation with minor
4820         modifications.
4821         * src/strstream.cc:  New file.
4822         * std/strstream:  New file.
4823         * stl/bits/std_strstream.h:  New file.
4824         * bits/std_streambuf.h:  Add public access.
4825         * src/Makefile.am:  Add strstream sources to list of dependencies.
4826         * src/Makefile.in:  Regenerate.
4827
4828 2000-03-03 2000  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4829
4830         * bits/valarray_meta.h: Fix typo.
4831         
4832 2000-03-02  Alexandre Oliva  <oliva@lsd.ic.unicamp.br> 
4833             Chip Salzenberg  <chip@valinux.com>
4834             Petter Urkedal  <petter@matfys.lth.se>
4835
4836         * src/Makefile.am (myinstallheaders): Hack to avoid
4837         `for i in ; do'.
4838         * src/Makefile.in: Regenerate.
4839         
4840 2000-03-02  Chip Salzenberg  <chip@valinux.com>
4841
4842         * libio/Makefile.an, math/Makefile.an, src/Makefile.am
4843         (LINK): Put quotes around "$(CC)" for libtool link mode,
4844         so libtool will use "-B" options during GCC bootstrap.
4845         * */Makefile.in: Regenerate.
4846         
4847 2000-03-02  Petter Urkedal  <petter@matfys.lth.se>
4848
4849         * config/c_io_libio.h: Enclose it all in ::std.
4850         * bits/basic_string.h (basic_string<>): Make types and
4851         `npos' public.
4852         * mkc++config: Truncate output file before writing.
4853
4854 2000-03-01  Benjamin Kosnik  <bkoz@gnu.org>
4855
4856         * math/cabsf.c (__mycabsf): Rename to cabsf.
4857         * math/cabs.c (__mycabs): Rename to cabs.
4858
4859 2000-02-29  LLeweLLyn Reese  <llewelly@198.dsl.xmission.com>
4860  
4861        * bits/basic_string.h: Move declarations of __out_of_range(),
4862        __length_error() and accompanying macros ...
4863        * bits/exception_support.h: here. (Newly created file).
4864        * bits/basic_string.h: #include <bits/exception_support.h>
4865        * stl/bits/stl_vector.h: #include <bits/exception_support.h>
4866        * src/Makefile.am (headers): Add.
4867        * src/Makefile.in: Regenerate.
4868         
4869 2000-02-29  Benjamin Kosnik  <bkoz@cygnus.com>
4870         
4871         * bits/cpp_type_traits.h: Rename structs so they don't clash with
4872         type_traits.h.
4873         * bits/valarray_array.h: Synch. Fix typos.
4874
4875         * libio/Makefile.am: Change to only compile source files that
4876         config/c_io_libio.cc actually needs.
4877         * libio/Makefile.in: Regnerate.
4878         * libio/PlotFile.hes SFile.h builtinbuf.h editbuf.h floatconv.c
4879         floatio.h fstream.h indstream.h iofclose.c iofdopen.c iofeof.c
4880         ioferror.c iofflush.c iofgetpos.c iofgets.c iofopen.c iofprintf.c
4881         iofputs.c iofread.c iofscanf.c iofsetpos.c ioftell.c iofwrite.c
4882         iogetc.c iogetdelim.c iogetline.c iogets.c ioignore.c iomanip.h
4883         iopadn.c ioperror.c iopopen.c ioprims.c ioprintf.c ioputc.c
4884         ioputs.c ioscanf.c ioseekoff.c ioseekpos.c iosetbuffer.c
4885         iosetvbuf.c iosprintf.c iosscanf.c iostream.h iostrerror.c
4886         ioungetc.c iovfprintf.c iovfscanf.c iovsprintf.c iovsscanf.c
4887         istream.h list.out ostream.h outfloat.c parsestream.h peekc.c
4888         pfstream.h procbuf.h stdiostream.h stream.h streambuf.h strfile.h
4889         strops.c strstream.h: Delete.
4890
4891         * bits/basic_file.h: Stub out or delete unused bits in this
4892         interface.
4893         (filepos_beg): Remove.  
4894         (filepos_cur): Remove.
4895         (filepos_valid): Remove.
4896         * config/c_io_libio.cc: Resynch with the changes to basic_file.
4897
4898 2000-02-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4899
4900         * bits/cpp_type_traits.h: Correct typo.
4901
4902 2000-02-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4903
4904         * bits/cpp_type_traits.h: New file.
4905         
4906         * bits/valarray_array.h: Tweak.  #include <bits/cpp_type_traits.h>
4907         Improve array construction.
4908         (_Array_default_ctor): New dispatcher class. 
4909         (__valarray_default_construct): New function.
4910         (_Array_copy_ctor): New dispatcher class.
4911         (__valarray_copy_construct): New function.
4912         (_Array<>::free_data): Remove.
4913
4914         * src/Makefile.am (headers): Add cpp_type_traits.h
4915         * src/Makefile.in: Regenerate.
4916
4917 2000-02-28  Benjamin Kosnik  <bkoz@cygnus.com>
4918
4919         Prune libio directory to match files in libio/Makefile.
4920         * libio/PlotFile.cc,indstream.cc, isgetsb.cc, sbform.cc,
4921         stream.cc, SFile.cc, ioassign.cc, isscan.cc, sbgetline.cc,
4922         streambuf.cc, builtinbuf.cc, ioextend.cc, osform.cc, sbscan.cc,
4923         strstream.cc, editbuf.cc, iomanip.cc, parsestream.cc,
4924         stdiostream.cc, filebuf.cc, iostream.cc, pfstream.cc,
4925         stdstrbufs.cc, fstream.cc, isgetline.cc, procbuf.cc,
4926         stdstreams.cc: Remove.
4927         * libio/floatio.h, iolibio.h, iostdio.h, iostreamP.h: Remove.
4928         * libio/iofflush_u.c: Remove.
4929         
4930         * libio/dbz: Remove.  
4931         * libio/include: Remove.  
4932         * libio/stdio: Remove.  
4933         * libio/tests: Remove.  
4934         * libio/testsuite: Remove.
4935         
4936         * config/c_io_libio.cc: Add fcntl.h include for Solaris.
4937
4938         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Add bits.
4939         * configure.in: Replace 'grep -e' with 'grep' for Solaris.
4940         * configure: Regenerate.
4941
4942 2000-02-25  Benjamin Kosnik  <bkoz@gnu.org>
4943
4944         Abstract out the underlying "C" io bits.
4945         * bits/std_new.h: Remove <stl_config> include, as well as <cstddef>.
4946         * stl/bits/stl_string_fwd.h: Remove <stddef> include.
4947         * bits/std_cwchar.h: Wrap with _GLIBCPP_USE_WCHAR_T guards. Don't
4948         include <cstddef>.
4949         * stl/bits/stl_config.h: Don't include _G_config.h.
4950
4951         * bits/basic_file.h: Allow for non-inheritance based __basic_files.
4952         * config/c_io_libio.h (_GLIBCPP_BASIC_FILE_INHERITANCE): Define.
4953         * config/c_io_libio.cc: Tweak.
4954
4955         * src/Makefile.am (TOPLEVEL_INCLUDES): Add includedir.
4956         * src/Makefile.in: Regenerate.
4957         * Makefile.am (AM_MAKEFLAGS): Define includedir so that
4958         prefix/include files will be picked up.
4959         * Makefile.in: Regenerate.
4960         * math/Makefile.am (TOPLEVEL_INCLUDES): And here.
4961         * libio/Makefile.am (TOPLEVEL_INCLUDES): And here.
4962         
4963         * bits/std_ios.h: Include <bits/c++io.h> instead of libio.
4964         * bits/fpos.h: And here.        
4965         * bits/basic_file.h (get_fileno): Move definition from ...
4966         * src/basic_file.cc (std): To here.
4967         * bits/fpos.h: Move types for streamoff, streampos to..
4968         * bits/basic_file.h: Move __c_file_type and fpos typedefs to...
4969         * config/c_io_libio.h: ...here.
4970         (_GLIBCPP_[BOOLALPHA, HEX, DEC, FIXED, INTERNAL, LEFT, OCT, RIGHT,
4971         SCIENTIFIC, SHOWBASE, SHOWPOINT, SHOWPOS, SKIPWS, UNITBUF,
4972         UPPERCASE, ADJUSTFIELD, BASEFIELD, FLOATFIELD, BADBIT, EOFBIT,
4973         FAILBIT, GOODBIT, APP, ATE, BINARY, IN, OUT, TRUNC): New macros to
4974         abstract out bits in ios_base.
4975         * bits/ios_base.h: Re-macrofy.  
4976         * src/basic_file.cc : Rename, move to
4977         * config/c_io_libio.cc: Here. 
4978         * config/c_io_libio.h: New file. Include libio.
4979         * bits/c++config.h: Don't define _GLIBCPP_USE_LIBIO.
4980         * configure.in (blddir): Add enabling bits for GLIBCPP_ENABLE_CSTDIO.
4981         * configure: Regenerate.
4982         * src/Makefile.am (sources): Take out basic_file.cc and add c++io.cc.
4983         (generated_headers): Add c++io.h
4984         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): New function to select
4985         underlying "C" io library.
4986         * acinclude.m4 (GLIBCPP_CHECK_LIBIO): Roll functionality into
4987         GLIBCPP_ENABLE_CSTDIO.
4988         
4989         * configure.in: Add configure bits for cross compiling non-newlib
4990         targets. .
4991         GLIBCPP_CHECK_COMPILER_VERSION: Take out this test for this
4992         target, as we assume g++ support is not the limiting factor.
4993         GLIBCPP_CHECK_LIBIO: Same, know we don't need libio.  
4994         * configure: Regenerate.
4995         
4996 2000-02-22  Benjamin Kosnik  <bkoz@cygnus.com>
4997
4998         * Makefile.am (INTERFACE): Define.
4999         * Makefile.in: Regenerate.
5000         * libio/ChangeLog: Add entry.
5001
5002 2000-02-21  Benjamin Kosnik  <bkoz@cygnus.com>
5003
5004         * docs/install.html: Update install directions.
5005
5006         * docs/status.html: Fix sidebar to be consistent.
5007         * docs/thanks.html: Same.
5008         * docs/links.html: Same.
5009         * docs/mail.html: Same.
5010         * docs/download.html: Same.
5011
5012         * testsuite/27_io/filebuf.cc: Change BUFSIZ to buffer_size, and
5013         kill the macro BUFSIZ. I think the solaris fails lie elsewhere
5014         however, in the ctype_char_members.cc fail (for instance.)
5015         * testsuite/17_intro/headers.cc: Remove extraneous fails for hosts
5016         that do not have wchar_t enabled.
5017         * testsuite/27_io/ostream_inserter_arith.cc (struct _TestCase):
5018         Same here.
5019         * testsuite/27_io/iostream_objects.cc: And here.
5020
5021         * libio/gen-params (CONFIG_NM): Specifically add in nm as the
5022         default CONFIG_NM.
5023         
5024 2000-02-18  Benjamin Kosnik  <bkoz@haight.constant.com>
5025             Tom Tromey  <tromey@cygnus.com>
5026
5027         * configure.in: Manually add MULTISUBDIR.
5028         * configure: Regenerate.
5029         * src/Makefile.am (MULTISUBDIR): Add the lesser evil of Tom's two
5030         "Eww" hacks to get multilib installs working correctly.
5031         ($(headers): Test for MULTISUBDIR before installing.
5032         * Makefile.am (AM_MAKEFLAGS): Don't define MULTISUBDIR, instead
5033         have configure hack it in.
5034         * Makefile.in: Regenerate.
5035         * acinclude.m4 (GLIBCPP_CXXFLAGS): Tweak wording. 
5036         Add enabling bits for native Cygwin ctypes, and other newlib-based
5037         Oses.
5038         
5039 2000-02-17  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
5040
5041         * mkc++config (OUT_H): Remove EOF in cygwin.
5042         * acinclude.m4 (LIBS): Tweaks to allow cygwin to configure.
5043
5044         Tom Tromey  <tromey@cygnus.com>
5045         * src/Makefile.am: Tweaks for installing multilibs.
5046
5047 2000-02-17  Benjamin Kosnik  <bkoz@cygnus.com>
5048
5049         * src/Makefile.am: 
5050         (toolexeclib_LTLIBRARIES): Use this instead of lib_LTLIBRARIES.
5051         Add USE_LIBDIR bits here, not...
5052         * src/Makefile.in: Regenerate.
5053         * Makefile.am: ...here.
5054         * Makefile.in: Regenerate.
5055         
5056 2000-02-17  Benjamin Kosnik  <bkoz@gnu.org>
5057
5058         * acinclude.m4 (LIBS): Fix typos.
5059         * configure.in: _GLIBCPP_BUGGY_FLOAT_COMPLEX,
5060         _GLIBCPP_BUGGY_COMPLEX for crosses.
5061         * src/Makefile.am (std_headers): Add libio.h as install include,
5062         as with _G_config.h
5063         * src/Makefile.in: Regenerate.
5064
5065         * mkcheck.in: Add bits to set CXX to cross compiler.
5066
5067         * src/complex_io.cc: Tweak.
5068         * configure.in: _GLIBCPP_BUGGY_COMPLEX for crosses.
5069         * configure: Regenerate.
5070         
5071         * config/newlib/ctype.cc: Tweaks.
5072         * config/newlib/bits/ctype_base.h (ctype_base): Set mask to char,
5073         not const char.
5074         * src/complex_io.cc (operator>>(istream, complex): Define out if
5075         BUGGY_COMPLEX.
5076
5077 2000-02-16  Benjamin Kosnik  <bkoz@cygnus.com>
5078
5079         * config/newlib/bits/ctype_base.h: Correct _S_table.
5080
5081         Reconfigure ctype support for "C" libraries that don't use arrays.
5082         * testsuite/22_locale/ctype_char_members.cc: New file. Test for
5083         basic ctype<char> functionality.
5084         * src/locale.cc: Move host-specific ctype functions that are not
5085         inlines to config/*/ctype.cc files.
5086         (ctype<char>::do_tolower): For instance.
5087         (ctype<char>::do_toupper): For instance.
5088         (ctype<wchar_t>::do_tolower): For instance.
5089         (ctype<wchar_t>::do_toupper): For instance.
5090         * config/gnu-linux/ctype.cc: Modify.
5091         * config/default/ctype.cc: Modify.
5092         * config/newlib/ctype.cc: Modify.
5093         * config/solaris/solaris2.6/ctype.cc: Modify.
5094         * config/solaris/solaris2.7/ctype.cc: Modify.
5095
5096         * bits/locale_facets.h (ctype<char>::is): Mark inline, move
5097         out-of-line.
5098         (ctype<char>::scan_is): Here too.
5099         (ctype<char>::scan_not): Here too.
5100         Move out of line defs to config/*/bits/ctype_specializations.h.
5101         * config/gnu-linux/bits/ctype_specializations.h: ...here. New file.
5102         * config/default/bits/ctype_specializations.h: ...here. New file.
5103         * config/newlib/bits/ctype_specializations.h: ...here. New file.
5104         * config/solaris/solaris2.6/bits/ctype_specializations.h: New file.
5105         * config/solaris/solaris2.7/bits/ctype_specializations.h: New file.
5106         * src/Makefile.am (headers): Add ctype_specializations.h.
5107         * src/Makefile.in: Regenerate.
5108         
5109         Aaron Weiss <weiss@clearway.com> 
5110         * Makefile.am (AM_MAKEFLAGS): Add NM_FOR_BUILD, NM_FOR_TARGET, and
5111         CONFIG_NM for Solaris builds.
5112         * Makefile.in: Regenerate.
5113         
5114         * src/locale.cc: Tweak formatting.
5115
5116 2000-02-15  Benjamin Kosnik  <bkoz@cygnus.com>
5117
5118         Jim Parsons  <parsons@clearway.com> 
5119         * testsuite/27_io/istream_unformatted.cc (test06): Add test.
5120         * bits/istream.tcc (read): Set failbit if !good(). Don't increment
5121         gcount if eof.
5122         (readsome): Same.
5123
5124         Michel Decima  <michel.decima@cnet.francetelecom.fr>
5125         * testsuite/27_io/streambuf.cc: Add test.
5126         * bits/streambuf.tcc (xsgetn): Don't test for valid mode.
5127         (xsputn): Same.
5128         
5129         * src/Makefile.am (AM_CXXFLAGS): Pass down AC_CXXFLAGS,
5130         OPTIMIZE_CXXFLAGS, etc. So --enable-debug and --enable-namespaces
5131         will work correctly, for instance.
5132         * src/Makefile.in: Regenerate.
5133
5134         * bits/locale_facets.h: Fix merge error.
5135         (num_put::put(unsigned long long): And here.
5136         * mknumeric_limits (trait_name): Same.
5137         
5138 2000-02-15  Chip Salzenberg  <chip@valinux.com>
5139
5140         Support 'configure --enable-long-long'.
5141         * bits/c++config.h (_GLIBCPP_USE_LONG_LONG): Remove.
5142         * stl/bits/stl_config.h (__STL_LONG_LONG): Remove '#if 0'.
5143         * acconfig.h (_GLIBCPP_USE_LONG_LONG): Add.  Default to undef.
5144         * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Define flag macro.
5145         * configure.in (GLIBCPP_ENABLE_LONG_LONG): Use it.
5146
5147         * aclocal.m4: Regenerate.
5148         * config.h.in: Regenerate.
5149         * configure: Regenerate.
5150
5151 2000-02-15  Chip Salzenberg  <chip@valinux.com>
5152
5153         Improve (complete?) 'long long' support.
5154         * mknumeric_limits: Call $CXX with $CPPFLAGS.  Define statics
5155         for {,unsigned} long long if the limits header declares them.
5156         * src/gen-num-limits.cc: Include <bits/c++config.h> early.
5157         (__USE_GNU, _GNU_SOURCE): Define if _GLIBC_USE_LONG_LONG.
5158         (long long, unsigned long long): Gen limits if _GLIBC_USE_LONG_LONG.
5159         * bits/locale_facets.h (num_get<>::get(..., long long &)): Define.
5160         (num_put<>::put(..., long long)): Likewise.
5161         (num_put<>::put(..., unsigned long long)): Likewise.
5162         * bits/locale_facets.tcc (_S_format): Rename from _S_format_long.
5163         Templatize last parameter to support 'long long'.
5164         (num_put<>::put(...)): Call _S_format with new name.
5165         (num_put<>::put(..., long long)): Define.
5166         (num_put<>::put(..., unsigned long long)): Likewise.
5167         * src/locale-inst.cc (_S_format): Instantiate under new name.
5168
5169 2000-02-15  Petter Urkedal  <petter@matfys.lth.se>
5170
5171         * src/complex.cc (operator<<, operator>>): Moved from here...
5172         * src/complex_io.cc: ...to new file.
5173         (operator>>): Stub replaced by the real thing.
5174         * src/Makefile.am (sources): Inserted complex_io.cc.
5175         * src/Makefile.in: Regenerate.
5176         * testsuite/26_numerics/complex_inserters_extractors.cc: Check it.
5177
5178 2000-02-14  Benjamin Kosnik  <bkoz@gnu.org>
5179
5180         Add in ctype information for newlib "C" libraries.
5181         * config/newlib: New directory
5182         * config/newlib/bits/ctype_base.h: New file.
5183         * config/newlib/ctype.cc: New file.
5184
5185         * ctype/config/linux/*: Rename, move to...
5186         * ctype/config/gnu-linux/*: Here.
5187         
5188         Finish off multilib work.
5189         * configure.in: Don't set CXX if not Canadian cross.
5190         * configure: Regenerate.
5191         * acinclude.m4 (GLIBCPP_CHECK_LIBIO): Tweak messages.
5192         * aclocal.m4: Regenerate.
5193         * config.h.in: Regenerate.
5194
5195         * install-sh: Remove, as AC_CONFIG_AUX_DIR(..) picks this out of
5196         the top-level gcc directory now.
5197         * mkinstalldirs: Remove.
5198         * missing: Remove
5199         * ltconfig: Remove.
5200         * ltmain.sh: Remove.
5201         * config.guess: Remove.
5202         * config.sub: Remove.
5203         
5204 2000-02-13  Benjamin Kosnik  <bkoz@cygnus.com>
5205
5206         * configure.in (glibcpp_basedir): Add glibcpp_basedir.
5207         * Makefile.am: Move mutlilib stuff to src/Makefile.am. 
5208         * Makefile.in: Regenerate.
5209         * src/Makefile.am: Add multilib bits.
5210         * src/Makefile.in: Regenerate.
5211         
5212 2000-02-12  Benjamin Kosnik  <bkoz@cygnus.com>
5213
5214         * configure.in: Clean, add some multilib support.
5215         * configure: Regenerate.
5216         * configure.host: New file.
5217
5218         * acinclude.m4: GLIBCPP_CHECK_LIBIO. Take bits from configure.in and 
5219         roll a new function, checks for presence of libio.
5220         GLIBCPP_CHECK_COMPILER_VERSION: Same.
5221         GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT: Same.
5222         GLIBCPP_CHECK_MATH_SUPPORT: Same.
5223         GLIBCPP_CHECK_WCHAR_T_SUPPORT: Same.
5224         GLIBCPP_CHECK_LIBIO: Same.
5225         GLIBCPP_CHECK_CTYPE: Same.
5226         * aclocal.m4: Regenerate.
5227         * config.h.in: Regenerate.      
5228
5229         * Makefile.am: Tweaks.
5230         * Makefile.in: Regenerate.
5231         
5232 2000-02-11  Benjamin Kosnik  <bkoz@cygnus.com>
5233
5234         * configure.in: Make outputing the libio/Makefile
5235         conditional. Haha, yeah right. Anyway, we instead do this thing
5236         where if libio is found, then we build a null library, as there is
5237         no point in duplicating the found libio.
5238         * Makefile.am: Tweak.
5239         * Makefile: Regenerate.
5240         * libio/Makefile.am: Add _G_config.h stuff. Now cross compilers
5241         are happy happy happy.
5242         * libio/Makefile.am: Regenerate.
5243         * libio/gen-params: New file.
5244         * src/Makefile.am: Make libio.la non-conditional, as it is now a
5245         null library if it's not needed. At least we are being consistent,
5246         if not as elegant as we could be.
5247         * src/Makefile: Regenerate.
5248         
5249 2000-02-10  Benjamin Kosnik  <bkoz@gnu.org>
5250
5251         * Makefile.am (SUBDIRS): Add libio again.
5252         * Makefile.in: Regenerate.
5253         * configure.in (BUILD_LIBIO_INCLUDE): And here.
5254         (AC_OUTPUT): Generate libio/Makefile again.
5255         * configure: Regnerate.
5256         * src/Makefile.am (libstdc___la_LIBADD): Change path so that
5257         libio.la is referring back to the libio subdir again.
5258         (LIBIO_INCLUDES): And here.
5259         * src/Makefile.in: Regenerate.
5260         
5261 2000-02-09  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
5262
5263         * math/complex-stub.h: Missed one. Change __mycabs* to cabs*.
5264
5265 2000-02-09  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5266
5267         * bits/valarray_array.h (<bits/std_new.h>): #include.
5268         (__valarray_get_memory): New function.
5269         (__valarray_release_memory): Likewise.
5270         (__valarray_default_construct): New functions.
5271         (__valarray_fill_construct): New function.
5272         (__valarray_copy_construct): New funstions.
5273         (__valarray_destroy_elements): New function.
5274
5275         * bits/valarray_array.tcc (__valarray_copy_construct): New
5276         functions. 
5277
5278         * bits/std_valarray.h (valarray<>::valarray): Use
5279         __valarray_get_memory and __valarray_fill_construct,
5280         __valarray_copy_construct, __valarray_default_construct to
5281         properly construct valarrays.  
5282         (valarray<>::~valarray): Use __valarray_destroy_elements to
5283         destroy elements and __valarray_release_memory to return memory.
5284         (valarray<>::shift): Tweak. 
5285         (valarray<>::cshift): Likewise.
5286         (valarray<>::resize): Robustify.
5287
5288 2000-02-09  Benjamin Kosnik  <bkoz@cygnus.com>
5289
5290         * mknumeric_limits (XCOMPILE): Add support for cross compiling.
5291         * bits/limits_generic.h: New file, defaults.
5292         * src/limits_generic.cc: New file, defaults.    
5293         * configure.in (LIBS): Run mknumeric_limits at configure time.
5294         * acconfig.h: Remove PACKAGE VERSION HAVE_COMPLEX
5295         HAVE_LC_MESSAGES, tidy, clean, etc.
5296         * src/Makefile.am (geberated_sources): Remove.
5297
5298         * bits/fpos.h: Use _GLIBCPP_USE_LIBIO guards for libio typenames
5299         (_IO_off_t, _IO_ssize_t)
5300
5301         * src/complex.cc: Use glibc's <complex.h> if
5302         possible. . . apparently this was not being done before. Include
5303         tweaks.
5304         (abs): Enable cabs if it's around, instead of mycabs.
5305         * src/complexf.cc (FCT): Add global scope to match complex.cc.
5306         * src/complexl.cc (FCT): Same.
5307         * math/Makefile.am (EXTRA_LONG_DOUBLE_yes): Change mycabsl to cabsl.
5308         (libmath_la_SOURCES): And here.
5309         * math/(mycabs.c, mycabsf.c, mycabsl.c): Move to. . .
5310         * math/(cabs.c, cabsf.c, cabsl.c): . . . Here.
5311         * math/complex-stub.h: Move c_log declarations into. . . 
5312         * math/mathconf.h: Here. This is because glibc's <complex.h>
5313         declares cclog, not c_log. The case of the dueling standards. . .
5314         * math/mathconf.h: Add _GLIBCPP_HAVE_* to macros.
5315         * math/Makefile.am: Change.
5316         * math/nan.c (nan): Change signature.
5317         * math/mathconf.h (NAN): Same.
5318         * math/complex-stub.h (nan): And here.
5319         
5320         * Makefile.am (rebuild-stamp): Remove libio and libio
5321         dependencies.  Plan to take out libio subdir and just merge with
5322         libio in top level gcc directory. Of course, this assumes there is
5323         a libio in the top level directory (ie ../src_dir). This will
5324         probably change the way this library is configured by default.
5325         * libio/*: Remove.
5326
5327 2000-02-09  Chip Salzenberg  <chip@valinux.com>
5328
5329         * localefwd.h (locale): Make public: facet, id, category.
5330         
5331 2000-02-09  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5332
5333         * testsuite/26_numerics/buggy_complex.cc: Fix Origin:.
5334
5335         * acinclude.m4: Patch only once!
5336
5337 2000-02-09  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5338
5339         * testsuite/26_numerics/buggy_complex.cc: New file.
5340
5341 2000-02-05  Petter Urkedal  <petter@matfys.lth.se>
5342
5343         * acinclude.m4: New GLIBCPP_CHECK_COMPLEX_SUPPORT macro. Based
5344         on the 1999-11-21 entries by Mumit Khan.
5345         * configure.in: Use.
5346         * acconfig.h: New _GLIBCPP_BUGGY_COMPLEX macro.
5347         * bits/std_complex.h: Use.
5348         
5349 2000-02-04  Philip Martin <pm@corris.dircon.co.uk>
5350
5351        * stl/bits/stl_algobase.h: Add traits based dispatch for
5352        __normal_iterator in the copy_backward()algorithm
5353        * stl/bits/stl_vector.h: Reduce use of __normal_iterator
5354        base() function.
5355
5356 2000-02-04  Mumit Khan  <khan@xraylith.wisc.edu>
5357         
5358         * src/gen-num-limits.cc (signal_handler): Work around signal
5359         handling problem on Cygwin. 
5360         Thanks to Chris Faylor <cgf@cygnus.com>.
5361
5362 2000-02-03  Benjamin Kosnik  <bkoz@cygnus.com>
5363
5364         * configure.in: Add (preliminary) support for cross compiles and
5365         multilibs.
5366         Remove AC_C_BIGENDIAN tests. Why is this necessary? Cross
5367         compilation freaks on this.
5368         * configure: Regenerate.
5369         * src/Makefile.am: Add support for cross compiles.
5370         * src/Makefile: Regenerate.
5371         * Makefile.am: Add support for cross compiles.
5372         * Makefile.in: Regenerate.
5373         
5374 2000-02-02  Benjamin Kosnik  <bkoz@cygnus.com>
5375
5376         * configure.in (LIBS): Remove unused subdirs.   
5377         * configure: Regenerate.
5378         * Makefile.am (SUBDIRS): And here.
5379         * Makefile.in: Regenerate.
5380         * src/Makefile.am (sources): And here.
5381         * src/Makefile.in: Regenerate.
5382         * string/*: Remove.
5383         * amm1/*: Remove.
5384         * generic/*: Remove.
5385         * glibc/*: Remove.
5386         * mkcheck.in (INC_PATH): Include $BUILD_DIR before any source dirs.
5387
5388         * libtool: Update to libtool-1.3.4.
5389         * ltconfig: Same
5390         * ltmain.sh: Same
5391         * config.sub: Same.
5392         * config.guess: Same.
5393
5394 2000-02-02  Benjamin Kosnik  <bkoz@cygnus.com>
5395             Alexandre Petit-Bianco  <apbianco@cygnus.com>    
5396
5397         * mkc++config: New file. Put autoconf macros into _GLIBCPP_
5398         namespace instead of polluting global namespace with duplicate
5399         autoconf output.
5400         * configure.in (AC_OUTPUT): Don't need to generate bits/config.h
5401         here anymore. . .
5402         (AC_OUTPUT_COMMANDS): Make it here.
5403         * configure: Regenerate.
5404         * bits/c++config.h.in (_CPP_CPPCONFIG): Change. Tweak. Remove
5405         endif, as now we will add it manually.
5406         Move to this file. . .
5407         * bits/c++config.h: New file. Same as old c++config.h.in except
5408         the ending macro guard is now appended manually.
5409
5410         * bits/locale_facets.tcc: Change HAVE_* macros to _GLIBCPP_HAVE_*.
5411         * bits/std_cmath.h: Same here.
5412         * bits/std_cwchar.h: And here.
5413         * src/locale.cc: And here.
5414         * src/complexl.cc: And here.
5415         * math/mathconf.h: Change to include "config.h" instead of
5416         bits/c++config.h.
5417         
5418 2000-02-01  Benjamin Kosnik  <bkoz@gnu.org>
5419
5420         * configure.in: Add support for threads. Try a model closer to
5421         libjava, as hopefully if the thread bits are added carefully
5422         enough, the source code will not have gross hacks. Besides, the
5423         libstdc++-v2 model could be easily emulated without the necessity
5424         of linking files in (as currently done)--all that needs to be done
5425         is AC_DEFINE(-D_PTHREADS) etc. However, let's try something
5426         new. . . and see if we arrive at a more elegant solution.
5427         * configure: Regenerated.
5428         * config/threads-no.h: New file. 
5429         * config/threads-posix.h: New file. 
5430         * src/Makefile.am (myinstallheaders): Install c++threads.h.
5431         * src/Makefile.in: Regenerated.
5432         
5433 2000-01-31  Benjamin Kosnik  <bkoz@gnu.org>
5434
5435         META-QUESTION: Can we just make a "header.html" file and a
5436         "footer.html" and just include them in all the doc sub-pages. The
5437         duplication of the header info is kind of gross, and weak
5438         considering that if you change order or layout then all this stuff
5439         has to be changed in all the sub-files.
5440
5441         * docs/17_intro/contribute.html: Take out duplicate file info.
5442         * README: Should just contain a link to the docs/index.html
5443         page. Duplicate information removed.
5444         * docs/faq/index.html: Remove indexes into HOWTOS.
5445         * docs/17_intro/howto.html: Make intro and docs part more
5446         centralized. Move intro stuff to documentation.html.
5447         * docs/how.html: Tweak. Does this file need to exist? What calls it?
5448         * docs/README.html: Move documentation files to
5449         documentation.html. Should this file be renamed
5450         "config_and_install.html" as that is what is apparently covered
5451         here. . .
5452         * docs/install.html: Yes. New file, moved and renamed README.html.
5453         * docs/documentation.html: New file. This is the index file for
5454         the documentation.
5455         * docs/index.html: Edit sidebar order. Insert new link to new
5456         documentation spine, documentation.html.
5457
5458 2000-01-31  Scott Snyder  <snyder@fnal.gov>
5459
5460         * bits/istream.tcc (operator>>(istream&, string&)): Set failbit if 
5461         we don't extract any characters.
5462         * testsuite/21_strings/inserters_extractors.cc (main): New tests.
5463         
5464 2000-01-31  Anders Widell  <awl@hem.passagen.se>
5465
5466         * stl/bits/std_bitset.h (_M_do_left_shift): Handle case when shift
5467         step is a multiple of the word size.
5468         (_M_do_right_shift): Same.
5469         * testsuite/23_containers/bitset_shift.cc: New file.
5470         
5471 2000-01-31  Nathan Myers  <ncm@zembu.com>
5472         
5473         * README (Documentation): Add path info, fix typos.
5474         
5475 2000-01-26  Benjamin Kosnik  <bkoz@redhat.com>
5476         
5477         * bits/locale_facets.tcc (num_get::_M_extract): Add the freaking
5478         crazy group checking for numpunct, for real this time. At some
5479         point, the local variable __grp should probably get replaced a
5480         char array, or something a bit more lightweight.
5481         (num_get::do_get(bool)): Simplify. Don't set bool reference to
5482         parsed value unless err isn't failbit.
5483         (num_get::do_get(*)): Same, make consistent.
5484
5485         Nathan Myers  <ncm@zembu.com>
5486         Jim Parsons  <parsons@clearway.com>
5487         * testsuite/27_io/istream_extractor_arith.cc (test08): Add
5488         more grouping tests, tweak, scold, wine.
5489         
5490 2000-01-24  Benjamin Kosnik  <bkoz@gnu.org>
5491
5492         * testsuite/27_io/istream_extractor_arith.cc (test07): Add
5493         grouping tests.
5494         * bits/locale_facets.tcc (num_get::_M_extract): Change to fix
5495         grouping bugs. Only allow thousands_sep if _M_use_groupings is
5496         true.
5497
5498         via <llewelly@198.dsl.xmission.com>
5499         * stl/bits/stl_vector.h (vector::_M_range_check): Throw
5500         out_of_range instead of range_error.
5501
5502 2000-01-17  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5503
5504         * bits/std_iomanip.h (setw): Fix typo.
5505
5506 2000-01-14  Benjamin Kosnik  <bkoz@gnu.org>
5507
5508         * testsuite/27_io/istream_extractor_arith.cc: Fix.
5509         * bits/locale_facets.tcc (do_get(...void)): Change to strtoul.
5510         * testsuite/27_io/istream_unformatted.cc (test04): Tweak.
5511         
5512 2000-01-14  Phil Edwards  <pme@sourceware.cygnus.com>
5513
5514         * docs/README.html:  Reformat, more installation instructions.
5515         * docs/gccrebuild.html:  New file.
5516         * docs/faq/index.html:  Update for new testsuite output filenames.
5517         * docs/faq/index.txt:  Regenerate.
5518
5519 2000-01-14  Phil Edwards  <pme@sourceware.cygnus.com>
5520
5521         * Makefile.am (rebuild-stamp, all-local):  New targets.
5522         * Makefile.in:  Regenerated.
5523         * acinclude.m4:  New macro, GLIBCPP_ENABLE_RELIBGCC.
5524         * aclocal.m4:  Regenerated.
5525         * configure.in:  Call new macro.  Also do some sanity checks
5526           for combinations of --enable's that may not make sense.
5527         * configure:  Regenerated.
5528
5529 2000-01-13  Benjamin Kosnik  <bkoz@cygnus.com>
5530
5531         * testsuite/27_io/istream_extractor_arith.cc: Add checks for void*.
5532         * bits/locale_facets.tcc (do_get::(...void)): Set fmtflags
5533         correctly for hex-formatted input.
5534
5535         * testsuite/27_io/istream_manip.cc (test01): Fix, as per setting
5536         eofbit instead of eofbit | failbit.
5537         * testsuite/27_io/istream_unformatted.cc (test04): Fix, as
5538         ifstreams now are opened or'd with ios_base::in (as is correct).
5539         * bits/fstream.tcc (filebuf::seekoff): Simplify.
5540         * testsuite/27_io/ios_base_members_static.cc (test01): Fix thinko.
5541
5542 2000-01-12  Benjamin Kosnik  <bkoz@gnu.org>
5543
5544         * bits/std_fstream.h: Add ios_base as a friend to basic_filebuf.
5545         * bits/basic_file.h (basic_file::filepos_cur): Remove incorrect
5546         (misleading) code.
5547         (__basic_file::filepos_valid): Same.
5548         (__basic_file::filepos_beg): Same.
5549         (__baseic_file::get_fileno): New function.
5550         * bits/ios_base.h (ios_base::sync_with_stdio): Implement, including
5551         feedback from LWG 49.
5552         * src/ios.cc: Move definition here.
5553         * testsuite/27_io/ios_base_members_static.cc (test01): Add tests.
5554         
5555         * bits/std_sstream.h (_M_really_sync): Simplify argument list. Set
5556         output part of internal buffer based on string size, so that
5557         _M_out_end is set consistently with filebufs. Correct comments.
5558         * bits/sstream.tcc (stringbuf::overflow): Update here too.
5559         * testsuite/27_io/stringbuf.cc: Changes.
5560         
5561 2000-01-11  Benjamin Kosnik  <bkoz@gnu.org>
5562
5563         * bits/sstream.tcc (seekoff): Set based on end of written buffer,
5564         not buffer size.
5565         * testsuite/27_io/stringbuf.cc: Add tests for seekoff(end).
5566
5567         * bits/std_fstream.h (ifstream::open): Add ios_base::in to openmode.
5568         (ofstream::open): Add ios_base::out to openmode.
5569
5570         * bits/locale_facets.tcc (_M_extract): Have consistency between
5571         istream::sentry and extractors, where failbit | eofbit is
5572         set. Don't change this, but instead change. . (do some formatting
5573         tweaks.)  
5574         * bits/istream.tcc (istream::sentry): Only set eofbit.
5575         
5576 2000-01-10  Benjamin Kosnik  <bkoz@gnu.org>
5577
5578         * testsuite/27_io/istringstream_members.cc: New file.
5579
5580 2000-01-09  Benjamin Kosnik  <bkoz@gnu.org>
5581
5582         * bits/istream.tcc (istream::sentry): Flush.
5583
5584         * configure.in (AC_OUTPUT_COMMANDS): Simplify.
5585         * configure: Regenerate.
5586         * src/Makefile.am (generated_headers): Remove bits/c++config.h so
5587         that make clean will not delete it.
5588         * src/Makefile: Regenerate.
5589         
5590 2000-01-07  Phil Edwards  <pme@sourceware.cygnus.com>
5591
5592         * mkcheck.in:  Use host-specific invocation of size(1);
5593           GNU binutils isn't necessarily there (more's the pity).
5594
5595 2000-01-06  Benjamin Kosnik  <bkoz@cygnus.com>
5596
5597         * configure.in (LIBS): Better tests for solaris2.6.
5598         * configure: Regenerate.
5599
5600          <vakatov@ncbi.nlm.nih.gov>
5601         * bits/std_sstream.h: As per libstdc++20.
5602
5603 2000-01-06  Benjamin Kosnik  <bkoz@gnu.org>
5604
5605         Break out configuration on solaris.
5606         * configure.in (ctype_solaris): Add in bits for solaris2.6 and 2.7.
5607         * config/solaris/ctype.cc: Delete and move to proper version.
5608         * config/solaris/bits: Same.
5609         * config/solaris/solaris2.5: Add this directory, with subdir bits
5610         and file ctype.cc. Probably doesn't work.
5611         * config/solaris/solaris2.6: Same.
5612         * config/solaris/solaris2.7: Same, as per specs via Phil Edwards.
5613         
5614         * Makefile.am: Change paths to mkcheck.
5615         * Makefile: Regenerate.
5616         * configure.in (AC_OUTPUT_COMMANDS): Build mkcheck here.
5617         * configure: Regenerate.
5618         * src/Makefile.am (generated_headers): Add bits/c++config.h.
5619
5620         * mkcheck: Now autogenerated by configure and renamed. . .
5621         * mkcheck.in (INC_PATH): Add glue for ctype_include_dir.        
5622         Have longer-style dates.
5623         Raja R Harinath  <harinath@cs.umn.edu>
5624         * mkcheck: Change path to #!/usr/clocal/bin/bash.
5625
5626         * docs/README.html: Correct links, maybe. FAQ, install notes, and
5627         general documentation need to be organized around each other, not
5628         fight against each other. . .
5629
5630 2000-01-04  Phil Edwards  <pme@sourceware.cygnus.com>
5631             Nicolai Josuttis <nicolai.josuttis@braunschweig.netsurf.de>
5632
5633         * README:  Add a note referring to README.html.
5634         * docs/README.html:  New file from Nicolai.
5635         * docs/faq/index.html:  Move "how to get a copy" to here.
5636         * docs/gentop/footchunk.html:  Update.
5637         * docs/gentop/headchunk.html:  New links according to
5638           bkoz's idea for "How to..." stuff.
5639         * docs/gentop/thanks:  Actually put people here.
5640         * docs/download.html:  Regenerated.
5641         * docs/index.html, docs/links.html, docs/mail.html,
5642           docs/status.html, docs/thanks.html, docs/faq/index.txt:  Ditto.
5643         * docs/how.html:  Ditto.  (This file should go away soon.)
5644
5645 1999-12-26  Phil Edwards  <pme@sourceware.cygnus.com>
5646
5647         * docs/gentop/status:  Add snapshot version column, update
5648           for Solaris 7.
5649         * docs/status.html:  Regenerated.
5650
5651 1999-12-26  Phil Edwards  <pme@sourceware.cygnus.com>
5652
5653         * docs/faq/index.html:  Turn README and RELEASE-NOTES into links
5654           from installation FAQ, and specify location of text files.
5655         * docs/faq/index.txt:  Regenerated.
5656
5657 1999-12-23  Phil Edwards  <pme@sourceware.cygnus.com>
5658
5659         * docs/gentop/download:  Add links to prebuilds for Cygwin/Mingw32.
5660         * docs/download.html:  Regenerated.
5661
5662 1999-12-22  Phil Edwards  <pme@sourceware.cygnus.com>
5663
5664         * docs/faq/index.html:  Update 'what works' for .7 snapshot,
5665           clean up various links.
5666         * docs/faq/index.txt:  Regenerated.
5667         * docs/gentop/gentop:  Smarter regeneration script.
5668         * docs/gentop/{head,foot}chunk.html:  Updated with new
5669           contributors link and mod date.
5670         * docs/gentop/index:  Snapshot relase date.
5671         * docs/gentop/thanks:  New contributors page added.
5672         * docs/{download,how,index,links,mail,status,thanks}.html:
5673           Regenerated from gentop; thanks.html created.
5674
5675 1999-12-21  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
5676
5677         * bits/c++config.h.in (__GLIBCPP__): 19991221.
5678         * docs/index.html: Add correct information.     
5679
5680         * config/irix: New directory.
5681         * config/irix/ctype.cc: Add irix-6.5 info. Not tested.
5682         * config/irix/bits/ctype_base.h: And here.
5683
5684         * config/aix: New directory.
5685         * config/aix/ctype.cc: Add aix-4.2 info. Not tested.
5686         * config/aix/bits/ctype_base.h: And here.
5687         
5688 1999-12-21  Philip Martin  <pm@corris.dircon.co.uk>
5689
5690         * bits/basic_string.h: Add special case handling for integral
5691         "iterators".
5692         * bits/std_string.h: include type_traits.h
5693         * testsuite/21_strings/ctor_copy_dtor.cc: Tweak.
5694         
5695 1999-12-21  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
5696
5697         * bits/fstream.tcc (seekoff): Output buffer based on _M_*_in and
5698         _M_*_end now.
5699         * bits/std_fstream.h (sync): And here.
5700         * testsuite/27_io/filebuf.cc: Revisions.
5701         * testsuite/27_io/filebuf-2.tst: Correct, remove weird character
5702         at the end of the file.
5703         * testsuite/27_io/filebuf-3.tst: Correct.
5704         
5705 1999-12-21  Phil Edwards  <pedwards@jaj.com>
5706
5707         * docs/gentop/index:  Hold off on .7 announcement date.
5708         * docs/index.html:  Regenerate.
5709
5710 1999-12-21  Benjamin Kosnik  <bkoz@kcygnus.com>
5711
5712         * bits/std_fstream.h (sync): Move _M_file->sync() to
5713         _M_really_overflow().
5714         * bits/fstream.tcc (seekoff): Call sync, not _M_really_overflow so
5715         as to get the _M_file->sync action, which forces the external
5716         buffer to update itself.
5717         (underflow): Same here.
5718
5719 1999-12-21  Phil Edwards  <pedwards@jaj.com>
5720
5721         * bits/c++config.h.in:  Uncomment _GLIBCPP_USE_NAMESPACES and move...
5722         * acconfig.h:  ...to here.
5723         * config.h.in:  Regenerate from aclocal.
5724         * acinclude.m4:  Add GLIBCPP_ENABLE_DEBUG, GLIBCPP_ENABLE_NAMESPACES.
5725         * aclocal.m4:  Regenerate from acinclude.
5726         * configure.in:  Use ENABLE macros here.
5727         * configure:  Regenerate.
5728         * src/Makefile.am:  Use results from ENABLE macros.
5729         * src/Makefile.in:  Regenerate.
5730
5731 1999-12-20  Benjamin Kosnik  <bkoz@cygnus.com>
5732         
5733         * mkcheck (SRC_DIR): Now have to include config/* dir if "make
5734         check" and not "make check-install." Temporarily hack in linux
5735         support.
5736         
5737         * bits/std_streambuf.h: Tweaks.
5738         * bits/streambuf.tcc (xsgetn): Tweaks.
5739         * bits/std_fstream.h (sync): Make _M_really_overflow consistent.
5740         * bits/fstream.tcc (filebuf::underflow): Simplify.
5741         * bits/std_sstream.h (streambuf::underflow): Minor change to make
5742         checks for read position precisely implement the standard.
5743         * bits/basic_file.h (filepos_cur): Base this on _offset.
5744         * testsuite/21_strings/inserters_extractors.cc (test05): Tweaks.
5745         * testsuite/27_io/filebuf.cc: Tweak.
5746
5747 1999-12-20  Benjamin Kosnik  <bkoz@cygnus.com>
5748
5749         * docs/17_intro/RELEASE-NOTES: Fix typos.
5750
5751         * bits/locale_facets.h (ctype): Modify, use __to_type to abstract
5752         out platform-specific bits.
5753         * config/default/ctype.cc: And here.
5754         * config/defaults/bits/ctype_base.h: And here.
5755         * config/linux/ctype.cc: And here.
5756         * config/linux/bits/ctype_base.h (ctype_base): And here.
5757         * config/solaris/bits/ctype_base.h (ctype_base): Add
5758         __to_type. Comment, as it looks like this is for solaris2.6 and
5759         above: solaris2.5.1 doesn't seem to have the same definitions.
5760         * config/solaris/ctype.cc: And here.
5761
5762 1999-12-19  Benjamin Kosnik  <bkoz@cygnus.com>
5763             Ulrich Drepper  <drepper@cygnus.com>
5764         
5765         * acconfig.h: Remove _GLIBCPP_USE_CTYPE_ISBIT.
5766
5767         * src/locale.cc: Take out platform-specific hacks.
5768         * config/linux/ctype.cc: Put here.
5769         * config/solaris/ctype.cc: Put here.
5770         * config/default/ctype.cc: Put here.    
5771
5772         * bits/locale_facets.h: Take out platform-specific hacks.
5773         * config/linux/bits/ctype_base.h: Put here.
5774         * config/solaris/bits/ctype_base.h: Put here.
5775         * config/default/bits/ctype_base.h: Put here.   
5776
5777         * configure.in: Bump version.
5778         Add tests for top-level config directory.
5779         * configure: Regenerated.
5780         * src/Makefile.am (INCLUDES): Add platform-specific dir.
5781         * src/Makefile: Regenerate.
5782         
5783 1999-12-19  Benjamin Kosnik  <bkoz@cygnus.com>
5784             Ulrich Drepper  <drepper@cygnus.com>
5785
5786         * bits/locale_facets.h: Hack in solaris support.
5787         * src/locale.cc: Here too.
5788
5789 1999-12-18  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5790
5791         * docs/17_intro/TODO: Update
5792         * docs/17_intro/RELEASE-NOTES (New): Update.
5793
5794 1999-12-17  Benjamin Kosnik  <bkoz@milou.cygnus.com>
5795
5796         * bits/c++config.h.in (__GLIBCPP__): Bump.
5797         * docs/17_intro/RELEASE-NOTES: Update, Gaby please add your stuff.
5798         * docs/17_intro/TODO: Update.   
5799
5800         * bits/locale_facets.h: Touch this too.
5801         * bits/localefwd.h: Add typedefs for loooooong vector names.
5802         * bits/locale_facets.tcc (locale::operator()): Need parens.
5803         (has_facet): Simplify.
5804         * src/locale-inst.cc: Add instantiations.
5805         * src/locale.cc: Tweaks.
5806         
5807         * bits/std_streambuf.h: Move indeterminates into. . 
5808         * bits/std_fstream.h: Here.     
5809         * bits/fstream.tcc (underflow): Rewind just for ios_base::out
5810         streams.
5811         * bits/sstream.tcc: Very minor formatting tweaks.
5812         * bits/std_streambuf.h (_M_set_determinate): If exclusively an
5813         input buffer, set _M_buf to offset.
5814         * bits/istream.tcc (std): Tweaks.
5815         * testsuite/27_io/istream_unformatted.cc (test05): More tweaks,
5816         include fstream.
5817         * testsuite/27_io/filebuf.cc: Tweaks.
5818         
5819 1999-12-17  Phil Edwards  <pedwards@jaj.com>
5820
5821         * configure.in:  Add OPTLEVEL, -O2 for gcc 2.96+, nothing otherwise.
5822         * configure:  Regenerate.
5823         * src/Makefile.am:  Use OPTLEVEL in CXXFLAGS.
5824         * src/Makefile.in:  Regenerate.  Also picks up OTHER_CXXFLAGS rename
5825           to OPTIMIZE_CXXFLAGS from a previous revision (1.96) to Makefile.am.
5826
5827 1999-12-17  Phil Edwards  <pedwards@jaj.com>
5828
5829         * docs/21_strings/stringtok_std_h.txt:  New algorithm
5830           suggested by Chris King.
5831         * docs/21_strings/howto.html:  Link to new version.
5832
5833 1999-12-16  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5834
5835         * bits/valarray_array.h (__valarray_sum): Use operator+=, not
5836         operator+.
5837         * docs/17_intro/TODO: Update.
5838
5839 1999-12-15  Phil Edwards  <pme@sourceware.cygnus.com>
5840
5841         * docs/gentop/footchunk.html:  Updated, fixed CRLFs.
5842         * docs/gentop/gentop:  Ditto.
5843         * docs/gentop/headchunk.html:  Ditto.
5844         * docs/*.html:  Regenerated from gentop.
5845         * docs/*/howto.html:  Updated as test.
5846         * docs/faq/index.html:  Updated, fixed CRLFs.
5847         * docs/faq/index.txt:  Regenerated.
5848
5849 1999-12-15  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5850
5851         * mknumeric_limits (OUT_C): restart only if $OUT_C is present.
5852
5853         * bits/std_complex.h 
5854         (complex<float>::complex(const complex<double>&),
5855         complex<float>::complex(const complex<long double>&)): Define.
5856
5857         * docs/17_intro/TODO: Update.
5858
5859 1999-12-13  Benjamin Kosnik  <bkoz@cygnus.com>
5860
5861         * bits/istream.tcc (seekg): Don't set _M_gcount.
5862         (tellg): Same.
5863         * bits/fstream.tcc (filebuf::underflow): Re-sync
5864         external byte sequence's input buffer only. . .
5865         * testsuite/27_io/istream_unformatted.cc (test04): New tests for
5866         tellg, seekg and filebufs.
5867         (test05): Same for stringbufs.
5868         * testsuite/27_io/istream_unformatted-2.tst: New file.
5869         * testsuite/27_io/istream_unformatted-1.tst: New file.
5870         * testsuite/27_io/istream_unformatted-1.txt: New file.  
5871         * testsuite/21_strings/inserters_extractors.cc (test05): Change
5872         output file.
5873
5874 1999-12-13  Phil Edwards  <pedwards@jaj.com>
5875
5876         * docs/gentop/*:  New directory, containing bits for the homepages.
5877         * docs/*.html:  Regenerated from gentop.
5878         * docs/*/*.html:  Entries added and regenerated.
5879
5880 1999-12-13  Benjamin Kosnik  <bkoz@gnu.org>
5881
5882         Efforts to get -O2 to work with -Winline -Werrors.
5883         * bits/valarray_array.h (__valarray_fill(_Tp*, size_t, const
5884         _Tp&): Remove inline declaration, as cannot be inlined and
5885         -Winline -Werror complains. An interesting question is why this
5886         cannot be inlined, as I can see no real reason to disqualify it.
5887         (__valarray_product(const _Tp*, const _Tp*)): Same here.
5888         * bits/std_valarray.h (valarray::operator[](size_t)): Same here.
5889         
5890         * docs/17_intro/TODO: Update.
5891
5892 1999-12-12  Benjamin Kosnik  <bkoz@gnu.org>
5893
5894         * bits/std_fstream.h (seekpos): Tweaks, fixes. Move definition to
5895         fstream.tcc.
5896         * bits/basic_file.h (filepos_cur()): Make pointers themselves be
5897         the resultant position.
5898         * bits/fstream.tcc (seekoff): Explicitly set return value to
5899         resultant external byte sequence position, not value returned from
5900         _M_file->seekoff. Need to make 
5901         (seekpos): New definition.
5902         
5903         * bits/istream.tcc (seekg): As per Library Issues List 136, set to
5904         just istream. Necessary, or else tellg will give an invalid stream
5905         position, but seekg will return a valid stream position, which is
5906         not groovy: see testcase addition.
5907         * bits/ostream.tcc (seekp): Same.
5908         
5909         * bits/streambuf.tcc (_S_copy_streambufs): Simplify.
5910         * bits/sstream.tcc: Tweaks.
5911         * bits/locale_facets.tcc: Tweaks.
5912         (num_put::do_put(iter_type, ios_base, char_type, const void*)):
5913         Re-write in a way that is easier for the inliner to work with.
5914         * bits/ios_base.h: Use explicit static_cast<int>(...) notation.
5915
5916 1999-12-10  Benjamin Kosnik  <bkoz@cygnus.com>
5917
5918         * bits/locale_facets.tcc: Tweaks.
5919         * bits/locale_facets.h (use_facet): Can't inline, remove inline
5920         from declaration.
5921         * bits/localefwd.h: And here.
5922         * bits/std_ostream.h: Tweaks, sentry ctor can't be inlined.
5923         * bits/ostream.tcc: Put here.
5924         
5925         Frank Ch. Eigler  <fche@cygnus.com> 
5926         * src/Makefile.am: Adjust CXXFLAGS, add AM_CXXFLAGS. 
5927
5928 1999-12-08  Benjamin Kosnik  <bkoz@cygnus.com>
5929
5930         * bits/sstream.tcc (stringbuf::seekoff): Long overdue revamp. Make
5931         in and out buffers update independently.
5932
5933         * bits/basic_ios.h: Minor formatting.
5934         * bits/fstream.tcc (std): Fix indentation.
5935
5936 1999-12-08  Chip Salzenberg  <chip@valinux.com>
5937
5938         * bits/char_traits.h (char_traits<>): Move not_eof() functions
5939         after corresponding eof() functions, so they're easier for the
5940         compiler to inline.
5941         * bits/locale_facets.h (money_base::__default_pattern): Move
5942         static variable out of inline functions.
5943         (_Moneypunct<>::do_{pos,neg}_format): Use it.
5944         * src/locale-inst.cc (money_base::__default_pattern): Define it.
5945
5946 1999-12-08  Benjamin Kosnik  <bkoz@cygnus.com>
5947
5948         * bits/std_fstream.h (filebuf::open): Tweak.
5949         * bits/fstream.tcc (filebuf::seekoff): Simplify, fix.
5950         * bits/std_ios.h: Minor tweaks for headers.
5951
5952 1999-12-06  Benjamin Kosnik  <bkoz@gnu.org>
5953
5954         * bits/c++config.h.in (_GLIBCPP_FULLY_COMPLIANT_HEADERS): New macro.
5955         * src/string-inst.cc: Add guards . . .
5956         * src/misc-inst.cc: And here.
5957         * bits/std_sstream.h: And here.
5958         * bits/std_fstream.h: And here.
5959         * bits/std_streambuf.h: And here.
5960         * bits/std_istream.h: And here.
5961         * bits/std_ostream.h: And here.
5962
5963 1999-12-06  Scott Snyder  <snyder@fnal.gov>
5964
5965         * bits/istream.tcc (basic_istream::read): Try to handle __n == 0
5966         case.
5967         (basic_istream::readsome): And here as well.
5968         * testsuite/27_io/istream_unformatted.cc: Test a zero-length
5969         read().
5970
5971 1999-12-06  Mumit Khan  <khan@xraylith.wisc.edu>
5972
5973         * bits/istream.tcc (basic_istream::ignore): streamsize is not 
5974         necessarily an `int'.
5975
5976 1999-12-06  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5977
5978         * mknumeric_limits: Don't use $CXXFLAGS when building
5979         gen-num-limits. It's definitely wrong to use it since $CXXFLAGS
5980         generally instructs the compiler not to emit template
5981         instantiations and we end up with undefined symbols. Sigh.
5982
5983 1999-12-05  Benjamin Kosnik  <bkoz@gnu.org>
5984
5985         * bits/locale_facets.tcc: Tweak.
5986         (_S_format_long): Adjust showpos formatting for hex and oct.
5987         * bits/std_ostream.h (operator<<(short)): Correctly deal with hex
5988         and oct by formatting as unsigned.
5989         (operator<<(int)): Same here.
5990         * bits/ostream.tcc (operator<<(long)): Same.
5991         (operator<<(long long)): Same.
5992         (_S_pad_char): Actually treat ios_base::internal as something
5993         worth doing correctly. Remove const designation on ios argument.
5994         * testsuite/27_io/ios_manip_basefield.cc (test02): Add tests.
5995         * testsuite/27_io/ostream_inserter_arith.cc (test03): Add tests.
5996         
5997 1999-12-04  Benjamin Kosnik  <bkoz@gnu.org>
5998
5999         * bits/std_sstream.h (streambuf::underflow): Check for mode == in.
6000
6001 1999-12-03  Benjamin Kosnik  <bkoz@gnu.org>
6002
6003         * bits/locale_facets.tcc (num_put::do_put(bool): Fix.
6004
6005         * bits/sstream.tcc (streambuf::seekoff): Add parens.
6006         * bits/istream.tcc (istream::get(sb)): Handle exceptional events.
6007         (operator>>(istream, _CharT*)): Change streamsize to int_type.
6008         (operator>>(istream, _CharT&)): Fix typedef'd type to be _CharT.
6009         * bits/ostream.tcc (ostream::operator<<(const char*)): Stub out
6010         unused argument.
6011         (ostream::operator<<(_CharT)): Fix.
6012         
6013         * bits/std_sstream.h: Temporarily disable including sstream.tcc to
6014         see if this will increase compile speed.
6015         * bits/std_ostream.h: Likewise. . .
6016         * bits/std_istream.h: And here.
6017         * bits/std_fstream.h: And here.
6018         * src/misc-inst.cc: Add relevant header file includes for
6019         instantiation purposes.
6020         * src/string-inst.cc: And here.
6021         * testsuite/27_io/ostream_inserter_arith.cc: Add test case.
6022         
6023 1999-12-02  Benjamin Kosnik  <bkoz@gnu.org>
6024
6025         * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
6026         * bits/istream.tcc (get(streambuf)): More fixes. 
6027         (istream::ignore): Get specific about numeric_limits<int>::max()
6028         requirements.
6029
6030         * bits/fstream.tcc (filebuf::open): Tweaks for _M_last_overflowed.
6031         (filebuf::close): Same.
6032         * testsuite/27_io/filebuf.cc: Add tests for ios_base::ate.
6033         
6034 1999-12-01  Phil Edwards  <pedwards@jaj.com>
6035
6036         * mkcheck:  Support for compilation/execution timing.
6037         * testsuite/printnow.c: New file.
6038         
6039 1999-12-01  Phil Edwards  <pedwards@jaj.com>
6040
6041         * bits/std_cwchar.h:  Test for _GLIBCPP_USE_WCHAR_T.
6042         * configure.in:  Test for presence of wchar.h before testing
6043           for any of its features.
6044         * configure:  Regenerate.
6045
6046 1999-11-30  Benjamin Kosnik  <bkoz@gnu.org>
6047
6048         Preliminary istream validations complete.
6049         * bits/istream.tcc (istream::getline): Fixes. Tweaks to make
6050         formatting more consistent. Removal of if-statements inside of for
6051         loops.
6052         (ignore): Fix.
6053         (get): Same.
6054         (putback): Same.
6055         * bits/std_istream.h: Same.
6056         * bits/sstream.tcc (stringbuf::pbackfail): Fix.
6057         * testsuite/27_io/stringbuf.cc: Tweak.
6058         * testsuite/27_io/istream_unformatted.cc (test02): Mo' tests.   
6059
6060         * bits/ostream.tcc (ostream::operator<<(arith)): Set badbit, not
6061         failbit on failure, as per 27.6.2.5.2.
6062
6063         * stl/bits/std_vector.h: Allow bool specializations. Should move
6064         ext/std_bvector to bits, not ext, maybe.
6065
6066 1999-11-30  Mumit Khan  <khan@xraylith.wisc.edu>
6067
6068         * configure.in: Fix checks for mbstate_t and WCHAR_MIN/MAX.
6069         * configure: Regenerate.
6070         
6071 999-11-29  Benjamin Kosnik  <bkoz@gnu.org>
6072
6073         * bits/istream.tcc (get(streambuf, char)): Fix.
6074         * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
6075         
6076 1999-11-29  Scott Snyder  <snyder@fnal.gov>
6077
6078         * bits/basic_string.h (append(const _Char*, size_type)): The
6079         length of the appended string is given exactly by the second arg,
6080         regardless of the data in the character array.
6081         * bits/string.tcc (basic_string(const _CharT*, size_type, const
6082         _Alloc&)): Likewise.
6083         * testsuite/21_strings/append.cc (test01): Remove erroneous test
6084         of basic_string::append.
6085
6086 1999-11-29  Chip Salzenberg  <chip@valinux.com>
6087
6088         * Makefile.in: Tweaks for CXXFLAGS.
6089         * */Makefile.in: Same.
6090
6091 1999-11-29  Mumit Khan  <khan@xraylith.wisc.edu>
6092
6093         * conficd bgure.in: Check for wide character support.
6094         * bits/c++config.h.in (_GLIBC_USE_WCHAR_T): Move from here ...
6095         * acconfig.h (_GLIBC_USE_WCHAR_T): to here.
6096         * bits/string.tcc (wstring::_S_find): Guard wchar_t specialization.
6097         
6098 1999-11-29  Mumit Khan  <khan@xraylith.wisc.edu>
6099
6100         * acinclude.m4: Fix typo.
6101         * src/complex.cc: Fix macro line continuation.
6102         
6103 1999-11-29  Petter Urkedal  <petter@matfys.lth.se>
6104
6105         * src/Makefile.am (CXXFLAGS): Add -Wno-format to allow non-
6106         string literals in format, as used in locale-facets.tcc.
6107
6108 1999-11-28  Benjamin Kosnik  <bkoz@gnu.org>
6109
6110         * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
6111         * bits/istream.tcc (istream::get): Extract to argument minus one.
6112         Various tweaks and fixes.
6113         
6114 1999-11-22  Mumit Khan  <khan@xraylith.wisc.edu>
6115
6116         * bits/locale_facets.tcc: Workaround for compiler crash on
6117         ix86-*-mingw32.
6118
6119 1999-11-21  Mumit Khan  <khan@xraylith.wisc.edu>
6120
6121         * acinclude.m4: New file. New _GLIBCPP_CHECK_FLOAT_SUPPORT macro.
6122         * configure.in: Use.
6123         * acconfig.h: New _GLIBCPP_BUGGY_FLOAT_COMPLEX macro.
6124         * src/complexf.cc: New _GLIBCPP_FLOAT_SPECIALIZATION macro.
6125         * bits/std_complex.h: Use.
6126         * src/complex.cc: Use.
6127
6128 1999-11-19  Mumit Khan  <khan@xraylith.wisc.edu>
6129
6130         * testsuite/18_support/numeric_limits.cc: Add missing std:: prefix.
6131         * testsuite/21_strings/inserters_extractors.cc: Likewise.
6132         * testsuite/22_locale/ctype.cc: Likewise.
6133         * testsuite/23_containers/multiset.cc: Likewise.
6134         * testsuite/23_containers/vector_ctor.cc: Likewise.
6135         * testsuite/26_numerics/binary_closure.cc: Likewise.
6136         * testsuite/27_io/fpos.cc: Likewise.
6137         * testsuite/27_io/ios_base_callbacks.cc: Likewise.
6138         * testsuite/27_io/istream_extractor_arith.cc: Likewise.
6139         * testsuite/27_io/istream_extractor_char.cc: Likewise.
6140         * testsuite/27_io/istream_extractor_other.cc: Likewise.
6141         * testsuite/27_io/istream_sentry.cc: Likewise.
6142         * testsuite/27_io/ostream_inserter_char.cc: Likewise.
6143         * testsuite/27_io/ostream_inserter_other.cc: Likewise.
6144         * testsuite/27_io/streambuf.cc: Likewise.
6145         * testsuite/27_io/stringstream.cc: Likewise.
6146
6147 1999-11-19 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6148
6149         * bits/valarray_meta.h: Don't forget to define tanh
6150
6151 1999-11-18  Philip Martin  <pm@corris.dircon.co.uk>
6152  
6153        * src/stl-inst.cc: Use typedef to refer to iterator
6154        * stl/bits/stl_algobase.h: Add traits based dispatch for
6155        __normal_iterator in the copy()algorithm
6156        * stl/bits/type_traits.h: Add _Is_normal_iterator trait support
6157
6158 1999-11-18  Kevin Ediger  <kediger@licor.com>
6159
6160         * src/locale.cc (locale::_Imp::_Imp): Use auto_ptr to make
6161         constructors for locale::_Impl exception safe.
6162
6163 1999-11-18  Scott Snyder  <snyder@fnal.gov>
6164
6165         * stl/bits/stl_queue.h: The C++ standard gives the default for the
6166         _Sequence template argument of priority_queue<> as vector<>, not
6167         deque<>.
6168
6169 1999-11-18  Benjamin Kosnik  <bkoz@gnu.org>
6170
6171         * bits/std_sstream.h (stringbuf::_M_really_sync): Add __iend as a
6172         parameter.
6173         * bits/sstream.tcc: Adjust here too.
6174         
6175 1999-11-17  Benjamin Kosnik  <bkoz@gnu.org>
6176
6177         * bits/sbuf_iter.h (istreambuf_iter::equal): Tweak.
6178         * bits/istream.tcc (operator>>): Replace iostate(0) with
6179         iostate(ios_base::goodbit), which is the same thing, but hopefully
6180         a bit clearer.
6181         * bits/locale_facets.tcc (do_get(bool)): Streamline, deal with
6182         libraries issue list 17.
6183         (do_gets): Don't set goodbit explicitly, instead only set on
6184         failures as good bit is the default setting.
6185         * bits/ios_base.h (setf): Set correctly.
6186         * bits/fstream.tcc: Tweak.
6187         * bits/std_sstream.h (_M_really_sync): Fix ibuffer positioning for
6188         in|out bufs that are empty. . .
6189         * testsuite/27_io/istream_extractor_arith.cc (test03): Add.
6190         
6191 1999-11-16  Benjamin Kosnik  <bkoz@gnu.org>
6192
6193         * testsuite/27_io/streambuf.cc (class testbuf): Don't set _M_buf_size.
6194         * bits/std_streambuf.h (setp): Set _M_buf_size, _M_mode.
6195         Add comments "all about _M_buf."
6196         (setg): Set _M_mode.
6197
6198 1999-11-16  Kevin Ediger  <kediger@licor.com>
6199
6200         * bits/locale_facets.tcc (_S_build_float_format): New function.
6201         (_S_output_float): New function.
6202         (num_put::do_put(double)): Use 'em.
6203         (num_put::do_put(long double)): Use 'em.
6204         * testsuite/27_io/ostream_inserter_arith.cc: New file.
6205
6206 1999-11-15  Scott Snyder  <snyder@fnal.gov>
6207
6208         * bits/basic_file.h: Type of __off parm should be __c_streampos, to
6209         match how libio is calling us.
6210         * src/basic_file.cc (sys_seek): Likewise.
6211         * bits/std_fstream.h (basic_filebuf::sync): Restore sync call.
6212
6213 1999-11-15  Benjamin Kosnik  <bkoz@gnu.org>
6214
6215         * docs/17_intro/contribute.html: Add link to assignment form.
6216         * docs/17_intro/libstdc++-assign.txt: New file.
6217
6218         * mkcheck (TESTS_FILE): Move a copy of test files as well as
6219         output files.
6220
6221         * bits/std_streambuf.h (_M_buf_bump): New function.
6222         * bits/streambuf.tcc: Mods to support _M_buf_bump.
6223         (xsputn): Here. Also add checks for output valid.
6224         (xsgetn): Add checks for input valid.
6225         (sputc): Here.
6226         (sgetc): Set _M_in_end to _M_buf + _M_buf_end.
6227         * bits/std_sstream.h (_M_really_sync): Set _M_buf.
6228         Set _M_out_end to variable-length-end.
6229         * bits/sstream.tcc (overflow): Use _M_buf_bump.
6230         (seekpos): Same.
6231         (seekoff): Same.
6232         * bits/fstream.tcc (std): Tweak formatting.
6233         (filebuf::overflow): Simplify.
6234         (filebuf::showmanyc): Same.
6235         (filebuf::underflow): Same.
6236         * testsuite/27_io/filebuf.cc: Fix.
6237         * testsuite/27_io/ostream_inserter_other.cc: Fix.
6238         * testsuite/27_io/ostream_inserter_other-2.tst: New file.
6239         * testsuite/27_io/stringbuf.cc: Tweak.  
6240         * testsuite/27_io/streambuf.cc: Tweak.  
6241         * testsuite/27_io/istream_extractor_other.cc: Fix.
6242
6243 1999-11-11  Matthias Klose  <doko@cs.tu-berlin.de>
6244
6245         * stl_deque.h: Use static_casts<size_type>(signed_type).
6246
6247 1999-11-11  Benjamin Kosnik  <bkoz@gnu.org>
6248
6249         Cleanups for callbacks, more regression hunting. Remaining
6250         failures (1) due to last unresolved stringstream issues, not
6251         regressions per se.
6252         * bits/std_fstream.h: Revert. Disable call to _M_file->sync as
6253         killing 27_io/filebuf.cc tests. . . need another solution.
6254
6255         * bits/streambuf.tcc (_S_copy_streambufs): Fix.
6256         * testsuite/27_io/istream_extractor_other.cc: Tweak comments.
6257
6258         * bits/basic_ios.h: Add cached facets here. UGH. The standard
6259         foils all attempts at a graceful, minimal implementation.
6260         * bits/basic_ios.tcc: Tweaks.
6261         * bits/istream.tcc: Fix.
6262         * bits/ostream.tcc: Fix.
6263         * bits/std_istream.h: Fix.
6264         * bits/std_ostream.h: Fix.
6265         * src/ios.cc (ios_base::imbue): Set _M_locale_ios before calling
6266         callbacks.
6267         * bits/locale_facets.tcc (std): Minor, minor formatting tweak.
6268         (_S_pad_numeric): Make comprehensible.
6269
6270 1999-11-10  Benjamin Kosnik  <bkoz@cygnus.com>
6271
6272         * bits/std_ostream.h: Add callbacks for _M_fnumput.
6273         (_S_ostream_fcache): New function.
6274         Move functions out-of-line.
6275         * bits/ostream.tcc: Put here.
6276
6277         * bits/std_istream.h: Add callbacks for _M_fnumget.
6278         (_S_istream_fcache): New function.
6279         Move functions out-of-line.
6280         * bits/istream.tcc: Put here.
6281         
6282         * bits/basic_ios.tcc (basic_ios::imbue): Tweaks, remove call to
6283         _M_call_callbacks(), as ios_base::imbue does this already.
6284         * src/ios.cc (register_callback): Clean.
6285         (_M_call_callbacks): Same.
6286         * bits/ios_base.h: Callback work.
6287         * testsuite/27_io/ios_base_callbacks.cc (test01): New file.
6288         
6289 1999-11-10  Benjamin Kosnik  <bkoz@cygnus.com>  
6290             Matthias Klose  <doko@cs.tu-berlin.de>
6291
6292         * stl/ext/stl_rope.h: Fix initialization order.
6293
6294 1999-11-09  Scott Snyder  <snyder@fnal.gov>
6295
6296         * bits/std_fstream.h (basic_filebuf::sync): Unconditionally call
6297         _M_file->sync() so that redirection works correctly.
6298
6299 1999-11-09  Benjamin Kosnik  <bkoz@gnu.org>
6300
6301         * bits/istream.tcc: Re-order.
6302         * bits/std_istream.h: Fix getline problems.
6303         * testsuite/27_io/istream_unformatted.cc: New tests.
6304         
6305         Clean up regressions.
6306         * bits/std_sstream.h: Set initial stringbufs correctly.
6307
6308 1999-11-09  Scott Snyder <snyder@fnal.gov>
6309
6310         * stl_vector.h (_M_range_insert): Fix mixing pointers and
6311         vector::iterator.
6312         * testsuite/23_containers/vector_modifiers.cc (test01): New file,
6313         tests.
6314         
6315 1999-11-09  Benjamin Kosnik  <bkoz@cygnus.com>
6316
6317         * src/Makefile.am (CXXFLAGS): Add -Winline.
6318         * src/Makefile.in: Regenerate.
6319
6320 1999-11-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6321
6322         * bits/valarray_meta.h (_DEFINE_EXPR_UNARY_FUNCTION): When
6323         building meta-expressions don't forget to take the contained
6324         closures. 
6325
6326 1999-11-02  Benjamin Kosnik  <benjamin@cygnus.com>
6327
6328         * configure: Regenerate.
6329         
6330 1999-11-02  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6331
6332         * bits/valarray_meta.h (_Expr<>::sum): Tweak. Use copy-initialization
6333         syntax.
6334         * bits/valarray_meta.h (min): Likewise.
6335         * bits/valarray_meta.h (max): Likewise.
6336
6337 1999-11-01  Benjamin Kosnik  <bkoz@cygnus.com>
6338
6339         * bits/std_sstream.h (_M_really_sync): Take into account in | out bufs.
6340         * bits/std_streambuf.h (_S_copy_streambufs): New function.
6341         * bits/streambuf.tcc: Define.
6342         * bits/istream.tcc (istream::operator>>(streambuf)): Rewrite.
6343         * bits/ostream.tcc (ostream::operator<<(streambuf)): Rewrite.
6344         * testsuite/27_io/ostream_inserter_other.cc: Add tests.
6345         * testsuite/27_io/ostream_inserter_other-1.tst: New file.
6346
6347         * bits/basic_string.h: Explicitly cast npos to unsigned type,
6348         reported by Richard Atterer.
6349         * bits/char_traits.h: For consistency's sake, here too.
6350         
6351         * configure.in: Bump version to 2.90.7.
6352         
6353 1999-10-31  Benjamin Kosnik  <bkoz@cygnus.com>
6354
6355         * testsuite/27_io/ostream_inserter_char-1.tst: Check file output.
6356         * testsuite/27_io/ostream_inserter_char.cc (test05, test01): Add tests.
6357         * bits/streambuf.tcc (xsputn): Treat--size const char for long loops.
6358         (xsgetn): Same.
6359         * bits/sstream.tcc (seekpos): Tricks, mostly: check _M_mode before
6360         writing into buffer.
6361         (seekoff): Same.
6362         
6363 1999-10-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6364
6365         * bits/valarray_array.h (__valarray_sum): New function.
6366         * bits/valarray_array.h (__valarray_product): Same.
6367
6368         * bits/std_valarray.h (valarray<T>::product): Comment out.
6369         * bits/std_valarray.h (valarray<T>::sum): Use __valarray_sum
6370         instead of accumulate. 
6371
6372         * src/valarray-inst.cc: Remove explicit intantiation of
6373         class multiplies<size_t>, accumulate, valarray<size_t>::product. 
6374         * src/valarray-inst.cc (__valarray_product): Instantiate
6375         explicitly. 
6376         * src/valarray-inst.cc (__valarray_product(const
6377         valarray<size_t>&)): New function.   
6378         * src/valarray-inst.cc (gslice::_Indexer::_Indexer): Don't use
6379         valarray<size_t>::product. Use __valarray_product instead.
6380         
6381
6382 1999-10-25  Benjamin Kosnik  <bkoz@cygnus.com>
6383
6384         * bits/std_ostream.h (ostream.inserters.char): Correctly pad output.
6385         (_S_pad_char): New function. Not done: ios_base::internal.
6386         * bits/ostream.tcc: Clean for above.
6387         * bits/locale_facets.tcc (_S_fill): Remove ostreambufiterator
6388         specialization that was commented out, as ostreams now have to
6389         correctly deal with padding.
6390         * testsuite/27_io/ostream_inserter_char.cc (main): Add tests.
6391         
6392         * testsuite/21_strings/ctor_copy_dtor.cc(test02): Add test case
6393         from mailing list. This is a bug, and should be fixed.
6394         * testsuite/21_strings/inserters_extractors.cc (main): Tweak, fix typo.
6395         
6396 1999-10-22  Petter Urkedal  <petter@matfys.lth.se>
6397
6398         * stl/bits/stl_numeric.h (__power): Replaced argument name `__opr'
6399         to avoid conflict with gcc name mangling.
6400         * stl/bits/stl_algo.h (__transform): Same.
6401
6402 1999-10-21  Benjamin Kosnik  <bkoz@cygnus.com>
6403
6404         * bits/ios_base.h: Change argument names.
6405         * docs/17_intro/BADNAMES: Add __opr.
6406         
6407 1999-10-20  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
6408         
6409         Work on compilation slowdowns from 10-5 to 10-12, which are
6410         related to the _Callback_list inlining/merge-ifcation, which is
6411         still a pending issue, but this stuff is necessary cleanup anyway.
6412
6413         * src/ios.cc: Re-arrange.
6414         * bits/ios_base.h: Tweak.
6415         * bits/basic_ios.tcc: Move out of line definitions here, move
6416         small out-of-line definitions inline.
6417         * bits/basic_ios.h: From here.
6418         
6419         * bits/streambuf.tcc (pbackfail, overflow): Move back inline.
6420         * bits/std_streambuf.h: From here.
6421
6422 1999-10-19  Benjamin Kosnik  <bkoz@cygnus.com>
6423
6424         * testsuite/27_io/istream_extractor_char.cc: Add tests.
6425         * bits/std_istream.h: Tweaks--set eofbit on eof condition.
6426         * bits/istream.tcc (operator>>(istream&, string&): Remove
6427         vestigial issspace hacks and use ctype::is instead.
6428         (getline): Remove unnecessary loops, fortify and pasteurize.
6429         (ws): Same.
6430         
6431 1999-10-18  Benjamin Kosnik  <bkoz@cygnus.com>
6432
6433         * bits/istream.tcc (operator>>): Tweak.
6434         * bits/std_istream.h: Fix according to library issues list 68.
6435         Add typedefs.
6436
6437         * bits/locale_facets.h: Fix table_size to be non-zero.
6438
6439 1999-10-18  Vadim Egorov  <egorovv@HotPOP.com>
6440
6441         * src/basic_file.cc: ifdef instead of comment for binary mode
6442
6443 1999-10-18  Russell Davidson  <russell@qed.econ.queensu.ca>
6444
6445         * bits/std_sstream.h: Stringbuf initialization based on actual,
6446         not allocated, size.
6447         * testsuite/21_strings/inserters_extractors.cc (test06): Add test
6448         case.
6449         
6450 1999-10-17  Benjamin Kosnik  <bkoz@cygnus.com>
6451
6452         * testsuite/26_numerics/c_math.cc (test03): Tweak.
6453         * testsuite/27_io/istream_manip.cc (test01): Corrections due to
6454         sentry change.
6455         * testsuite/21_strings/inserters_extractors.cc (test01): Same.
6456
6457 1999-10-14  Benjamin Kosnik  <bkoz@cygnus.com>
6458
6459         * bits/std_istream.h: Tweaks.
6460         * bits/istream.tcc (istream::sentry::sentry()): Simplify, correct
6461         as per issues list addition--set failbit, eof on empty buffers.
6462         * testsuite/27_io/istream_sentry.cc: New file.
6463         
6464 1999-10-12  Chris Prince <prince@wcug.wwu.edu> 
6465
6466         * bits/std_cstdio.h: Remove Solaris hacks.
6467
6468 1999-10-12  Phil Edwards  <philip.edwards@sn.wpafb.af.mil>
6469
6470         * docs/index.html:  Fix minor typos and tweaks.
6471         * docs/17_intro/contribute.html:  Ditto.
6472         * docs/*/howto.html:  Ditto.  More "EGCS"->"GCC" conversion, notes on
6473         thread safety and binary I/O, links to external sites.
6474         * docs/faq/index.html: EGCS/GCC cleanup, new entries for Cygwin
6475         and MT.
6476
6477 1999-10-12  Petter Urkedal  <petter@matfys.lth.se>
6478
6479         * bits/std_cmath.h (abs(float)): When ::absf is not present, call
6480         ::fabs(double) rather than ::abs(int).
6481
6482 1999-10-11  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6483
6484         * bits/std_streambuf.h: Fix minor blip--should explicitly return
6485         *gptr(), not the result of underflow.
6486         (pbackfail): Conform to default behavior.
6487         (overflow): Same.
6488         * bits/streambuf.tcc: Add out-of-line streambuf members.
6489         (xsputn): Tweak.
6490         (xsgetn): Tweak.
6491         * testsuite/27_io/streambuf.cc: New file.
6492         * testsuite/27_io/filebuf.cc: Correct test.
6493
6494 1999-10-08  Benjamin Kosnik  <bkoz@haight.constant.com>
6495
6496         * bits/std_cmath.h: Correctly cast int to double.
6497         * testsuite/26_numerics/c_math.cc: Add test.
6498
6499         * mknumeric_limits (OUT_C): Tweaks.
6500         * src/gen-num-limits.cc: Checks for WCHAR_MIN, WCHAR_MAX before
6501         trying to instantiate type_traits<wchar_t>.
6502         * acconfig.h: Add _GLIBCPP_HAS_WCHAR_MIN_MAX.
6503         * configure.in (LIBS): Plus checks for WCHAR_MIN, WCHAR_MAX.
6504         * configure: Regenerate.
6505         
6506 1999-10-06  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6507
6508         * bits/streambuf.tcc (streambuf::xsgetn): Rewrite.
6509         (streambuf::xsputn): Put in break.
6510         Aiming for parity between these two (mostly) similar functions.
6511         Need to re-write tests.
6512         
6513         * bits/ios_base.h (ios_base::_M_copy_base): Remove declaration.
6514         Make data members protected, not private.
6515         * src/ios.cc (ios_base::_M_copy_base): Move _Callback_list into
6516         ios_base.h. As called only once, collapse into . . .
6517         * bits/basic_ios.h (basic_ios::copyfmt): Fix.
6518         (basic_ios::clear): Throw ios_base::failure on occasion.
6519         (basic_ios::exceptions): Fix.
6520         * testsuite/27_io/ios_members.cc (test02): Add tests.
6521         
6522         * bits/fpos.h: Default initialize.
6523         * testsuite/27_io/fpos.cc (test03): Add test.
6524
6525 1999-10-04  Russell Davidson <russell@qed.econ.queensu.ca> 
6526
6527         * src/basic_file.cc: Fix open modes.
6528         
6529 1999-10-04  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6530
6531         * bits/locale_facets.tcc (num_get<>::do_get): Fix typo.
6532
6533 1999-09-23  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6534
6535         * bits/streambuf.tcc: Yea. Fix this for real.
6536         * testsuite/27_io/ostream_inserter_other.cc: Add file.
6537         * src/Makefile.*: Regenerate.
6538
6539 1999-09-22  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6540
6541         * bits/std_cstdlib.h: Add more linux-specif hacks to the header
6542         files so that stdtof and strtold will be declared. Some hacks
6543         already exits in bits/std_cctype.h -- these should all be removed
6544         at a later date.
6545         * bits/locale_facets.tcc: Add cstring.h include.
6546         _S_format_long: Use long, not int.
6547         Add std_limits.h include, for numeric_limits.
6548         * testsuite/27_io/istream.cc: Make instantiations work when using
6549         -fhonor-std.  
6550         * testsuite/27_io/ostream.cc: Same.
6551         
6552 1999-09-21  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6553
6554         * bits/fpos.h (fpos::operator streamoff): Make const, don't return
6555         a reference. Same for operators == and !=.
6556         * testsuite/27_io/fpos.cc: Add tests.
6557
6558 1999-09-21  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6559
6560         * bits/valarray_array.h: Fix typo.
6561
6562         * mknumeric_limits: Make sure we are regenerating things from
6563         scratch.  Otherwise things get redefined.  Not good.
6564
6565 1999-09-20  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6566
6567         * bits/std_ostream.h: Fix typo.
6568         * bits/std_istream.h: Same.
6569         * bits/std_iomanip.h: Same.
6570
6571         * bits/istream.tcc (sentry::sentry()): Remove optional tie with
6572         ostream, as happens with underflow anyway.
6573         * testsuite/27_io/istream.cc (main): New file.
6574         * testsuite/27_io/ostream.cc (main): New file.
6575         * testsuite/27_io/istream_unformatted.cc: Add tests.
6576
6577         * src/Makefile.am (headers): Add new file.
6578         * src/Makefile.in (headers): Regenerated.
6579
6580         * bits/basic_ios.h: Remove local-related files.
6581         * bits/basic_ios.tcc: New file, add locale-related items.
6582         * src/misc-inst.cc: Add include of basic_ios.tcc, as a hack for now.
6583         * testsuite/27_io/ios_members_static.cc: Change to
6584         * testsuite/27_io/ios_base_members_static.cc: This.
6585         * testsuite/27_io/ios_members.cc: New file.
6586         * testsuite/27_io/stdios_basefield_manip: Change to
6587         * testsuite/27_io/ios_manip_basefield.cc: This.
6588         * testsuite/27_io/stdios_fmtflags_manip: Change to
6589         * testsuite/27_io/ios_manip_fmtflags.cc: This.
6590         
6591         * bits/fpos.h: Fix discarding qualifiers on this when
6592         using _M_position with a const fpos.
6593         * bits/std_iosfwd.h: Tweak.
6594         * testsuite/27_io/fpos.cc: New file.
6595
6596 1999-09-17  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6597
6598         * bits/streambuf.tcc (streambuf::xsputn): Tweak.
6599         * bits/ostream.tcc: Tweak.
6600         * testsuite/21_strings/inserters_extractors.cc (test04, test05):
6601         Add new regressions.
6602         
6603 1999-09-16  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6604
6605         * bits/basic_ios.h: Inline, tweak.
6606         * bits/fstream.tcc (basic_filebuf::_M_really_overflow): Tweak,
6607         pass back accurate return value to basic_filebuf::overflow.
6608         * bits/streambuf.tcc (streambuf::xsputn): Fix overflow accounting.
6609         This fixes sstream problems reported in libstdc++/9, but screws up
6610         filebufs. That solution is pending.
6611
6612 1999-09-15  Vadim Egorov  <egorovv@1c.ru>
6613
6614         * bits/streambuf.tcc (basic_streambuf::xsputn): Add check for 
6615         zero count puts.
6616         * testsuite/21_strings/inserters_extractors.cc (test01): Add test.
6617         
6618 1999-09-08  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6619
6620         * bits/c++config.h.in: Add emacs hints.
6621
6622         * stl/bits/stl_range_errors.h: Don't define here, for now define
6623         in stdexcept.cc along with string inlines __length_error, etc.
6624         * src/stdexcept.cc: Define here.
6625         * stl/bits/stl_config.h (__STL_CAN_THROW_RANGE_ERRORS): Enable, so
6626         at(size_t) will be declared/defined.
6627         (__STL_THREADS): Fix mess surrounding use of this, enable.
6628
6629 1999-08-31  Benjamin Kosnik  <bkoz@milou.cygnus.com>
6630
6631         * testsuite/27_io/istream_extractor_arith.cc: Fix.
6632         * src/localename.cc: Tweak formatting, fix assignment to
6633         const compiler errors.
6634
6635 1999-08-25  Benjamin Kosnik  <bkoz@cygnus.com>
6636
6637         * acconfig.h: Add absf, cosf.
6638         * configure.in (use_builtin_sinf): Same.
6639         * configure: Regenerate.
6640         * bits/std_cmath.h: Add mess of defines.
6641         * testsuite/26_numerics/modf_float.cc: Change to
6642         * testsuite/26_numerics/c_math.cc: This.
6643         
6644         * src/locale.cc: Change.
6645         * bits/locale_facets.h: Fix.
6646         * testsuite/22_locale/ctype.cc: Add temporary tests.
6647         
6648 1999-08-24  Benjamin Kosnik  <bkoz@cygnus.com>
6649
6650         * bits/fpos.h: Test.
6651
6652         * docs/index.html: Add powerpc-linux-gnu results with gcc-2.95.1.
6653         Fix database name for "libstdc++".
6654
6655 1999-08-23  Benjamin Kosnik  <bkoz@cygnus.com>
6656
6657         * mknumeric_limits (numeric_limits): Add default definitions to
6658         member functions.
6659         * testsuite/18_support/numeric_limits.cc: New file.
6660
6661 1999-08-18  Benjamin Kosnik  <bkoz@cygnus.com>
6662
6663         * bits/std_istream.h: Correct initialization.
6664         * bits/std_ostream.h: Likewise.
6665         * bits/std_sstream.h: Likewise.
6666         * bits/std_fstream.h: Likewise. 
6667         * testsuite/27_io/stringstream.cc: Add test case.
6668         
6669         * bits/std_sstream.h: Replace ____string_type with __string_type.
6670         * bits/basic_ios.h (basic_ios::rdbuf(sb*): Call clear(), as required.
6671         * bits/std_ostream.h: Tweak dtor.
6672
6673 1999-08-17  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
6674
6675         * src/Makefile.am (CXXFLAGS): Add -O2.
6676         * src/Makefile.in: Likewise.
6677         
6678         * src/gen-num-limits.cc: Conditionally allow wchar_t. See what
6679         this breaks. . .
6680         * mknumeric_limits (numeric_limits): Uglify.
6681
6682         * bits/std_istream.h: Fix warnings.
6683         * bits/locale_facets.tcc: Collateral damage from
6684         char_traits<char>::int_type change.
6685
6686         * testsuite/27_io/istream_extractor_char.cc: Terminate strings.
6687
6688 1999-08-17  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
6689
6690         * docs/index.html: Add mailing list form.
6691         * docs/27_io/howto.html: Add link to iostreams_hierarchy.pdf.
6692
6693 1999-08-16  Benjamin Kosnik  <bkoz@cygnus.com>
6694
6695         * bits/streambuf.tcc (streambuf::xsputn): Allow copies to continue
6696         if overflow successfully allocates more space.
6697         * bits/std_sstream.h: Adjust comments.
6698         * bits/sstream.tcc (stringbuf::overflow): Copy buffer into string
6699         before overflow forces a resize.
6700         * testsuite/27_io/ostream_inserter_char.cc: New file.
6701         
6702         * bits/std_fstream.h: Remove declaration.
6703         * bits/fstream.tcc: Move uflow.
6704         * bits/std_streambuf.h: To here.
6705         * bits/streambuf.tcc: Make consistent.
6706         
6707         * src/Makefile.am (WERROR): Enable.
6708         * src/Makefile.in: Regenerate.
6709         * bits/sbuf_iter.h: Tweak.
6710         * bits/char_traits.h: (char_traits<wchar_t>::eof): Use WEOF.
6711         Use unsigned int as char_traits<char>::int_type.
6712
6713         * bits/ostream.tcc (ostream::putc(char)): Tweak.
6714         * testsuite/27_io/iostream_objects.cc: Terminate string.
6715         Move cin::operator>>(char*) test to extractor_char.cc.
6716         * testsuite/27_io/stringstream.cc: Add stringstream instantiation.
6717         * bits/std_istream.h (basic_iostream): Make explicit definition
6718         for default ctor.
6719         * bits/std_sstream.h: Fix typos.
6720         * bits/fstream.tcc (_M_init_filebuf): Set to indeterminate for
6721         basic_filebuf ctor with fileno open arguments. Thus, filebufs are
6722         initialized in a consistent manner, no matter if the underlying
6723         FILE/bit bucket is a tty or a text file or some other imaginary
6724         construct. This and setting _M_buf_size to 1 for cin allows
6725         istream::get(char) to work in a manner consistent with what others
6726         expect.
6727
6728         * docs/index.html: Link Stroustrup's C++ page.
6729         
6730 1999-08-12  Michael Cook  <cook@sightpath.com>
6731
6732         * bits/fstream.tcc: Fix signed/unsigned -Wall warning.
6733         * bits/istream.tcc: ditto.
6734         * bits/sbuf_iter.h: ditto.
6735         * bits/std_istream.h: ditto.
6736         * src/Makefile.am: Add -Wall to CXXFLAGS.
6737         * src/Makefile.in: ditto.
6738
6739 1999-08-12  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
6740             Russell Davidson <russell@ehess.cnrs-mrs.fr> 
6741
6742         * bits/locale_facets.tcc (_M_extract): Finish off patch from yesterday.
6743         * src/Makefile.am (myinstallheaders): Tweak, remove PHONY.
6744         
6745 1999-08-11  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
6746
6747         * testsuite/27_io/istream_unformatted.cc: New file.
6748
6749         * testsuite/27_io/istream_extractor_arith.cc (test02): Add more
6750         elaborate tests for int types with noskipws.
6751
6752         * testsuite/27_io/istream_extractor_other-1.txt: New file.
6753         * testsuite/27_io/istream_extractor_other-1.tst: New file.
6754         * testsuite/27_io/istream_extractor_other-2.tst: New file.      
6755         * testsuite/27_io/istream_extractor_other.cc: Add tests.
6756         * bits/istream.tcc: Fix operator>>(streambuf*).
6757
6758         * testsuite/23_containers/vector_ctor.cc (test01): Add.
6759
6760         * docs/index.html: Remove references to egcs.
6761         * docs/17_intro/DESIGN: Same.
6762         * docs/17_intro/contribute.html: Same.
6763         * docs/17_intro/RELEASE-NOTES: Ditto.
6764         * docs/17_intro/howto.html: Same here.
6765
6766         Russell Davidson <russell@ehess.cnrs-mrs.fr>
6767         * stl/bits/stl_vector.h (_M_insert_aux): 
6768         * bits/locale_facets.tcc (_M_extract): Tweaks for preliminary
6769         decimal/floating point support.
6770         * bits/locale_facets.h: Change _M_extract prototype.
6771         * bits/char_traits.h (char_traits::to_int_type): Cast to unsigned.
6772         * bits/std_istream.h (istream::read(char_type, streamsize)): Fix.
6773         
6774 1999-08-10  Michael Cook  <cook@sightpath.com>
6775
6776         * bits/fstream.tcc: Fix for unused variable warning (-Wall).
6777         * bits/ios_base.h: ditto.
6778         * bits/istream.tcc: ditto.
6779         * bits/locale_facets.h: ditto.
6780         * bits/locale_facets.tcc: ditto.
6781         * bits/std_streambuf.h: ditto.
6782         * src/basic_file.cc: ditto.
6783         * src/locale.cc: ditto.
6784         * src/localename.cc: ditto.
6785
6786 1999-08-10  Kirat Singh  <singhki@jany.gs.com> 
6787
6788         * bits/std_iomanip.h: Inline.
6789         
6790 1999-08-10  Alfred Minarik <a8601248@unet.univie.ac.at>
6791         
6792         * bits/std_streambuf.h: Correct member initialization order.
6793         * src/ios.cc: Add definitions for ios_base data members.
6794         
6795 1999-08-06  Phil Edwards  <pedwards@ball.com>
6796         
6797         * docs/index.html:  Seventh snapshot updates.  Minor tweaks.
6798         * docs/faq/index.html: Ditto.  Removed bugs sections that have
6799         been fixed for a long time...  Lots of "egcs" references still
6800         exist.
6801         * docs/faq/index.txt:  Regenerated.
6802
6803 1999-08-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6804             Andreas Amann <amann@physik.tu-berlin.de>
6805
6806         * testsuite/26_numerics/binary_closure.cc (main): new test.
6807
6808 1999-07-29  Andreas Amann <amann@physik.tu-berlin.de>
6809
6810         * bits/valarray_meta.h: (_BinClos<>::_Binclos): fix typo causing
6811         segmentation fault.
6812
6813 1999-08-04  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
6814
6815         * docs/index.html (host): Put in testing status.
6816
6817 1999-08-03  Benjamin Kosnik  <bkoz@cygnus.com>
6818
6819         * docs/index.html: Update for libstdc++-2.90.6 release.
6820         * docs/17_intro/RELEASE-NOTES (New): Update.
6821         * docs/17_intro/BUGS: Update.
6822         * bits/c++config.h.in (__GLIBCPP__): Bump version number.
6823         * README (file): Update.
6824
6825 1999-08-03  Benjamin Kosnik  <bkoz@cygnus.com>
6826
6827         * src/Makefile.am (generated_headers): Remove bits/c++config.h as
6828         a target.
6829         ($(generated_headers)): Same.
6830         * src/gen-c++config.cc: Remove, rename to
6831         * bits/c++config.h.in: New file. Bump version number.
6832         * configure.in: Generate bits/c++config.h at configure time. 
6833         * math/mathconf.h: include bits/c++config.h, not config.h.
6834         
6835         * bits/std_cmath.h: Fix remaining link error for solaris shared
6836         builds.  _GLIBCPP_HAS_BUILTIN_SINF has to be disabled for the time
6837         being, as on Solaris this silently calls sinf, which does not
6838         exist.
6839         
6840         * src/complex.cc: More tweaks.
6841
6842 1999-08-03  Benjamin Kosnik  <bkoz@cygnus.com>
6843
6844         * src/complex.cc: Same.
6845         * math/complex-stub.h: Change.
6846         * math/c_log10*.c: Change back to clog10*.c.
6847
6848         * configure.in (NEED_C_LOG10): Delete.
6849         * configure: Regenerate.
6850         * math/Makefile.am: Change.
6851         
6852 1999-07-30  Benjamin Kosnik  <bkoz@cygnus.com>
6853
6854         * math/Makefile.am: Fix, for real.
6855         * configure.in (use_builtin_sinf): Ok, make autoconf solution.
6856         * math/clog.c: Move to c_log.c.
6857         * math/clog*: Ditto.
6858         * math/c_log10l.c (c_log10l): Change function name.
6859         * math/c_log10f.c (c_log10f): Change function name.
6860         * math/c_log10.c (c_log10): Change function name.
6861         
6862         * math/complex-stub.h: Change to c_log* variants.
6863         * src/complex.cc: And here. 
6864         
6865 1999-07-29  Benjamin Kosnik  <bkoz@cygnus.com>
6866
6867         * testsuite/27_io/istream_extractor_other.cc: Correct last test.
6868         * bits/sstream.tcc (stringbuf::overflow): Don't update the input
6869         sequence, just the output sequence.
6870         * bits/std_sstream.h (stringbuf::str()): Only in stringbufs return
6871         the original string, all others use complicated heuristic.
6872
6873         * src/complex.cc: Assume c_log10.
6874         * math/Makefile.am (EXTRA_yes): Fix c_log/c_logf unresolved
6875         symbols in shared libraries by making c_log/c_log10 part of the
6876         "must cmpile" sources. This may not work on solaris, must check.
6877
6878 1999-07-29  Benjamin Kosnik <bkoz@cygnus.com>
6879
6880         * bits/istream.tcc (operator>>(streambuf*)): Re-do.
6881         * bits/std_istream.h: Fix char extractors.
6882         * testsuite/27_io/istream_extractor_char.cc: Change.
6883         * testsuite/27_io/istream_extractor_other.cc: Add tests.
6884         
6885 1999-07-28  Benjamin Kosnik <bkoz@cygnus.com>
6886
6887         * bits/std_cctype.h: Fix for solaris2.6 builds. 
6888
6889         * bits/istream.tcc: Fix, thanks Alfred.
6890         * bits/std_istream.h: Formatting changes.
6891
6892         * libio/Makefile.am (libio_la_SOURCES): Remove cleanup.c, so that
6893         _IO_cleanup will not be undefined.
6894         * libio/*: Regenerate.
6895         
6896         * bits/basic_string.h: More namespace-safety stuff.
6897         * testsuite/27_io/istream_extractor_char.cc: Fix.
6898         * testsuite/27_io/istream_extractor_arith.cc: Fix.
6899         * testsuite/27_io/iostream_objects.cc: Fix.
6900         * testsuite/27_io/ios_ctor.cc: Fix.
6901         * testsuite/27_io/istream_manip.cc: Make namespace safe.
6902         * testsuite/27_io/istream_extractor_other.cc: New file.
6903
6904         * mkcheck (TESTS_FILE): Tweaks.
6905
6906 1999-07-27  Benjamin Kosnik  <bkoz@cygnus.com>
6907
6908         * src/gen-c++config.cc: Note here, change version.
6909         * acconfig.h( _GLIBCPP_USE_CTYPE_ISBIT): New macro.
6910         * src/locale.cc: Used here.
6911         * configure.in (use_builtin_sinf): Check for _ISBit using autoconf.
6912
6913         * aclocal.m4: Regenerate by running `aclocal -I m4.`
6914         
6915         * bits/istream.tcc: Fix.
6916         * bits/std_istream.h: More changes to extractors.
6917
6918         * testsuite/27_io/istream_extractor_char.cc: More.
6919         * testsuite/21_strings/inserters_extractors.cc (test01): Fix logic
6920         error in testsuite construction.
6921
6922         * bits/std_istream.h: Partially revert.
6923         * bits/std_ostream.h: Same.
6924         * bits/std_sstream.h: Revert. 
6925
6926 1999-07-26  Benjamin Kosnik  <bkoz@cygnus.com>
6927
6928         * bits/std_sstream.h: Change initialization.
6929         * bits/std_ostream.h: Make default ctor/assign/operator= private.
6930         * bits/std_istream.h: Same, also correct sentry args.
6931         * bits/istream.tcc: Add correct sentry args.
6932         
6933         * testsuite/27_io/istream_extractor_char.cc: New file.
6934         * testsuite/27_io/istream_extractor_arith.cc: New file, old file,
6935         name changes making me dizzy.
6936
6937 1999-07-26  Ulrich Drepper  <drepper@happy.cygnus.com>
6938             Benjamin Kosnik  <bkoz@cygnus.com>
6939
6940         * aclocal.m4, config.guess, config.sub, ltconfig ltmain.sh: Update
6941         to libtool 1.3.3.
6942
6943 1999-07-26 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6944
6945         * bits/std_complex.h: Tweak. Make the primary template class
6946         complex work with user-defined numerical types.  Provide member
6947         definitions.  Restructure.
6948         (class complex<float>): Uglify.  Remove  __value().  Rename __val
6949         to _M_value.  Rename __complex_value_type to _ComplexT. Make it
6950         private.  Remove dependency on __value().  Fix various explicit
6951         specialization syntax.  Declare a some functions friend.  Now the
6952         implementation is nearly comforming.
6953         (class complex<double>): Likewise.
6954         (class complex<long double>): Likewise.
6955
6956         * src/complex.cc: Tweak.  Remove dependency on complex::__value().
6957         (sin, sinh, tan, than): Fix call to corresponding C9x function
6958         syntax. 
6959
6960 1999-07-24  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
6961
6962         * bits/istream.tcc (ws): Fix error with failbit being set.
6963
6964         Disabled due to egcs/gcc-2_95 internal compiler errors.
6965         * src/Makefile.am (CXXFLAGS): Add -fsquangle -fhonor-std
6966         -fnew-exceptions. Compiling with namespaces enabled will now be
6967         the default.
6968         * mkcheck (CXX_FLAG): Same.
6969         * src/gen-c++config.cc (_GLIBCPP_USE_NAMESPACES): Yup. New macro.
6970         * bits/std_cctype.h: Not enough to just define in namespace std if
6971         ctype-isms are macros. Need to also define in namespace std:: if
6972         the C functions are just plain functions.
6973
6974         * src/gen-num-limits.cc: Fix spelling inconsistencies.
6975         
6976 1999-07-24  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6977
6978         * docs/18_support/howto.html: Start documentation.  Need to keep
6979         track of the ongoing discussion in th LWG reflector.
6980
6981         * src/gen-num-limits.cc: Tweak.
6982         (class predicate): New class.
6983         (class value): Likewise.
6984         Make the whole machinery more flexible. Add comments.
6985
6986 1999-07-23  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
6987
6988         * bits/ios_base.h: Move state/exception functions into basic_ios. 
6989         * bits/basic_ios.h: Same.
6990         * src/ios.cc: And here. Callbacks don't attempt to reset
6991         state now.  
6992
6993         * bits/std_streambuf.h: Separate ios and streambuf locale data
6994         members and cached facets. Using this convention: _M_locale_buf for
6995         the streambuf-related classes, and _M_locale_ios for the ios
6996         hierarchy.
6997         * bits/fstream.tcc: And here.
6998         * bits/basic_ios.h: And here. Also, add cached ctype.
6999         * src/ios.cc: Ditto.
7000         * bits/ios_base.h: Ditto.
7001         * bits/std_istream.h: Use cached ctype facet.
7002         * docs/27_io/iostreams_hierarchy.pdf: Update for new data member
7003         arraignment.
7004
7005         * testsuite/27_io/ios_ctor.cc: New file.
7006         * src/ios.cc: Move _M_state init to basic_ios::init().
7007         * bits/basic_ios.h: To here.
7008         
7009         Attempt for some consistency in naming for testsuite/27_io/*.cc.
7010         * testsuite/27_io/boolfmt.cc: Rename to stdios_fmtflags_manip.cc
7011         * testsuite/27_io/octfmt.cc: Rename to stdios_basefield_manip.cc
7012         * testsuite/27_io/istream_manip.cc: Rename to istringstream_manip.cc.
7013         * testsuite/27_io/ostream_manip.cc: Rename to ostringstream_manip.cc.
7014         
7015 1999-07-22  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
7016         
7017         * src/ios.cc: Tweak initializations of standard iostream
7018         objects to closely match the standard. Tie cin/wcin, set flags on
7019         cerr/wcerr
7020         * bits/char_traits.h: Change from size_t to int_type, as per
7021         standard. As per wide streams.
7022         * bits/basic_ios.h: Infect with __ctype_type, as a preparation
7023         for caching a bunch of ctype info. For instance, ctype_base::space
7024         info needs to be stored somewhere, somehow.
7025         * bits/std_istream.h: Also here.
7026         * bits/std_ostream.h: Ditto.
7027         * bits/std_istream.h (operator>>(istream, char): Aggh. Fixup.
7028         * testsuite/27_io/iostream_objects.cacc (test01): Oh yeah. Fix
7029         stream states.
7030
7031         * bits/istream.tcc (ws): Fix.
7032         * testsuite/27_io/istream_manip.cc: New file, test ws.
7033         * testsuite/27_io/ostream_manip.cc: New file, test endl, ends, flush.
7034
7035         * bits/basic_string.h: Provide a specialized member function for
7036         _S_find<char> using strchr.
7037         * src/string-inst.cc: Put specializations here.
7038         * bits/string.tcc: Small fix for find, remove typo.
7039         * testsuite/21_strings/find.cc (test01): Add tests to catch this
7040         find bug. . .
7041
7042 1999-07-20  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>       
7043
7044         * bits/basic_ios.h: Put into basic_ios namespace.
7045         Tweak widen/narrow.
7046
7047 1999-07-19  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>       
7048
7049         * bits/std_sstream.h (stringbuf::sync): Change to _M_really_sync,
7050         adjust _M_*_cur pointers inside the function, so callee doesn't
7051         have to adjust.
7052         * bits/sstream.tcc (stringbuf::overflow): Tweak.
7053
7054         * mkcheck: Tweak. Add execution time field, even though it is not
7055         implemented yet. Simplify pass/fail status notation.
7056
7057 1999-07-18  Mumit Khan  <khan@xraylith.wisc.edu>
7058
7059         * configure.in: Check for float.h and underscored version of 
7060         math functions.
7061         * acconfig.h: Add @BOTTOM@ section for handling underscored
7062         math functions.
7063         * configure: Regenerate.
7064         * config.h.in: Regenerate. 
7065         * math/mathconf.h (float.h): Include conditionally.
7066         (M_PI): Define conditionally.
7067         (INFINITE_P): Define for Mingw.
7068         * bits/locale_facets.tcc: Workaround for compiler crash on
7069         ix86-*-mingw32.
7070         * bits/std_cwchar.h (bits/std_cstddef.h): Include.
7071         * src/locale.cc (bits/std_istream.h): Include.
7072         (bits/std_ostream.h): Likewise.
7073
7074 1999-07-18  Phil Edwards  <pedwards@ball.com>
7075
7076         * docs/faq/index.html:  Updated __black_count notes, fixed typos.
7077         * docs/faq/index.txt:  Regenerated.
7078
7079 1999-07-15  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
7080
7081         * testsuite/27_io/stringbuf.cc: Cccchanges, latent bugs.
7082
7083         * bits/sstream.tcc (stringbuf::overflow): Modify accounting of
7084         newly-allocated buffer.
7085         * bits/streambuf.tcc (streambuf::xsgetn): Aaaaaah. Fix final
7086         overflow condition bits.
7087
7088 1999-07-14  Benjamin Kosnik  <bkoz@cygnus.com>
7089
7090         * bits/std_sstream.h (stringbuf::_M_init_stringbuf): Set
7091         _M_buf_size to initial _M_string.size(), even though for
7092         ostringstreams it is pretty pointless. It's necessary for
7093         istringstreams.
7094         (stringbuf::str()): Adjust. 
7095         (stringbuf::str()): Adjust, call _M_init_stringbuf.
7096         * bits/streambuf.tcc (streambuf::xsgetn): Adjust return value for
7097         overflow's possible success.
7098         (streambuf::xsputn): Adjust.
7099         
7100         * testsuite/27_io/filebuf.cc: Adjust for the xsgetn re-write from
7101         yesterday.
7102         * testsuite/27_io/stringbuf.cc: Tweak.
7103         * testsuite/21_strings/inserters_extractors.cc (test01): Remove
7104         notes to myself.
7105         * testsuite/23_containers/vector_cons.cc: Rename to be consistent
7106         with other constructor tests to. . .
7107         * testsuite/23_containers/vector_ctor.cc: New file.
7108         
7109 1999-07-14  Alfred Minarik <a8601248@unet.univie.ac.at>
7110
7111         * testsuite/*: Changes to make the testsuit compilable with
7112         -fhonor-std. Contains direct qualification of library names with
7113         std::.
7114
7115 1999-07-13  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
7116
7117         * bits/streambuf.tcc: Tweaks.
7118         (streambuf::xsputn): Optimize, fix for sstreams.
7119         (streambuf::xsgetn): Same.
7120         * bits/sstream.tcc (stringbuf::overflow): Adjust _M_buf_size
7121         correctly, handle overflow/reallocate conditions correctly.
7122         * bits/std_sstream.h: Fix typo.
7123         _M_init_stringbuf(): Fix _M_buf_size initialization.
7124         (stringbuf::str()): Construct return string if output has occurred.
7125
7126         * bits/basic_string.h: Fix typo from yesterday's patch.
7127
7128 1999-07-12  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
7129
7130         * bits/string.tcc: _M_mutate - clear _M_state again.
7131         * bits/basic_string.h: In the three functions that return
7132         an iterator set _M_state to -1 before return.
7133         Also optimized two cases of operator+.
7134         
7135 1999-07-12  Phil Edwards  <pedwards@ball.com>
7136
7137         * docs/index.html:  Expand egcs-1.1.2 notes/links.
7138         * docs/faq/index.html:  And here.  Add links to LWG issues-list.
7139         * docs/faq/index.txt:  Regenerate.  (lynx rocks)
7140         * docs/21_strings/howto.html:  Fix notes on case conversion.
7141         * docs/21_strings/stringtok_h.txt:  Goodly spelling...
7142         * docs/23_containers/howto.html:  Stub for bitmasks.
7143         * docs/27_io/howto.html: Add section on buffering, stub binary.
7144         
7145 1999-07-12  Nathan Myers <ncm@cantrip.org>
7146
7147         * stl/bits/stl_tree.h (__black_count): Optimize.
7148
7149 1999-07-09  Vadim Egorov  <egorovv@1c.ru>
7150
7151         * src/basic_file.cc: Cleanup in __basic_file destructor.
7152
7153 1999-07-08  Benjamin Kosnik  <bkoz@cygnus.com>
7154
7155         * bits/std_streambuf.h: Changes. . .
7156         * bits/streambuf.tcc: Merge xsputn from filebuf into xsputn in
7157         basic_streambuf, to be used for both filebufs and streambufs.
7158         * bits/std_fstream.h (_M_init_filebuf): New function.
7159         Take out specialized xsputn, put into basic_streambuf.
7160         * bits/fstream.tcc: Define, call from both ctors.
7161         * bits/std_sstream.h (_M_init_stringbuf): New function.
7162         * bits/sstream.tcc: Tweak.
7163         
7164         * docs/27_io/iostreams_hierarchy.pdf: New file.
7165         
7166         * docs/17_intro/CHECKLIST (basic_string<char>): Validation and
7167         acceptance. Wooo-hoo!
7168
7169         * bits/char_traits.h: Change int_type for char_traits general
7170         template, so that 21_strings/capacity.cc will compile.
7171         * testsuite/21_strings/capacity.cc: Add operators.
7172         
7173         * bits/string.tcc (string::compare): Clean up, re-implement.
7174         * testsuite/21_strings/compare.cc: Tweak.
7175         
7176         * bits/string.tcc (string:_M_mutate): Keep leaked value in
7177         _M_state, which means that whenever begin() or end() has been
7178         called, the string is unshareable, period. By doing this, insert
7179         and erase member functions that return iterators can remain
7180         footloose and fancy free. 
7181         * testsuite/21_strings/invariants.cc: Update.
7182
7183         * bits/basic_string.h (string::append): Fix self-referential
7184         problems, ie when "this" is also an argument to a member function.
7185         * bits/string.tcc: Tweak, same.
7186         * testsuite/21_strings/append.cc: New file.
7187
7188 1999-07-07  Benjamin Kosnik  <bkoz@cygnus.com>
7189
7190         * bits/char_traits.h: Tweaks.
7191         * bits/basic_string.h: Tweak.
7192         * bits/fstream.tcc: Remove warning for _M_buf_size assignment.
7193
7194 1999-07-06  Benjamin Kosnik  <bkoz@cygnus.com>
7195
7196         * bits/std_streambuf.h: Absorb/acquire data members previously
7197         working in basic_filebuf.
7198         * bits/streambuf.tcc: Tweaks.
7199         * bits/fstream.tcc: Adjust.
7200         * bits/std_fstream.h: Move and rename the following functions:
7201         _M_set_ideterminate, _M_is_indeterminate, _M_set_determinate are
7202         now declared and defined in the base class, basic_streambuf.  Oh
7203         fuck it, move data members _M_buf, and _M_buf_size into
7204         basic_streambuf as well.
7205
7206         * bits/ostream.tcc: Tweak.
7207         * bits/locale_facets.tcc: Fix typo in comments.
7208
7209         * testsuite/21_strings/inserters_extractors.cc (test01): Change
7210         state from good to not good, as eof() is set.
7211
7212 1999-07-05  Benjamin Kosnik  <bkoz@cygnus.com>
7213
7214         * bits/char_traits.h (char_traits::compare). Fix.
7215
7216         * config.guess, config.sub: Update.
7217
7218 1999-07-02  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
7219
7220         * bits/string.tcc: Check the __res_arg for a length error.
7221
7222 1999-07-01  Benjamin Kosnik  <bkoz@nabi.net>
7223
7224         * bits/std_streambuf.h: Tweaks. Need to move _M_is_indeterminate
7225         and related functions into basic_streambuf, from basic_filebuf to
7226         take care of ostringstreams and empty strings. So that's groovy,
7227         or will be groovy.
7228         * bits/std_istream.h: Tweaks.
7229         * bits/istream.tcc: Implement ws, getline, operator>> for string.
7230         * bits/std_ostream.h: And here.
7231         * bits/ostream.tcc: Same.
7232         * src/misc-inst.cc: Add instantiations for ws.
7233         
7234         * src/string-inst.cc: Add instantiations for inserters and
7235         extractors (operators << and >>, getline).
7236
7237         * testsuite/21_strings/inserters_extractors.cc: Amazingly enough,
7238         a testcase for getline and operators << and >>. Ostream tests are
7239         failing right now, but istream tests should work. . .
7240
7241         * bits/string.tcc: Change _S_max_size, as GNU malloc won't budge.
7242         * bits/std_sstream.h: Revert.
7243
7244         * testsuite/17_intro: header_[iosfwd, ios, iostream, iomanip,
7245         istream, ostream, streambuf, fstream, sstream].cc: New files.
7246         
7247 1999-06-30  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
7248
7249         * bits/std_sstream.h (stringbuf::sync): Don't use string::begin()
7250         and string::end().
7251         
7252         * bits/basic_string.h (basic_string<>::_S_copy_chars): Add
7253         specializations for _CharT*, iterator and const_iterator.
7254         * src/string-inst.cc: Remove explicit instantiation, as
7255         now explicitly specialized.
7256
7257         * bits/basic_string.h: Add a size_type parameter to _M_clone with
7258         a default value set to 0.
7259         * bits/string.tcc: In _M_clone by the call of _S_create add the
7260         value of the new parameter to _M_length.  In reserve check
7261         _M_state and use _M_clone instead of _M_mutate.
7262
7263 1999-06-30  Benjamin Kosnik  <bkoz@happy.cygnus.com>    
7264
7265         * bits/basic_string.h: Fix _S_max_size.
7266         * bits/string.tcc: Add def here.
7267         * testsuite/21_strings/insert.cc: Fix.
7268         
7269         * bits/sbuf_iter.h: Remove detritus.
7270         * testsuite/24_iterators/istreambuf_iterator.cc: Add tests.
7271
7272         * src/locale-inst.cc: Elaborate iterator/locale instantiations
7273         to resolve alpha-osf4 build problems.
7274
7275 1999-06-29  Benjamin Kosnik  <bkoz@happy.cygnus.com>    
7276
7277         * bits/string.tcc: Fix signed/unsigned issues in compares.
7278         * stl/bits/stl_deque.h: And here.
7279         * stl/bits/stl_string_fwd.h: Remove __get_c_string.
7280
7281 1999-06-29  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
7282  
7283          * bits/string.tcc: New implementation and interface of _M_mutate.
7284            Adapt the change in all functions that call _M_mutate.
7285          * bits/basic_string.h: And here.
7286
7287 1999-06-29  Benjamin Kosnik  <bkoz@happy.cygnus.com>
7288
7289         * testsuite/21_strings/capacity.cc (test01): Fix.
7290
7291 1999-06-29  Phil Edwards  <pedwards@ball.com>
7292
7293         * mknumeric_limits:  Exit script if gen-num-limits isn't built.
7294         
7295 1999-06-29  Andreas Gruenbacher  <agruenba@pent224.infosys.tuwien.ac.at> 
7296
7297         * stl/bits/stl_vector.h: Fix.
7298         * testsuite/23_containers/vector_cons.cc: Add.
7299         
7300 1999-06-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7301
7302         * mknumeric_limits (LDFLAGS): fix.
7303
7304 1999-06-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7305
7306         * mknumeric_limits (LDFLAGS): set it according to the system.
7307
7308         * math/mathconf.h (NAN): Check whether host is running under
7309         Cygwin and make the appropriate definition.
7310         * math/complex-stub.h (nan): protect declaration.
7311
7312 1999-06-28  Benjamin Kosnik  <bkoz@haight.constant.com>
7313
7314         * bits/sbuf_iter.h: Rename internal data structure to prevent
7315         confusion between basic_ios and istreambuf_iterators internal
7316         basic_streambuf data member.
7317         * testsuite/24_iterators/istreambuf_iterator.cc: New file.
7318
7319         * bits/basic_string.h: Remove conditionals, add input_iterator
7320         version of S_construct again.
7321         * bits/string.tcc: Same.
7322         * src/string-inst.cc: And add explicit instantiation here.
7323         
7324         * src/gen-c++config.cc (_GNU_SOURCE): Take out both _GNU_SOURCE
7325         and __USE_GNU macro defines, as single __USE_GNU use leading to
7326         confusion on glibc2.1 systems (ie, RedHat 6.0).
7327         
7328         * src/Makefile.am (headers): Add std_utility to installed headers.
7329
7330 1999-06-25  John Potter  <jpotter@eagle.lhup.edu>
7331
7332         * stl/bits/stl_tree.h (insert_unique): Revert, just fix insert_equal.
7333
7334 1999-06-25  Gilles Zunino  <Gilles.Zunino@hei.fr>
7335
7336         * mknumeric_limits (LDFLAGS): Swap -lc and -lgcc.
7337
7338 1999-06-24  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7339
7340         * src/gen-c++config.cc (_GLIBCPP_*): Change all
7341         macros to include _GLIBCPP as a distinct namespace.
7342         * bits/*: And here.
7343         * src/*: And here.
7344         
7345         * stl/bits/std_stdexcept.h: Forward-declare __Named_exception ctor.
7346         * bits/basic_string.h: Remove __get_c_string.
7347         * src/stdexcept.cc: Define ctor here.
7348         * bits/ios_base.h: And fix ios_base::failure as well.
7349         * src/ios.cc: Define here. 
7350         
7351         * bits/std_streambuf.h: Add a private copy ctor and assignment
7352         operator wrapped in _G_RESOLVE_LIB_DEFECTS.
7353         * bits/ios_base.h: And here too.
7354         
7355         * bits/basic_string.h: Tweak.
7356         * testsuite/21_strings/nonmember.cc: Add operator+ tests.
7357
7358         * src/valarray.cc: Rename to. . .
7359         * src/valarray-inst.cc: This.
7360         * src/Makefile.am (sources): Change here.
7361         * src/Makefile.in: Regenerated.
7362         
7363 1999-06-24  Vadim Egorov  <egorovv@1c.ru>
7364
7365         * bits/string.tcc(basic_string<>::_Rep::_S_create): Fixed
7366         allocated size
7367
7368 1999-06-24  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7369             Tom Tromey  <tromey@cygnus.com>
7370         
7371         * configure.in (use_glibc2): Eek, correct for non-glibc systems.
7372         Use AM_CONDITIONAL to get us out of this jam. . 
7373         * libio/Makefile.am: Same.
7374         * */Makefile: Regenerated.
7375
7376 1999-06-24  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7377             John Potter  <jpotter@eagle.lhup.edu>
7378
7379         * stl/bits/stl_tree.h (insert_equal): Fix.
7380         * testsuite/23_containers/multiset.cc: New file.
7381         
7382 1999-06-23  Benjamin Kosnik  <bkoz@cygnus.com>
7383
7384         * configure.in (test for glibc2): Correct AC_TRY_COMPILE so that
7385         this works correctly on glibc-2 systems. This should allow
7386         simplified linking on these systems, and successful linking on Red
7387         Hat 6.0 systems.
7388         * configure, Makefile: Regenerate.
7389         
7390         * bits/std_cwctype.h: Add missing 'w' to _S_iswpunct_helper name. 
7391         
7392         * testsuite/ext: New directory.
7393         * testsuite/ext/headers.cc: New file.
7394
7395 1999-06-23  Vadim Egorov  <egorovv@1c.ru>
7396
7397         * stl/ext/hash_set: include missing headers
7398         * stl/ext/hash_map: Same
7399         * stl/ext/slist: Same
7400
7401 1999-06-17  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7402
7403         * bits/std_cmath.h: comment out modf. Kills build on hpux10.20
7404
7405 1999-06-15  Benjamin Kosnik  <bkoz@cygnus.com>
7406
7407         * src/Makefile.am (sources): Regenerate.
7408         * mkcheck: Add TESTS_FILE as a way of controlling what testcases
7409         are run.
7410
7411 1999-06-14  Benjamin Kosnik  <bkoz@cygnus.com>
7412
7413         * src/string-inst.cc: Change _S_construct signature, to
7414         track requested allocation size versus valid input iterator range.
7415         * bits/basic_string.h: Here too.
7416         * bits/string.tcc: And here.
7417
7418 1999-06-12  Benjamin Kosnik  <bkoz@cygnus.com>
7419
7420         * mkcheck (LOG_FILE): Correctly append errors. 
7421
7422         * stl/bits/stl_iterator.h: Revert previous, delirious, change.
7423
7424         * bits/basic_string.h: Change _Rep::_M_data to _Rep::_M_refdata,
7425         to clarify differences between basic_string::_M_data() calls and
7426         _Rep::_M_data() calls.
7427         * bits/std_string.h: Fix.
7428         Put in check for out_of_range in substr.
7429         * bits/string.tcc:  Fix for _S_find.
7430
7431         * testsuite/21_strings/compare.cc: Add tests.
7432         * testsuite/21_strings/find.cc: New file.
7433         * testsuite/21_strings/substr: New file.
7434         * testsuite/21_strings/replace.cc: New file.
7435         
7436 1999-06-11  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7437
7438         * bits/valarray_array.h: __restrict__ify pointers.
7439
7440         * bits/std_valarray.h: Tweak.
7441         (valarray<T>::cshift, valarray<T>::shift): use __builtin_alloca.
7442
7443         * bits/gslice_array.h: Tweak. Reflect changes in bits/gslice.h
7444
7445         * bits/gslice.h: Tweak.
7446         (class gslice::_Indexer): new class.
7447         (gslice::gslice(const gslice&)): implement copy-ctor to support
7448         ref-counted index. 
7449         (gslice::operator=(const gslice&)): support ref-counted index.
7450         (gslice::_M_convert_to_index): delete.
7451
7452         * src/valarray.cc: New file.
7453         (__gslice_to_index): turn a gslice into a valarray<size_t>
7454         (ctor gslice::_Indexer::_Indexer): implement.
7455
7456         * src/Makefile.am (sources): add valarray.cc
7457         * src/Makefile.in: regenerate.
7458
7459 1999-06-08  Benjamin Kosnik  <bkoz@cygnus.com>
7460
7461         * stl/bits/stl_iterator.h (__normal_iterator::const_iterator
7462         ctor): Put in a const_cast.
7463
7464         * testsuite/21_strings/invariants.cc: New file.
7465
7466         * testsuite/21_strings/insert.cc: Add exception handling bits.
7467         * testsuite/21_strings/ctor_copy_dtor.cc: Same.
7468
7469         * src/wstring-inst.cc: Add c++config.h include.
7470
7471         * bits/basic_string.h: Fix const operator[] for size == pos.
7472         Add _M_leak for rbegin, non-const.
7473         Add _M_leak for rend, non-const.
7474         Make member function at standards conformant.
7475         Add _S_terminal to _Rep for operator[] const, add this into
7476         c_str() as well.
7477         * bits/string.tcc: Add static member definition here,
7478         temporarily.
7479         
7480         * testsuite/21_strings/element_access.cc: Add tests.
7481
7482 1999-06-08  Vadim Egorov  <egorovv@1c.ru>
7483
7484          * bits/fstream.tcc (_M_really_overflow): Fixed size of
7485          conversion buffer.
7486
7487 1999-06-08  Phil Edwards  <pedwards@ball.com>
7488
7489         * bits/fstream.tcc (basic_filebuf::xsputn):  Fix off-by-one count
7490           caused when __testinit is true.
7491         * bits/ostream.tcc (basic_ostream::op<<(streambuf*)):  Write buffer
7492           using rdbuf()->sputn rather than _M_fnumput->put.
7493
7494 1999-06-08  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7495
7496         * testsuite/23_containers/bitset_ctor.cc: New file.
7497         * stl/bits/std_bitset.h (__BITSET_WORDS): Fix integration bug.
7498
7499 1999-06-08  Phil Edwards  <pedwards@ball.com>
7500
7501         * bits/fstream.tcc (basic_filebuf::underflow):  Fix, rename local vars.
7502
7503 1999-06-07  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7504
7505         * testsuite/21_strings/element_access.cc: Finish off these tests.
7506         * testsuite/21_strings/insert.cc (test01): Uncomment.
7507         * testsuite/21_strings/ctor_copy_dtor.cc (test01): Finish off ctors.
7508         * bits/basic_string.h: Tweak, okay, fix for real this time.
7509         * bits/string.tcc: Same.
7510         * bits/char_traits.h: Tweak.
7511
7512 1999-06-07  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7513
7514         * bits/std_cmath.h: Example of how to use the generated macro.
7515         * acconfig.h: Add macro for sinf here.
7516         * configure.in (LIBS): Add test for builtin math function sinf.
7517         * configure: Regenerated.
7518         
7519         * bits/basic_string.h: Fix _S_max_size.
7520
7521 1999-06-06  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7522
7523         * bits/basic_string.h: Fixes for out-of-memory segv for large strings.
7524         Remove _S_construct signature for forward_iterator_tag and
7525         input_iterator_tag.
7526         Clean _M_fold.
7527         * src/string-inst.cc: Same, tweaks. 
7528         * bits/string.tcc: Same, tweaks.
7529
7530         * testsuite/21_strings/ctor_copy_dtor.cc: Add/clarify tests.
7531         * mkcheck (LOG_FILE): Fix filebuf-[2,3].tst checks.
7532         * mknumeric_limits (LD_FLAGS): Add -nodefaultlibs -lc -lgcc as per
7533         Gaby.
7534
7535         * src/locale.cc: Final separation for char/wchar_t bits.
7536
7537 1999-06-05  Phil Edwards  <pedwards@ball.com>
7538
7539         * docs/index.html:  Added link to book upon request'n'agreement.
7540         * docs/23_containers/wrappers_h.txt:  Added.
7541         * docs/{23_containers,27_io}/howto.html:  Added sections.
7542
7543         * bits/std_fstream.h: Tweak.
7544         
7545 1999-06-05  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7546
7547         * src/ios.cc: Same here.
7548         * bits/std_iosfwd.h: More wchar_t defines.
7549
7550         * bits/basic_string.h: Tweaks. 
7551         * bits/string.tcc: Tweak. Fix _S_construct to check for max_size
7552         when doing error checking, as per LWG defect #83.
7553         
7554         * src/gen-c++config.cc: Fix comment.
7555         
7556         * testsuite/21_strings/ctor_copy_dtor.cc: New file, checks ctors,
7557         assignments, dtors.
7558         * testsuite/21_strings/element_access.cc: New file, checks for
7559         operator[], at(...).
7560         * testsuite/21_strings/insert.cc: New file, tests string::insert.
7561         * testsuite/21_strings/char_traits.cc: New file, tests
7562         for char_traits<char>.
7563         
7564         * bits/utility.h: Remove, again.
7565         * src/Makefile.am (std_headers): Remove utility.h.
7566         * src/Makefile.in (std_headers): Regenerate.
7567
7568         Alfred Minarik <a8601248@unet.univie.ac.at>
7569         * bits/basic_string.h: Move __out_of_range and __length_error into
7570         namespace std.
7571
7572 1999-06-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7573
7574         * testsuite/26_numerics/modf_float.cc: New file.
7575
7576         * bits/std_cmath.h (modf(float, float*)): Fix signature. Correct
7577         typo: use ::modff, not ::modf.
7578
7579 1999-06-03  Vadim Egorov  <egorovv@1c.ru>
7580
7581         * bits/string.tcc (basic_string::_M_mutate): Fixed memory
7582         allocation error
7583         * testsuite/21_strings/capacity.cc (test01): Test.
7584         
7585 1999-06-03  Phil Edwards  <pedwards@ball.com>
7586
7587         * bits/fstream.tcc:  Re-order inits to stop warnings.  Comment/move
7588           unused variables to within #if 0 blocks to do the same.
7589         * bits/std_fstream.h:  Fix typos (one prevents compilation).
7590
7591 1999-06-03  Benjamin Kosnik <bkoz@pacifica.cygnus.com>
7592
7593         * src/wstring-inst.cc: Fix.
7594
7595 1999-06-02  Benjamin Kosnik <bkoz@madcow.cygnus.com>
7596
7597         * bits/char_traits.h: Add _G_USE_WCHAR_T macro guards.
7598         * stl/bits/stl_string_fwd.h: Same.
7599         * bits/locale_facets.h: Same.
7600         * bits/locale_facets.tcc: Same.
7601         * src/wstring-inst.cc: And here.
7602         
7603         * src/gen-c++config.cc: Comment _G_USE_WCHAR_T. Leading to
7604         problems on HPUX 10.20.  
7605         * your-build-directory-here/bits/c++config.h: Just kidding, do it
7606         here as a temporary hack till the compiler/host problems get
7607         worked out.
7608
7609         * bits/locale_facets.tcc (num_get::do_get): Change from ifdef
7610         HAVE_STRTOLD to HAVE_STRTOLD && !(__hpux). Apparently, problems
7611         converting "long double" to struct long_double. Probably should be
7612         done with one macro (HAVE_STRTOLD) at configure time.
7613
7614         * bits/std_cmath.h: Comment out pow(double, int) definition as
7615         gives re-declaration under hpux10.20. Revert previous change, as
7616         kills linux/x86, solaris 2.7, hpux builds. These should be done
7617         using autoconf, see std_cctype.h and the solutions started in
7618         configure.in (see config.h for the generated file.)
7619
7620         * mknumeric_limits (LDFLAGS): Remove '-nodefaultlibs -lc', as
7621         -nodefaultlibs prevents linking under HPUX 10.20 as __main is not
7622         defined.
7623
7624         * docs/index.html: Add some useful links.
7625         * docs/17_intro/contribute.html: Fix broken links.
7626
7627 1999-06-02  Benjamin Kosnik <bkoz@rhino.cygnus.com>
7628
7629         * mkcheck (LOG_FILE): Add !/bin/bash instead of cygnus-style
7630         paths. The rest of the world should be able to run this script
7631         now.
7632
7633         * src/Makefile.am ($(generated_headers)): Remove comment.
7634         * Makefile*: Regenerate.
7635         
7636         * bits/std_locale.h: Remove detritus.
7637         * bits/localefwd.h: Add <cctype> include to undefine the isspace
7638         macro.
7639
7640 1999-06-01  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7641
7642         * src/gen-c++config.cc: New file. Making c++config.h at configure
7643         time by catting this file (nee bits/config.h) with the build
7644         directories config.h. This is not a complete or perfect solution
7645         but is better than what was in place previously. 
7646         * bits/c++config.h: Rename/move to above.
7647         * src/Makefile.am (headers): Remove c++config.h.
7648         (myinstallheaders). Add.
7649         * Makefile*: Regenerated.
7650
7651         * bits/std_cwchar.h: Add include of c++config.h for HAVE_*
7652         definitions, so that wmemcmp, wcslen, wmemchr, etc are properly
7653         declared only if not present in the host's wchar.h.
7654
7655         * bits/locale_facets.tcc (std): Change _G_USE_STRTO* to HAVE_STRTO*.
7656         
7657         * bits/std_cmath.h: Define out, for the moment. Linux has no
7658         __buitin_fsqrtl? Probably need some kind of configure trickery
7659         here as well.
7660
7661         * src/Makefile.*: Regenerate.
7662         * bits/c++config.h: Add config.h include.
7663
7664         * bits/std_cwchar.h: Remove remaining #error guard.
7665         
7666         * acconfig.h: Add bits for HAVE_LC_MESSAGES.
7667
7668         * configure.in (LIBS): Replace previous effort for mbstate_t and
7669         strtold/strtof with this implementation.
7670
7671 1999 06-01  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7672
7673         * bits/std_cmath.h: Tweak. Add more functions. Use __builtin_xxx
7674         whenever possible.
7675
7676 1999-05-28  Benjamin Kosnik  <bkoz@cygnus.com>
7677
7678         * bits/locale_facets.tcc (std): Eek: this left in. Autoconf bits
7679         for determining mbstate_t differences across various hosts not
7680         finished. 
7681
7682 1999-05-26  Benjamin Kosnik  <bkoz@nabi.net>
7683
7684         * bits/locale_facets.tcc: Change to ifdef.
7685
7686         * bits/std_sstream.h (stringbuf::setbuf): Remove dynamic_cast.
7687         * bits/std_fstream.h (filebuf::setbuf): Same.
7688
7689         * bits/std_istream.h: Add ws declaration.
7690         * bits/istream.tcc: Stub out definition.
7691         
7692         * docs/index.html: Fix broken link for design.txt.
7693
7694         * configure.in: Test for mbstate_t. If wchar.h doesn't have it,
7695         then set _G_NEED_MBSTATE_T.
7696         * configure: Regenerate.
7697         * bits/c++config.h: Move mbstate_t define.
7698         * bits/std_cwchar.h: To here.
7699
7700 1999-05-25  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
7701
7702         * bits/std_sstream.h:
7703           basic_stringbuf<>::basic_stringbuf: fix.
7704           basic_stringbuf<>::setbuf: 
7705           remove the temporary __string_type object,
7706           remove the unnecessary dynymic_cast in the return value,
7707           change the type of the returned value from __streambuf_type*
7708           to basic_stringbuf<_CharT, _Traits, _Alloc>*.
7709
7710 1999-05-25  Phil Edwards  <pedwards@ball.com>
7711
7712         * bits/std_streambuf.h (streambuf::setbuf): Always return streambuf*. 
7713
7714 1999-04-25  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7715
7716         * bits/std_cmath.h: Tweak. Add float versions of the math functions
7717         in <math.h>.  <cmath> still incomplete and incorrekt.
7718
7719 1999-05-24  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7720
7721         * mknumeric_limits (LDFLAGS): set appropriate link flags.
7722         
7723 1999-05-23  Phil Edwards  <pedwards@ball.com>
7724
7725         * docs/17_intro/howto.html:  Added links to text docs,
7726         e.g., BUGS. 
7727         * docs/21_strings/howto.html:  Updated sections and links.
7728         * docs/21_strings/{gotw29a.txt,stringtok_h.txt}:  Added.
7729         * docs/faq/index.html:  Updated what-works for sixth
7730         snapshot. Also a number of "internal" links have been
7731         fixed, now that the web pages are the docs directory...
7732         * docs/faq/index.txt: Regenerated.
7733         
7734 1999-05-21   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7735
7736         * bits/basic_string.h: Add Nathan's documentation on the string class.
7737
7738         * testsuite/27_io/ios_members_static.cc: New file, for testing
7739         ios_base::sync_with_stdio.
7740
7741 1999-05-21   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7742
7743         * bits/std_locale.h: Simplify includes.
7744         * bits/loccore.h: Delete.
7745         * bits/localefwd.h: Renamed, trimmed.
7746         * bits/locfacets.h: Delete.
7747         * bits/locale_facets.h: Rename, expanded.
7748         * bits/loccore.tcc: Deleted.
7749         * bits/locfacets.tcc: Deleted.
7750         * bits/locale_facets.tcc: Resultant merge.
7751         * bits/std_fstream.h: Modify include.
7752         * bits/ostream.tcc: Same.
7753         * bits/istream.tcc: Same.
7754
7755         * src/locale-inst.cc: And here.
7756         * src/locale.cc: Ditto. 
7757         * src/Makefile.am: Updated.
7758         * src/Makefile.in: Rengenerated.
7759
7760         * bits/std_istream.h: Move istream::sentry ctor definition.
7761         * bits/istream.tcc: Move istream::sentry ctor here.
7762         Add more detailed locale include here for ctype member functions.
7763         * bits/ostream.tcc (std): And here.
7764
7765         * bits/sbuf_iter.h: Include std_streambuf.h
7766
7767         * bits/locfacets.h: Start separating this into a localeimp.h file.
7768         * bits/loccore.h: Start separating this into a localefwd.h file.
7769         Add std_climits for CHAR_BIT.
7770         
7771         * bits/ios_base.h (ios_base::sync_with_stdio): Stub in.
7772
7773         * bits/char_traits.h: Tweak.
7774
7775         * bits/ios_base.h: Remove INT_MAX, use 1<<16.
7776
7777         * bits/std_ostream.h: Remove c++config.h include.
7778         * bits/std_istream.h: Same.
7779         * bits/std_streambuf.h: Same.
7780         * bits/std_fstream.h: Same.
7781         * bits/std_sstream.h: And here.
7782         
7783         * bits/std_iosfwd.h: Add _G_RESOLVE_LIB_DEFECTS here for streampos.
7784         * bits/char_traits.h: Add include of std_cwchar.h for mbstate_t.
7785         * bits/fpos.h: Tweak, format.
7786
7787         * std/ciso646: New file.
7788         * bits/std_ciso646.h: New file.
7789         * src/Makefile.am (std_headers): Add ciso646.
7790         (headers): Add bits/std_ciso646.h.
7791         * src/Makefile.in: Regenerate.
7792         * testsuite/17_intro/header_ciso646.cc: New file, disable
7793         equivalance tests.
7794         
7795         * bits/fpos.h: Remove libio.h include.
7796         * bits/basic_file.h: And here.
7797         * bits/std_ios.h: Put here.
7798
7799         * src/ios.cc: Simplify includes, tweak.
7800         * bits/std_ios.h: Simplify include order. 
7801         * bits/ios_base.h: Modify ios_base::failure.
7802
7803         * stl/bits/std_numeric.h: Change include from stl_iterator to
7804         std_iterator.
7805         
7806 1999-05-19  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7807
7808         * std/iostream: Remove static member __ioint.
7809         * bits/std_iostream.h: Put here.
7810
7811         * stl/bits/std_numeric.h: Remove unneccessary std_iostream.h include.
7812         * stl/bits/stl_algobase.h: Same.
7813         * testsuite/27_io/iostream_objects.cc: Regression tests.
7814         * testsuite/27_io/hello.cc: Remove, subset of above.
7815         
7816 1999-05-19  Phil Edwards  <pedwards@ball.com>
7817         
7818         * docs/index.html: Tweak, update.
7819
7820 1999-05-18  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7821
7822         * docs/17_intro/RELEASE-NOTES: remove outdated
7823         documentation about numeric_limits. Correct CXXINCLUDE setting
7824         documentation.
7825
7826 1999-05-18  Phil Edwards  <pedwards@ball.com>
7827
7828         * docs/{17_intro,18_support,19_diagnostics,20_util,21_strings,
7829           22_locale,23_containers,24_iterators,25_algorithms,26_numerics,
7830           27_io}/howto.html:  Created, with some initial entries.
7831         * docs/faq/index.html:  Fixed some links.
7832         * docs/faq/index.txt:  Regenerated.
7833
7834 1999-05-18  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7835
7836         * bits/c++config.h (__GLIBCPP__): Set version to 19990518.
7837
7838         * docs/17_intro/RELEASE-NOTES: Update.
7839         * docs/index.html: Correct link to mailing list help page, update News.
7840         * docs/faq/index.html: Change fifth to sixth for snapshot.
7841         
7842         * src/Makefile.am (myinstallheaders): Bring over Gaby's changes to
7843         install $(top_builddir)/bits/std_limits.h into
7844         $(myincludepfx)/bits. This was mistakenly omitted from yesterday's
7845         Makefile.am changes.
7846         * *Makefile*: Regenerate using automake.
7847
7848         * mkcheck (LOG_FILE): Fix filebuf directory oddness.
7849         * testsuite/27_io/filebuf.cc: Same.
7850
7851 1999-05-18  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7852
7853         * docs/17_intro/CHECKLIST: update.
7854         * docs/17_intro/TODO: update.
7855
7856 1999-05-17  Phil Edwards  <pedwards@ball.com>
7857
7858         * docs/{17_intro,18_support,19_diagnostics,20_util,21_strings,
7859           22_locale,23_containers,24_iterators,25_algorithms,26_numerics,
7860           27_io}/howto.html:  Created, with some initial entries.
7861         * docs/faq/index.html:  Fixed some links.
7862         * docs/faq/index.txt:  Regenerated.
7863         
7864 1999-05-17  Benjamin Kosnik  <bkoz@unhappy.cygnus.com>
7865
7866         * src/Makefile.am (myinstallheaders): Missed removing missing.h. 
7867         * Makefile.in*: Regenerate.
7868
7869 1999-05-17  Benjamin Kosnik  <bkoz@happy.cygnus.com>
7870
7871         * bits/std_streambuf.h: Same.
7872
7873         * bits/loccore.h (_Bad_use_facet): Remove bits warned about.
7874         * bits/locfacets.h (std): Same.
7875         * bits/sstream.tcc: Same.
7876         * testsuite/27_io/stringstream.cc: Tweak.
7877
7878         * testsuite/27_io/filebuf.cc: Adjust.
7879         * testsuite/21_strings/capacity.cc (test01): Add more
7880         string::reserve tests.
7881
7882         * bits/c++config.h: Remove broken CCTYPE.
7883         * bits/std_cctype.h: Tweak, remove de-macroization, enable
7884         sequestered topper implementation.      
7885         * bits/std_cwctype.h: Same.
7886         
7887         * bits/missing.h: Remove.
7888         * bits/std_locale.h: Remove missing.h include.
7889         
7890         * stl/bits/std_bitset.h (bitset::bitset(string): Tweak to compile.
7891         
7892         * src/Makefile.am (headers): Add bits/std_cwctype.h.
7893         INCLUDES: Add top_builddir. 
7894         * src/Makefile.in: Regenerate.
7895
7896         * Makefile.am: Add check and check-install as new targets.
7897         * testsuite/make_check_libfree++: Move to. . .
7898         * mkcheck: Here.
7899         * configure.in: Tweak versions.
7900         * mknumeric_limits: Set paths correctly.
7901         
7902 1999-05-17  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7903         
7904         * src/Makefile.in (myinstallheaders): add rule to install
7905         std_limits.h. 
7906         
7907         * bits/slice.h (class slice): don't const-qualify data members
7908         since the copy and assignment operator is implicitly used. The
7909         valarray specification is definitively a bad one.
7910         
7911         * Makefile.in (generate-limits-sources): fix typo.
7912         
7913         * docs/text/TODO: update.
7914         * docs/text/CHECKLIST: update.
7915
7916         * bits/gslice.h (gslice): fix bugglet.
7917         (gslice::gslice): set _M_index_size to 0 whenever given lengths
7918         (lj) of size zero.
7919
7920         * src/Makefile.am (libstdc___la_SOURCES): add gen-num-limits.
7921         * src/Makefile.in (libstdc___la_SOURCES): keep in sync.
7922         [Note: **/Makefile.in should be generated from the corresponding
7923         Makefile.am.  The current situation is a litte chaotic.  ]
7924
7925 1999-05-16 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7926
7927         * mknumeric_limits: tweak.
7928
7929         * Makefile.in (all): add target generate-limits-sources.
7930         (generate-limits-sources): make a directory bits/ in top_builddir
7931         where the generated std_limits.h is put; generate limitsMEMBERs.cc
7932         directly under $(top_builddir)/src. Remains to put the appropriate
7933         rule for installing std_limits.h.
7934         
7935         * src/Makefile.in (headers): remove bits/std_limits.h to this list.
7936         (INCLUDES): add -I$(top_builddir) for bits/std_limits.h which is
7937         now generated at build-time in the build directory
7938         (libstdc___la_SOURCES): remove limitsMEMBERS.cc form this list
7939         * src/Makefile.am: reflect changes in src/Makefile.in
7940
7941 1999-05-12  Phil Edwards  <pedwards@ball.com>
7942
7943         * docs/faq/index.html: Add more entries (5.4,5.5), finish
7944         all but one empty entry.  Add links for HOWTOs, but no files yet.
7945         (Corrected HOWTO links are for bkoz's new scheme.)
7946         * docs/faq/index.txt: Regenerated.
7947         
7948 1999-05-12  Benjamin Kosnik  <bkoz@happy.cygnus.com>
7949
7950         * testsuite/17_intro/headers.cc: New file.
7951         * stl/bits/std_queue.h: Change stl_bvector.h include path.
7952         * bits/std_cwctype.h: New file.
7953         
7954         * testsuite/27_io/filebuf.cc: Need to tweak directory structure.
7955
7956 1999-05-11  Benjamin Kosnik  <bkoz@loony.cygnus.com>
7957
7958         * stl/bits/stl_config.h (__USE_MALLOC): Change underlying allocator.
7959         Check __USE_MALLOC before defining specializations containing
7960         __default_alloc_template.
7961         * src/stl-inst.cc: Here too.
7962
7963         * bits/basic_string.h: Change.
7964
7965         * testsuite/make_check_libfree++: More tweaks.
7966         * testsuite/21/capacity.cc: New file.
7967         
7968         * src/string.cc: Rename to be consistent with other inst files. 
7969         Rename to string-inst.cc.
7970         * src/string*.cc: Change include.
7971         * src/wstring.cc: Rename to wstring-inst.cc.
7972         * src/wstring*.cc: Ditto.
7973         * src/Makefile.in: Also here.
7974         * src/Makefile.am: Ditto.
7975
7976         * src/traits.cc: Remove.
7977         * src/wtraits.cc: Same.
7978
7979         Try a new way of organizing documentation, one with synchronicity
7980         between testsuites and docs subdirectories, and see who yelps.
7981         * docs/html: Remove, use chapter and subject specific directories
7982         instead of forcing things immediately into format of
7983         documentation.
7984         * docs/text: Same.
7985         * docs/image: Same.
7986         * docs/faq/text, docs/faq/html: Remove, put in the docs/faq
7987         directory and sort by filename and extension.
7988         * docs/17_intro, 18_support, 19_diagnostics, 20_util, 21_strings,
7989         22_locale, 23_containers, 24_iterators, 25_algorithms,
7990         26_numerics, 27_io: Add.
7991         * docs/17_intro/*: Populate with all the text files. . .
7992         * docs/index.html: Construct.
7993         
7994         * testsuite/*: Update with same names as the docs subdir.
7995         * testsuite/results: Where to stash conformance results for the
7996         different snapshots, so that progress/size/speed issues can be
7997         tracked over time.
7998         
7999 1999-05-10  Benjamin Kosnik  <bkoz@loony.cygnus.com>
8000         
8001         * src/string.cc: Add _S_copy_chars instantiation, as well as
8002         string::binary operators !=, ==, etc.
8003
8004         * src/Makefile.am (CXXFLAGS): Remove -fvtable-thunks.
8005         * src/Makefile.in (CXXFLAGS): Same here.
8006         * testsuite/make_check_libfree++ (CXX_FLAG): And here.
8007         
8008 1999-05-07  Benjamin Kosnik  <bkoz@cygnus.com>
8009
8010         * src/string.cc:  Add missing member functions to instantiation list.
8011
8012 1999-05-07  Benjamin Kosnik  <bkoz@cygnus.com>
8013
8014         * src/misc-inst.cc: Remove unused string instantiations.
8015
8016         * bits/string.tcc: Tweak, fix.
8017         * bits/basic_string.h: Format. Fix reported error with c_str().
8018
8019         * testsuite/make_check_libfree++: Tweak for shared builds.
8020         * testsuite/21/operations.cc: New file for testing c_str() etc.
8021
8022 1999-05-06  Benjamin Kosnik  <bkoz@cygnus.com>
8023             Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
8024
8025         * stl/bits/stl_vector.h: Fix the code of vector<> for usage with
8026         an iterator class.  Delineate pointer versus iterator differences
8027         in implementation.
8028         * 23/vector_capacity.cc: New file, tests for above.
8029         
8030 1999-05-06 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8031
8032         * mknumeric_limits: Fix typo. 'unsigned lont' should read
8033         'unsigned long'.
8034         * src/Makefile.am (libstdc___la_SOURCES): add limitsMEMBERS.cc,
8035         generated by mknumeric_limits to the list. Now std_limits.h is
8036         basically working. 
8037         * src/Makefile.in (generate-numeric-limits): new target to handle
8038         automatic generation of bits/std_limits.h and src/limitsMEMBERS.cc.
8039         (all): add target generate-numeric-limits.
8040         (libstdc___la_OBJECTS): add limitsMEMBERS.lo
8041         (libstdc___la_SOURCES): add limitsMEMBERS.cc
8042
8043 1999-05-05  Benjamin Kosnik  <bkoz@cygnus.com>
8044
8045         Irix build issues.
8046         * bits/c++config.h (_G_USE_CTYPE_ISBIT): Defines new macro for
8047         mask values in ctype_base. Move hacks for _ISBit to locfacets.h.
8048         * bits/locfacts.h: Here.
8049
8050 1999-05-05  Benjamin Kosnik  <bkoz@cygnus.com>
8051             Ulrich Drepper <drepper@cygnus.com> 
8052
8053         Solaris build issues.
8054         * bits/c++config.h: Define new macros, _G_USE_STRTOF and
8055         _G_USE_STRTOLD.
8056         
8057         * bits/locfacets.tcc (num_get::do_get): Tweak long double and
8058         float overloads to use the above macros. Account for the lack of
8059         strtold on some systems, and revert back to using sscanf.
8060
8061 1999-05-04  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
8062
8063         * bits/locfacets.tcc (num_get::do_get): Check the errno variable.
8064         Use strtoul/strtoull for unsigned types.  Check the ranges for
8065         short/unsigned short and if necessary for int/unsigned int.
8066
8067 1999-05-04  Benjamin Kosnik  <bkoz@cygnus.com>
8068
8069         * src/gen-num-limits.cc (round_style): Need to use mknumericlimits
8070         to generate bits/std_limits.h now, as the SGI std_limits.h is
8071         being depricated. Not done, but should be done immediately: need
8072         to make sure this script is run as part of the configuration
8073         process, because without it "make" in a configured build directory
8074         will fail. Also tweaked: added a space for float_round_style, and
8075         used static_cast of zero to default-initialize, which should be ok
8076         according to the standard. (see 8.5 p5 and 20.1.3).
8077         * mknumeric_limits (OUT_C): Need this for x86 long
8078         double extensions.
8079         
8080         * bits/basic_file.h: Include libio.h, not libioP.h.
8081         * src/basic_file.cc: And add libioP.h include here, so that
8082         _IO_init, et. al are well-declared.
8083
8084         * testsuite/make_check_libfree++ (LIB_PATH): Test installed
8085         headers, not source directory headers.
8086
8087         * src/Makefile.am (headers): Add stl_range_errors.h, also adjust
8088         for ext/*.  Also add basic_file.h.
8089         * src/Makefile.in (headers): Same.
8090         
8091         * bits/std_string.h: Reduce dependencies for faster
8092         pre-processing. Move istream and ostream specific defines into
8093         istream.tcc and ostream.tcc respectively.
8094         * bits/string.tcc: And here.
8095         * bits/basic_string.h: Move getline inline out-of-line, and to
8096         istream.tcc.
8097         * bits/istream.tcc: Move string::getline and operator>> here.
8098         * bits/ostream.tcc: And here too.
8099
8100         * bits/utility.h: Remove, as clashes with a standard header. Put
8101         __OUTOFRANGE and __LENGTHERROR macros into string.tcc for the time
8102         being, until this can be combined with SGI's approach.
8103         * bits/string.tcc: Add macros, as above.
8104         * bits/loccore.h: Add _Count_ones defines.
8105         * bits/std_string.h: And here too.
8106         * bits/std_locale.h: And here.
8107         * bits/std_ios.h: Take out include here.
8108         * src/Makefile.am (headers): Remove utility.h
8109         * src/Makefile.in (headers): Remove utility.h
8110
8111         * stl/bits/*: Update to SGI STL 3.20.
8112         * stl/ext/pthread_alloc: Delete this file.
8113         
8114 1999-05-04 Phil Edwards <pedwards@ball.com>
8115
8116         * docs/faq/html/index.html: Add more entries
8117         * docs/faq/html/index.txt: regenerated.
8118
8119 1999-05-04 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8120
8121         * src/gen-num-limits.cc (DO_DEFINE_MIN_MAX): fix typo.
8122
8123 1999-04-29  Benjamin Kosnik  <bkoz@haight.cygnus.com>
8124
8125         * bits/locfacets.tcc (num_get::do_get): Re-implement, with input
8126         from Ulrich and Nathan. Remove extraneous string class usage,
8127         tweak, clean, simplify and consolidate with a eye towards removing
8128         duplcate code. Use strto[l, ll, f, d, ld] instead of sscanf.
8129         Not done: dealing with leading zeros, wchar_t work.
8130         * bits/locfacets.h: And here too.
8131
8132         * doc: Remove.
8133         
8134 1999-04-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8135
8136         * docs/: add a FAQ.
8137         * docs/faq/: New directory.
8138         * docs/faq/html/: Likewise.
8139         * docs/faq/text/: Likewise.
8140         * docs/faq/html/index.html: New file.
8141         * docs/faq/html/index.txt: Likewise. Generated from 
8142         docs/faq/html/index.html by lynx.
8143
8144 1999-04-28  Benjamin Kosnik  <bkoz@happy.cygnus.com>
8145             Ryszard Kabatek and Branko Cibej 
8146
8147         * bits/locfacets.tcc: Modify.
8148
8149 1999-04-27  Benjamin Kosnik  <bkoz@happy.cygnus.com>
8150
8151         * bits/sbuf_iter.h: Clean, fix istreambuf_iterator, make
8152         conformant to 14882, wrap non-standard extensions with
8153         _G_RESOLVE_LIB_DEFECTS, remove detritus and cruft, rennovate.
8154         * bits/locfacets.tcc (num_get::do_get(bool)): Return correct iterator.
8155         
8156         * testsuite/27/istringstream_formatted.cc: Add tests.
8157         
8158         * bits/locfacets.h: Remove cruft from _Format_cache, continue
8159         commenting, simplify.
8160         * bits/locfacets.tcc: Same.
8161
8162         1999-04-27  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
8163         * bits/locfacets.tcc (num_get::do_get):
8164         Fix the sscanf format parameter 
8165         for long long 'll' (as in C9X) instead of 'l'.
8166         Fix the order of sscanf format parameters: "%dl" --> "%ld".
8167         Change the type of the local variable '__conv' from 'string'
8168         to 'const char*' and adapt the change.
8169         
8170 1999-04-26  Benjamin Kosnik  <bkoz@happy.cygnus.com>
8171
8172         * bits/locfacets.h: Document _Format_cache, and name data members
8173         after the corresponding functions in numpunct. For instance:
8174         _M_grsep -> _M_thousands_sep, and _M_decsep -> _M_decimal_point.
8175         Break apart _M_boolnames{2] into _M_truename and _M_falsename.
8176         * bits/locfacets.tcc: Same.
8177
8178         * bits/locfacets.h (num_get::_M_extract): Don't allow groupings to
8179         stop parsing--store for later analysis.
8180         * testsuite/27/istringstream_formatted.cc: Add cases.
8181         
8182 1999-04-25  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8183
8184         * bits/valarray_meta.h: tweak.
8185         (_UnFunBase, _BinFunBase, _BinFunBase1, _BinFunBase2, _BinBase1,
8186         _BinFunBase2): rename typedef-name _Tp to _Vt to keep the compiler
8187         happy -- boggus warning.
8188         * bits/std_valarray.h: Fix.
8189         (valarray<T>::shift): Fix. Update comment.
8190         (valarray<T>::cshift): Fix. 
8191
8192 1999-04-23  Benjamin Kosnik  <bkoz@cygnus.com>
8193         
8194         * testsuite/27filebuf-2.txt: Delete.
8195         * testsuite/27/filebuf.cc: Put output files directly into the
8196         correct subdirectory (27).
8197
8198         Alexandre Petit-Bianco <apbianco@cygnus.com>
8199         * testsuite/make_check_libfree++: Check generated (*.txt) file
8200         against stored results file (*.tst).
8201
8202 1999-04-22  Benjamin Kosnik  <bkoz@nabi.net>
8203
8204         * bits/locfacets.tcc: Fix.
8205
8206         * bits/fstream.tcc (filebuf::seekoff): Output current out pointer.
8207         (filebuf::overflow): Simplify.
8208         (filebuf::xsputn): Correctly handle indeterminate state.
8209
8210         * testsuite/27/istringstream_formatted.cc: Tweak.
8211         * testsuite/27/filebuf.cc: Tweak.
8212         * testsuite/27/filebuf-3.tst: Correct: this is the canonical
8213         results file, please use this in the future to guarantee filebuf
8214         positioning accuracy.
8215         * testsuite/27/filebuf-2.tst: Same.
8216         
8217 1999-04-21  Benjamin Kosnik  <bkoz@cygnus.com>
8218
8219         * bits/fstream.tcc (filebuf::xsputn): Add.
8220         * bits/std_fstream.h: Declare.
8221         
8222         * src/basic_file.cc (__basic_file::open): Add O_CREAT to open
8223         calls using ios_base::trunc.
8224
8225         * bits/sstream.tcc (streambuf::overflow): Fix crasher.
8226         
8227         * testsuite/make_check_libfree++ (LOG_FILE): Ugh. Another fix.
8228         * testsuite/27/27stringstream.cc: Same.
8229         * testsuite/27/27stringbuf.cc: More tweaks.
8230         * testsuite/27/27filebuf-2.txt: Remove.
8231
8232         * testsuite/27/27filebuf-1.tst: Append, to force byte size over
8233         BUFSIZE so that overflows/underflow can be tested with default
8234         buffer setting.  
8235         * testsuite/27/27filebuf-1.tst: Add.
8236
8237         * testsuite/*/*: Remove pre-pended chapter names, as they
8238         duplicate the chapter info contained in the enclosing directory
8239         anyway.
8240         
8241 1999-04-20  Benjamin Kosnik  <bkoz@cygnus.com>
8242
8243         * bits/streambuf.tcc (streambuf::xsputn): Re-implement to conform
8244         to sputc conditions.
8245
8246         * bits/ios_base.h: Define here.
8247         * src/ios.cc (ios_base::_M_clear): Remove hack.
8248         * bits/basic_ios.h: Fix rdstate().
8249
8250         * bits/sstream.tcc (streambuf::seekoff): Fix.
8251         * bits/fstream.tcc (filebuf::seekoff): Tweak comments.
8252
8253         * testsuite/make_check_libfree++ (LOG_FILE): More c-c-c-changes.
8254         * testsuite/24/24iterator.cc: Add/Fixes for DEBUG_ASSERT.
8255         * testsuite/27/27stringstream.cc: Same. 
8256         * testsuite/27/27stringbuf.cc: Same.
8257         * testsuite/27/27istringstream_formatted.cc: Same.
8258         * testsuite/27/27filebuf.cc: Same.
8259         
8260         * bits/locfacets.h: Remove specializations for messages<char> and
8261         messages<wchar_t> ctors. Same for moneypunct. Not required, not used.
8262         * src/locale.cc: Remove definitions for above.
8263         * src/misc-inst.cc: Revert, take out iomanip.h include. 
8264         * bits/std_iomanip.h: Tweak, format.
8265         
8266 1999-04-19  Benjamin Kosnik  <bkoz@cygnus.com>
8267
8268         * bits/loccore.h: Format, move inline.
8269         * bits/locfacets.tcc: Same.
8270         * bits/locfacets.h: Same.
8271
8272         Ulrich Drepper  <drepper@cygnus.com>
8273         * aclocal.m4: Re-generate.
8274         * configure, configure.in: Same.
8275         * m4/lc_messages.m4: New file.
8276
8277 1999-04-18  Benjamin Kosnik  <bkoz@cygnus.com>
8278
8279         * bits/std_ostream.h: Fix typedef for wchar_t instantiations.
8280         * bits/sstream.tcc: Tweak.
8281
8282         * std/iostream: Put __ioinit inside macro guards.
8283         
8284         * src/stlinst.cc: Delete and move to . . .
8285         * src/stl-inst.cc: New file, plus wrapping in namespace std.
8286         * src/Makefile.in: Change.
8287         * src/Makefile.am: Same.
8288         * src/misc-inst.cc: Add istringstream/ostringstream instantiations.
8289
8290         * testsuite/make_check_libfree++: Efficiently format for minimal
8291         space. Enforce stricter execution tests by enabling
8292         -DDEBUG_ASSERT.
8293         
8294 1999-04-16  Benjamin Kosnik  <bkoz@cygnus.com>
8295
8296         * docs/text/RELEASE-NOTES: Fix include typo.
8297
8298         * src/Makefile.am (headers): Add istream.tcc. 
8299         * src/Makefile.in (headers): Add istream.tcc. 
8300
8301         * ltconfig, ltmain.sh, libtool: Update to libtool-1.2g.
8302         
8303 1999-04-16  Benjamin Kosnik  <bkoz@cygnus.com>
8304
8305         * bits/locfacets.tcc (num_get::do_get(long)): Finish roughing in.
8306         * bits/locfacets.h (num_get::_M_extract): New functin:
8307         consolidate logic for do_get(...) members.
8308
8309         * bits/sbuf_iter.h (istreambuf_iterator::operator++()): Fix.
8310         * testsuite/27/27istringstream_formatted.cc: Add.
8311
8312 1999-04-16  Martin v. Loewis  <martin@mira.isdn.cs.tu-berlin.de>
8313
8314         * src/basic_file.cc (__basic_file::open): Fix thinko in
8315         _G_HAVE_IO_FILE_OPEN bits.
8316         * bits/std_istream.h (sentry::sentry(istream, bool)): Fix isspace bug.
8317         * bits/std_cmath.h: Add stdlib.h include for ldiv_t.
8318         * src/complex.cc (FCT): Qualify all functions with global namespace.
8319         * src/locale.cc: Don't qualify memcpy and setlocale.
8320         * src/stdexcept.cc (__out_of_range): Qualify out_of_range with std::.
8321         (__length_error): Likewise, for length_error.
8322         * src/stlinst.cc: Qualify instantiations with std::.
8323
8324 1999-04-15   Benjamin Kosnik  <bkoz@cygnus.com>
8325
8326         * C++STYLE: Add ChangeLog guidelines for member functions.
8327
8328         * doc/* : Delete.  
8329         * BADNAMES, BUGS, C++STYLE, CHECKLIST, COPYING,
8330         DESIGN, HEADER_POLICY, PROBLEMS, RELEASE-NOTES, TODO: Moved into
8331         docs/text and made less strident.
8332         
8333         * bits/fstream.tcc: Change non-standard ctor to match Sun's sematics.
8334         * bits/std_fstream.h: Same.
8335         * src/ios.cc: Same.
8336
8337         * bits/locfacets.h: Touch. 
8338         
8339 1999-04-15  Ulrich Drepper  <drepper@cygnus.com>
8340
8341         * math/cexp.c (cexp): Use NAN instead of nan("").
8342         Reported by joel reed <joelreed@yahoo.com>.
8343
8344         * libio/libioP.h: Define _IO_seek_fpos_t and _IO_seek_off_t based on
8345         _G_IO_IO_FILE_VERSION.  Use these types in the prototypes.
8346         * libio/fileops.c: Use _IO_seek_fpos_t and _IO_seek_off_t types
8347         instead of #if cascades.
8348         * libio/genops.c: Likewise.
8349         * libio/ioseekoff.c: Likewise.
8350         * libio/ioseekpos.c: Likewise.
8351         * libio/strops.c: Likewise.
8352         Patch by Chip Salzenberg <chip@perlsupport.com>.
8353
8354 1999-04-15  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8355
8356         * docs: New directory.
8357         * docs/html: Likewise.
8358         * docs/text: Likewise.
8359         * docs/image: Likewise.
8360
8361         * bits/std_cmath.h: Add new functions.
8362         (abs): overload for long and double.
8363         (div): overload for long.
8364
8365         * bits/valarray_array.h: Fix.
8366         * bits/gslice.h: Adjust friend.
8367         * bits/slice_array.h: likewise.
8368         * bits/valarray_meta.h: likewise.
8369
8370 1999-04-13   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
8371
8372         * bits/locfacets.h: More changes, for num_get for insertion
8373         operators for integral types. Comment fields in _Format_cache.
8374         * bits/locfacets.tcc: And here too: add preliminary long version.
8375         * testsuite/27/27istringstream_formatted.cc: Add cases.
8376
8377 1999-04-13   Mark Elbrecht  <snowball3@usa.net>
8378
8379         * configure.in: Add locale.h to AC_CHECK_HEADERS argument. Call
8380         AC_LC_MESSAGES macro.
8381         * aclocal.m4 (AC_LC_MESSAGES): New. Determines if a target
8382         supports LC_MESSAGES.
8383         * config.h.in: Add entry for HAVE_LC_MESSAGES.
8384         * src/locale.cc (locale::_S_normalize_category): Use the
8385         HAVE_LC_MESSAGES macro to check for LC_MESSAGES support instead of
8386         _G_NO_CLOCALE_HAS_MESSAGES.
8387         * aclocal.m4 (AM_PROG_LD): For DOS style paths, simplify test to
8388         '?:' from '?:\\' so any path beginning with a drive name matches.
8389
8390 1999-04-12   Mark Elbrecht  <snowball3@usa.net>
8391
8392         * src/basic_file.cc(sys_open) [O_BINARY]: Declare __testb.
8393
8394 1999-04-12   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
8395
8396         * bits/locfacets.h: Tweak.
8397         * bits/locfacets.tcc(do_get): Clean/fix bool method.
8398
8399         * testsuite/21/21nonmember.cc: Same.
8400         * testsuite/21/21compare.cc: Fix license.
8401         * testsuite/27/27istringstream_formatted.cc: New file.
8402
8403 1999-04-12  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8404
8405         * bits/valarray_meta.h: _BinFunBase1, _BinFunBase2, _BinBase1,
8406         _BinBase2: new template classes; put in there to work around a
8407         compiler limitation. The whole valarray architecture is now
8408         working.
8409
8410 1999-04-08  Benjamin Kosnik  <bkoz@haight.constant.com>
8411
8412         * bits/locfacets.tcc: Fix, format.
8413         * bits/locfacets.h: Fix.
8414         * src/locale.cc: Same, plus format.
8415
8416         * bits/basic_string.h: Re-add definition here.
8417         * src/string.cc: Take out.
8418
8419 1999-04-08  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8420
8421         * bits/std_valarray.h: tweak.
8422         * bits/valarray_array.h tweak. use _Expr.
8423         * bits/slice_array.h: likewise.
8424         * bits/gslice_array.h: likewise.
8425         * bits/mask_array.h: likewise.
8426         * bits/indirect_array.h: likewise.
8427         * bits/valarray_meta.h: tweak.
8428         _UnFunBase, _UnFunClos, _BinFunBase, _FunBase, _ValFunClos,
8429         _RefFunClos, _UnBase, _UnClos, _BinBase, _BinClos, _SClos, _GClos,
8430         _IClos: new template classes.
8431         _Meta: renamed to _Expr. Made template with args.
8432         _Constant: made template with two args.
8433
8434 1999-04-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8435
8436         * bits/valarray_array.h: tweak.
8437
8438 1999-04-06  Benjamin Kosnik  <bkoz@cygnus.com>
8439
8440         * bits/basic_string.h: Whoops--fix blip.
8441
8442 1999-04-06  Benjamin Kosnik  <bkoz@cygnus.com>
8443
8444         Update to SGI STL 3.13
8445         * bits/basic_string.h: Add __get_c_string definition.
8446         * stl/bits/stl_range_errors.h: New file.
8447         * stl/bits/std_bvector.h: Same.
8448         * stl/bits/*: Update.
8449
8450 1999-04-04 1999  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8451
8452         * bits/slice_array.h: tweak.
8453         * bits/gslice_array.h: tweak.
8454         * bits/mask_array.h: tweak.
8455         * bits/indirect_array.h: tweak.
8456         * bits/valarray_array.h: tweak.
8457         (__valarray_copy): replace copy with memcpy.
8458         * bits/std_valarray.h: use __valarray_copy whenever possible.
8459         use __valarray_fill instead of fill.
8460
8461 1999-04-02  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8462
8463         * src/gen-num-limits.cc: new file
8464         * mknumeric_limits: Ditto.
8465
8466 1999-03-30  Benjamin Kosnik  <bkoz@cygnus.com>
8467
8468         * bits/locfacets.tcc: Do a stub version of num_get for short, int,
8469         and long types.
8470         * bits/locfacets.h: Add num_get::get methods overloaded for int
8471         and short, to resolve ambiguous overloads in istream insertion
8472         operators.
8473
8474 1999-03-30  Benjamin Kosnik  <bkoz@cygnus.com>
8475
8476         * bits/std_istream.h: Fix.
8477         * bits/istream.tcc: Fix.
8478
8479 1999-03-30  Philip Martin  <pm@corris.dircon.co.uk>
8480
8481         * testsuite/24/24iterator.cc: fix ++/-- tests
8482
8483 1999-03-29  Benjamin Kosnik  <bkoz@cygnus.com>
8484
8485         * bits/std_ostream.h: Looks like this, actually: Fix up eh-isms.
8486         * bits/ostream.tcc: Same.
8487
8488         * bits/std_istream.h: Bring over ostream changes, implement member
8489         functions. Baseline.
8490         * bits/istream.tcc: New file.
8491
8492 1999-03-26  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8493
8494         * bits/gslice.h (class gslice): fix friends template.
8495
8496 1999-03-23  Benjamin Kosnik  <bkoz@cygnus.com>
8497
8498         * bits/std_ostream.h: Fix sentry objects, implement seekp, tellp,
8499         delete cruft, etc.
8500         * bits/ostream.tcc: Same.
8501
8502         * bits/std_istream.h: Minor tweaks.
8503
8504 1999-03-18  Benjamin Kosnik  <bkoz@cygnus.com>
8505
8506         * src/locale-inst.cc: Remove duplicate instantiations.
8507         * bits/locfacets.tcc: Tweak definitions of static member.
8508
8509 1999-03-18  Benjamin Kosnik  <bkoz@cygnus.com>
8510
8511         * bits/std_fstream.h: Format: prepend "__" in front of
8512         non-standard typedefs.
8513         * bits/fstream.tcc: Match.
8514         * bits/std_streambuf.h: Format: prepend "__" in front of
8515         non-standard typedefs.
8516
8517         * bits/sstream.tcc: Match.
8518         * bits/std_istream.h: Format.
8519         * src/locale-inst.cc: Add num_get instantiations.
8520
8521         * bits/std_sstream.h: Fix crash in stringstreams. Remove member
8522         _M_sb, a basic_stringbuf object, and use the basic_ios pointer
8523         _M_streambuf instead. Make initializations sane. Fix
8524         allocation/deallocation of _M_streambuf.
8525         * bits/std_ostream.h: Fix initialization code.
8526         (ctor): Eliminate redundant this->init(), let base class initialize.
8527         (default ctor): New. Assume base classes already initialzed.
8528         * bits/std_istream.h: Parallel work to ostream.
8529         (ctor): Eliminate redundant this->init(), let base class initialize.
8530         (default ctor): New. Assume base classes already initialzed.
8531         Fix initialization of basic_iostream.
8532
8533         * bits/std_fstream.h: While we're at it, make initializations sane
8534         here too. Now matches sstream.h.
8535
8536         * bits/string.tcc: Fix crash in basic_string::compare.
8537         * bits/basic_string.h: And here.
8538         * bits/c++config.h: Add comment about _G_USE_EXCEPTIONS.
8539
8540         * testsuite/make_check_libfree++: Check shared as well.
8541         * testsuite/27/27stringstream.cc: Add bits.
8542         * testsuite/27/27boolfmt.cc: Add bits.
8543         * testsuite/27/27octfmt.cc: Add bits.
8544
8545 1999-03-17  Benjamin Kosnik  <bkoz@happy.cygnus.com>
8546
8547         * configure.in (USE_LONG_DOUBLE): signbitl link error.
8548
8549         * bits/locfacets.h: Fix errors that cause build problems
8550         with current egcs (template parameters have class scope).
8551         * bits/locfacets.tcc: Same.
8552         * src/locale-inst.cc: Same, clean.
8553         * src/misc-inst.cc: Same, clean.
8554
8555 1999-03-17  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
8556
8557         * stl/bits/std_memory.h:  Modify auto_ptr::reset to reflect the
8558         standard. Re-apply this previous patch.
8559
8560 1999-03-17  Philip Martin  <pm@corris.dircon.co.uk>
8561
8562         * bits/basic_string.h: Use __normal_iterator<> for iterators.
8563         * bits/std_sstream.h: Support __normal_iterator<> iterators.
8564         * bits/string.tcc: Ditto.
8565         * src/misc-inst.cc: Ditto.
8566         * src/locale-inst.cc: Ditto.
8567         * stl/bits/stl_iterator.h: Add __normal_iterator<>.
8568         * stl/bits/stl_vector.h: Use __normal_iterator<> for iterators.
8569         * testsuite/24/24iterator.cc: Add test cases for basic_string and
8570         vector iterators.
8571
8572 1999-03-16  Benjamin Kosnik  <bkoz@cygnus.com>
8573
8574         * bits/locfacets.tcc: Remove macro hack.
8575         * bits/locfacets.h: Tweaks.
8576         * src/misc-inst.cc: Weed out locale-related instantiations.
8577         * src/locale-inst.cc: Same.
8578
8579         * RELEASE-NOTES: Make more changes.
8580         * bits/c++config.h: Bump version number.
8581
8582         * testsuite/make_check_libfree++: Collect diagnostics.
8583
8584         * bits/std_ostream.h: Fix ostream initialization/destruction
8585         problem, related to dtor cleanup and new cached facets, agggggggh.
8586         * bits/ostream.tcc: Tweak.
8587         * bits/locfacets.h: Remove all friends of iostream classes.
8588         * bits/ios_base.h: Same.
8589         * bits/streambuf.tcc: Tweak.
8590         * bits/std_streambuf.h: Tweak.
8591         * bits/std_fstream.h: Tweak.
8592         * bits/fstream.tcc: Tweak.
8593         * src/stdstreams.cc: Tweak.
8594         * src/ios.cc: Close streams.
8595
8596         * math/Makefile.in: Add missing files for shared link errors.
8597         * math/Makefile.am: Same.
8598
8599 1999-03-15  Benjamin Kosnik  <bkoz@cygnus.com>
8600
8601         * src/locale-inst.cc: More wchar_t instantiations.
8602         * src/misc-inst.cc: Missed a few bits.
8603         * testsuite/make_check_libfree++: Add static and shared runs.
8604         * src/ios.cc: Add clarity to ios_base::Init::~Init().
8605
8606 1999-03-15  Benjamin Kosnik  <bkoz@cygnus.com>
8607
8608         * bits/std_ostream.h: Format, expunge, simplify. Add cached
8609         facets. Resolve link errors.
8610         * bits/ostream.tcc: Same.
8611         * src/misc-inst.cc: Add ostream, wostream instantiations.
8612         * src/Makefile.am: Add missing bits for stdstreams.cc.
8613         * src/Makefile.in: Same.
8614         * bits/std_iosfwd.h: Format.
8615         * bits/locfacets.h (num_put): Add basic_ostream as a friend to
8616         num_put so that cached _M_fnumput pointer can be deleted in
8617         basic_ostream's dtor. Now everybody plays nice.
8618
8619 1999-03-12  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
8620
8621         * bits/gslice.h (class gslice): Make friends valarray,
8622         gslice_array and _GliceExpression.
8623
8624 1999-03-11  Benjamin Kosnik  <bkoz@cygnus.com>
8625
8626         * RELEASE-NOTES: Update.
8627         * src/ios.cc: Use do proper init.
8628         * bits/std_streambuf.h: Tweak.
8629         * bits/std_iostream.h: Take out static member.
8630         * std/iostream: Put here.
8631         * bits/std_ostream.h: Non-default ctor shouldn't smash _M_streambuf.
8632         * bits/std_istream.h: Ditto.
8633         * bits/basic_ios.h: Format.
8634         * bits/ostream.tcc(write): Fix.
8635         * bits/fstream.tcc: Fix stdstreams ctor to do a proper
8636         initialization of the fstream class.
8637         * src/stdstreams.cc: I'm baaaaaaaack.
8638
8639 1999-03-10  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
8640
8641         * bits/ios_base.h: Correct comments. Add ios_base::init()
8642         functionality. Format, tweak, expunge, clean, bathe, and hang to dry.
8643         * src/misc-inst.cc: Add instantiations here.
8644         * src/ios.cc: Clean.
8645         * bits/std_iostream.h: Add wrappers, global ios_base::Init object.
8646         * src/stdstreams.cc: Delete this file, as now unnecessary.
8647         * bits/fstream.tcc: Add missing initialization bits for ctor.
8648         * src/Makefile.am (libstdc___la_SOURCES): Delete here as well.
8649         * src/Makefile.in (libstdc___la_OBJECTS): And here.
8650
8651         * bits/streambuf.tcc: Tweak.
8652         * bits/sstream.tcc: Here too.
8653
8654         * bits/fstream.tcc: And change definition as well.
8655         * bits/std_fstream.h: Change ctor.
8656         * src/basic_file.cc (sys_open): Add call that opens a specific fileno.
8657         * bits/basic_file.h: Add declarations.
8658
8659         * testsuite/27/27hello.cc: New file.
8660
8661         * bits/std_ostream.h: Move flush() inline.
8662         * bits/ostream.tcc: From here.
8663
8664         * bits/char_traits.h: Add include of fpos.h for streamoff/streampos.
8665         * bits/std_ios.h: Change include libio to only when necessary.
8666         * bits/fpos.h: Like here.
8667         * ios_base.h: And here.
8668
8669         * bits/locfacets.h: Change _Iostate to _Ios_Iostate.
8670         * bits/locfacets.tcc: Same.
8671         * bits/std_locale.h: Include std_ios.h not std_iosfwd.h.
8672         * bits/std_iosfwd.h: Move _Ios_Iostate to ios_base.h
8673
8674 1999-03-09  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
8675
8676         * bits/basic_ios.h: Change _M_ctype to _M_fctype.
8677
8678         * bits/std_streambuf.h: Clean, tweak.
8679         * bits/std_fstream.h: Same.
8680         * bits/std_sstream.h: Same.
8681         * bits/streambuf.tcc: Move most member functions out-of-line.
8682         * bits/fstream.tcc: Same.
8683         * bits/streambuf.tcc: Same.
8684
8685         * bits/basic_file.h(filepos_cur): Set correctly.
8686         (filepos_beg): Same.
8687         (seekpos): Change to __c_streampos.
8688         * src/basic_file.cc (std): Change to __c_streampos.
8689
8690         * testsuite/27/27filebuf.cc: Round one is finished.
8691         * testsuite/27/27filebuf-2.tst: New file, final output should match.
8692         * testsuite/27/27filebuf-3.tst: Same.
8693
8694 1999-03-08  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
8695
8696         * bits/basic_file.h: Fix typo, add comments about what to expect
8697         from the various member functions in __basic_file.
8698
8699         * bits/std_fstream.h: Re-do sync/underflow to work
8700         together. Change from sys_read to xsgetn and from sys_write to
8701         xsputn. As it should have been from the beginning. . .
8702
8703 1999-03-06  Benjamin Kosnik  <bkoz@haight.constant.com>
8704
8705         * bits/c++config.h (__GLIBCPP__): Add versioning macro.
8706
8707         * bits/basic_file.h(file_beg): New function.
8708         (file_cur): Ditto.
8709
8710         * testsuite/27/27filebuf.cc: Test in, out, in | out.
8711         * bits/std_fstream.h: More _M_mode refinements.
8712         (synch): Add bits for out mode only.
8713         * bits/std_streambuf.h(xsputn): Correct for filebufs.
8714         * bits/std_sstream.h: Ditto.
8715
8716 1999-03-03  Benjamin Kosnik  <bkoz@cygnus.com>
8717
8718         * bits/std_fstream.h: Fix _M_mode AND with ios_base::openmode.
8719         * testsuite/27/27filebuf.cc: Modify.
8720         * bits/c++config.h: Fix.
8721
8722 1999-03-02  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
8723
8724         * bits/c++config.h: New macro, _G_RESOLVE_LIB_DEFECTS, used to put
8725         code in place that diverges from the final standard, but has been
8726         brought up on the library mailing list.
8727
8728         * bits/std_fstream.h(underflow): Position all three internal
8729         buffer pointers at the same initial position. Re-implement with
8730         basic_filebuf abstraction.
8731         (overflow): Ditto.
8732         (seekoff): Ditto.
8733         (seekpos): Ditto.
8734         * bits/std_sstream.h: Move _M_mode down into base class
8735         basic_streambuf.
8736         * bits/sstream.tcc: Ditto.
8737         * bits/std_streambuf.h: Ditto.
8738
8739         * testsuite/27/27filebuf.cc: Tweak.
8740
8741 1999-02-27  Benjamin Kosnik  <bkoz@slap-happy.cygnus.com>
8742
8743         * bits/std_sstream.h: Ditto.
8744         * bits/std_fstream.h: Fix blip.
8745
8746 1999-02-26  Benjamin Kosnik  <bkoz@happy.cygnus.com>
8747
8748         * C++STYLE: Add cases.
8749         * bits/std_fstream.h: Format.
8750         * bits/std_streambuf.h: Ditto.
8751         * bits/std_sstream.h: Ditto.
8752
8753         * src/basic_file.cc(sys_seek): Fix stack delirium, by keeping
8754         return type for _IO_file_seek and __basic_file::seek the same size.
8755         * bits/basic_file.h: Ditto.
8756
8757 1999-02-26  Benjamin Kosnik  <bkoz@happy.cygnus.com>
8758
8759         * bits/fstream.tcc: Add include guards.
8760         * src/misc-inst.cc: Add instantiations for shared libes.
8761         * src/locale-inst.cc: Add instantiaions for use_facet.
8762         * bits/loccore.h: Remove specialization foward decls for
8763         use_facet<ctype>: perhaps add the whole lot of them later on.
8764         * bits/std_fstream.h: Fix.
8765         * bits/locfacets.h: Ditto.
8766         * src/stdstreams.cc: Disable wide streams for now.
8767
8768         * src/Makefile.am (CXXFLAGS): Change up.
8769         * src/Makefile.in (CXXFLAGS): Ditto.
8770
8771 1999-02-25  Benjamin Kosnik  <bkoz@happy.cygnus.com>
8772
8773         * src/basic_file.cc: Change to ios_base::seekdir from int.
8774         * bits/basic_file.h: Ditto.
8775         * bits/locfacets.h : Fix blip with new guard macros.
8776
8777 1999-02-25  Benjamin Kosnik  <bkoz@cygnus.com>
8778
8779         * stl/bits/stl_config.h (__STL_USE_STD_ALLOCATORS): Minor tweaking.
8780         * bits/c++config.h: Clean. Remove _G_NO_STREAMBUF_ITERATORS and
8781         _G_USE_NAMESPACE.
8782         * amm1/locale: Remove unused defines.
8783         * generic/locale: Ditto.
8784         * src/ios.cc: Ditto.
8785         * src/locale.cc: Ditto.
8786         * src/locale-inst.cc: Ditto.
8787         * src/localename.cc: Ditto.
8788         * src/stdstreams.cc: And here.
8789
8790         * bits/c++config.h (_G_USE_WCHAR_T): Fix.
8791         * bits/loccore.h: Simplify, clean, add wchar_t guards.
8792         * bits/loccore.tcc: Ditto.
8793         * bits/locfacets.h: Ditto.
8794         * src/locale-inst.cc: Ditto.
8795         * bits/locfacets.tcc: Add do_put long long here.
8796
8797 1999-02-24  Benjamin Kosnik  <bkoz@cygnus.com>
8798
8799         * bits/std_streambuf.h: Add cached ctype facet, _M_ctype.
8800         * bits/basic_ios.h: Clean. Replace _M_strbuf with
8801         _M_streambuf. Use cached _M_cvt in basic_streambuf.
8802         * bits/std_istream.h: Replace _M_strbuf with _M_streambuf.
8803         * bits/std_fstream.h: Tweak.
8804
8805         * bits/char_traits.h: Remove fpos definitions from here. . .
8806         * bits/fpos.h: New file, put them here. Eventually, this may allow
8807         the severing of char_traits and fpos dependencies.
8808         * src/Makefile.in: Add fpos.h.
8809         * src/Makefile.am: Ditto.
8810         * bits/std_string.h: Add fpos.h include here.
8811         * bits/std_ios.h: And here.
8812
8813         * bits/std_streambuf.h: Change _M_init to _M_initialized.
8814         * bits/ios_base.h: Remove cstdio include.
8815         * bits/std_ios.h: ... Place here.
8816
8817 1999-02-23  Benjamin Kosnik  <bkoz@loony.cygnus.com>
8818
8819         * src/Makefile.in (CXXFLAGS): Re-add -fvtable-thunks.
8820         * src/Makefile.am (CXXFLAGS): Re-add -fvtable-thunks.
8821
8822         * bits/basic_file.h: Comment, adjust arguments.
8823         * src/basic_file.cc: Ditto.
8824
8825         * bits/std_fstream.h(seekoff): Error is of fpos type, not integral
8826         type: check and convert accordingly. Re-interpet "resultant stream
8827         position" to indicate external byte sequence location, not internal
8828         buffer info.
8829
8830 1999-02-22  Benjamin Kosnik  <bkoz@loony.cygnus.com>
8831
8832         * mkcshadow: And change copyright here.
8833         * src/Makefile.am (CXXFLAGS): Add -g -O2. Add new header
8834         dependencies for stl_pthread_alloc.h, pthread_allocimpl.h,
8835         stl_thread.h, and stl_iterator_base.h.
8836         * src/Makefile.in (CXXFLAGS): Ditto.
8837         * stl/backward/pthread_alloc.h: Remove.
8838
8839 1999-02-19  Benjamin Kosnik  <bkoz@loony.cygnus.com>
8840
8841         * bits/std_streambuf.h (sungetc): Use standard defs for putback
8842         position.
8843         * bits/std_fstream.h (pbackfail): Correct.
8844         (sungetc): Test.
8845         (seekoff): Implement.
8846         (seekpos): Re-do.
8847         * testsuite/27/27filebuf.cc: Add test cases.
8848
8849 1999-02-18  Benjamin Kosnik  <bkoz@loony.cygnus.com>
8850
8851         * bits/std_fstream.h: Go with basic_file's interfaces for dealing
8852         with the external buffers, and stop mucking around with setting
8853         and re-setting the external buf's pointers. Aka, clarity and
8854         simplicity rule the day.
8855         * src/locale.cc: Use memcpy in codecvt::do_in and codecvt::do_out.
8856         Remove partial result and support code.
8857
8858 1999-02-18  Ulrich Drepper  <drepper@cygnus.com>
8859
8860         * configure.in: Add hypot, hypotf, atan2f, expf, and copysignf to
8861         list of function which have to be replaced.
8862         Remove expf from list of functions to test for.
8863         Define USE_LONG_DOUBLE in case the libm has partial support for long
8864         doubles.
8865         * Makefile.in: Regenerated.
8866         * config.h.in: Likewise.
8867         * configure: Likewise.
8868         * libio/Makefile.am (LIBIO_SRCS): Add missing backslash.
8869         * libio/Makefile.in: Regenerated.
8870         * src/Makefile.in: Regenerated.
8871         * string/Makefile.in: Regenerated.
8872         * math/Makefile.am (EXTRA_DIST): Add hypot.c, hypotf.c, hypotl.c,
8873         atan2f.c, expf.c, and $(EXTRA_yes).
8874         (EXTRA_yes): Add signbitl.c mycabsl.c.
8875         (libmath_la_LIBADD): Add $(EXTRA_$(USE_LONG_DOUBLE)).
8876         (libmath_la_SOURCES): remove long double versions.
8877         * math/Makefile.in: Regnerated.
8878         * math/atan2f.c: New file.
8879         * math/copysignf.c: New file.
8880         * math/expf.c: New file.
8881         * math/hypot.c: New file.
8882         * math/hypotf.c: New file.
8883         * math/hypotl.c: New file.
8884         * math/cargf.c: Use correct function and macro names.
8885         * math/ccos.c: Likewise.
8886         * math/ccosh.c: Likewise.
8887         * math/ccoshf.c: Likewise.
8888         * math/ccoshl.c: Likewise.
8889         * math/cexp.c: Likewise.
8890         * math/cexpf.c: Likewise.
8891         * math/cexpl.c: Likewise.
8892         * math/clog.c: Likewise.
8893         * math/clog10.c: Likewise.
8894         * math/clog10f.c: Likewise.
8895         * math/clog10l.c: Likewise.
8896         * math/clogf.c: Likewise.
8897         * math/clogl.c: Likewise.
8898         * math/copysignf.c: Likewise.
8899         * math/csin.c: Likewise.
8900         * math/csinf.c: Likewise.
8901         * math/csinh.c: Likewise.
8902         * math/csinhf.c: Likewise.
8903         * math/csinhl.c: Likewise.
8904         * math/csinl.c: Likewise.
8905         * math/csqrt.c: Likewise.
8906         * math/csqrtf.c: Likewise.
8907         * math/csqrtl.c: Likewise.
8908         * math/ctan.c: Likewise.
8909         * math/ctanf.c: Likewise.
8910         * math/ctanh.c: Likewise.
8911         * math/ctanhf.c: Likewise.
8912         * math/ctanhl.c: Likewise.
8913         * math/ctanl.c: Likewise.
8914
8915 1999-02-17  Benjamin Kosnik  <bkoz@cygnus.com>
8916
8917         * testsuite/27/27filebuf.cc: Add cases.
8918         * testsuite/27/27filebuf-1.txt: Remove inadvertent garbage.
8919         * bits/std_streambuf.h: Simplify, always have one return statement.
8920         * bits/std_fstream.h: Tweak comments in underflow.
8921
8922 1999-02-17  Ulrich Drepper  <drepper@cygnus.com>
8923
8924         * ltmain.sh: Update from libtool 1.2d and fix Solaris problems.
8925         * ltconfig: Likewise.
8926
8927 1999-02-16  Christophe Pierret  <cpierret@businessobjects.com>
8928
8929         * src/locale.cc: Fix assert.
8930
8931 1999-02-16  Benjamin Kosnik  <bkoz@cygnus.com>
8932
8933         FIXME: Still need some kind of solution for undefined math symbols.
8934         * src/Makefile.in (locale-inst.lo): Compile with
8935         -fimplicit-templates to fix Solaris link problem.
8936         * src/Makefile.am: Ditto.
8937         * libio/Makefile.in: Add stdfiles.c so that _IO_list_all is defined.
8938         * libio/Makefile.am: Ditto.
8939         * src/locale.cc: Provide some kind of def for _S_tolower.
8940         * bits/locfacets.h: Fix declarations of ctype<wchar_t> to
8941         match ctype<char> for _S_tolower, _S_toupper, _S_table.
8942
8943 1999-02-10  Benjamin Kosnik  <bkoz@cygnus.com>
8944
8945         * bits/loccore.tcc: Move member-template ctor inline...
8946         * bits/loccore.h: ...here.
8947         * src/locale-inst.cc: Add instantiation here.
8948
8949         * testsuite/27/27stringstream.cc: Tweak.
8950
8951         * bits/ostream.tcc: Include sbuf_iter.h.
8952
8953         * bits/ostream.tcc: Convert *this to ostreambuf_iterator before
8954         passing to num_put, as num_put's first argument is an interator,
8955         not basic_ostream.
8956
8957         * testsuite/make_check_libfree++: New file, runs through the
8958         existing test files in the testsuite directory and makes sure
8959         they link.
8960
8961 1999-02-10  Brendan Kehoe  <brendan@cygnus.com>
8962
8963         * testsuite/21/21compare.cc: Fix typo.
8964         * src/locale.cc (ctype<wchar_t>::_S_{toupper,tolower,table}):
8965         Don't try to provide non-linux versions, since it's impossible to
8966         initialize their const references with the integer 0, no matter
8967         how we try to cast it.
8968
8969 1999-02-10  Benjamin Kosnik  <bkoz@cygnus.com>
8970
8971         * bits/std_locale.h: Move std_vector.h dependency.
8972         * bits/std_ios.h: ...from here.
8973         * bits/std_string.h: ...and here.
8974         * src/locale.cc: ..to here.
8975         * bits/loccore.h: Ditto, add vector forward declaration,
8976         make locale::_Impl data members pointers not containers.
8977         * bits/loccore.tcc: Move out-of-line for now.
8978         * bits/locfacets.h: Move vector dependency from here...
8979         * bits/locfacets.tcc: ...to here.
8980         * src/localename.cc: ..and here.
8981         * src/locale-inst.cc: Add include of locfacets.tcc here.
8982
8983         * stl/bits/stl_string_fwd.h: Make __get_c_string non-static.
8984         * bits/basic_string.h: Can't use sizeof on an incomplete type.
8985         * bits/string.tcc: Tweak.
8986         * src/string.cc: And add __get_c_string def here.
8987
8988         * bits/std_fstream.h: Yeah, comment the fill_n idea out as impractical.
8989
8990         * src/stlinst.cc: Add include of stl_config.h.
8991
8992 1999-02-09  Benjamin Kosnik  <bkoz@cygnus.com>
8993
8994         * stl/bits/std_bitset.h: Update to SGI STL 3.12.
8995         * stl/bits/stl_config.h: Tweak, update.
8996         * stl/bits/std_stdexcept.h: Ditto, change stl_exception to
8997         std_exception.
8998         * stl/bits/std_memory.h: Reconstructed auto_ptr, Ditto.
8999         * stl/bits/std_functional.h: Ditto.
9000
9001         * stl/bits/stl_string.h: New file, SGI's string
9002         implementation. For reference only, corresponding to string in
9003         3.12 source.
9004         * stl/bits/stl_char_traits.h: As above.
9005
9006         * stl/bits/pthread_allocimpl.h: New file corresponding to
9007         pthread_alloc.
9008         * stl/bits/stl_pthread_alloc.h: New file corresponding to
9009         pthread_alloc.h
9010         * stl/bits/stl_threads.h: New file.
9011
9012         Note that SGI STL 3.12's file iterator.h is not used.
9013         * stl/bits/std_iterator.h: Ditto.
9014         * stl/bits/stl_iterator.h: Drop in replace.
9015         * stl/bits/stl_iterator_base.h: New file, drop in replace.
9016
9017         * stl/bits/stl_queue.h, stl_rope.h, stl_set.h, stl_stack.h,
9018         stl_string_fwd.h, stl_tempbuf.h, stl_tree.h, stl_vector.h,
9019         stl_pair.h, stl_multimap.h, stl_multiset.h, stl_list.h,
9020         stl_hashtable.h, stl_hash_set.h, stl_hash_map.h, stl_function.h,
9021         stl_deque.h, stl_alloc.h, stl_algo.h, stl_algobase.h, ropeimpl.h:
9022         Drop-in replace (ie, stop changing __SGI_STL_* to _CPP_BITS_* for
9023         preprocessor guards, but fixup include paths and names according
9024         to new directory layout).
9025
9026 1999-02-05  Benjamin Kosnik  <bkoz@cygnus.com>
9027
9028         * bits/std_fstream.h: Remove _M_open data member.
9029         * bits/fstream.tcc: Ditto.
9030
9031         * src/locale.cc: Tweak.
9032
9033         * bits/std_sstream.h: Simplify.
9034
9035         * bits/std_streambuf.h: Simplify.
9036         (sputc): Use correct definition of "write area."
9037
9038         * bits/std_fstream.h: Fix uflow.
9039         * src/basic_file.cc: Tweak.
9040         * testsuite/27/27filebuf.cc: Add tests.
9041         * testsuite/27/27filebuf-3.txt: Rename to *-2.txt.
9042
9043 1999-02-02  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
9044
9045         * bits/ios_base.h: Make protected.
9046
9047 1999-02-01  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
9048
9049         * bits/ios_base.h: Changes in the class ios_base:
9050         Rename _M_exceptions member to _M_exceptions_data.
9051         Make the member functions rdstate(), clear(), exceptions()
9052         and exceptions(iostate) protected and add the "_M_" prefix.
9053         * src/ios.cc: Ditto.
9054         * bits/basic_ios.h: Adapt the changes from ios_base.
9055
9056 1999-01-29  Benjamin Kosnik  <bkoz@cygnus.com>
9057
9058         * bits/std_fstream.h: Remove _M_flags, _M_equilibrate  as unnecessary.
9059         * bits/fstream.tcc: Ditto.
9060
9061         * bits/std_fstream.h (underflow): Resize deallocates memory and
9062         resets pointers in the internal cache according to new _M_buf. . dooh!
9063         * src/locale.cc: Mas changes with codecvt::do_in, do_out.
9064
9065 1999-01-29  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
9066
9067         * stl/bits/std_memory.h:  Modify auto_ptr::reset to reflect the
9068         standard.
9069
9070 1999-01-28  Benjamin Kosnik  <bkoz@cygnus.com>
9071
9072         * src/locale.cc (codecvt::do_in): Finer-grained tuning to take
9073         into account partial returns.
9074         (codecvt::do_out): Likewise.
9075
9076         * bits/char_traits.h: Change streamsize to be a signed type, as
9077         required by 27.4.1 Types p 2. (Changing to _IO_ssize_t.)
9078         * bits/std_streambuf.h: Make
9079         in_avail() and showmanyc() have streamsize as return types, so
9080         that showmanyc()'s return of eof won't underflow in_avail's return
9081         value and give a bogus result.
9082         * src/misc-inst.cc: And more changes. . .
9083
9084         * bits/std_streambuf.h (basic_streambuf): Add _M_buf_unified to keep
9085         track of joint in/out pointers into the internal buffer.
9086         (sbumpc): Add check for _M_buf_unified.
9087         (sputbackc): Ditto.
9088         (sungetc): Ditto.
9089
9090         * testsuite/27/27filebuf.cc: Add cases.
9091         * testsuite/27/27stringbuf.cc: Add showmanyc case.
9092
9093         * bits/std_fstream.h (close): Fix logic error.
9094         (open): Initialize internal pointers based on _M_buf and _M_buf_size.
9095         (showmanyc): Add underflow component, to match the standard.
9096
9097         * bits/fstream.tcc: Ditto.
9098
9099 1999-01-27  Benjamin Kosnik  <bkoz@cygnus.com>
9100
9101         * bits/basic_file.h: Match vtables w/ _IO_FILE_plus.
9102         * src/basic_file.cc: Ditto.
9103         * src/Makefile.in: Add -fvtable-thunks to CXXFLAGS: preferred
9104         format for dealing with _IO_file in libio.
9105
9106 1999-01-27  Ulrich Drepper  <drepper@cygnus.com>
9107
9108         * src/basic_file.cc: Include fcntl.h.
9109
9110 1999-01-27  Benjamin Kosnik  <bkoz@cygnus.com>
9111
9112         * libio/Makefile.in: Add fileops.lo, genops.lo to objects to debug
9113         libio calls.
9114         * bits/std_streambuf.h: Redefine read posion.
9115
9116         * bits/std_fstream.h: Temporary hack to get vtables working again.
9117         * bits/basic_file.h: Revert.
9118         * src/basic_file.cc: Ditto.
9119         * testsuite/27/27filebuf.cc: Tweak.
9120
9121 1999-01-26  Benjamin Kosnik  <bkoz@cygnus.com>
9122
9123         * bits/basic_file.h: Add showmanyc, underflow. .
9124         * src/basic_file.cc: Ditto.
9125
9126         * bits/std_fstream.h (showmanyc): Add bits to ping libio to see if more
9127         chars can be read.
9128
9129         * testsuite/27/27filebuf.cc: Add testcases.
9130         * src/basic_file.cc: Add O_CREAT to open calls with
9131         ios_base::trunc as part of the open mode.
9132
9133 1999-01-26  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
9134
9135         * bits/basic_ios.h: fix basic_ios::exceptions(iostate)
9136
9137 1999-01-25  Benjamin Kosnik  <bkoz@nabi.net>
9138
9139         * src/ios.cc (clear): Correct typo.
9140         * bits/ios_base.h: Tweak spacing.
9141
9142 1999-01-25  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
9143
9144         * bits/basic_ios.h: fix basic_ios::fail()
9145
9146 1999-01-25  Benjamin Kosnik  <bkoz@loony.cygnus.com>
9147
9148         * bits/basic_file.h: Include libioP.h from libio instead of here.
9149         * bits/iolibio.h: Remove.
9150         * bits/libio.h: Remove.
9151
9152 1999-01-22  Benjamin Kosnik  <bkoz@lunatic.cygnus.com>
9153
9154         * bits/std_fstream.h: Tweak cvt-> in call for newer egcs compilers.
9155
9156 1999-01-22  Ulrich Drepper  <drepper@cygnus.com>
9157
9158         * Makefile.am (SUBDIRS): Add libio.
9159         * configure.in: Add rule to test for glibc2.
9160
9161         * src/Makefile.am (INCLUDES): Add -I to libio subdir.
9162         (libstdc___la_LIBADD): Add libio.la.
9163
9164 1999-01-21  Benjamin Kosnik  <bkoz@cygnus.com>
9165
9166         * bits/basic_file.h: Make new abstraction for underlying C library
9167         FILE, named __basic_file.
9168         * src/basic_file.cc: New file.
9169         * bits/os_raw.h: Delete.
9170         * src/os_raw.cc: Delete.
9171         * src/Makefile.in: Tweak.
9172         * src/Makefile.am: Tweak.
9173         * bits/iolibio.h: Add this here, for the time being.
9174         * bits/libioP.h: Ditto.
9175
9176         * bits/ios_base.h: Delete unused defines.
9177         * src/locale.cc (codecvt<char, char, mbstate_t>::do_in): Use
9178         strcpy to copy between the two buffers.
9179
9180         * testsuite/27/27stringbuf.cc: Change license, fix in_avail tests.
9181         * testsuite/27/27filebuf.cc: New file.
9182         * testsuite/27/27filebuf-1.txt: Data file for above test.
9183         * testsuite/27/27filebuf-2.txt: Ditto.
9184
9185         * bits/std_streambuf.h (uflow): Re-implement default.
9186         * bits/std_fstream.h: Set _M_buf_size based on cstdio's BUFSIZ.
9187         Re-implement virtual functions.
9188         * bits/fstream.tcc: Delete unused mf's.
9189
9190 1998-12-31  Benjamin Kosnik  <bkoz@lunatic.cygnus.com>
9191
9192         * bits/fstream.tcc: Add fstream ctor for cin/cout/etc.
9193         * bits/std_fstream.h: Ditto.
9194         * src/stdstreams.cc: Ditto.
9195
9196         * math/cpowl.c: Fix header typo with last change.
9197
9198 1998-12-31  Benjamin Kosnik  <bkoz@loony.cygnus.com>
9199
9200         * COPYING: New file (GPL v 2).
9201         * LICENSE.STD: Remove.
9202         * ./*: Change license.
9203
9204 1998-12-30  Benjamin Kosnik  <bkoz@haight.constant.com>
9205
9206         * bits/std_streambuf.h (std): Remove static on _M_init.
9207         * bits/streambuf.tcc (std): Ditto.
9208
9209         * bits/std_fstream.h: Add changes as discussed with Nathan, including
9210         state_type and codecvt_type members, the allocation of an internal
9211         buffer, the streamlined codecvt calls, etc.
9212
9213 1998-12-21  Benjamin Kosnik  <bkoz@haight.constant.com>
9214
9215         * bits/std_sstream.h: Tweak.
9216         * bits/fstream.tcc: Remove unused stubs.
9217         * bits/std_fstream.h: Tweak.
9218
9219 1998-12-17  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
9220
9221         * bits/std_streambuf.h: Move _IO_file_flags into basic_filebuf.
9222         Remove unused _IO_* members, possibly put into filebuf, which may
9223         need them.
9224         * bits/std_fstream.h: Add _M_flag.
9225         * bits/sbuf_iter.h: Tweak.
9226
9227         * bits/std_cstdio.h: Add SEEK_SET, SEEK_END, SEEK_CUR.
9228         * bits/ios_base.h: Use.
9229
9230         * src/stdstreams.cc: Modify to reflect standard ctors for
9231         filebuf.
9232         * src/misc-inst.cc: Ditto.
9233
9234         * bits/os_raw.h: Wrap in std namespace. Model parameters on
9235         underlying C library calls instead of the underlying unix
9236         filesystem.
9237         * src/os_raw.cc (_S_os_open): Use fopen, and compute a mode
9238         string as per p.659.
9239         (_S_os_close): Model on fopen.
9240         (_S_os_read): Model on fread.
9241         (_S_os_write): Model on fwrite.
9242         (_S_os_seek): Model on fseek.
9243
9244         * bits/ios_base.h: Tweak.
9245         * bits/std_iosfwd.h: Wrap libio.h include with extern "C".
9246         * bits/std_sstream.h: Tweak.
9247         * bits/sstream.tcc: Remove old, uncalled code.
9248         * bits/std_fstream.h: Major reconstruction.
9249         * bits/fstream.tcc: Disable for the time being.
9250
9251 1998-12-11  Benjamin Kosnik  <bkoz@haight.constant.com>
9252
9253         * bits/basic_string.h: Fix insert method.
9254         * stl/bits/stl_iterator.h: Remove previous hack.
9255         * bits/std_streambuf.h (sbumpc): Correct increment/return oddness.
9256         * bits/std_sstream.h: Fix more regressions.
9257         * testsuite/27/27stringbuf.C: Add (almost) complete tests.
9258
9259 1998-12-09 Benjamin Kosnik  <bkoz@loony.cygnus.com>
9260
9261         * bits/basic_string.h: Tweak.
9262
9263         * stl/bits/stl_iterator.h: Specialize iterator_traits for int so
9264         that string::append can be instantiated. HACK--checkin
9265         basic_string::iterator class.
9266
9267 1998-12-07  Benjamin Kosnik  <bkoz@haight.constant.com>
9268
9269         * bits/std_sstream.h: Tweak.
9270         * bits/sstream.tcc: Tweak ctors.
9271
9272         FIXME invalid friend defs. . WHERE ARE THEY??
9273
9274         * bits/sbuf_iter.h (istreambuf_iterator::equal): Change to new
9275         names for basic_streambuf data members.
9276
9277         * bits/std_streambuf.h: Add getloc() initialization bits.
9278         basic_streambuf(): Initialize with global locale data.
9279         imbue(): Set _M_init.
9280
9281         * bits/std_streambuf.h(seekoff, seekpos): Complete with invalid
9282         stream pos == pos_type(off_type(-1)).
9283         in_avail(): Complete default implementation.
9284         snextc, sbumpc, sputbackc, sungetc, sputc, setg, xsputn,
9285         underflow, uflow, xsgetn, showmany, sync: Ditto.
9286
9287         * bits/std_streambuf.h: _M_snextc_helper(): Remove.
9288
9289         * bits/streambuf.tcc (sputbackc): Temporarily remove, need to
9290         re-populate with in-line member functions that are too big.  Add
9291         initialization for _M_init.
9292
9293 1998-12-03  Benjamin Kosnik  <bkoz@cygnus.com>
9294
9295         * bits/sstream.tcc: Convert _Allocator to _Alloc.  Add typedefs
9296         for basic_string and basic_streambuf. Scope _IO_buf_* pointers to
9297         streambuf_type.
9298
9299         * src/stdstreams.cc (std): Disable wchar_t instantiations.
9300
9301         * bits/c++config.h (_G_DEPRICATED): Add.
9302         (_G_USE_WCHAR_T): Add.
9303         * bits/std_streambuf.h: Radical reconstruction of basic_streambuf.
9304         Take out _Streambuf_base. Put _IO_FILE data member in basic_filebuf.
9305         * bits/streambuf.tcc (sputbackc): Remove ctor anti-def, Tweak.
9306         * bits/std_fstream.h: Add comment for implementation.
9307         * src/streambuf.cc: Remove.
9308         * src/Makefile.in: Remove streambuf.lo.
9309         * src/misc-inst.cc: Tweak.
9310
9311 1998-12-02  Benjamin Kosnik  <bkoz@cygnus.com>
9312
9313         * bits/std_sstream.h: Add const_cast to rdbuf returns.
9314         * testsuite/27stringstream.C: Modify.
9315
9316 1998-11-25  Benjamin Kosnik  <bkoz@haight.constant.com>
9317
9318         * src/Makefile.in (libstdc___la_OBJECTS): Add streambuf.lo.
9319         (libstdc___la_SOURCES): Ditto.
9320
9321         * bits/streambuf.tcc: Tweak.
9322
9323         * src/streambuf.cc: New file, add out-of-line definitions for
9324         _Streambuf_base.
9325
9326         * src/misc-inst.cc: Remove _Streambuf_base instantiations.
9327         Comment out wchar_t versions of the buffer instantiations, for now.
9328
9329         * bits/std_streambuf.h: Wrap libio.h include with extern "C".
9330         Remove template wrapper around _Streambuf_base.
9331         Move IO_* data members into _Streambuf_base.
9332         Move _Streambuf_base members into streambuf.tcc.
9333
9334         * bits/c++config.h (_G_USE_LIBIO): Enable.
9335
9336 1998-11-02  Nathan Myers <ncm@cantrip.org>
9337
9338         * CHECKLIST: downgrade iterator implementations
9339         * DESIGN: fill out notes about unimplemented features
9340
9341 1998-10-31  Nathan Myers <ncm@cantrip.org>
9342
9343         * CHECKLIST: itemized list of all interfaces, and status of each.
9344
9345 1998-10-30  Nathan Myers  <ncm@cantrip.org>
9346
9347         * RELEASE-NOTES: add notes about optional includes, linking, running
9348         * src/Makefile.am: handle header installs properly
9349         * src/Makefile.in: regenerate from new src/Makefile.am
9350
9351 1998-10-30  Benjamin Kosnik  <bkoz@loony.cygnus.com>
9352
9353         * bits/basic_string.h: Revert npos pending ciso646.
9354         * src/Makefile.am: Revert CXX flags for now.
9355         * src/Makefile.in: Ditto.
9356
9357 1998-10-30  Brendan Kehoe  <brendan@cygnus.com>
9358
9359         * bits/std_sstream.h: Re-order ctors to put base before member
9360         inits.
9361
9362 1998-10-30  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
9363
9364         * stl/bits/std_memory.h: Fix typo.
9365
9366 1998-10-30  Nathan Myers <ncm@cantrip.org>
9367
9368         * src/string[A-Z]+.cc: change back to include "string.cc".
9369         * src/Makefile.am: revert filename changes.  We need a different
9370         way to keep filenames in std/ from confusing Make.
9371         * bits/basic_string.h: define _S_max_size right, return it from
9372         string::max_size(); churn definition of npos again.
9373         * bits/string.tcc: fix _S_frob_size to avoid uint overflow.
9374         * bits/ios.cc: remove #ifdef on ios_base locale member initialization
9375         * BUGS: clear cruft.
9376         * C++STYLE: Touchup for release.
9377         * CHECKLIST: Touchup for release.
9378         * DESIGN: New file.
9379         * LICENSE.STD: Add requirement to retain copyrights and to provide
9380         the license with any copies.
9381         * README: Update for release.
9382         * TODO: Minor touchup for release.
9383         * RELEASE-NOTES: prepare for release
9384
9385 1998-10-29  Ulrich Drepper  <drepper@cygnus.com>
9386
9387         * src/string[A-Z]+.cc: Include stdstring.cc, not string.cc.
9388
9389         * src/Makefile.am (CXXFLAGS): Define _GNU_SOURCE.
9390
9391         * src/Makefile.am (CXXLINK): New variable.  Make sure we don't use
9392         CXX to generate the shared object.
9393
9394         * src/Makefile.am (headers): Remove duplicated char_traits.h.
9395
9396 1998-10-29  Brendan Kehoe  <brendan@cygnus.com>
9397
9398         * bits/basic_string.h (basic_string<>::max_size): Subtract 1, not
9399         2, from npos, solving infinite loop problems.
9400
9401 1998-10-29 18:41  Ulrich Drepper  <drepper@cygnus.com>
9402
9403         * src/Makefile.am: Add rules to install headers.
9404
9405 1998-10-29  Nathan Myers <ncm@cantrip.org>
9406
9407         * bits/std_ostream.h: Remove #ifdef on operator<< for long double
9408         * bits/ostream.tcc:   Remove #ifdef on operator<< for long double
9409         * shadow/libio.h:
9410         * shadow/unistd.h:
9411         * shadow/bits/wrap_libio.h:
9412         * shadow/bits/wrap_unistd.h: New files.
9413
9414 1998-10-29  Brendan Kehoe  <brendan@cygnus.com>
9415
9416         * bits/ostream.tcc (operator<<): Wrap with #ifdef
9417         _G_HAVE_LONG_DOUBLE_IO, to match bits/std_ostream.h.
9418
9419 1998-10-29  Ulrich Drepper  <drepper@cygnus.com>
9420
9421         * src/Makefile.am: Add temporarily rules to make sure misc-inst.cc
9422         is not compiled with -fno-implicit-templates in effect.
9423
9424         * src/Makefile.am (EXTRA_SOURCES): Add string.cc and wstring.cc here.
9425         (libstdc___la_SOURCES): Add all the string*.cc and wstring*.cc files.
9426         * src/stringADDCS.cc: Wrapper around string.cc to define individual
9427         function.
9428         * src/stringADDPS.cc: Likewise.
9429         * src/stringADDSC.cc: Likewise.
9430         * src/stringADDSP.cc: Likewise.
9431         * src/stringADDSS.cc: Likewise.
9432         * src/stringBIST.cc: Likewise.
9433         * src/stringBOST.cc: Likewise.
9434         * src/stringCHTR.cc: Likewise.
9435         * src/stringEQPS.cc: Likewise.
9436         * src/stringEQSP.cc: Likewise.
9437         * src/stringEQSS.cc: Likewise.
9438         * src/stringEXTRA.cc: Likewise.
9439         * src/stringGEPS.cc: Likewise.
9440         * src/stringGESP.cc: Likewise.
9441         * src/stringGESS.cc: Likewise.
9442         * src/stringGETLI.cc: Likewise.
9443         * src/stringGTPS.cc: Likewise.
9444         * src/stringGTSP.cc: Likewise.
9445         * src/stringGTSS.cc: Likewise.
9446         * src/stringINSER.cc: Likewise.
9447         * src/stringLEPS.cc: Likewise.
9448         * src/stringLESP.cc: Likewise.
9449         * src/stringLESS.cc: Likewise.
9450         * src/stringLTPS.cc: Likewise.
9451         * src/stringLTSP.cc: Likewise.
9452         * src/stringLTSS.cc: Likewise.
9453         * src/stringMAIN.cc: Likewise.
9454         * src/stringNEPS.cc: Likewise.
9455         * src/stringNESP.cc: Likewise.
9456         * src/stringNESS.cc: Likewise.
9457         * src/stringSCOPY.cc: Likewise.
9458         * src/wstringADDCS.cc: Wrapper around wstring.cc to define individual
9459         functions.
9460         * src/wstringADDPS.cc: Likewise.
9461         * src/wstringADDSC.cc: Likewise.
9462         * src/wstringADDSP.cc: Likewise.
9463         * src/wstringADDSS.cc: Likewise.
9464         * src/wstringBIST.cc: Likewise.
9465         * src/wstringBOST.cc: Likewise.
9466         * src/wstringCHTR.cc: Likewise.
9467         * src/wstringEQPS.cc: Likewise.
9468         * src/wstringEQSP.cc: Likewise.
9469         * src/wstringEQSS.cc: Likewise.
9470         * src/wstringEXTRA.cc: Likewise.
9471         * src/wstringGEPS.cc: Likewise.
9472         * src/wstringGESP.cc: Likewise.
9473         * src/wstringGESS.cc: Likewise.
9474         * src/wstringGETLI.cc: Likewise.
9475         * src/wstringGTPS.cc: Likewise.
9476         * src/wstringGTSP.cc: Likewise.
9477         * src/wstringGTSS.cc: Likewise.
9478         * src/wstringINSER.cc: Likewise.
9479         * src/wstringLEPS.cc: Likewise.
9480         * src/wstringLESP.cc: Likewise.
9481         * src/wstringLESS.cc: Likewise.
9482         * src/wstringLTPS.cc: Likewise.
9483         * src/wstringLTSP.cc: Likewise.
9484         * src/wstringLTSS.cc: Likewise.
9485         * src/wstringMAIN.cc: Likewise.
9486         * src/wstringNEPS.cc: Likewise.
9487         * src/wstringNESP.cc: Likewise.
9488         * src/wstringNESS.cc: Likewise.
9489         * src/wstringSCOPY.cc: Likewise.
9490         * src/string.cc: Remove now unneeded #defines now.
9491
9492 1998-10-29 Nathan Myers <ncm@cantrip.org>
9493
9494         * bits/locfacets.tcc: Define num_put::put(... const void*), improve
9495         integer formatting.
9496         * bits/ostream.tcc: Delete cruft, rewrite various op<< as members,
9497         add definitions for double, long double, const void*.
9498         * bits/std_ostream.h: Move op<<'s back into class ostream,
9499         define some in-line.
9500         * bits/string.tcc: fix unnecessary-copying bug in op[], typos in
9501         string construction from input iterators that Brendan reported.
9502
9503
9504 1998-10-28  Brendan Kehoe  <brendan@cygnus.com>
9505
9506         * stl/bits/stl_pair.h (op!=, op>, p<=, op>=): Add missing definitions.
9507
9508         * bits/valarray_meta.h (class _Constant): Move declaration to the
9509         top, so the rest of the file can grok it.
9510         (_ApplyBinaryFunction::operator[]): Add missing parenthesis.
9511
9512         * bits/std_sstream.h (basic_ostringstream::str): Fix typo of extra
9513         semicolon.
9514         (basic_stringstream::str, both instances): Likewise.
9515
9516 1998-10-28 Nathan Myers <ncm@cantrip.org>
9517
9518         * bits/locfacets.h: fix num_put<>::falsename()
9519         * bits/locfacets.tcc: fix _Format_cache<>::_M_populate bool name init
9520         * testsuite/27/27octfmt.C, testsuite/27/27octfmt.C: new tests
9521         * bits/locfacets.tcc: touch up _S_group_digits.
9522         * src/misc-inst.cc: adjust _S_group_digits insts to match.
9523
9524 1998-10-27 Nathan Myers <ncm@cantrip.org>
9525
9526         * stl/bits/stl_config.h: Turn off long long support, for now.
9527         * src/locale-inst.cc: Instantiate num_put<> only for
9528         ostreambuf_iterator, num_get only for istreambuf_iterator.
9529         * src/misc-inst.cc: Delete duplicate locale-related instantiations,
9530         add lots of new instantiations for num_put support function templates;
9531         remove junk about __match_parallel for ostreambuf_iterator.
9532
9533 1998-10-27 Nathan Myers <ncm@cantrip.org>
9534
9535         * bits/locfacets.tcc: Make num_put's digit grouping work.
9536         * bits/string.tcc: More uglification.
9537         * src/ios.cc: initialize format cache right
9538
9539 1998-10-26 Nathan Myers <ncm@cantrip.org>
9540
9541         * bits/basic_string.h: Uglify more names.
9542         * bits/fstream.tcc: Rewrite some filebut output handling.
9543         * bits/ios_base.h: Cosmetic.
9544         * bits/locfacets.h: Changes to _Format_cache for support of num_put.
9545         Also, specialize its default ctor for optimal default case.
9546         #ifdef out "long long" prototypes for now.
9547         * bits/locfacets.tcc: Do complete, optimized num_put<>::do_put
9548         implementation for integer types.  (Still needs optimized
9549         std::copy() applied to ostreambuf_iterator to be optimal.)
9550         * bits/ostream.tcc: Write operator<< for long, bool types.
9551         Make other operators<< non-members, per spec.  (Many still
9552         not implemented.)  Identify those that fail to create a sentry.
9553         * bits/sbuf_iter: Cosmetic.
9554         * bits/std_fstream.h: Add some filebuf members.
9555         * bits/std_locale.h: Include <limits> for use in bits/locfacets.h
9556         * bits/std_ostream.h: Make member operators<< global, per spec.
9557         (Should do the same in std_istream.h.)
9558         * bits/std_string.h: Include <limits> for use in bits/locfacets.h
9559         * bits/string.tcc: Uglify names
9560         * shadow/bits/std_cstdlib.h: Optimize std::div and std::ldiv.
9561         * src/ios.cc: Specialize _Format_cache<> for char and wchar_t,
9562         for optimal default behavior.
9563
9564 1998-10-26  Benjamin Kosnik  <bkoz@loony.cygnus.com>
9565
9566         * src/Makefile.in (libstdc___la_SOURCES): Add misc-inst.cc again.
9567
9568 1998-10-21 Nathan Myers <ncm@cantrip.org>
9569
9570         * src/locale.cc: make ctype operations actually work for glibc
9571         * CHECKLIST: add a comprehensive (i.e. huge) implementation
9572         checklist of stdlib facilities.  Not filled in yet.
9573
9574 1998-10-20 Nathan Myers <ncm@cantrip.org>
9575
9576         * bits/string.tcc: fix patching NULs on string ends.
9577
9578 1998-10-19 Nathan Myers <ncm@cantrip.org>
9579
9580         * bits/std_iosfwd.h: eliminate "basic_" prefix on streambuf
9581         iterator forward declarations
9582         * bits/sbuf_iter.h: eliminate default template argument definitions
9583         on streambuf iterators (rely on <iosfwd> decls).
9584         * TODO: add note about lazy facet construction
9585         * bits/basic_ios.h: hit operator void* again.  This should be the
9586         last time we need to touch it.
9587         * bits/basic_ios.h: copyfmt now returns *this.
9588         * bits/basic_string.h: fix npos again.  npos cannot be defined as zero.
9589         * bits/basic_string.h: put back overloaded constructors; adjust
9590         behavior for default allocator on copy constructor.
9591         * bits/char_traits.h: make not_eof return correct type.
9592         * bits/loccore.h: remove call to bits/std_stdexcept.h; subincludes
9593         cannot be in non-standard headers or we get include loops (bad)
9594         * bits/loccore.h: delete ifdef'd out workarounds for old compiler bugs.
9595         * bits/loccore.h: add apparatus to support lazy construction of
9596         facets.
9597         * bits/locfacets.tcc: Uglify names in __match_parallel decl.
9598         * bits/std_ios.h: add include of <typeinfo> to get bad_cast for
9599         locale use_facet<> failure.
9600         * bits/std_locale.h: same.
9601         * bits/std_string.h: same.
9602         * bits/std_stdexcept.h: change exception member __msg from a
9603         reference to a regular object.
9604         * bits/string.tcc: add pasting a NUL on the end of strings after
9605         each operation. We had already left room for it, but previously
9606         plugged it only on a call to c_str(), but the WG changed the
9607         requirement when I wasn't looking.  (Can't leave them alone for
9608         a second without they break something else.)
9609         * bits/valarray_meta.h: add Gaby's changes from 981018.
9610         * src/locale.cc: add new type _Bad_use_facet to be thrown on
9611         failure of use_facet<>().
9612         * src/stdexcept.cc: remove pragma, remove bkoz's #if 0,
9613         comment out leftover member definitions
9614
9615 1998-10-16  Ulrich Drepper  <drepper@cygnus.com>
9616
9617         * string/Makefile.am: Revert last change.
9618         * math/Makefile.am: Likewise.
9619
9620 1998-10-15  Benjamin Kosnik  <bkoz@haight.constant.com>
9621
9622         * bits/std_sstream.h: Fix typo.
9623
9624 1998-10-15  Benjamin Kosnik  <bkoz@haight.constant.com>
9625
9626         * src/Makefile.am (libstdc___la_SOURCES): Add misc-inst.cc.
9627
9628         * bits/std_sstream.h: Add typedefs, member definitions. Clean.
9629         * bits/std_stdexcept.h: Remove.
9630
9631 1998-10-15  Benjamin Kosnik  <bkoz@haight.constant.com>
9632
9633         * src/misc-inst.cc: Tweak again.
9634
9635         * bits/std_sstream.h: Move out-of-line definitions to sstream.tcc.
9636         * bits/sstream.tcc: New file.
9637
9638 1998-10-15  Ulrich Drepper  <drepper@cygnus.com>
9639
9640         * configure.in: Test for machine/param.h, sys/machine.h and fp.h.
9641         Don't run AC_C_BIGENDIAN if machine/param.h or sys/machine.h are
9642         available.
9643
9644         * math/mathconf.h: Include sys/machine.h, machine/param.h and fp.h
9645         if available.
9646         (INFINITE_P): Use IS_INF macro if available.
9647
9648 1998-10-15  Ulrich Drepper  <drepper@cygnus.com>
9649
9650         * math/Makefile.am (EXTRA_LTLIBRARIES): Renamed from
9651         noinst_LTLIBRARIES.
9652         * string/Makefile.am: Likewise.
9653
9654 1998-10-15  Ulrich Drepper  <drepper@cygnus.com>
9655
9656         * configure.in (AC_CHECK_FUNCS): Add finite, qfinite, fpclass, and
9657         qfpclass.
9658         (AC_CHECK_HEADERS): Add machine/endian.h.  If no header specifying
9659         endianess is available run AC_C_BIGENDIAN.
9660
9661         * math/clog10l.c: Add ugly hack around bug in Irix 6.2 header until
9662         fixincludes is fixed.
9663         * math/clogl.c: Likewise.
9664         * math/csqrtl.c: Likewise.
9665         * math/mycabsl.c: Likewise.
9666
9667         * math/mathconf.h: Include machine/endian.h if possible.  If no
9668         header describing endianess is available rely on WORDS_BIGENDIAN
9669         macro.
9670         (FINITE_P, FINITEF_P, FINITEL_P): Use finite functino if available.
9671         (INFINITE_P, INFINITEF_P, INFINITEL_P): Use fpclass function if
9672         available.
9673
9674         * src/complex.cc (polar): Don't use sincos on OSF machines.
9675
9676 1998-10-09  Benjamin Kosnik  <bkoz@loony.cygnus.com>
9677
9678         * src/locale-inst.cc: Don't instantiate time_get for
9679         ostreambuf_iterators as time_get::do_get_weekday and
9680         time_get::do_get_monthname use __match_parallel, which is illegal
9681         for ostreambuf_iterators to use, as they don't have operator== or
9682         operator!=.
9683         * bits/std_stdexcept.h: Add dtor definitions.
9684         Use stl/bits/std_stdexcept.h instead of this file?
9685         * bits/sbuf_iter.h : Tweak.
9686         * src/misc-inst.cc: Tweak.
9687
9688 1998-10-09  Benjamin Kosnik  <bkoz@haight.constant.com>
9689
9690         * bits/std_stdexcept.h: New file.
9691         * src/stdexcept.cc: Define the following:
9692         logic_error::what()
9693         runtime_error::what()
9694
9695         * src/misc-inst.cc: New file.
9696         * src/Makefile.in (libstdc___la_SOURCES): Add misc-inst.cc.
9697         (libstdc___la_OBJECTS): Add misc-inst.lo.
9698
9699         * bits/basic_string.h: Disable non-standard ctor declarations.
9700         * bits/string.tcc: Disable definitions as well.
9701         * src/string.cc: Disable <ios> dependencies.
9702         * bits/sbuf_iter.h (std): Add default to template parameter for
9703         ostreambuf_iterator and istreambuf_iterator.
9704         * bits/std_iosfwd.h: Change istreambuf_iterator to
9705         basic_istreambuf_iterator. Likewise for ostreambuf.
9706         * bits/locfacets.tcc (__match_parallel): Fix typo.
9707         * src/ios.cc (imbue): Remove the _G_HAVE_LOCALE guards around
9708         ios_base::imbue.
9709         * bits/std_streambuf.h: Define _Streambuf_base::getloc().
9710         * bits/std_istream.h: Define the following:
9711         get (basic_streambuf<char_type,_Traits>& __sb, char_type __delim)
9712         get (char_type* __s, streamsize __n, char_type __delim);
9713         getline (char_type* __s, streamsize __n, char_type __delim)
9714         * bits/loccore.h : FIXME friend template code for use_facet.
9715         Add std_stdexcept.h include so that range_error will be defined.
9716         Add explicit conversion to string for range_error throws. (HACK?)
9717
9718 1998-10-8  Ulrich Drepper  <drepepr@cygnus.com>
9719
9720         * configure.in: Check for sincos, sincosf, and sincosl.
9721         * src/complex.cc (polar): Use sincos if available.
9722
9723         * bits/c++config.h: Fix hack to get LONG_LONG* definitions on Linux.
9724         * stl/bits/std_limits.h: Include bits/c++config.h.  HACK!!!
9725
9726         * math/clog10.c: Fix typo (FP_INIFITE_P -> INFINITE_P).
9727
9728         * math/cpow.c: Use c_log, not clog.
9729         * math/cpowf.c: Likewise.
9730         * math/cpowl.c: Likewise.
9731
9732         * math/cexp.c: Remove unused fpclassify calls.  Use FINITE_P instead
9733         of isfinite call.
9734
9735         * math/mathconf.h (FINITE_P, FINITEF_P, FINITEL_P): Define using
9736         isfinite macro if it is available.
9737         (INFINITE_P, INFINITEF_P, INFINITEL_P): Define using isinf macro.
9738
9739         * math/ccosf.c: Use appropriate test macros for this type.
9740         * math/ccoshf.c: Likewise.
9741         * math/ccoshl.c: Likewise.
9742         * math/ccosl.c: Likewise.
9743         * math/cexpf.c: Likewise.
9744         * math/cexpl.c: Likewise.
9745         * math/clog10f.c: Likewise.
9746         * math/clog10l.c: Likewise.
9747         * math/clogf.c: Likewise.
9748         * math/clogl.c: Likewise.
9749         * math/csinf.c: Likewise.
9750         * math/csinhf.c: Likewise.
9751         * math/csinhl.c: Likewise.
9752         * math/csinl.c: Likewise.
9753         * math/csqrtf.c: Likewise.
9754         * math/csqrtl.c: Likewise.
9755         * math/ctanf.c: Likewise.
9756         * math/ctanhf.c: Likewise.
9757         * math/ctanhl.c: Likewise.
9758         * math/ctanl.c: Likewise.
9759
9760 1998-10-06  Benjamin Kosnik  <bkoz@bliss.nabi.net>
9761
9762         * bits/basic_ios.h: Fix previous change.
9763
9764 1998-10-06  Benjamin Kosnik  <bkoz@bliss.nabi.net>
9765
9766         * bits/basic_ios.h: Add const_cast<basic_ios&>
9767         (operator void*): As per 5.2.9 p 2, make sure static_cast is
9768         well-formed.
9769         * bits/char_traits.h: No _CharT for specialization, change to 0.
9770         * bits/basic_string.h: As per 9.4.2 p4, initialize with
9771         constant-initializer.
9772         * bits/locfacets.tcc: Add template parameter to initialization list.
9773
9774 1998-10-02  Benjamin Kosnik  <bkoz@loony.cygnus.com>
9775
9776         * bits/basic_string.h: Should just be <, not <=.
9777
9778 1998-10-01  Benjamin Kosnik  <bkoz@bliss.nabi.net>
9779
9780         * bits/string.tcc (compare): Fix for strings that are similar, but
9781         not the same length.
9782
9783 1998-09-04  Brendan Kehoe  <brendan@cygnus.com>
9784
9785         * bits/c++config.h: For __linux__, define _GNU_SOURCE.  This is
9786         required for us to get LONG_LONG_{MIN,MAX} out of gcc's limits.h.
9787         We can't check for __GLIBC__ here, since this header can be read
9788         before any system one (that would lead to features.h) being used.
9789
9790         * stl/bits/stl_config.h (__STL_LONG_LONG): Re-enabled
9791
9792         * stl/bits/std_limits.h [__STL_LONG_LONG]: Fix usage to use
9793         LONG_LONG_MIN, LONG_LONG_MAX, and ULONG_LONG_MAX.
9794
9795         * stl/bits/stl_config.h: Don't do __STL_LONG_LONG, it uses
9796         LONGLONG_{MIN,MAX} which I can't find the origin of.
9797
9798 1998-09-03  Brendan Kehoe  <brendan@cygnus.com>
9799
9800         * stl/bits/stl_iterator.h: Add extern decl of cin for now; where
9801         should this come from, if not iostream.h?
9802         (class istream_iterator): Make the new operator!= a friend also.
9803
9804         * stl/bits/stl_config.h: Define __STL_HAS_WCHAR_T,
9805         __STL_MEMBER_TEMPLATE_CLASSES, and __STL_LONG_LONG.  Don't include
9806         _G_config.h like the egcs one does.
9807
9808 1998-09-01  Brendan Kehoe  <brendan@cygnus.com>
9809
9810         * bits/string.tcc: Call `_M_destroy' instead of `destroy'.
9811
9812         * bits/valarray_meta.h: Throughout, rename _Expr typedefs to be
9813         _Expr1 (or _Expr_def if it's taken), and change definitions.
9814         Avoids redecl of the template parm.
9815
9816         * bits/string.tcc (basic_string copy ctor): Fix typo in declaration.
9817         (operator>>): Initialize __ERROR with ios_base::goodbit, not 0.
9818
9819         * bits/std_streambuf.h (_POSIX_SOURCE): Only define if it's not
9820         already done.
9821
9822         * src/locale-inst.cc: New file, **TOTAL HACK**.  There has GOT to
9823         be a better way to do this.
9824
9825         * src/stlinst.cc: New file.
9826
9827         * BUGS: New file, with various discovered bugs that need to be
9828         fixed.
9829
9830         * Makefile.in, math/Makefile.in, string/Makefile.in,
9831         src/Makefile.in: Reran automake.
9832
9833         Workarounds, these may not all be the final fixes:
9834
9835         * bits/basic_ios.h (class basic_ios): Make _M_strbuf be protected,
9836         not private, for basic_istream::get() in std_istream.h to be able
9837         to use it.
9838         (basic_ios::operator void*): Don't use static_cast for the false
9839         case.
9840         (basic_ios::copyfmt): Fix `rhs.except' to be `rhs.exceptions ()'.
9841         This appears to have been in sep94, but didn't get corrected
9842         afterwards.
9843
9844         * bits/basic_string.h (npos): Don't init here.
9845         * bits/string.tcc: Instead, do initialization here, to -1 instead
9846         of the size_type destructor.
9847
9848         * src/traits.cc, src/wtraits.cc: New files.
9849         * bits/char_traits.h: For char_traits<char> and
9850         char_traits<wchar_t>, declare static, but define over in the src
9851         files.
9852
9853         * bits/gslice.h: Comment out forward decls of _Array, valarray,
9854         gslice_array, and _GsliceExpression.
9855
9856         * bits/std_cstdio.h [__sparc__ && __svr4__]: #undef all of
9857         clearerr, feof, ferror, getc, getchar, putc, putchar, stdin,
9858         stdout, and stderr.  Note we do get unresolved refs to stdin, but
9859         that'll get fixed by the "true" solution.
9860
9861         * bits/std_ios.h: Include <bits/std_streambuf.h> to get the
9862         definition of basic_streambuf.h, which is used in basic_ios.h to
9863         call pubimbue.
9864
9865         * bits/std_streambuf.h: Don't include libio.h for now.
9866         (class basic_streambuf): Define missing methods pubimbue and
9867         getloc.
9868
9869         * src/Makefile.am (libstdc___la_SOURCES): Add stdexcept.cc,
9870         ios.cc, os_raw.cc, stdstreams.cc, locale.cc, localename.cc,
9871         locale-inst.cc, stlinst.cc, traits.cc, wtraits.cc.
9872
9873         * src/ios.cc: Instantiate basic_ios<char> and basic_ios<wchar_t>.
9874
9875         * src/locale.cc: Come up with munged versions of _S_toupper,
9876         _S_tolower, and _S_table instead of the glibc-specific ones, so
9877         they're at least defined, if not necessarily usable.  The glibc
9878         ones on any other system will yield unresolved refs to
9879         __ctype_{b,toupper,tolower}.
9880
9881         * src/string.cc: Define all of ADDCS, ADDPS, et al.  Add
9882         basic_ios, basic_istream, basic_ostream.  Don't do char_traits
9883         anymore cuz of the explicit specialization in char_traits.h.
9884         Also add _S_string_copy, but this doesn't fix it -- cf the BUGS
9885         file for the details.
9886
9887         * stl/bits/stl_algobase.h (equal): Fix to do `! (x==y)'.
9888         * stl/bits/stl_iterator.h (__distance): Likewise.
9889
9890         * stl/bits/stl_iterator.h: As with 8/18 set, define missing op!=,
9891         op>, op<=, and op>= for reverse_iterator.  Also add op!= for
9892         istream_iterator.
9893
9894 1998-08-26  Brendan Kehoe  <brendan@cygnus.com>
9895
9896         * bits/string.tcc (basic_string::compare (const char*)): Fix to
9897         return 0, not 1.
9898
9899 1998-08-25  Brendan Kehoe  <brendan@cygnus.com>
9900
9901         This should really be fixed with __asm__ directives renaming the
9902         symbol, but keeping the function.
9903         * math/clogf.c (c_logf): Renamed from `clogf'.
9904         * math/clogl.c (c_logl): Renamed from `clogl'.
9905         * math/complex-stub.h (c_logf, c_logl): Change decls.
9906
9907         * bits/locfacets.h (class _Numeric_get): For friend decls, rename
9908         _CharT and _InIter parms, since they duplicate the enclosing ones.
9909
9910 1998-08-19  Brendan Kehoe  <brendan@cygnus.com>
9911
9912         Deal with conflict of the iostreams `clog' and our internal
9913         complex number `clog'.
9914         * src/complex.cc: Call `c_log' instead of `clog'.
9915         * math/clog.c (c_log):: Renamed from clog.
9916         * math/complex-stub.h (c_log): Renamed from clog decl.
9917
9918         * bits/locfacets.h (class _Numeric_get): Tweak fwd decls of the
9919         get/put classes.
9920         (num_put::put): #if 0 long long version, since we don't declare or
9921         define the long long version of do_put.
9922
9923 1998-08-18 Nathan Myers <ncm@cantrip.org>
9924
9925         * bits/basic_string.h: add basic_string<>::push_back(), fix return
9926         type of get_allocator (thanks to Ryszard Kabatek).
9927         * bits/char_traits.h: make init order of fpos<> members
9928         match decl order.
9929         * bits/ios_base.h: fix decls of ios_base bitmask & enum types, add
9930         flags _S_fd_in etc. for special filebuf ctor.
9931         * bits/locfacets.h: make _Numeric_get and _Format_cache public
9932         to work around problems in friend declarations.
9933         * bits/locfacets.tcc: qualify _S_get_cache in num_get<>::get(..bool&),
9934         fix random type errors & typos
9935         * bits/std_fstream.h: major refitting to bypass libio (for now),
9936         instrument to use bits/fstream.tcc template definitions
9937         * bits/std_iosfwd.h: mess with wrappers
9938         * bits/std_istream.h: remove meaningless comment
9939         * bits/std_ostream.h: instrument to work with ostream.tcc.
9940         * bits/std_streambuf.h: instrument to work with streambuf.tcc
9941         * bits/fstream.tcc: template defs for <fstream>
9942         * bits/ostream.tcc: template defs for <ostream>
9943         * bits/streambuf.tcc: template defs for <streambuf>
9944         * bits/os_raw.h: thin OS interface wrapper, to bypass libio (for now).
9945         * Delete .cc files, replace with bits/*.tcc
9946         src/fstream.cc
9947         src/istream.cc
9948         src/ostream.cc
9949         src/streambuf.cc
9950         * Add files:
9951         src/os_raw.cc: thin interface to OS, to bypass libio (for now).
9952         src/stdstreams.cc: cout, cin, etc. definitions
9953         (these still need work: must be init'd before user statics.)
9954
9955
9956 1998-08-18  Brendan Kehoe  <brendan@cygnus.com>
9957
9958         Sent to SGI before checkin:
9959         * stl/bits/stl_vector.h (operator!=, operator>, operator<=,
9960         operator>=): Define.
9961         * stl/bits/stl_bvector.h (vector<bool>::flip): Define method.
9962         * stl/bits/stl_deque.h (operator!=, operator>, operator<=,
9963         operator>=): Define.
9964         (operator==, operator<): Add inline.
9965         * stl/bits/stl_map.h (operator!=, operator<, operator<=,
9966         operator>=): Define.
9967         * stl/bits/stl_multimap.h (operator!=, operator<, operator<=,
9968         operator>=): Define.
9969         * stl/bits/stl_list.h (operator!=, operator<, operator<=,
9970         operator>=): Define.
9971         * stl/bits/stl_set.h (operator!=, operator<, operator<=,
9972         operator>=): Define.
9973         * stl/bits/stl_multiset.h (operator!=, operator<, operator<=,
9974         operator>=): Define.
9975
9976         * bits/std_valarray.h (_Shift_left, _Shift_right): Inherit from
9977         unary_function.
9978
9979 1998-08-15 Nathan Myers <ncm@cantrip.org>
9980
9981         * bits/ios_base.h: change nominal bitmask and enum types to real enums
9982         * bits/locfacets.h: make _Format_cache bool names usable by num_get
9983         * bits/locfacets.tcc: make num_get<>::get(... bool&) use _Format_cache
9984         * bits/std_fstream.h: minor cleanups: ctors delegate to open()
9985         * bits/std_iosfwd.h: more bitmask changes, for ios_base::iostate
9986         * bits/std_sstream.h: formatting cleanups
9987
9988 1998-08-14 Nathan Myers <ncm@cantrip.org>
9989
9990         * bits/locfacets.tcc: implement num_get<>::do_get(..., bool&)
9991         * bits/locfacets.tcc: implement time_get<>::do_get_weekday
9992         * bits/locfacets.tcc: implement time_get<>::do_get_monthname
9993         * bits/locfacets.h:   fix missing argument in do_get_monthname
9994         (this is a bug in the standard, ref. 36 in my list.)
9995         * bits/locfacets.h: make month and day name caches mutable
9996         * bits/locfacets.tcc: various typos in get() functions
9997         * bits/sbuf_iter.h: fix omission in istreambuf_iterator::op++().
9998         * bits/std_streambuf.h: fix typo in sgetn (Brendan)
9999
10000 1998-08-12 Nathan Myers <ncm@cantrip.org>
10001         * move streambuf iterators to bits/sbuf_iter.h
10002         * optimize streambuf iterators
10003         * begin generalizing streambuf
10004         * begin implementing num_get<>::get (starting with bool)
10005         * patch stl/bits/stl_config.h so that relops operators are
10006         contained properly, out of the way.
10007
10008 1998-07-24 Nathan Myers <ncm@cantrip.org>
10009         * Fold in SGI 3.11 changes (uglified names, some algorithm
10010           improvements, very minor bug fixes.)
10011         * Uglify names elsewhere to match (s/_T/_Tp/).
10012         * Begin work on optimized streambuf
10013         * Put complex.cc in namespace std:: (thanks Martin)
10014
10015 1998-07-17 Nathan Myers <ncm@cantrip.org>
10016
10017         * bits/char_traits.h: add _Char_traits_match template.
10018         * bits/string.tcc: fix bugs in various find_last* members.
10019         * bits/basic_string.h: redeclare member _S_find.
10020         * stl/bits/stl_iterator.h: change member names in nonstandard
10021           templates bidirectional_reverse_iterator and
10022           random_access_reverse_iterator to match expected changes
10023           in upstream source.
10024         * src/string.cc: fix definitions of stream operators.
10025
10026 1998-07-14 16:06  Ulrich Drepper  <drepper@cygnus.com>
10027
10028         * Makefile.am (SUBDIRS): Add string.
10029
10030         * configure.in: Test for long double functions separately.  Test for
10031         ISO C 89 float functions.  Test for endian.h and sys/isa_defs.h.
10032         Generate string/Makefile.
10033
10034         * bits/c++config.h: Define mbstate_t for Solaris.
10035
10036         * bits/char_traits.h: Remove unused #if.
10037
10038         * bits/std_cwchar.h: Declare wide char string functions.
10039
10040         * m4/stringfcts.m4: New file.
10041
10042         * math/complex-stub.h: Declare nan.
10043         * math/nan.c: New file.
10044
10045         * math/mathconf.h: Hack around missing endian.h file.
10046         Handle missing NAN definition.
10047         Handle missing float math functions.
10048
10049         * src/Makefile.am (libstdc___la_LIBADD): Add libstring.la.
10050         (libstdc___la_LDFLAGS): Set version information.
10051
10052         * src/complexl.cc: Don't compile any code if no long double functions
10053         are available.
10054
10055         * string/Makefile.am: New file.
10056         * string/dummy.c: New file.
10057         * string/wmemchr.c: New file.
10058         * string/wmemcmp.c: New file.
10059         * string/wmemcpy.c: New file.
10060         * string/wmemmove.c: New file.
10061         * string/wmemset.c: New file.
10062
10063 1998-07-14 10:45  Ulrich Drepper  <drepper@cygnus.com>
10064
10065         * configure.in: Make it work.
10066         * install-sh: New file.
10067         * missing: New file.
10068         * mkinstalldirs: New file.
10069         * m4/mathfcts.m4: New file.
10070         * math/Makefile.am: New file.
10071
10072         * bits/std_complex.h (conj): Mark specializations as inline.
10073
10074         * math/carg.c: New file.
10075         * math/cargf.c: New file.
10076         * math/cargl.c: New file.
10077         * math/mycabs.c: New file.
10078         * math/mycabsf.c: New file.
10079         * math/mycabsl.c: New file.
10080         * math/signbit.c: New file.
10081         * math/signbitf.c: New file.
10082         * math/signbitl.c: New file.
10083
10084         * math/ccos.c: Avoid ISO C 9x functionality.
10085         * math/ccosf.c: Likewise.
10086         * math/ccosh.c: Likewise.
10087         * math/ccoshf.c: Likewise.
10088         * math/ccoshl.c: Likewise.
10089         * math/ccosl.c: Likewise.
10090         * math/cexp.c: Likewise.
10091         * math/cexpf.c: Likewise.
10092         * math/cexpl.c: Likewise.
10093         * math/clog.c: Likewise.
10094         * math/clog10.c: Likewise.
10095         * math/clog10f.c: Likewise.
10096         * math/clog10l.c: Likewise.
10097         * math/clogf.c: Likewise.
10098         * math/clogl.c: Likewise.
10099         * math/cpow.c: Likewise.
10100         * math/cpowf.c: Likewise.
10101         * math/cpowl.c: Likewise.
10102         * math/csin.c: Likewise.
10103         * math/csinf.c: Likewise.
10104         * math/csinh.c: Likewise.
10105         * math/csinhf.c: Likewise.
10106         * math/csinhl.c: Likewise.
10107         * math/csinl.c: Likewise.
10108         * math/csqrt.c: Likewise.
10109         * math/csqrtf.c: Likewise.
10110         * math/csqrtl.c: Likewise.
10111         * math/ctan.c: Likewise.
10112         * math/ctanf.c: Likewise.
10113         * math/ctanh.c: Likewise.
10114         * math/ctanhf.c: Likewise.
10115         * math/ctanhl.c: Likewise.
10116         * math/ctanl.c: Likewise.
10117
10118         * math/complex-stub.h: New file.
10119
10120         * math/mathconf.h: New file.
10121
10122         * src/Makefile.am: New file.
10123
10124         * src/complex.cc: Use mathconf.h instead of complex.h.
10125         Don't use cabs, always use __mycabs.
10126
10127 1998-02-13  Brendan Kehoe  <brendan@cygnus.com>
10128
10129         * iterator (class reverse_iterator): Do some tweaks to be in sync
10130         w/ the FDIS.