OSDN Git Service

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