OSDN Git Service

2000-05-11 Phil Edwards <pme@sourceware.cygnus.com>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2000-05-11  Phil Edwards  <pme@sourceware.cygnus.com>
2
3         * acinclude.m4:  Fix minor typo with ctypes, add more sanity to
4           enable-cxx-flags, and remove GLIBCPP_ENABLE_NAMESPACES altogether.
5         * aclocal.m4:  Regenerate.
6         * configure.in:  Non-blank arguments break fewer Linuxes.
7         * configure:  Regenerate.
8         * src/Makefile.am:  Re-order AC_CXXFLAGS components.
9         * src/Makefile.in:  Regenerate.
10
11 2000-05-10  Benjamin Kosnik  <bkoz@redhat.com>
12
13         * bits/std_cmath.h: Tweaks.
14         * math/mathconf.h: Tweaks and fixes for HP-UX 11.
15         (sqrtf): Define away iff !builtin and !in <math.h>. 
16         (sinf): Same.
17         (cosf): Same.
18         (fabsf): Same.
19         At some point this directory should be converted to c++, the
20         autoconf tests should be run by the c++ compiler (not c), and
21         <cmath> should be used instead of math.h.
22         Move declaration of nan() here.
23         * math/complex-stub.h (cabsl): Remove nan() declaration.
24
25         Finish up FreeBSD4.0 support.
26         * config/bsd/ctype.cc: Scope out toupper, tolower calls.
27         * config/generic/ctype.cc: And here.
28         * testsuite/21_strings/char_traits.cc (test02): Guard with
29         _GLIBCPP_USE_WCHAR_T.
30
31         via Phil Edwards  <pme@sourceware.cygnus.com>
32         * bits/std_cctype.h: Remove _GLIBCPP_USE_NAMESPACES.
33         * acconfig.h: And here.
34         * acinclude.m4: Same.
35         * testsuite/27_io/istream.cc: And here.
36         * testsuite/27_io/ostream.cc: And here.
37
38 2000-05-09  Benjamin Kosnik  <bkoz@gnu.org>
39
40         * acinclude.m4 (GLIBCPP_CHECK_CPU): Change powerpc bits to
41         -mcpu=powerpc.
42         * src/Makefile.am: Disable ENABLE_CXX_FLAGS stuff for the moment.
43         
44         * config/generic/bits/ctype_specializations.h (ctype<char>::is):
45         Make more generic.
46
47         * config/bsd: New directory.
48         * config/bsd/ctype.cc: New.
49         * config/bsd/bits/ctype_base.h (ctype_base): New.
50         * config/bsd/bits/ctype_specializations.h: New.
51         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add bsd tests.
52         
53 2000-05-09  Phil Edwards  <pme@sourceware.cygnus.com>
54
55         * acinclude.m4:  New macro, GLIBCPP_ENABLE_CXX_FLAGS.
56         * configure.in:  Call.
57         * src/Makefile.am:  Append results of macro to AC_CXXFLAGS.
58         * aclocal.m4:  Regenerate.
59         * configure:  Ditto.
60         * src/Makefile.in:  Ditto.
61         * docs/configopts.html:  Document.
62         * docs/download.html:  Fix typo (close quote).
63         * docs/footer.html:  Update.
64
65 2000-05-09  Loren J. Rittle  <ljrittle@acm.org>
66
67         * backward/iostream.h: Expose endl.  Guard wide types.
68         * src/Makefile.am (headers): Update list to match files.
69         * src/Makefile.in: Regenerate.
70
71 2000-05-09  Vadim Egorov  <egorovv@mailandnews.com>
72             Benjamin Kosnik  <bkoz@gnu.org>
73             Nathan Myers  <ncm@cantrip.org>
74             Dietmar Kuehl  <dietmar_kuehl@yahoo.com> 
75
76         * bits/streambuf.tcc (basic_streambuf::xsgetn): Fix uflow case.
77         (basic_streambuf::xsputn): Make consistent.
78         * testsuite/27_io/filebuf.cc: Add tests.
79         
80 2000-05-08  Steven King  <sxking@uswest.net>
81
82         * bits/char_traits.h: Use wchar_t utility functions for
83         char_traits<wchar_t> methods.
84         * testsuite/21_string/char_traits.cc: New (test02): test
85         char_traits<wchar_t>
86
87 2000-05-08  Benjamin Kosnik  <bkoz@cygnus.com>
88
89         * acinclude.m4 (GLIBCPP_CXXFLAGS): Add bits for solaris2.8.
90
91         * bits/fstream.tcc (filebuf::_M_init_filebuf): Don't set
92         _M_buf_size based on macro, instead use _M_buf_size_opt.
93         * bits/std_streambuf.h (basic_streambuf): Add _M_buf_size_opt.
94         (basic_streambuf()): Set _M_buf_size_opt.
95         * testsuite/27_io/filebuf.cc (filebuf): Use _M_buf_size_opt
96         instead of _M_buf_size.
97
98 2000-05-04  Branko Cibej  <branko.cibej@hermes.si>
99
100         * src/complex_io.cc: Don't instantiate inserters and extractors
101         for wide-character streams unless _GLIBCPP_USE_WCHAR_T is defined.
102
103 2000-05-03  Phil Edwards  <pme@sourceware.cygnus.com>
104             Felix Natter <fnatter@gmx.net>
105
106         * docs/footer.html:  Update to see if it takes effect.
107         * docs/thanks.html:  More people.
108         * docs/17_intro/headers_cc.txt:  Copy from testsuite, since that can't
109           be seen from the web pages.  Rename for browser-friendliness...
110         * docs/17_intro/howto.html:  ...and update here.
111         * docs/17_intro/porting-howto.html:  Changes from Felix.
112         * docs/gccrebuild.html:  Mention v3->egcs move.
113         * docs/faq/index.html:  Ditto.  Also misc tweaks and URL updates.
114         * docs/faq/index.txt:  Regenerate.
115
116 2000-05-01  Benjamin Kosnik  <bkoz@redhat.com>
117
118         * config/cpu/powerpc/bits/atomicity.h (__exchange_and_add): More
119         fixes.
120
121 2000-05-01  Vadim Egorov  <egorovv@@mailandnews.com>
122
123         * bits/char_traits.h: Fix parameter types.
124         * bits/string.tcc: Avoid traits_type::move.
125
126 2000-05-01  Benjamin Kosnik  <bkoz@haight.constant.com>
127
128         * src/Makefile.am (AC_CXXFLAGS): Add CPUFLAGS here.
129         * src/Makefile.in: Regenerate.
130         * acinclude.m4 (GLIBCPP_ENABLE_DEBUG): Revert.
131
132 2000-04-30  Steven King <sxking@uswest.net>
133
134         * bits/locale_facets.h: Fix syntax  error.
135         * bits/std_fstream.h: ditto
136
137 2000-04-30  Benjamin Kosnik  <bkoz@gnu.org>
138
139         * config/cpu/powerpc/bits/atomicity.h (__compare_and_swap): Fix typo.
140
141         * mknumeric_limits (trait_name): Fix copyright notice.
142         * src/gen-num-limits.cc: Explicitly instantiate epsilon and
143         round_error data members of struct value. This works around
144         weak-linking issues on AIX, HPUX.
145
146 2000-04-29  Phil Edwards  <pme@sourceware.cygnus.com>
147
148         * docs/download.html:  Add link to list of mirror sites.
149
150 2000-04-28  Loren J. Rittle  <ljrittle@acm.org>
151
152         * mkcheck.in: Rely on exit status instead of the presence of a
153         core file.  Added comments on how/where to save core and exe
154         files.  Move shell wildcards outside quotes and fix core path.
155         
156 2000-04-27  scott snyder  <snyder@fnal.gov>
157
158         * src/misc-inst.cc: Explicitly instantiate ifstream and ofstream
159         classes.
160
161 2000-04-26  Nathan C. Myers  <ncm@cantrip.org>
162
163         * bits/basic_string.h: include <bits/atomicity.h> instead
164         of <atomicity.h>, and use the uglified names.
165         * config/cpu/*/atomicity.h: replace with bits/atomicity.h;
166         uglify names, eliminate dependence on <inttypes.h>.
167         * src/Makefile.in, src/Makefile.am: refer to correct place
168         for atomicity.h header.
169
170 2000-04-25 Steven King <sxking@uswest.net>
171
172         * bits/basic_string.h: Fix syntax error.
173
174 2000-04-25  Benjamin Kosnik  <bkoz@redhat.com>
175
176         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Improve checks for
177         USE_LONG_DOUBLE.
178         (GLIBCPP_ENABLE_DEBUG): If alpha, use -gdwarf-2.
179         * math/Makefile.am (EXTRA_LONG_DOUBLE_yes): Add all the long
180         versions to this as copysignl is needed anyway for these targets.
181         * math/Makefile.in: Regenerate.
182         
183         * bits/streambuf.tcc (streambuf::xsgetn): Tweak.
184         * bits/fstream.tcc (underflow): Cast to libio types.
185         * bits/basic_file.h (seekoff): Fixes for alpha: use __c_streamoff.
186         * config/c_io_libio.cc (seekoff): And here.
187         
188 2000-04-24  Loren J. Rittle  <ljrittle@acm.org>
189
190         * mkcheck.in: Report compiler version used for test.  Find
191         the built _G_config.h instead of any old installed version.
192
193 2000-04-24  Loren J. Rittle  <ljrittle@acm.org>
194
195         * config/generic/ctype.cc (do_toupper): Remove dependence on
196         non-portable/non-existent lookup table.
197         (do_tolower): Same.
198         
199 2000-04-24  Nathan Myers  <ncm@cantrip.org>
200
201         * src/string-inst.cc: More fixing.
202
203 2000-04-24  Benjamin Kosnik  <bkoz@gnu.org>
204
205         * bits/stl_iterator.h: Pedantic fixing.
206         * bits/std_sstream.h: And here.
207         * bits/string.tcc: And here.
208
209 2000-04-24  Felix Natter <fnatter@gmx.net> 
210
211         * docs/17_intro/howto.html: Add bits.
212         * docs/17_intro/porting-howto.html: New file.
213         
214 2000-04-24  Branko Cibej  <branko.cibej@hermes.si>
215
216         * acinclude.m4(GLIBCPP_CHECK_WCHAR_T_SUPPORT): Expand
217         @libinst_wstring_la@ to libinst-wstring.la when specializing for
218         wchar_t, to empty string otherwise.
219         * src/Makefile.am: (EXTRA_LTLIBRARIES): New.
220         (sources): Remove $(string_sources) and $(wstring_sources).
221         (libstdc___la_LIBADD): Add libinst-string.la and @libinst_wstring_la@.
222         (libstdc___la_DEPENDENCIES): New.
223         (libinst_string_la_SOURCES, libinst_wstring_la_SOURCES): New.
224
225 2000-04-20  Benjamin Kosnik  <bkoz@redhat.com>
226
227         * bits/std_sstream.h: Tweak formatting.
228         * bits/std_fstream.h: Make types public.
229
230         * testsuite/27_io/streambuf.cc: Fix for alpha.
231
232         Brad Garcia <bgarcia@laurelnetworks.com>
233         * bits/locale_facets.h (numpunct::numpunct(size_t)): Fix bool
234         initialization.
235         * testsuite/27_io/ios_manip_fmtflags.cc (test02): Add test for
236         bool formatting.
237         
238 2000-04-19  Nathan Myers  <ncm@cantrip.org>
239
240         * src/string-inst: consolidate _S_create,
241         destroy, leak, clone members into stringMAIN and stringMUTATE
242         object files.
243         * src/Makefile.am: Above, and eliminate dependence on
244         wstring-inst.cc.
245         * src/wstring-inst.cc: Remove.
246
247 2000-04-18  Benjamin Kosnik  <bkoz@redhat.com>
248
249         * src/Makefile.am (AC_CXXFLAGS): Activate debugging code, again.
250         Add flags for specialized rules dealing with instantiations.
251         
252         * src/string-inst.cc: Add instantiations missing from shared
253         libraries--see stringEQ, stringCONSC.
254         * src/Makefile.am (wstring_sources): Add.
255         (string_sources): Same.
256         * src/Makefile.in: Regenerate.
257         
258         * stl/*: Integrate contents of this directory into top-level
259         directories.
260         * ext/bvector hash_map hash_set rope ropeimpl.h slist
261         stl_bvector.h stl_hash_fun.h stl_hashtable.h stl_rope.h tree: Add.
262         * bits/pthread_allocimpl.h std_algorithm.h std_bitset.h
263         std_deque.h std_functional.h std_iterator.h std_list.h std_map.h
264         std_memory.h std_numeric.h std_queue.h std_set.h std_stack.h
265         std_stdexcept.h std_strstream.h std_utility.h std_vector.h
266         stl_algo.h stl_algobase.h stl_alloc.h stl_config.h stl_construct.h
267         stl_deque.h stl_function.h stl_heap.h stl_iterator.h
268         stl_iterator_base.h stl_list.h stl_map.h stl_multimap.h
269         stl_multiset.h stl_numeric.h stl_pair.h stl_pthread_alloc.h
270         stl_queue.h stl_range_errors.h stl_raw_storage_iter.h stl_relops.h
271         stl_set.h stl_stack.h stl_string_fwd.h stl_tempbuf.h stl_threads.h
272         stl_tree.h stl_uninitialized.h stl_vector.h type_traits.h: Add.
273         * backward/algo.h algobase.h alloc.h bvector.h defalloc.h deque.h
274         function.h hash_map.h hash_set.h hashtable.h heap.h iterator.h
275         list.h map.h multimap.h multiset.h pair.h rope.h set.h slist.h
276         stack.h tempbuf.h tree.h vector.h: Add.
277         * README (file): Update.
278         * docs/documentation.html: README not being found.
279         * src/Makefile.am (sources): Take out stl directory.
280         * mkcheck.in (SRC_DIR): And here.
281         * src/Makefile.in: Regenerate.
282         
283 2000-04-18  Levente Farkas  <lfarkas@mindmaker.hu>
284
285         * stl/bits/stl_function.h: Add bits so that const and non-const
286         both work.
287         
288 2000-04-18  scott snyder  <snyder@fnal.gov>
289
290         * stl/bits/stl_map.h (class map): Fix default for _Alloc template
291         parameter.  Get rid of use of __STL_DEFAULT_ALLOCATOR and
292         __STL_LIMITED_DEFAULT_TEMPLATES macros.
293         * stl/bits/stl_multimap.h (class multimap): Likewise.  Get rid of
294         use of __STL_DEPENDENT_DEFAULT_TMPL macro.
295
296 2000-04-18  scott snyder  <snyder@fnal.gov>
297
298         * stl/bits/stl_config.h (__STL_DEPENDENT_DEFAULT_TMPL): Deleted
299         this macro.
300
301         * stl/ext/hash_map (class hash_map, class hash_multimap): Get rid
302         of use of __STL_DEPENDENT_DEFAULT_TMPL macro.
303         * stl/ext/hash_set (class hash_set, class hash_multiset):
304         Likewise.
305         * stl/bits/stl_function.h (struct constant_unary_fun, struct
306         constant_binary_fun): Likewise.
307         * stl/bits/stl_queue.h (class queue, class priority_queue): Likewise.
308         * stl/bits/stl_stack.h (class stack): Likewise.
309         * stl/bits/stl_set.h (class set): Likewise.
310         * stl/bits/stl_multiset.h (class multiset): Likewise.
311
312         * stl/bits/stl_iterator.h (class reverse_bidirectional_iterator,
313         class reverse_iterator): Get rid of use of
314         __STL_LIMITED_DEFAULT_TEMPLATES macro.
315
316         * stl/bits/stl_config.h (__STL_DEFAULT_ALLOCATOR): Deleted this
317         macro.
318
319         * stl/bits/stl_deque.h (class deque): Get rid of use of
320         __STL_DEFAULT_ALLOCATOR macro.
321         * stl/bits/stl_list.h (class list): Likewise.
322         * stl/bits/stl_multiset.h (class multiset): Likewise.
323         * stl/bits/stl_set.h (class set): Likewise.
324         * stl/bits/stl_string_fwd.h (class basic_string): Likewise.
325         * stl/bits/stl_tree.h (class _Rb_tree, class rb_tree): Likewise.
326         * stl/bits/stl_vector.h (class vector): Likewise.
327         * stl/ext/ropeimpl.h (rotate): Likewise.
328         * stl/ext/hash_map (class hash_map, class hash_multimap):
329         Likewise.
330         * stl/ext/hash_set (class hash_set, class hash_multiset):
331         Likewise.
332         * stl/ext/slist (class slist): Likewise.
333         * stl/ext/stl_bvector.h (class bit_vector): Likewise.
334         * stl/ext/stl_rope.h (class rope): Likewise.
335         * src/locale.cc (_Impl): Likewise.
336         * src/localename.cc (_Impl): Likewise.
337         * bits/localefwd.h (_Impl): Likewise.
338
339 2000-04-18  Phil Edwards  <pme@sourceware.cygnus.com>
340
341         * docs/install.html:  Cleanup, minor changes.
342         * docs/17_intro/howto.html:  Ditto.
343
344 2000-04-18  Nathan Myers  <ncm@cantrip.org>
345
346         * bits/basic_string.h: Remove "inline" from member _S_find.
347         
348         * src/string-inst.cc: Rewrite to reflect non-inline template
349         instantiations in string.tcc.
350         
351         * src/stringADDCS.cc, stringADDPS.cc, stringADDSC.cc, stringADDSP.cc,
352         stringADDSS.cc, stringBIST.cc, stringBOST.cc, stringCHTR.cc,
353         stringEQPS.cc, stringEQSP.cc, stringEQSS.cc, stringEXTRA.cc,
354         stringGEPS.cc, stringGESP.cc, stringGESS.cc, stringGETLI.cc,
355         stringGTPS.cc, stringGTPS.cc, stringGTSP.cc, stringGTSS.cc,
356         stringINSER.cc, stringLEPS.cc, stringLESP.cc, stringLESS.cc,
357         stringLESP.cc, stringLTPS.cc, stringLTPS.cc, stringLTSP.cc,
358         stringLTSS.cc, stringMAIN.cc, stringNEPS.cc, stringNESP.cc,
359         stringNESS.cc, stringSCOPY.cc: Remove.
360         * src/wstringADDCS.cc, etc: Remove.
361
362         Benjamin Kosnik  <bkoz@haight.constant.com>
363         * src/Makefile.am: Modify to reflect above.
364         * src/Makefile.in: Regenerate.
365         
366 2000-04-17  Benjamin Kosnik  <bkoz@cygnus.com>
367
368         * docs/install.html (--enable-libstdcxx-v3): Clean up install docs.
369
370 2000-04-13  Benjamin Kosnik  <bkoz@haight.cygnus.com>
371
372         * bits/std_fstream.h (filebuf::sync): Need to use the abstracted
373         io interface here instead of the libio particulars.
374
375         * config/threads-posix.h: Consistency with stl_config.h.
376
377         * mkcheck.in (CXX_FLAG): Add DDEBUG_ASSERT back in.
378         
379 2000-04-13  Loren J. Rittle  <ljrittle@acm.org>
380
381         * mknumeric_limits: Rename generic type template parameter name
382         '_T' to '_Tp'.
383         * stl/bits/type_traits.h: Ditto.
384
385 2000-04-06  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
386
387         * mkcheck.in (SRC_DIR): Change default mkcheck behavior, so that
388         it is more useful for --enable-libstdcxx-v3. Use the built
389         compilers with v3, instead of compilers in PATH, and don't
390         re-include include directories for checking the install.
391
392 2000-04-05  Benjamin Kosnik  <bkoz@cygnus.com>
393
394         * src/Makefile.am (AM_CXXFLAGS): Disable NAMESPACES, as this is on
395         by default when using --enable-libstdcxx-v3.
396         * src/Makefile.in: Regenerate.
397         * configure.in: Disable GLIBCPP_ENABLE_NAMESPACES,
398         GLIBCPP_ENABLE_RELIBGCC for --enable-libstdcxx-v3 flag.
399         * configure: Regenerate.
400         * mkcheck.in: Deal with NAMESPACES.
401         
402 2000-04-05  Petter Urkedal  <petter@matfys.lth.se>
403
404         * src/cmath.cc: New file...
405         (pow(*, int)): Define functions...
406         * src/Makefile.am (sources): ...register file.
407         * src/Makefile.in: Regenerate.
408         * bits/std_cmath.h (pow): ...declare functions here, and remove
409         old definitions.
410
411 2000-04-04  Benjamin Kosnik  <bkoz@redhat.com>
412         
413         * acinclude.m4 (GCC_OBJDIR): Tweaks
414
415 2000-04-03  Benjamin Kosnik  <bkoz@redhat.com>
416         
417         * acinclude.m4 (GLIBCPP_CHECK_CPU): Add arm configure bits.
418         * config/cpu/arm: New directory.
419
420         Jesper Skov  <jskov@redhat.com>
421         * config/cpu/arm/atomicity.h: New file.
422         
423 2000-03-31  Benjamin Kosnik  <bkoz@redhat.com>
424
425         * stl/bits/stl_config.h: Make _STL_THREADS depend on _REENTRANT.
426         Remove unused bits. Clean.
427         
428 2000-03-29  Benjamin Kosnik  <bkoz@cygnus.com>
429
430         * testsuite/25_algorithms: New directory.
431         * testsuite/25_algorithms/min_max.cc: New file.
432
433 2000-03-29  scott snyder  <snyder@fnal.gov>
434
435         * bits/locale_facets.tcc (do_put): Allow a couple extra digits of
436         precision beyond that which we get from numeric_limits::digits10.
437
438         * stl/bits/stl_algobase.h (max, min): Don't use comparison
439         operator.
440
441         * testsuite/23_containers/bitset_shift.cc: Fix.
442
443         * testsuite/27_io/ios_manip_fmtflags.cc (test01): Don't give a
444         temporary to imbue().
445
446         * bits/std_fstream.h (sync): Resync libio's idea of the current
447         file position with the external file.
448
449 2000-03-28  Benjamin Kosnik  <bkoz@cygnus.com>
450
451         * testsuite/27_io/istream_extractor_arith.cc.cvs: Fix merge
452         mistake.
453
454         * bits/std_fstream.h (filebuf::is_open): Check for _M_file before
455         attempting calls to it. 
456         * bits/fstream.tcc (ctors): Don't call _M_init_filebuf in
457         ctors. Instead, call _M_init_filebuf ...
458         (open): Here, as suggested by 27.8.1.3. 
459         * src/ios.cc (ios_base::Init::Init()): Clean up default filebufs
460         properly when initializing cout/cin/cerr.
461
462 2000-03-27  Russell Davidson  <russell@ehess.cnrs-mrs.fr>
463
464         * testsuite/23_containers/multiset.cc (main): Clean up for namespaces.
465         * testsuite/22_locale/ctype_char_members.cc: And here.
466         * testsuite/27_io/streambuf.cc (streambuf): And here.
467         * testsuite/27_io/ostream_inserter_char.cc (test06): And here.
468         * testsuite/27_io/istream_unformatted.cc (test05): And here.
469         * testsuite/27_io/istream_extractor_arith.cc: And here.
470         * testsuite/27_io/ios_manip_basefield.cc (test02): And here.
471         * testsuite/27_io/ios_base_members_static.cc: And here.
472         * bits/std_climits.h (_CPP_CLIMITS): Fix typo.
473
474 2000-03-27  Chris Faylor  <cgf@cygnus.com>
475         
476         * configure.in: Remove setting of CXX if canadian cross.
477         * configure: Regenerate.
478
479 2000-03-27  Nathan Myers  <ncm@zembu.com>
480
481         * bits/sstream.tcc: Optimize.
482         * bits/basic_string.h(string::append): Don't inline.
483         * bits/string.tcc: Move out-of-line.
484         
485 2000-03-27  Phil Edwards  <pme@sourceware.cygnus.com>
486
487         * acinclude.m4:  (GLIBCPP_CHECK_COMPILER_VERSION)  When using <2.96,
488           define WERRORSUPPRESS so that the inlining warnings won't kill us.
489         * aclocal.m4:  Regenerate.
490         * configure:  Regenerate.
491         * src/Makefile.am:  Use WERRORSUPPRESS for the files that need it.
492         * src/Makefile.in:  Regenerate.
493
494         * docs/install.html:  Almost complete rewrite.
495
496 2000-03-25  Phil Edwards  <pme@sourceware.cygnus.com>
497
498         * docs/install.html:  Explain -Werror problem at "#Werror" mark.
499         * docs/faq/index.html:  Testsuite will die horribly if new libgcc.a
500           not installed.
501         * docs/faq/index.txt:  Regenerate.
502
503 2000-03-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br> 
504
505         * src/Makefile.am (libio_headers_install): Fix.
506         * src/Makefile.in: Regenerate.
507         
508 2000-03-24  Benjamin Kosnik  <bkoz@cygnus.com>
509
510         * docs/17_intro/RELEASE-NOTES: Fix typos.
511         * docs/index.html: Update.
512         * docs/17_intro/BUGS: Update.
513         * docs/status.html: Update for 2.90.8 release.
514
515 2000-03-23  Phil Edwards  <pme@sourceware.cygnus.com>
516
517         * Makefile.am:  Better error message when missing libgcc2.ready.
518         * Makefile.in:  Regenerate.
519         * acinclude.m4:  Fastidious nitpicking reformatting.
520         * aclocal.m4:  Regenerate.
521         * configure:  Regenerate.
522         * mkcheck.in:  Must use same namespace settings as the library being
523           tested.  Also log ST_FLAG, since it's being passed.
524         * docs/install.html:  Add brief chunk on configuration.
525         * docs/17_intro/RELEASE-NOTES:  Fix minor Cygwin typo.
526         * docs/23_containers/howto.html:  Mention MT-safe string.
527         * docs/faq/index.html:  Minor updates.
528         * docs/faq/index.txt:  Regerarate.
529
530 2000-03-22  Benjamin Kosnik  <bkoz@cygnus.com>
531
532         * bits/sstream.tcc (seekoff): Fix for gptr() null cases.
533         Return newoff. 
534         * bits/fstream.tcc (seekoff): Sync.
535         (seekpos): Sync.
536         * testsuite/27_io/ostream_unformatted.cc: New file.
537         * testsuite/27_io/stringbuf.cc: Fix.
538         * testsuite/27_io/istream_unformatted.cc (test04): Fix.
539         
540         * config/newlib/bits/ctype_base.h (ctype_base): Fix.
541         * config/newlib/ctype.cc (ctype): Change __ctype -> _ctype_.
542
543         * src/complex_io.cc (operator>>complex): Tweak.
544
545         * config/cpu/alpha/atomicity.h: Explicitly typedef uint32_t, int32_t if
546         <inttypes.h> does not exist.
547         * config/cpu/sparc/sparc64/atomicity.h: Same.
548         * config/cpu/sparc/sparc32/atomicity.h: Same.
549         * config/cpu/powerpc/atomicity.h: Same.
550         * config/cpu/i386/atomicity.h: Same.
551         * config/cpu/generic/atomicity.h: Same.
552         * configure.in: Check for inttypes.h.
553         * configure: Regnerate.
554
555 2000-03-21  Benjamin Kosnik  <bkoz@cygnus.com>
556
557         * bits/std_sstream.h (_M_init_stringbuf): Set initial ate position
558         correctly.
559         * testsuite/27_io/ostream_inserter_char.cc (test06): Add tests for ate.
560
561         * docs/17_intro/RELEASE-NOTES (New): Add bits.
562
563         * configure.in: Move AC_CHECK_HEADERS to a point where we know we
564         are compiling natively.
565
566         * libio/*: Update to CVS libio from egcs.
567         
568 2000-03-21  Phil Edwards  <pme@sourceware.cygnus.com>
569
570         * docs/download.html:  Document use of -z9 for CVS.
571         * docs/index.html:  Add target date (no link) for future snapshot.
572
573 2000-03-21  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
574
575         * bits/slice_array.h: Rename generic type template parameter name
576         '_T' to '_Tp'. 
577         * bits/mask_array.h: Ditto
578
579 2000-03-20  Benjamin Kosnik  <bkoz@cygnus.com>  
580
581         * *: Change copyright holder from "Cygnus Solutions" to "Free
582         Software Foundation, Inc."
583         
584         * docs/configopts.html: Explain what "hella versions" means.
585         * docs/install.html: Some tweaks--nice job on this Phil.
586         * docs/documentation.html: Add a direct link to configuration options.
587
588         * src/Makefile.am (OPTIMIZE_CXXFLAGS): Add in extras.
589         * docs/17_intro/RELEASE-NOTES (New): Add.
590         * bits/c++config.h (__GLIBCPP__): Bump version.
591
592         * config/c_io_libio.cc (__basic__file(__c_lock*)): Change argument
593         type to match prototype.
594
595 2000-03-20  Phil Edwards  <pme@sourceware.cygnus.com>
596
597         * docs/install.html:  Update for new funky build procedure.  Move
598           description of 'configure' options to...
599         * docs/configopts.html:  ...here.  New file.
600         * docs/17_intro/howto.html:  Updates for new snapshot.
601         * docs/20_util/howto.html:  Ditto.
602         * docs/21_strings/howto.html:  Ditto.
603         * docs/21_strings/stringtok_std_h.txt:  Fix example typos.
604         * docs/22_locale/howto.html:  Ditto.
605         * docs/23_containers/howto.html:  Ditto.
606         * docs/faq/index.html:  Ditto.
607
608 2000-03-18  Petter Urkedal  <petter@matfys.lth.se>
609             Benjamin Kosnik  <bkoz@gnu.org>
610         
611         * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_SUPPORT): Move code for main
612         to the right place.
613         * aclocal.m4: Regenerate.
614         * configure: Regenerate.
615
616 2000-03-16  Benjamin Kosnik  <bkoz@cygnus.com>
617             scott snyder  <sss@karma.fnal.gov>
618         
619         * config/c_io_libio.h: Add __c_lock.
620         * config/threads-no.h: Same here.
621         * config/threads-posix.h: Add __mutext_type typedef.
622         * config/c_io_libio.cc: basic_file ctor takes lock arg. 
623         * bits/basic_file.h: Ctor takes lock arg. 
624         * bits/std_fstream.h: Add _M_lock.
625         * bits/fstream.tcc: Supply it to basic_file ctor.
626
627         * mkcheck.in (resultstext): Change [[ to [.
628
629         * testsuite/27_io/ostream_inserter_char.cc (test06): Tweak.
630
631         * bits/locale_facets.h: Tweak.  
632
633         * stl/bits/stl_config.h: Fix defines.
634         
635 2000-03-16  Benjamin Kosnik  <bkoz@cygnus.com>
636
637         * mkcheck.in (INC_PATH): Add paths from cpu_include_dir to find
638         atomicity.h
639         * configure: Regenerate.
640         * aclocal.m4: Regnerate.
641         
642 2000-03-16  Nathan Myers  <ncm@zembu.com>
643
644         * bits/string.tcc: Add MT support.
645         * bits/basic_string.h: Same.
646         
647 2000-03-16  Phil Edwards  <pme@sourceware.cygnus.com>
648
649         * configure.in:  Make --enable-namespaces and -libgcc-rebuild=../..
650           the defaults.
651         * configure:  Regenerate.
652
653         * config/solaris/solaris2.7/ctype.cc:  Fix unsigned/signed comparison.
654
655 2000-03-16  Phil Edwards  <pme@sourceware.cygnus.com>
656
657         * acinclude.m4 (GLIBCPP_CHECK_CTYPE):  If Sol2.5 ctype is found, keep
658           checking for 2.[67].  (GLIBCPP_ENABLE_RELIBGCC):  No longer ignore
659           any defaults passed in.
660         * aclocal.m4:  Regenerate.
661
662 2000-03-16  Phil Edwards  <pme@sourceware.cygnus.com>
663
664         * mkcheck.in:  Report total successes and failures.
665
666 2000-03-15  Benjamin Kosnik  <bkoz@cygnus.com>
667
668         * config/cpu: New directory, intended to be used to provide
669         cpu-specific configuration files. In particular, assembly language
670         primitives for thread safety.
671         * config/cpu/alpha: Populate.
672         * config/cpu/alpha/atomicity.h: New file.
673         * config/cpu/arm: Populate.
674         * config/cpu/generic: Populate.
675         * config/cpu/generic/atomicity.h: New file.
676         * config/cpu/hppa: Populate.
677         * config/cpu/i386: Populate.
678         * config/cpu/i386/atomicity.h: New file, take from i486.
679         * config/cpu/m68k: Populate.
680         * config/cpu/mips: Populate.
681         * config/cpu/powerpc: Populate.
682         * config/cpu/powerpc/atomicity.h: New file.
683         * config/cpu/sparc: Populate.
684         * config/cpu/sparc/sparc32: Populate.
685         * config/cpu/sparc/sparc64: Populate.
686         * config/cpu/sparc/sparc32/atomicity.h: New file.
687         * config/cpu/sparc/sparc64/atomicity.h: New file.       
688
689         * src/Makefile.am (myinstallheaders): Add install routines.
690         * acinclude.m4 (GLIBCPP_CHECK_CPU):Add configuration for the
691         cpu dir.
692         * configure.in: Add.
693
694         * config/default: Adopt glibc naming conventions, and so move to
695         * config/generic: Here.
696         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Modify default case to generic.
697         
698 2000-03-15  Bill Thompson  <billt@toast.net>
699
700         * testsuite/27_io/ostream_inserter_char.cc (test06): Add test.
701
702 2000-03-14  Phil Edwards  <pme@sourceware.cygnus.com>
703
704         * docs/17_intro/howto.html:  Add missing "TOC" entry, and new section.
705
706         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Fixup.
707         * aclocal.m4: Regenerate.
708         * configure: Regenerate.
709
710 2000-03-13  scott snyder  <snyder@fnal.gov>
711             Jason Merrill  <jason@cygnus.com>
712         
713         * bits/locale_facets.h (class ctype, class ctype<char>, class
714         ctype<wchar_t>): More mask fixes.
715         * testsuite/22_locale/ctype.cc: Test for the problem.
716
717 2000-03-13  Benjamin Kosnik  <bkoz@cygnus.com>
718
719         * acconfig.h: Add bits.
720         * configure.in: Move AM_PROG_LIBTOOL up in file.
721         Tweak cross compiling info. 
722         * configure: Regenerate.
723
724         * mknumeric_limits (XCOMPILE): Echo compilation line for
725         gen-num-limits.cc
726
727         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add aix checks.
728         * aclocal.m4: Regenerate.
729         * configure: Regenerate.
730         * config/aix/ctype.cc (ctype): Tweak.
731         * config/aix/bits/ctype_base.h (ctype_base): Tweak.
732         * config/aix/bits/ctype_specializations.h: New file.
733
734 2000-03-10  scott snyder  <snyder@fnal.gov>
735
736         * stl/bits/stl_vector.h (_M_assign_aux): Fix for __normal_iterator 
737         conversions.
738         * testsuite/23_containers/vector_modifiers.cc (test01): Add a
739         regression test for the problem.
740
741 2000-03-09  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
742         
743         * testsuite/27_io/streambuf.cc (class testbuf): Same here.      
744         * bits/fpos.h: And here.
745         * bits/std_ostream.h: Same here.
746         * bits/std_istream.h: Same here.
747         * bits/basic_ios.h: Same here.
748         * bits/std_fstream.h: Same here.
749         * bits/sbuf_iter.h (std): Here too.
750         * bits/std_sstream.h: Make types public.
751
752         * src/misc-inst.cc: Use size_t instead of unsigned int. 
753         * bits/locale_facets.tcc (_S_format): For now, cast to char. I
754         suppose this should be ctype::narrow... all the ctype<wchar_t>
755         stuff needs to be cleaned up.
756
757 2000-03-09  Phil Edwards  <pme@sourceware.cygnus.com>
758
759         * docs/gentop:  Remove entire directory, finally.
760
761 2000-03-09  scott snyder  <snyder@fnal.gov>
762
763         * bits/std_cmath.h (modf): Fix pointer overrun.
764         * testsuite/26_numerics/c_math.cc (test04, main): Add a regression 
765         test for the problem.
766
767 2000-03-09  Phil Edwards  <pme@sourceware.cygnus.com>
768
769         Looks like changes to the #include'd files must be followed by a
770         change to the #include'ing files to take effect.  Caveat emptor.
771         * docs/header.html:  New file, for server-side include.
772         * docs/footer.html:  New file, for server-side include.
773         * docs/documentation.html:  Change to use SSI.
774         * docs/download.html:  Ditto.
775         * docs/index.html:  Ditto.
776         * docs/mail.html:  Ditto.
777         * docs/status.html:  Ditto.
778         * docs/thanks.html:  Ditto, plus minor updates.
779         * docs/how.html:  Remove.
780
781 2000-03-09  Benjamin Kosnik  <bkoz@gnu.org>
782
783         Preliminary alpha-linux support.
784         * src/locale.cc (ctype<wchar_t>): Use correct types...
785         * bits/locale_facets.h (ctype<char>): Add __table_type typedef.
786         (ctype<wchar_t>): Same.
787         * bits/locale_facets.h (ctype<wchar_t>): Have char and wchar_t
788         types match for table_size (size_t).
789
790         * config/gnu-linux/ctype.cc (ctype): Change char_type to wchar_t
791         as per char specialization.
792         * config/*/ctype.cc: Same.
793         
794 2000-03-09  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
795
796         * bits/locale_facets.h (_Ctype<>::mask): Import from base class
797         _Ctype_nois<>.  Template base classes are never examinated in
798         first-phase name-lookup. 
799
800 2000-03-08  Benjamin Kosnik  <bkoz@gnu.org>
801
802         Add Solaris 2.5.1 support.
803         * config/solaris/solaris2.5/bits/ctype_base.h (ctype_base): And here.
804         * config/solaris/solaris2.5/ctype.cc: Fixup.
805         * config/solaris/solaris2.5/bits/ctype_specializations.h: Add.
806         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add bits for solaris2.5.1.
807         * aclocal.m4: Regenerate.
808         * configure: Regenerate.
809         
810         * config/default/ctype.cc (ctype): Fixup.
811
812 2000-03-07  Benjamin Kosnik  <bkoz@blues.cygnus.com>
813
814         * testsuite/27_io/filebuf.cc: Activate init code from yesterday...
815         * testsuite/27_io/ostream_inserter_arith.cc (testcases): Fix for
816         non-wchar_t case.
817
818 2000-03-07  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
819
820         * bits/cpp_type_traits.h: Expand on this file purpose.
821
822 2000-03-06  Benjamin Kosnik  <bkoz@gnu.org>
823
824         * bits/locale_facets.h (ctype<char>): Remove static members, and
825         re-work initialization code.
826         (ctype<wchar_t>): Same.
827         Move _S_touppper to _M_toupper and initialize in ctor.
828         Move _S_tolower  to _M_tolower and initialize in ctor.  
829         Move _S_table to _M_ctable and intialize in ctor.
830         * bits/locale_facets.h (std): And here.
831         * src/locale.cc (std): Tweak.
832         * config/gnu-linux/ctype.cc: Change initialization here.
833         * config/newlib/ctype.cc: And here.
834         * config/solaris/solaris2.7/ctype.cc: And here.
835         * config/solaris/solaris2.6/ctype.cc: And here.
836         
837         * bits/localefwd.h: Tweak.
838         * bits/std_streambuf.h: Tweak formatting.
839
840         * testsuite/27_io/filebuf.cc: Remove BUFSIZ dependancies.
841
842 2000-03-05  Chip Salzenberg  <chip@valinux.com>
843
844         * src/misc-inst.cc (basic_iostream<>):  Instantiate.
845
846 2000-03-02  Phil Edwards  <pme@sourceware.cygnus.com>
847             Kevin Atkinson  <kevinatk@home.com> 
848
849         Initial grab of SGI's strstream implementation with minor
850         modifications.
851         * src/strstream.cc:  New file.
852         * std/strstream:  New file.
853         * stl/bits/std_strstream.h:  New file.
854         * bits/std_streambuf.h:  Add public access.
855         * src/Makefile.am:  Add strstream sources to list of dependancies.
856         * src/Makefile.in:  Regenerate.
857
858 2000-03-03 2000  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
859
860         * bits/valarray_meta.h: Fix typo.
861         
862 2000-03-02  Alexandre Oliva  <oliva@lsd.ic.unicamp.br> 
863             Chip Salzenberg  <chip@valinux.com>
864             Petter Urkedal  <petter@matfys.lth.se>
865
866         * src/Makefile.am (myinstallheaders): Hack to avoid
867         `for i in ; do'.
868         * src/Makefile.in: Regenerate.
869         
870 2000-03-02  Chip Salzenberg  <chip@valinux.com>
871
872         * libio/Makefile.an, math/Makefile.an, src/Makefile.am
873         (LINK): Put quotes around "$(CC)" for libtool link mode,
874         so libtool will use "-B" options during GCC bootstrap.
875         * */Makefile.in: Regenerate.
876         
877 2000-03-02  Petter Urkedal  <petter@matfys.lth.se>
878
879         * config/c_io_libio.h: Enclose it all in ::std.
880         * bits/basic_string.h (basic_string<>): Make types and
881         `npos' public.
882         * mkc++config: Truncate output file before writing.
883
884 2000-03-01  Benjamin Kosnik  <bkoz@gnu.org>
885
886         * math/cabsf.c (__mycabsf): Rename to cabsf.
887         * math/cabs.c (__mycabs): Rename to cabs.
888
889 2000-02-29  LLeweLLyn Reese  <llewelly@198.dsl.xmission.com>
890  
891        * bits/basic_string.h: Move declarations of __out_of_range(),
892        __length_error() and accompanying macros ...
893        * bits/exception_support.h: here. (Newly created file).
894        * bits/basic_string.h: #include <bits/exception_support.h>
895        * stl/bits/stl_vector.h: #include <bits/exception_support.h>
896        * src/Makefile.am (headers): Add.
897        * src/Makefile.in: Regenerate.
898         
899 2000-02-29  Benjamin Kosnik  <bkoz@cygnus.com>
900         
901         * bits/cpp_type_traits.h: Rename structs so they don't clash with
902         type_traits.h.
903         * bits/valarray_array.h: Synch. Fix typos.
904
905         * libio/Makefile.am: Change to only compile source files that
906         config/c_io_libio.cc actually needs.
907         * libio/Makefile.in: Regnerate.
908         * libio/PlotFile.hes SFile.h builtinbuf.h editbuf.h floatconv.c
909         floatio.h fstream.h indstream.h iofclose.c iofdopen.c iofeof.c
910         ioferror.c iofflush.c iofgetpos.c iofgets.c iofopen.c iofprintf.c
911         iofputs.c iofread.c iofscanf.c iofsetpos.c ioftell.c iofwrite.c
912         iogetc.c iogetdelim.c iogetline.c iogets.c ioignore.c iomanip.h
913         iopadn.c ioperror.c iopopen.c ioprims.c ioprintf.c ioputc.c
914         ioputs.c ioscanf.c ioseekoff.c ioseekpos.c iosetbuffer.c
915         iosetvbuf.c iosprintf.c iosscanf.c iostream.h iostrerror.c
916         ioungetc.c iovfprintf.c iovfscanf.c iovsprintf.c iovsscanf.c
917         istream.h list.out ostream.h outfloat.c parsestream.h peekc.c
918         pfstream.h procbuf.h stdiostream.h stream.h streambuf.h strfile.h
919         strops.c strstream.h: Delete.
920
921         * bits/basic_file.h: Stub out or delete unused bits in this
922         interface.
923         (filepos_beg): Remove.  
924         (filepos_cur): Remove.
925         (filepos_valid): Remove.
926         * config/c_io_libio.cc: Resynch with the changes to basic_file.
927
928 2000-02-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
929
930         * bits/cpp_type_traits.h: Correct typo.
931
932 2000-02-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
933
934         * bits/cpp_type_traits.h: New file.
935         
936         * bits/valarray_array.h: Tweak.  #include <bits/cpp_type_traits.h>
937         Improve array construction.
938         (_Array_default_ctor): New dispatcher class. 
939         (__valarray_default_construct): New function.
940         (_Array_copy_ctor): New dispatcher class.
941         (__valarray_copy_construct): New function.
942         (_Array<>::free_data): Remove.
943
944         * src/Makefile.am (headers): Add cpp_type_traits.h
945         * src/Makefile.in: Regenerate.
946
947 2000-02-28  Benjamin Kosnik  <bkoz@cygnus.com>
948
949         Prune libio directory to match files in libio/Makefile.
950         * libio/PlotFile.cc,indstream.cc, isgetsb.cc, sbform.cc,
951         stream.cc, SFile.cc, ioassign.cc, isscan.cc, sbgetline.cc,
952         streambuf.cc, builtinbuf.cc, ioextend.cc, osform.cc, sbscan.cc,
953         strstream.cc, editbuf.cc, iomanip.cc, parsestream.cc,
954         stdiostream.cc, filebuf.cc, iostream.cc, pfstream.cc,
955         stdstrbufs.cc, fstream.cc, isgetline.cc, procbuf.cc,
956         stdstreams.cc: Remove.
957         * libio/floatio.h, iolibio.h, iostdio.h, iostreamP.h: Remove.
958         * libio/iofflush_u.c: Remove.
959         
960         * libio/dbz: Remove.  
961         * libio/include: Remove.  
962         * libio/stdio: Remove.  
963         * libio/tests: Remove.  
964         * libio/testsuite: Remove.
965         
966         * config/c_io_libio.cc: Add fcntl.h include for Solaris.
967
968         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Add bits.
969         * configure.in: Replace 'grep -e' with 'grep' for Solaris.
970         * configure: Regenerate.
971
972 2000-02-25  Benjamin Kosnik  <bkoz@gnu.org>
973
974         Abstract out the underlying "C" io bits.
975         * bits/std_new.h: Remove <stl_config> include, as well as <cstddef>.
976         * stl/bits/stl_string_fwd.h: Remove <stddef> include.
977         * bits/std_cwchar.h: Wrap with _GLIBCPP_USE_WCHAR_T guards. Don't
978         include <cstddef>.
979         * stl/bits/stl_config.h: Don't include _G_config.h.
980
981         * bits/basic_file.h: Allow for non-inheritance based __basic_files.
982         * config/c_io_libio.h (_GLIBCPP_BASIC_FILE_INHERITANCE): Define.
983         * config/c_io_libio.cc: Tweak.
984
985         * src/Makefile.am (TOPLEVEL_INCLUDES): Add includedir.
986         * src/Makefile.in: Regenerate.
987         * Makefile.am (AM_MAKEFLAGS): Define includedir so that
988         prefix/include files will be picked up.
989         * Makefile.in: Regenerate.
990         * math/Makefile.am (TOPLEVEL_INCLUDES): And here.
991         * libio/Makefile.am (TOPLEVEL_INCLUDES): And here.
992         
993         * bits/std_ios.h: Include <bits/c++io.h> instead of libio.
994         * bits/fpos.h: And here.        
995         * bits/basic_file.h (get_fileno): Move definition from ...
996         * src/basic_file.cc (std): To here.
997         * bits/fpos.h: Move types for streamoff, streampos to..
998         * bits/basic_file.h: Move __c_file_type and fpos typedefs to...
999         * config/c_io_libio.h: ...here.
1000         (_GLIBCPP_[BOOLALPHA, HEX, DEC, FIXED, INTERNAL, LEFT, OCT, RIGHT,
1001         SCIENTIFIC, SHOWBASE, SHOWPOINT, SHOWPOS, SKIPWS, UNITBUF,
1002         UPPERCASE, ADJUSTFIELD, BASEFIELD, FLOATFIELD, BADBIT, EOFBIT,
1003         FAILBIT, GOODBIT, APP, ATE, BINARY, IN, OUT, TRUNC): New macros to
1004         abstract out bits in ios_base.
1005         * bits/ios_base.h: Re-macrofy.  
1006         * src/basic_file.cc : Rename, move to
1007         * config/c_io_libio.cc: Here. 
1008         * config/c_io_libio.h: New file. Include libio.
1009         * bits/c++config.h: Don't define _GLIBCPP_USE_LIBIO.
1010         * configure.in (blddir): Add enabling bits for GLIBCPP_ENABLE_CSTDIO.
1011         * configure: Regenerate.
1012         * src/Makefile.am (sources): Take out basic_file.cc and add c++io.cc.
1013         (generated_headers): Add c++io.h
1014         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): New function to select
1015         underlying "C" io library.
1016         * acinclude.m4 (GLIBCPP_CHECK_LIBIO): Roll functionality into
1017         GLIBCPP_ENABLE_CSTDIO.
1018         
1019         * configure.in: Add configure bits for cross compiling non-newlib
1020         targets. .
1021         GLIBCPP_CHECK_COMPILER_VERSION: Take out this test for this
1022         target, as we assume g++ support is not the limiting factor.
1023         GLIBCPP_CHECK_LIBIO: Same, know we don't need libio.  
1024         * configure: Regenerate.
1025         
1026 2000-02-22  Benjamin Kosnik  <bkoz@cygnus.com>
1027
1028         * Makefile.am (INTERFACE): Define.
1029         * Makefile.in: Regenerate.
1030         * libio/ChangeLog: Add entry.
1031
1032 2000-02-21  Benjamin Kosnik  <bkoz@cygnus.com>
1033
1034         * docs/install.html: Update install directions.
1035
1036         * docs/status.html: Fix sidebar to be consistent.
1037         * docs/thanks.html: Same.
1038         * docs/links.html: Same.
1039         * docs/mail.html: Same.
1040         * docs/download.html: Same.
1041
1042         * testsuite/27_io/filebuf.cc: Change BUFSIZ to buffer_size, and
1043         kill the macro BUFSIZ. I think the solaris fails lie elsewhere
1044         however, in the ctype_char_members.cc fail (for instance.)
1045         * testsuite/17_intro/headers.cc: Remove extraneous fails for hosts
1046         that do not have wchar_t enabled.
1047         * testsuite/27_io/ostream_inserter_arith.cc (struct _TestCase):
1048         Same here.
1049         * testsuite/27_io/iostream_objects.cc: And here.
1050
1051         * libio/gen-params (CONFIG_NM): Specifically add in nm as the
1052         default CONFIG_NM.
1053         
1054 2000-02-18  Benjamin Kosnik  <bkoz@haight.constant.com>
1055             Tom Tromey  <tromey@cygnus.com>
1056
1057         * configure.in: Manually add MULTISUBDIR.
1058         * configure: Regenerate.
1059         * src/Makefile.am (MULTISUBDIR): Add the lesser evil of Tom's two
1060         "Eww" hacks to get multilib installs working correctly.
1061         ($(headers): Test for MULTISUBDIR before installing.
1062         * Makefile.am (AM_MAKEFLAGS): Don't define MULTISUBDIR, instead
1063         have configure hack it in.
1064         * Makefile.in: Regenerate.
1065         * acinclude.m4 (GLIBCPP_CXXFLAGS): Tweak wording. 
1066         Add enabling bits for native Cygwin ctypes, and other newlib-based
1067         Oses.
1068         
1069 2000-02-17  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
1070
1071         * mkc++config (OUT_H): Remove EOF in cygwin.
1072         * acinclude.m4 (LIBS): Tweaks to allow cygwin to configure.
1073
1074         Tom Tromey  <tromey@cygnus.com>
1075         * src/Makefile.am: Tweaks for installing multilibs.
1076
1077 2000-02-17  Benjamin Kosnik  <bkoz@cygnus.com>
1078
1079         * src/Makefile.am: 
1080         (toolexeclib_LTLIBRARIES): Use this instead of lib_LTLIBRARIES.
1081         Add USE_LIBDIR bits here, not...
1082         * src/Makefile.in: Regenerate.
1083         * Makefile.am: ...here.
1084         * Makefile.in: Regenerate.
1085         
1086 2000-02-17  Benjamin Kosnik  <bkoz@gnu.org>
1087
1088         * acinclude.m4 (LIBS): Fix typos.
1089         * configure.in: _GLIBCPP_BUGGY_FLOAT_COMPLEX,
1090         _GLIBCPP_BUGGY_COMPLEX for crosses.
1091         * src/Makefile.am (std_headers): Add libio.h as install include,
1092         as with _G_config.h
1093         * src/Makefile.in: Regenerate.
1094
1095         * mkcheck.in: Add bits to set CXX to cross compiler.
1096
1097         * src/complex_io.cc: Tweak.
1098         * configure.in: _GLIBCPP_BUGGY_COMPLEX for crosses.
1099         * configure: Regenerate.
1100         
1101         * config/newlib/ctype.cc: Tweaks.
1102         * config/newlib/bits/ctype_base.h (ctype_base): Set mask to char,
1103         not const char.
1104         * src/complex_io.cc (operator>>(istream, complex): Define out if
1105         BUGGY_COMPLEX.
1106
1107 2000-02-16  Benjamin Kosnik  <bkoz@cygnus.com>
1108
1109         * config/newlib/bits/ctype_base.h: Correct _S_table.
1110
1111         Reconfigure ctype support for "C" libraries that don't use arrays.
1112         * testsuite/22_locale/ctype_char_members.cc: New file. Test for
1113         basic ctype<char> functionality.
1114         * src/locale.cc: Move host-specific ctype functions that are not
1115         inlines to config/*/ctype.cc files.
1116         (ctype<char>::do_tolower): For instance.
1117         (ctype<char>::do_toupper): For instance.
1118         (ctype<wchar_t>::do_tolower): For instance.
1119         (ctype<wchar_t>::do_toupper): For instance.
1120         * config/gnu-linux/ctype.cc: Modify.
1121         * config/default/ctype.cc: Modify.
1122         * config/newlib/ctype.cc: Modify.
1123         * config/solaris/solaris2.6/ctype.cc: Modify.
1124         * config/solaris/solaris2.7/ctype.cc: Modify.
1125
1126         * bits/locale_facets.h (ctype<char>::is): Mark inline, move
1127         out-of-line.
1128         (ctype<char>::scan_is): Here too.
1129         (ctype<char>::scan_not): Here too.
1130         Move out of line defs to config/*/bits/ctype_specializations.h.
1131         * config/gnu-linux/bits/ctype_specializations.h: ...here. New file.
1132         * config/default/bits/ctype_specializations.h: ...here. New file.
1133         * config/newlib/bits/ctype_specializations.h: ...here. New file.
1134         * config/solaris/solaris2.6/bits/ctype_specializations.h: New file.
1135         * config/solaris/solaris2.7/bits/ctype_specializations.h: New file.
1136         * src/Makefile.am (headers): Add ctype_specializations.h.
1137         * src/Makefile.in: Regenerate.
1138         
1139         Aaron Weiss <weiss@clearway.com> 
1140         * Makefile.am (AM_MAKEFLAGS): Add NM_FOR_BUILD, NM_FOR_TARGET, and
1141         CONFIG_NM for Solaris builds.
1142         * Makefile.in: Regenerate.
1143         
1144         * src/locale.cc: Tweak formatting.
1145
1146 2000-02-15  Benjamin Kosnik  <bkoz@cygnus.com>
1147
1148         Jim Parsons  <parsons@clearway.com> 
1149         * testsuite/27_io/istream_unformatted.cc (test06): Add test.
1150         * bits/istream.tcc (read): Set failbit if !good(). Don't increment
1151         gcount if eof.
1152         (readsome): Same.
1153
1154         Michel Decima  <michel.decima@cnet.francetelecom.fr>
1155         * testsuite/27_io/streambuf.cc: Add test.
1156         * bits/streambuf.tcc (xsgetn): Don't test for valid mode.
1157         (xsputn): Same.
1158         
1159         * src/Makefile.am (AM_CXXFLAGS): Pass down AC_CXXFLAGS,
1160         OPTIMIZE_CXXFLAGS, etc. So --enable-debug and --enable-namespaces
1161         will work correctly, for instance.
1162         * src/Makefile.in: Regenerate.
1163
1164         * bits/locale_facets.h: Fix merge error.
1165         (num_put::put(unsigned long long): And here.
1166         * mknumeric_limits (trait_name): Same.
1167         
1168 2000-02-15  Chip Salzenberg  <chip@valinux.com>
1169
1170         Support 'configure --enable-long-long'.
1171         * bits/c++config.h (_GLIBCPP_USE_LONG_LONG): Remove.
1172         * stl/bits/stl_config.h (__STL_LONG_LONG): Remove '#if 0'.
1173         * acconfig.h (_GLIBCPP_USE_LONG_LONG): Add.  Default to undef.
1174         * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Define flag macro.
1175         * configure.in (GLIBCPP_ENABLE_LONG_LONG): Use it.
1176
1177         * aclocal.m4: Regenerate.
1178         * config.h.in: Regenerate.
1179         * configure: Regenerate.
1180
1181 2000-02-15  Chip Salzenberg  <chip@valinux.com>
1182
1183         Improve (complete?) 'long long' support.
1184         * mknumeric_limits: Call $CXX with $CPPFLAGS.  Define statics
1185         for {,unsigned} long long if the limits header declares them.
1186         * src/gen-num-limits.cc: Include <bits/c++config.h> early.
1187         (__USE_GNU, _GNU_SOURCE): Define if _GLIBC_USE_LONG_LONG.
1188         (long long, unsigned long long): Gen limits if _GLIBC_USE_LONG_LONG.
1189         * bits/locale_facets.h (num_get<>::get(..., long long &)): Define.
1190         (num_put<>::put(..., long long)): Likewise.
1191         (num_put<>::put(..., unsigned long long)): Likewise.
1192         * bits/locale_facets.tcc (_S_format): Rename from _S_format_long.
1193         Templatize last parameter to support 'long long'.
1194         (num_put<>::put(...)): Call _S_format with new name.
1195         (num_put<>::put(..., long long)): Define.
1196         (num_put<>::put(..., unsigned long long)): Likewise.
1197         * src/locale-inst.cc (_S_format): Instantiate under new name.
1198
1199 2000-02-15  Petter Urkedal  <petter@matfys.lth.se>
1200
1201         * src/complex.cc (operator<<, operator>>): Moved from here...
1202         * src/complex_io.cc: ...to new file.
1203         (operator>>): Stub replaced by the real thing.
1204         * src/Makefile.am (sources): Inserted complex_io.cc.
1205         * src/Makefile.in: Regenerate.
1206         * testsuite/26_numerics/complex_inserters_extractors.cc: Check it.
1207
1208 2000-02-14  Benjamin Kosnik  <bkoz@gnu.org>
1209
1210         Add in ctype information for newlib "C" libraries.
1211         * config/newlib: New directory
1212         * config/newlib/bits/ctype_base.h: New file.
1213         * config/newlib/ctype.cc: New file.
1214
1215         * ctype/config/linux/*: Rename, move to...
1216         * ctype/config/gnu-linux/*: Here.
1217         
1218         Finish off multilib work.
1219         * configure.in: Don't set CXX if not Canadian cross.
1220         * configure: Regenerate.
1221         * acinclude.m4 (GLIBCPP_CHECK_LIBIO): Tweak messages.
1222         * aclocal.m4: Regenerate.
1223         * config.h.in: Regenerate.
1224
1225         * install-sh: Remove, as AC_CONFIG_AUX_DIR(..) picks this out of
1226         the top-level gcc directory now.
1227         * mkinstalldirs: Remove.
1228         * missing: Remove
1229         * ltconfig: Remove.
1230         * ltmain.sh: Remove.
1231         * config.guess: Remove.
1232         * config.sub: Remove.
1233         
1234 2000-02-13  Benjamin Kosnik  <bkoz@cygnus.com>
1235
1236         * configure.in (glibcpp_basedir): Add glibcpp_basedir.
1237         * Makefile.am: Move mutlilib stuff to src/Makefile.am. 
1238         * Makefile.in: Regenerate.
1239         * src/Makefile.am: Add multilib bits.
1240         * src/Makefile.in: Regenerate.
1241         
1242 2000-02-12  Benjamin Kosnik  <bkoz@cygnus.com>
1243
1244         * configure.in: Clean, add some multilib support.
1245         * configure: Regenerate.
1246         * configure.host: New file.
1247
1248         * acinclude.m4: GLIBCPP_CHECK_LIBIO. Take bits from configure.in and 
1249         roll a new function, checks for presence of libio.
1250         GLIBCPP_CHECK_COMPILER_VERSION: Same.
1251         GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT: Same.
1252         GLIBCPP_CHECK_MATH_SUPPORT: Same.
1253         GLIBCPP_CHECK_WCHAR_T_SUPPORT: Same.
1254         GLIBCPP_CHECK_LIBIO: Same.
1255         GLIBCPP_CHECK_CTYPE: Same.
1256         * aclocal.m4: Regenerate.
1257         * config.h.in: Regenerate.      
1258
1259         * Makefile.am: Tweaks.
1260         * Makefile.in: Regenerate.
1261         
1262 2000-02-11  Benjamin Kosnik  <bkoz@cygnus.com>
1263
1264         * configure.in: Make outputing the libio/Makefile
1265         conditional. Haha, yeah right. Anyway, we instead do this thing
1266         where if libio is found, then we build a null library, as there is
1267         no point in duplicating the found libio.
1268         * Makefile.am: Tweak.
1269         * Makefile: Regenerate.
1270         * libio/Makefile.am: Add _G_config.h stuff. Now cross compilers
1271         are happy happy happy.
1272         * libio/Makefile.am: Regenerate.
1273         * libio/gen-params: New file.
1274         * src/Makefile.am: Make libio.la non-conditional, as it is now a
1275         null library if it's not needed. At least we are being consistent,
1276         if not as elegant as we could be.
1277         * src/Makefile: Regenerate.
1278         
1279 2000-02-10  Benjamin Kosnik  <bkoz@gnu.org>
1280
1281         * Makefile.am (SUBDIRS): Add libio again.
1282         * Makefile.in: Regenerate.
1283         * configure.in (BUILD_LIBIO_INCLUDE): And here.
1284         (AC_OUTPUT): Generate libio/Makefile again.
1285         * configure: Regnerate.
1286         * src/Makefile.am (libstdc___la_LIBADD): Change path so that
1287         libio.la is referring back to the libio subdir again.
1288         (LIBIO_INCLUDES): And here.
1289         * src/Makefile.in: Regenerate.
1290         
1291 2000-02-09  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
1292
1293         * math/complex-stub.h: Missed one. Change __mycabs* to cabs*.
1294
1295 2000-02-09  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
1296
1297         * bits/valarray_array.h (<bits/std_new.h>): #include.
1298         (__valarray_get_memory): New function.
1299         (__valarray_release_memory): Likewise.
1300         (__valarray_default_construct): New functions.
1301         (__valarray_fill_construct): New function.
1302         (__valarray_copy_construct): New funstions.
1303         (__valarray_destroy_elements): New function.
1304
1305         * bits/valarray_array.tcc (__valarray_copy_construct): New
1306         functions. 
1307
1308         * bits/std_valarray.h (valarray<>::valarray): Use
1309         __valarray_get_memory and __valarray_fill_construct,
1310         __valarray_copy_construct, __valarray_default_construct to
1311         properly construct valarrays.  
1312         (valarray<>::~valarray): Use __valarray_destroy_elements to
1313         destroy elements and __valarray_release_memory to return memory.
1314         (valarray<>::shift): Tweak. 
1315         (valarray<>::cshift): Likewise.
1316         (valarray<>::resize): Robustify.
1317
1318 2000-02-09  Benjamin Kosnik  <bkoz@cygnus.com>
1319
1320         * mknumeric_limits (XCOMPILE): Add support for cross compiling.
1321         * bits/limits_generic.h: New file, defaults.
1322         * src/limits_generic.cc: New file, defaults.    
1323         * configure.in (LIBS): Run mknumeric_limits at configure time.
1324         * acconfig.h: Remove PACKAGE VERSION HAVE_COMPLEX
1325         HAVE_LC_MESSAGES, tidy, clean, etc.
1326         * src/Makefile.am (geberated_sources): Remove.
1327
1328         * bits/fpos.h: Use _GLIBCPP_USE_LIBIO guards for libio typenames
1329         (_IO_off_t, _IO_ssize_t)
1330
1331         * src/complex.cc: Use glibc's <complex.h> if
1332         possible. . . apparently this was not being done before. Include
1333         tweaks.
1334         (abs): Enable cabs if it's around, instead of mycabs.
1335         * src/complexf.cc (FCT): Add global scope to match complex.cc.
1336         * src/complexl.cc (FCT): Same.
1337         * math/Makefile.am (EXTRA_LONG_DOUBLE_yes): Change mycabsl to cabsl.
1338         (libmath_la_SOURCES): And here.
1339         * math/(mycabs.c, mycabsf.c, mycabsl.c): Move to. . .
1340         * math/(cabs.c, cabsf.c, cabsl.c): . . . Here.
1341         * math/complex-stub.h: Move c_log declarations into. . . 
1342         * math/mathconf.h: Here. This is because glibc's <complex.h>
1343         declares cclog, not c_log. The case of the dueling standards. . .
1344         * math/mathconf.h: Add _GLIBCPP_HAVE_* to macros.
1345         * math/Makefile.am: Change.
1346         * math/nan.c (nan): Change signature.
1347         * math/mathconf.h (NAN): Same.
1348         * math/complex-stub.h (nan): And here.
1349         
1350         * Makefile.am (rebuild-stamp): Remove libio and libio
1351         dependancies.  Plan to take out libio subdir and just merge with
1352         libio in top level gcc directory. Of course, this assumes there is
1353         a libio in the top level directory (ie ../src_dir). This will
1354         probably change the way this library is configured by default.
1355         * libio/*: Remove.
1356
1357 2000-02-09  Chip Salzenberg  <chip@valinux.com>
1358
1359         * localefwd.h (locale): Make public: facet, id, category.
1360         
1361 2000-02-09  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
1362
1363         * testsuite/26_numerics/buggy_complex.cc: Fix Origin:.
1364
1365         * acinclude.m4: Patch only once!
1366
1367 2000-02-09  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
1368
1369         * testsuite/26_numerics/buggy_complex.cc: New file.
1370
1371 2000-02-05  Petter Urkedal  <petter@matfys.lth.se>
1372
1373         * acinclude.m4: New GLIBCPP_CHECK_COMPLEX_SUPPORT macro. Based
1374         on the 1999-11-21 entries by Mumit Khan.
1375         * configure.in: Use.
1376         * acconfig.h: New _GLIBCPP_BUGGY_COMPLEX macro.
1377         * bits/std_complex.h: Use.
1378         
1379 2000-02-04  Philip Martin <pm@corris.dircon.co.uk>
1380
1381        * stl/bits/stl_algobase.h: Add traits based dispatch for
1382        __normal_iterator in the copy_backward()algorithm
1383        * stl/bits/stl_vector.h: Reduce use of __normal_iterator
1384        base() function.
1385
1386 2000-02-04  Mumit Khan  <khan@xraylith.wisc.edu>
1387         
1388         * src/gen-num-limits.cc (signal_handler): Work around signal
1389         handling problem on Cygwin. 
1390         Thanks to Chris Faylor <cgf@cygnus.com>.
1391
1392 2000-02-03  Benjamin Kosnik  <bkoz@cygnus.com>
1393
1394         * configure.in: Add (preliminary) support for cross compiles and
1395         multilibs.
1396         Remove AC_C_BIGENDIAN tests. Why is this necessary? Cross
1397         compilation freaks on this.
1398         * configure: Regenerate.
1399         * src/Makefile.am: Add support for cross compiles.
1400         * src/Makefile: Regenerate.
1401         * Makefile.am: Add support for cross compiles.
1402         * Makefile.in: Regenerate.
1403         
1404 2000-02-02  Benjamin Kosnik  <bkoz@cygnus.com>
1405
1406         * configure.in (LIBS): Remove unused subdirs.   
1407         * configure: Regenerate.
1408         * Makefile.am (SUBDIRS): And here.
1409         * Makefile.in: Regenerate.
1410         * src/Makefile.am (sources): And here.
1411         * src/Makefile.in: Regenerate.
1412         * string/*: Remove.
1413         * amm1/*: Remove.
1414         * generic/*: Remove.
1415         * glibc/*: Remove.
1416         * mkcheck.in (INC_PATH): Include $BUILD_DIR before any source dirs.
1417
1418         * libtool: Update to libtool-1.3.4.
1419         * ltconfig: Same
1420         * ltmain.sh: Same
1421         * config.sub: Same.
1422         * config.guess: Same.
1423
1424 2000-02-02  Benjamin Kosnik  <bkoz@cygnus.com>
1425             Alexandre Petit-Bianco  <apbianco@cygnus.com>    
1426
1427         * mkc++config: New file. Put autoconf macros into _GLIBCPP_
1428         namespace instead of polluting global namespace with duplicate
1429         autoconf output.
1430         * configure.in (AC_OUTPUT): Don't need to generate bits/config.h
1431         here anymore. . .
1432         (AC_OUTPUT_COMMANDS): Make it here.
1433         * configure: Regenerate.
1434         * bits/c++config.h.in (_CPP_CPPCONFIG): Change. Tweak. Remove
1435         endif, as now we will add it manually.
1436         Move to this file. . .
1437         * bits/c++config.h: New file. Same as old c++config.h.in except
1438         the ending macro guard is now appended manually.
1439
1440         * bits/locale_facets.tcc: Change HAVE_* macros to _GLIBCPP_HAVE_*.
1441         * bits/std_cmath.h: Same here.
1442         * bits/std_cwchar.h: And here.
1443         * src/locale.cc: And here.
1444         * src/complexl.cc: And here.
1445         * math/mathconf.h: Change to include "config.h" instead of
1446         bits/c++config.h.
1447         
1448 2000-02-01  Benjamin Kosnik  <bkoz@gnu.org>
1449
1450         * configure.in: Add support for threads. Try a model closer to
1451         libjava, as hopefully if the thread bits are added carefully
1452         enough, the source code will not have gross hacks. Besides, the
1453         libstdc++-v2 model could be easily emulated without the necessity
1454         of linking files in (as currently done)--all that needs to be done
1455         is AC_DEFINE(-D_PTHREADS) etc. However, let's try something
1456         new. . . and see if we arrive at a more elegant solution.
1457         * configure: Regenerated.
1458         * config/threads-no.h: New file. 
1459         * config/threads-posix.h: New file. 
1460         * src/Makefile.am (myinstallheaders): Install c++threads.h.
1461         * src/Makefile.in: Regenerated.
1462         
1463 2000-01-31  Benjamin Kosnik  <bkoz@gnu.org>
1464
1465         META-QUESTION: Can we just make a "header.html" file and a
1466         "footer.html" and just include them in all the doc sub-pages. The
1467         duplication of the header info is kind of gross, and weak
1468         considering that if you change order or layout then all this stuff
1469         has to be changed in all the sub-files.
1470
1471         * docs/17_intro/contribute.html: Take out duplicate file info.
1472         * README: Should just contain a link to the docs/index.html
1473         page. Duplicate information removed.
1474         * docs/faq/index.html: Remove indexes into HOWTOS.
1475         * docs/17_intro/howto.html: Make intro and docs part more
1476         centralized. Move intro stuff to documentation.html.
1477         * docs/how.html: Tweak. Does this file need to exist? What calls it?
1478         * docs/README.html: Move documentation files to
1479         documentation.html. Should this file be renamed
1480         "config_and_install.html" as that is what is apparently covered
1481         here. . .
1482         * docs/install.html: Yes. New file, moved and renamed README.html.
1483         * docs/documentation.html: New file. This is the index file for
1484         the documentation.
1485         * docs/index.html: Edit sidebar order. Insert new link to new
1486         documentation spine, documentation.html.
1487
1488 2000-01-31  Scott Snyder  <snyder@fnal.gov>
1489
1490         * bits/istream.tcc (operator>>(istream&, string&)): Set failbit if 
1491         we don't extract any characters.
1492         * testsuite/21_strings/inserters_extractors.cc (main): New tests.
1493         
1494 2000-01-31  Anders Widell  <awl@hem.passagen.se>
1495
1496         * stl/bits/std_bitset.h (_M_do_left_shift): Handle case when shift
1497         step is a multiple of the word size.
1498         (_M_do_right_shift): Same.
1499         * testsuite/23_containers/bitset_shift.cc: New file.
1500         
1501 2000-01-31  Nathan Myers  <ncm@zembu.com>
1502         
1503         * README (Documentation): Add path info, fix typos.
1504         
1505 2000-01-26  Benjamin Kosnik  <bkoz@redhat.com>
1506         
1507         * bits/locale_facets.tcc (num_get::_M_extract): Add the freaking
1508         crazy group checking for numpunct, for real this time. At some
1509         point, the local variable __grp should probably get replaced a
1510         char array, or something a bit more lightweight.
1511         (num_get::do_get(bool)): Simplify. Don't set bool reference to
1512         parsed value unless err isn't failbit.
1513         (num_get::do_get(*)): Same, make consistent.
1514
1515         Nathan Myers  <ncm@zembu.com>
1516         Jim Parsons  <parsons@clearway.com>
1517         * testsuite/27_io/istream_extractor_arith.cc (test08): Add
1518         more grouping tests, tweak, scold, wine.
1519         
1520 2000-01-24  Benjamin Kosnik  <bkoz@gnu.org>
1521
1522         * testsuite/27_io/istream_extractor_arith.cc (test07): Add
1523         grouping tests.
1524         * bits/locale_facets.tcc (num_get::_M_extract): Change to fix
1525         grouping bugs. Only allow thousands_sep if _M_use_groupings is
1526         true.
1527
1528         via <llewelly@198.dsl.xmission.com>
1529         * stl/bits/stl_vector.h (vector::_M_range_check): Throw
1530         out_of_range instead of range_error.
1531
1532 2000-01-17  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
1533
1534         * bits/std_iomanip.h (setw): Fix typo.
1535
1536 2000-01-14  Benjamin Kosnik  <bkoz@gnu.org>
1537
1538         * testsuite/27_io/istream_extractor_arith.cc: Fix.
1539         * bits/locale_facets.tcc (do_get(...void)): Change to strtoul.
1540         * testsuite/27_io/istream_unformatted.cc (test04): Tweak.
1541         
1542 2000-01-14  Phil Edwards  <pme@sourceware.cygnus.com>
1543
1544         * docs/README.html:  Reformat, more installation instructions.
1545         * docs/gccrebuild.html:  New file.
1546         * docs/faq/index.html:  Update for new testsuite output filenames.
1547         * docs/faq/index.txt:  Regenerate.
1548
1549 2000-01-14  Phil Edwards  <pme@sourceware.cygnus.com>
1550
1551         * Makefile.am (rebuild-stamp, all-local):  New targets.
1552         * Makefile.in:  Regenerated.
1553         * acinclude.m4:  New macro, GLIBCPP_ENABLE_RELIBGCC.
1554         * aclocal.m4:  Regenerated.
1555         * configure.in:  Call new macro.  Also do some sanity checks
1556           for combinations of --enable's that may not make sense.
1557         * configure:  Regenerated.
1558
1559 2000-01-13  Benjamin Kosnik  <bkoz@cygnus.com>
1560
1561         * testsuite/27_io/istream_extractor_arith.cc: Add checks for void*.
1562         * bits/locale_facets.tcc (do_get::(...void)): Set fmtflags
1563         correctly for hex-formatted input.
1564
1565         * testsuite/27_io/istream_manip.cc (test01): Fix, as per setting
1566         eofbit instead of eofbit | failbit.
1567         * testsuite/27_io/istream_unformatted.cc (test04): Fix, as
1568         ifstreams now are opened or'd with ios_base::in (as is correct).
1569         * bits/fstream.tcc (filebuf::seekoff): Simplify.
1570         * testsuite/27_io/ios_base_members_static.cc (test01): Fix thinko.
1571
1572 2000-01-12  Benjamin Kosnik  <bkoz@gnu.org>
1573
1574         * bits/std_fstream.h: Add ios_base as a friend to basic_filebuf.
1575         * bits/basic_file.h (basic_file::filepos_cur): Remove incorrect
1576         (misleading) code.
1577         (__basic_file::filepos_valid): Same.
1578         (__basic_file::filepos_beg): Same.
1579         (__baseic_file::get_fileno): New function.
1580         * bits/ios_base.h (ios_base::sync_with_stdio): Implement, including
1581         feedback from LWG 49.
1582         * src/ios.cc: Move definition here.
1583         * testsuite/27_io/ios_base_members_static.cc (test01): Add tests.
1584         
1585         * bits/std_sstream.h (_M_really_sync): Simplify argument list. Set
1586         output part of internal buffer based on string size, so that
1587         _M_out_end is set consistently with filebufs. Correct comments.
1588         * bits/sstream.tcc (stringbuf::overflow): Update here too.
1589         * testsuite/27_io/stringbuf.cc: Changes.
1590         
1591 2000-01-11  Benjamin Kosnik  <bkoz@gnu.org>
1592
1593         * bits/sstream.tcc (seekoff): Set based on end of written buffer,
1594         not buffer size.
1595         * testsuite/27_io/stringbuf.cc: Add tests for seekoff(end).
1596
1597         * bits/std_fstream.h (ifstream::open): Add ios_base::in to openmode.
1598         (ofstream::open): Add ios_base::out to openmode.
1599
1600         * bits/locale_facets.tcc (_M_extract): Have consistency between
1601         istream::sentry and extractors, where failbit | eofbit is
1602         set. Don't change this, but instead change. . (do some formatting
1603         tweaks.)  
1604         * bits/istream.tcc (istream::sentry): Only set eofbit.
1605         
1606 2000-01-10  Benjamin Kosnik  <bkoz@gnu.org>
1607
1608         * testsuite/27_io/istringstream_members.cc: New file.
1609
1610 2000-01-09  Benjamin Kosnik  <bkoz@gnu.org>
1611
1612         * bits/istream.tcc (istream::sentry): Flush.
1613
1614         * configure.in (AC_OUTPUT_COMMANDS): Simplify.
1615         * configure: Regenerate.
1616         * src/Makefile.am (generated_headers): Remove bits/c++config.h so
1617         that make clean will not delete it.
1618         * src/Makefile: Regenerate.
1619         
1620 2000-01-07  Phil Edwards  <pme@sourceware.cygnus.com>
1621
1622         * mkcheck.in:  Use host-specific invocation of size(1);
1623           GNU binutils isn't necessarily there (more's the pity).
1624
1625 2000-01-06  Benjamin Kosnik  <bkoz@cygnus.com>
1626
1627         * configure.in (LIBS): Better tests for solaris2.6.
1628         * configure: Regenerate.
1629
1630          <vakatov@ncbi.nlm.nih.gov>
1631         * bits/std_sstream.h: As per libstdc++20.
1632
1633 2000-01-06  Benjamin Kosnik  <bkoz@gnu.org>
1634
1635         Break out configuration on solaris.
1636         * configure.in (ctype_solaris): Add in bits for solaris2.6 and 2.7.
1637         * config/solaris/ctype.cc: Delete and move to proper version.
1638         * config/solaris/bits: Same.
1639         * config/solaris/solaris2.5: Add this directory, with subdir bits
1640         and file ctype.cc. Probably doesn't work.
1641         * config/solaris/solaris2.6: Same.
1642         * config/solaris/solaris2.7: Same, as per specs via Phil Edwards.
1643         
1644         * Makefile.am: Change paths to mkcheck.
1645         * Makefile: Regenerate.
1646         * configure.in (AC_OUTPUT_COMMANDS): Build mkcheck here.
1647         * configure: Regenerate.
1648         * src/Makefile.am (generated_headers): Add bits/c++config.h.
1649
1650         * mkcheck: Now autogenerated by configure and renamed. . .
1651         * mkcheck.in (INC_PATH): Add glue for ctype_include_dir.        
1652         Have longer-style dates.
1653         Raja R Harinath  <harinath@cs.umn.edu>
1654         * mkcheck: Change path to #!/usr/clocal/bin/bash.
1655
1656         * docs/README.html: Correct links, maybe. FAQ, install notes, and
1657         general documentation need to be organized around each other, not
1658         fight against each other. . .
1659
1660 2000-01-04  Phil Edwards  <pme@sourceware.cygnus.com>
1661             Nicolai Josuttis <nicolai.josuttis@braunschweig.netsurf.de>
1662
1663         * README:  Add a note referring to README.html.
1664         * docs/README.html:  New file from Nicolai.
1665         * docs/faq/index.html:  Move "how to get a copy" to here.
1666         * docs/gentop/footchunk.html:  Update.
1667         * docs/gentop/headchunk.html:  New links according to
1668           bkoz's idea for "How to..." stuff.
1669         * docs/gentop/thanks:  Actually put people here.
1670         * docs/download.html:  Regenerated.
1671         * docs/index.html, docs/links.html, docs/mail.html,
1672           docs/status.html, docs/thanks.html, docs/faq/index.txt:  Ditto.
1673         * docs/how.html:  Ditto.  (This file should go away soon.)
1674
1675 1999-12-26  Phil Edwards  <pme@sourceware.cygnus.com>
1676
1677         * docs/gentop/status:  Add snapshot version column, update
1678           for Solaris 7.
1679         * docs/status.html:  Regenerated.
1680
1681 1999-12-26  Phil Edwards  <pme@sourceware.cygnus.com>
1682
1683         * docs/faq/index.html:  Turn README and RELEASE-NOTES into links
1684           from installation FAQ, and specify location of text files.
1685         * docs/faq/index.txt:  Regenerated.
1686
1687 1999-12-23  Phil Edwards  <pme@sourceware.cygnus.com>
1688
1689         * docs/gentop/download:  Add links to prebuilds for Cygwin/Mingw32.
1690         * docs/download.html:  Regenerated.
1691
1692 1999-12-22  Phil Edwards  <pme@sourceware.cygnus.com>
1693
1694         * docs/faq/index.html:  Update 'what works' for .7 snapshot,
1695           clean up various links.
1696         * docs/faq/index.txt:  Regenerated.
1697         * docs/gentop/gentop:  Smarter regeneration script.
1698         * docs/gentop/{head,foot}chunk.html:  Updated with new
1699           contributors link and mod date.
1700         * docs/gentop/index:  Snapshot relase date.
1701         * docs/gentop/thanks:  New contributors page added.
1702         * docs/{download,how,index,links,mail,status,thanks}.html:
1703           Regenerated from gentop; thanks.html created.
1704
1705 1999-12-21  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
1706
1707         * bits/c++config.h.in (__GLIBCPP__): 19991221.
1708         * docs/index.html: Add correct information.     
1709
1710         * config/irix: New directory.
1711         * config/irix/ctype.cc: Add irix-6.5 info. Not tested.
1712         * config/irix/bits/ctype_base.h: And here.
1713
1714         * config/aix: New directory.
1715         * config/aix/ctype.cc: Add aix-4.2 info. Not tested.
1716         * config/aix/bits/ctype_base.h: And here.
1717         
1718 1999-12-21  Philip Martin  <pm@corris.dircon.co.uk>
1719
1720         * bits/basic_string.h: Add special case handling for integral
1721         "iterators".
1722         * bits/std_string.h: include type_traits.h
1723         * testsuite/21_strings/ctor_copy_dtor.cc: Tweak.
1724         
1725 1999-12-21  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
1726
1727         * bits/fstream.tcc (seekoff): Output buffer based on _M_*_in and
1728         _M_*_end now.
1729         * bits/std_fstream.h (sync): And here.
1730         * testsuite/27_io/filebuf.cc: Revisions.
1731         * testsuite/27_io/filebuf-2.tst: Correct, remove weird character
1732         at the end of the file.
1733         * testsuite/27_io/filebuf-3.tst: Correct.
1734         
1735 1999-12-21  Phil Edwards  <pedwards@jaj.com>
1736
1737         * docs/gentop/index:  Hold off on .7 announcement date.
1738         * docs/index.html:  Regenerate.
1739
1740 1999-12-21  Benjamin Kosnik  <bkoz@kcygnus.com>
1741
1742         * bits/std_fstream.h (sync): Move _M_file->sync() to
1743         _M_really_overflow().
1744         * bits/fstream.tcc (seekoff): Call sync, not _M_really_overflow so
1745         as to get the _M_file->sync action, which forces the external
1746         buffer to update itself.
1747         (underflow): Same here.
1748
1749 1999-12-21  Phil Edwards  <pedwards@jaj.com>
1750
1751         * bits/c++config.h.in:  Uncomment _GLIBCPP_USE_NAMESPACES and move...
1752         * acconfig.h:  ...to here.
1753         * config.h.in:  Regenerate from aclocal.
1754         * acinclude.m4:  Add GLIBCPP_ENABLE_DEBUG, GLIBCPP_ENABLE_NAMESPACES.
1755         * aclocal.m4:  Regenerate from acinclude.
1756         * configure.in:  Use ENABLE macros here.
1757         * configure:  Regenerate.
1758         * src/Makefile.am:  Use results from ENABLE macros.
1759         * src/Makefile.in:  Regenerate.
1760
1761 1999-12-20  Benjamin Kosnik  <bkoz@cygnus.com>
1762         
1763         * mkcheck (SRC_DIR): Now have to include config/* dir if "make
1764         check" and not "make check-install." Temporarily hack in linux
1765         support.
1766         
1767         * bits/std_streambuf.h: Tweaks.
1768         * bits/streambuf.tcc (xsgetn): Tweaks.
1769         * bits/std_fstream.h (sync): Make _M_really_overflow consistent.
1770         * bits/fstream.tcc (filebuf::underflow): Simplify.
1771         * bits/std_sstream.h (streambuf::underflow): Minor change to make
1772         checks for read position precisely implement the standard.
1773         * bits/basic_file.h (filepos_cur): Base this on _offset.
1774         * testsuite/21_strings/inserters_extractors.cc (test05): Tweaks.
1775         * testsuite/27_io/filebuf.cc: Tweak.
1776
1777 1999-12-20  Benjamin Kosnik  <bkoz@cygnus.com>
1778
1779         * docs/17_intro/RELEASE-NOTES: Fix typos.
1780
1781         * bits/locale_facets.h (ctype): Modify, use __to_type to abstract
1782         out platform-specific bits.
1783         * config/default/ctype.cc: And here.
1784         * config/defaults/bits/ctype_base.h: And here.
1785         * config/linux/ctype.cc: And here.
1786         * config/linux/bits/ctype_base.h (ctype_base): And here.
1787         * config/solaris/bits/ctype_base.h (ctype_base): Add
1788         __to_type. Comment, as it looks like this is for solaris2.6 and
1789         above: solaris2.5.1 doesn't seem to have the same definitions.
1790         * config/solaris/ctype.cc: And here.
1791
1792 1999-12-19  Benjamin Kosnik  <bkoz@cygnus.com>
1793             Ulrich Drepper  <drepper@cygnus.com>
1794         
1795         * acconfig.h: Remove _GLIBCPP_USE_CTYPE_ISBIT.
1796
1797         * src/locale.cc: Take out platform-specific hacks.
1798         * config/linux/ctype.cc: Put here.
1799         * config/solaris/ctype.cc: Put here.
1800         * config/default/ctype.cc: Put here.    
1801
1802         * bits/locale_facets.h: Take out platform-specific hacks.
1803         * config/linux/bits/ctype_base.h: Put here.
1804         * config/solaris/bits/ctype_base.h: Put here.
1805         * config/default/bits/ctype_base.h: Put here.   
1806
1807         * configure.in: Bump version.
1808         Add tests for top-level config directory.
1809         * configure: Regenerated.
1810         * src/Makefile.am (INCLUDES): Add platform-specific dir.
1811         * src/Makefile: Regenerate.
1812         
1813 1999-12-19  Benjamin Kosnik  <bkoz@cygnus.com>
1814             Ulrich Drepper  <drepper@cygnus.com>
1815
1816         * bits/locale_facets.h: Hack in solaris support.
1817         * src/locale.cc: Here too.
1818
1819 1999-12-18  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
1820
1821         * docs/17_intro/TODO: Update
1822         * docs/17_intro/RELEASE-NOTES (New): Update.
1823
1824 1999-12-17  Benjamin Kosnik  <bkoz@milou.cygnus.com>
1825
1826         * bits/c++config.h.in (__GLIBCPP__): Bump.
1827         * docs/17_intro/RELEASE-NOTES: Update, Gaby please add your stuff.
1828         * docs/17_intro/TODO: Update.   
1829
1830         * bits/locale_facets.h: Touch this too.
1831         * bits/localefwd.h: Add typedefs for loooooong vector names.
1832         * bits/locale_facets.tcc (locale::operator()): Need parens.
1833         (has_facet): Simplify.
1834         * src/locale-inst.cc: Add instantiations.
1835         * src/locale.cc: Tweaks.
1836         
1837         * bits/std_streambuf.h: Move indeterminates into. . 
1838         * bits/std_fstream.h: Here.     
1839         * bits/fstream.tcc (underflow): Rewind just for ios_base::out
1840         streams.
1841         * bits/sstream.tcc: Very minor formatting tweaks.
1842         * bits/std_streambuf.h (_M_set_determinate): If exclusively an
1843         input buffer, set _M_buf to offset.
1844         * bits/istream.tcc (std): Tweaks.
1845         * testsuite/27_io/istream_unformatted.cc (test05): More tweaks,
1846         include fstream.
1847         * testsuite/27_io/filebuf.cc: Tweaks.
1848         
1849 1999-12-17  Phil Edwards  <pedwards@jaj.com>
1850
1851         * configure.in:  Add OPTLEVEL, -O2 for gcc 2.96+, nothing otherwise.
1852         * configure:  Regenerate.
1853         * src/Makefile.am:  Use OPTLEVEL in CXXFLAGS.
1854         * src/Makefile.in:  Regenerate.  Also picks up OTHER_CXXFLAGS rename
1855           to OPTIMIZE_CXXFLAGS from a previous revision (1.96) to Makefile.am.
1856
1857 1999-12-17  Phil Edwards  <pedwards@jaj.com>
1858
1859         * docs/21_strings/stringtok_std_h.txt:  New algorithm
1860           suggested by Chris King.
1861         * docs/21_strings/howto.html:  Link to new version.
1862
1863 1999-12-16  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
1864
1865         * bits/valarray_array.h (__valarray_sum): Use operator+=, not
1866         operator+.
1867         * docs/17_intro/TODO: Update.
1868
1869 1999-12-15  Phil Edwards  <pme@sourceware.cygnus.com>
1870
1871         * docs/gentop/footchunk.html:  Updated, fixed CRLFs.
1872         * docs/gentop/gentop:  Ditto.
1873         * docs/gentop/headchunk.html:  Ditto.
1874         * docs/*.html:  Regenerated from gentop.
1875         * docs/*/howto.html:  Updated as test.
1876         * docs/faq/index.html:  Updated, fixed CRLFs.
1877         * docs/faq/index.txt:  Regenerated.
1878
1879 1999-12-15  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
1880
1881         * mknumeric_limits (OUT_C): restart only if $OUT_C is present.
1882
1883         * bits/std_complex.h 
1884         (complex<float>::complex(const complex<double>&),
1885         complex<float>::complex(const complex<long double>&)): Define.
1886
1887         * docs/17_intro/TODO: Update.
1888
1889 1999-12-13  Benjamin Kosnik  <bkoz@cygnus.com>
1890
1891         * bits/istream.tcc (seekg): Don't set _M_gcount.
1892         (tellg): Same.
1893         * bits/fstream.tcc (filebuf::underflow): Re-sync
1894         external byte sequence's input buffer only. . .
1895         * testsuite/27_io/istream_unformatted.cc (test04): New tests for
1896         tellg, seekg and filebufs.
1897         (test05): Same for stringbufs.
1898         * testsuite/27_io/istream_unformatted-2.tst: New file.
1899         * testsuite/27_io/istream_unformatted-1.tst: New file.
1900         * testsuite/27_io/istream_unformatted-1.txt: New file.  
1901         * testsuite/21_strings/inserters_extractors.cc (test05): Change
1902         output file.
1903
1904 1999-12-13  Phil Edwards  <pedwards@jaj.com>
1905
1906         * docs/gentop/*:  New directory, containing bits for the homepages.
1907         * docs/*.html:  Regenerated from gentop.
1908         * docs/*/*.html:  Entries added and regenerated.
1909
1910 1999-12-13  Benjamin Kosnik  <bkoz@gnu.org>
1911
1912         Efforts to get -O2 to work with -Winline -Werrors.
1913         * bits/valarray_array.h (__valarray_fill(_Tp*, size_t, const
1914         _Tp&): Remove inline declaration, as cannot be inlined and
1915         -Winline -Werror complains. An interesting question is why this
1916         cannot be inlined, as I can see no real reason to disqualify it.
1917         (__valarray_product(const _Tp*, const _Tp*)): Same here.
1918         * bits/std_valarray.h (valarray::operator[](size_t)): Same here.
1919         
1920         * docs/17_intro/TODO: Update.
1921
1922 1999-12-12  Benjamin Kosnik  <bkoz@gnu.org>
1923
1924         * bits/std_fstream.h (seekpos): Tweaks, fixes. Move definition to
1925         fstream.tcc.
1926         * bits/basic_file.h (filepos_cur()): Make pointers themselves be
1927         the resultant position.
1928         * bits/fstream.tcc (seekoff): Explicitly set return value to
1929         resultant external byte sequence position, not value returned from
1930         _M_file->seekoff. Need to make 
1931         (seekpos): New definition.
1932         
1933         * bits/istream.tcc (seekg): As per Library Issues List 136, set to
1934         just istream. Necessary, or else tellg will give an invalid stream
1935         position, but seekg will return a valid stream position, which is
1936         not groovy: see testcase addition.
1937         * bits/ostream.tcc (seekp): Same.
1938         
1939         * bits/streambuf.tcc (_S_copy_streambufs): Simplify.
1940         * bits/sstream.tcc: Tweaks.
1941         * bits/locale_facets.tcc: Tweaks.
1942         (num_put::do_put(iter_type, ios_base, char_type, const void*)):
1943         Re-write in a way that is easier for the inliner to work with.
1944         * bits/ios_base.h: Use explicit static_cast<int>(...) notation.
1945
1946 1999-12-10  Benjamin Kosnik  <bkoz@cygnus.com>
1947
1948         * bits/locale_facets.tcc: Tweaks.
1949         * bits/locale_facets.h (use_facet): Can't inline, remove inline
1950         from declaration.
1951         * bits/localefwd.h: And here.
1952         * bits/std_ostream.h: Tweaks, sentry ctor can't be inlined.
1953         * bits/ostream.tcc: Put here.
1954         
1955         Frank Ch. Eigler  <fche@cygnus.com> 
1956         * src/Makefile.am: Adjust CXXFLAGS, add AM_CXXFLAGS. 
1957
1958 1999-12-08  Benjamin Kosnik  <bkoz@cygnus.com>
1959
1960         * bits/sstream.tcc (stringbuf::seekoff): Long overdue revamp. Make
1961         in and out buffers update independantly.
1962
1963         * bits/basic_ios.h: Minor formatting.
1964         * bits/fstream.tcc (std): Fix indentation.
1965
1966 1999-12-08  Chip Salzenberg  <chip@valinux.com>
1967
1968         * bits/char_traits.h (char_traits<>): Move not_eof() functions
1969         after corresponding eof() functions, so they're easier for the
1970         compiler to inline.
1971         * bits/locale_facets.h (money_base::__default_pattern): Move
1972         static variable out of inline functions.
1973         (_Moneypunct<>::do_{pos,neg}_format): Use it.
1974         * src/locale-inst.cc (money_base::__default_pattern): Define it.
1975
1976 1999-12-08  Benjamin Kosnik  <bkoz@cygnus.com>
1977
1978         * bits/std_fstream.h (filebuf::open): Tweak.
1979         * bits/fstream.tcc (filebuf::seekoff): Simplify, fix.
1980         * bits/std_ios.h: Minor tweaks for headers.
1981
1982 1999-12-06  Benjamin Kosnik  <bkoz@gnu.org>
1983
1984         * bits/c++config.h.in (_GLIBCPP_FULLY_COMPLIANT_HEADERS): New macro.
1985         * src/string-inst.cc: Add guards . . .
1986         * src/misc-inst.cc: And here.
1987         * bits/std_sstream.h: And here.
1988         * bits/std_fstream.h: And here.
1989         * bits/std_streambuf.h: And here.
1990         * bits/std_istream.h: And here.
1991         * bits/std_ostream.h: And here.
1992
1993 1999-12-06  Scott Snyder  <snyder@fnal.gov>
1994
1995         * bits/istream.tcc (basic_istream::read): Try to handle __n == 0
1996         case.
1997         (basic_istream::readsome): And here as well.
1998         * testsuite/27_io/istream_unformatted.cc: Test a zero-length
1999         read().
2000
2001 1999-12-06  Mumit Khan  <khan@xraylith.wisc.edu>
2002
2003         * bits/istream.tcc (basic_istream::ignore): streamsize is not 
2004         necessarily an `int'.
2005
2006 1999-12-06  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2007
2008         * mknumeric_limits: Don't use $CXXFLAGS when building
2009         gen-num-limits. It's definitely wrong to use it since $CXXFLAGS
2010         generally instructs the compiler not to emit template
2011         instantiations and we end up with undefined symbols. Sigh.
2012
2013 1999-12-05  Benjamin Kosnik  <bkoz@gnu.org>
2014
2015         * bits/locale_facets.tcc: Tweak.
2016         (_S_format_long): Adjust showpos formatting for hex and oct.
2017         * bits/std_ostream.h (operator<<(short)): Correctly deal with hex
2018         and oct by formatting as unsigned.
2019         (operator<<(int)): Same here.
2020         * bits/ostream.tcc (operator<<(long)): Same.
2021         (operator<<(long long)): Same.
2022         (_S_pad_char): Actually treat ios_base::internal as something
2023         worth doing correctly. Remove const designation on ios argument.
2024         * testsuite/27_io/ios_manip_basefield.cc (test02): Add tests.
2025         * testsuite/27_io/ostream_inserter_arith.cc (test03): Add tests.
2026         
2027 1999-12-04  Benjamin Kosnik  <bkoz@gnu.org>
2028
2029         * bits/std_sstream.h (streambuf::underflow): Check for mode == in.
2030
2031 1999-12-03  Benjamin Kosnik  <bkoz@gnu.org>
2032
2033         * bits/locale_facets.tcc (num_put::do_put(bool): Fix.
2034
2035         * bits/sstream.tcc (streambuf::seekoff): Add parens.
2036         * bits/istream.tcc (istream::get(sb)): Handle exceptional events.
2037         (operator>>(istream, _CharT*)): Change streamsize to int_type.
2038         (operator>>(istream, _CharT&)): Fix typedef'd type to be _CharT.
2039         * bits/ostream.tcc (ostream::operator<<(const char*)): Stub out
2040         unused argument.
2041         (ostream::operator<<(_CharT)): Fix.
2042         
2043         * bits/std_sstream.h: Temporarily disable including sstream.tcc to
2044         see if this will increase compile speed.
2045         * bits/std_ostream.h: Likewise. . .
2046         * bits/std_istream.h: And here.
2047         * bits/std_fstream.h: And here.
2048         * src/misc-inst.cc: Add relevant header file includes for
2049         instantiation purposes.
2050         * src/string-inst.cc: And here.
2051         * testsuite/27_io/ostream_inserter_arith.cc: Add test case.
2052         
2053 1999-12-02  Benjamin Kosnik  <bkoz@gnu.org>
2054
2055         * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
2056         * bits/istream.tcc (get(streambuf)): More fixes. 
2057         (istream::ignore): Get specific about numeric_limits<int>::max()
2058         requirements.
2059
2060         * bits/fstream.tcc (filebuf::open): Tweaks for _M_last_overflowed.
2061         (filebuf::close): Same.
2062         * testsuite/27_io/filebuf.cc: Add tests for ios_base::ate.
2063         
2064 1999-12-01  Phil Edwards  <pedwards@jaj.com>
2065
2066         * mkcheck:  Support for compilation/execution timing.
2067         * testsuite/printnow.c: New file.
2068         
2069 1999-12-01  Phil Edwards  <pedwards@jaj.com>
2070
2071         * bits/std_cwchar.h:  Test for _GLIBCPP_USE_WCHAR_T.
2072         * configure.in:  Test for presence of wchar.h before testing
2073           for any of its features.
2074         * configure:  Regenerate.
2075
2076 1999-11-30  Benjamin Kosnik  <bkoz@gnu.org>
2077
2078         Preliminary istream validations complete.
2079         * bits/istream.tcc (istream::getline): Fixes. Tweaks to make
2080         formatting more consistent. Removal of if-statements inside of for
2081         loops.
2082         (ignore): Fix.
2083         (get): Same.
2084         (putback): Same.
2085         * bits/std_istream.h: Same.
2086         * bits/sstream.tcc (stringbuf::pbackfail): Fix.
2087         * testsuite/27_io/stringbuf.cc: Tweak.
2088         * testsuite/27_io/istream_unformatted.cc (test02): Mo' tests.   
2089
2090         * bits/ostream.tcc (ostream::operator<<(arith)): Set badbit, not
2091         failbit on failure, as per 27.6.2.5.2.
2092
2093         * stl/bits/std_vector.h: Allow bool specializations. Should move
2094         ext/std_bvector to bits, not ext, maybe.
2095
2096 1999-11-30  Mumit Khan  <khan@xraylith.wisc.edu>
2097
2098         * configure.in: Fix checks for mbstate_t and WCHAR_MIN/MAX.
2099         * configure: Regenerate.
2100         
2101 999-11-29  Benjamin Kosnik  <bkoz@gnu.org>
2102
2103         * bits/istream.tcc (get(streambuf, char)): Fix.
2104         * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
2105         
2106 1999-11-29  Scott Snyder  <snyder@fnal.gov>
2107
2108         * bits/basic_string.h (append(const _Char*, size_type)): The
2109         length of the appended string is given exactly by the second arg,
2110         regardless of the data in the character array.
2111         * bits/string.tcc (basic_string(const _CharT*, size_type, const
2112         _Alloc&)): Likewise.
2113         * testsuite/21_strings/append.cc (test01): Remove erroneous test
2114         of basic_string::append.
2115
2116 1999-11-29  Chip Salzenberg  <chip@valinux.com>
2117
2118         * Makefile.in: Tweaks for CXXFLAGS.
2119         * */Makefile.in: Same.
2120
2121 1999-11-29  Mumit Khan  <khan@xraylith.wisc.edu>
2122
2123         * conficd bgure.in: Check for wide character support.
2124         * bits/c++config.h.in (_GLIBC_USE_WCHAR_T): Move from here ...
2125         * acconfig.h (_GLIBC_USE_WCHAR_T): to here.
2126         * bits/string.tcc (wstring::_S_find): Guard wchar_t specialization.
2127         
2128 1999-11-29  Mumit Khan  <khan@xraylith.wisc.edu>
2129
2130         * acinclude.m4: Fix typo.
2131         * src/complex.cc: Fix macro line continuation.
2132         
2133 1999-11-29  Petter Urkedal  <petter@matfys.lth.se>
2134
2135         * src/Makefile.am (CXXFLAGS): Add -Wno-format to allow non-
2136         string literals in format, as used in locale-facets.tcc.
2137
2138 1999-11-28  Benjamin Kosnik  <bkoz@gnu.org>
2139
2140         * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
2141         * bits/istream.tcc (istream::get): Extract to argument minus one.
2142         Various tweaks and fixes.
2143         
2144 1999-11-22  Mumit Khan  <khan@xraylith.wisc.edu>
2145
2146         * bits/locale_facets.tcc: Workaround for compiler crash on
2147         ix86-*-mingw32.
2148
2149 1999-11-21  Mumit Khan  <khan@xraylith.wisc.edu>
2150
2151         * acinclude.m4: New file. New _GLIBCPP_CHECK_FLOAT_SUPPORT macro.
2152         * configure.in: Use.
2153         * acconfig.h: New _GLIBCPP_BUGGY_FLOAT_COMPLEX macro.
2154         * src/complexf.cc: New _GLIBCPP_FLOAT_SPECIALIZATION macro.
2155         * bits/std_complex.h: Use.
2156         * src/complex.cc: Use.
2157
2158 1999-11-19  Mumit Khan  <khan@xraylith.wisc.edu>
2159
2160         * testsuite/18_support/numeric_limits.cc: Add missing std:: prefix.
2161         * testsuite/21_strings/inserters_extractors.cc: Likewise.
2162         * testsuite/22_locale/ctype.cc: Likewise.
2163         * testsuite/23_containers/multiset.cc: Likewise.
2164         * testsuite/23_containers/vector_ctor.cc: Likewise.
2165         * testsuite/26_numerics/binary_closure.cc: Likewise.
2166         * testsuite/27_io/fpos.cc: Likewise.
2167         * testsuite/27_io/ios_base_callbacks.cc: Likewise.
2168         * testsuite/27_io/istream_extractor_arith.cc: Likewise.
2169         * testsuite/27_io/istream_extractor_char.cc: Likewise.
2170         * testsuite/27_io/istream_extractor_other.cc: Likewise.
2171         * testsuite/27_io/istream_sentry.cc: Likewise.
2172         * testsuite/27_io/ostream_inserter_char.cc: Likewise.
2173         * testsuite/27_io/ostream_inserter_other.cc: Likewise.
2174         * testsuite/27_io/streambuf.cc: Likewise.
2175         * testsuite/27_io/stringstream.cc: Likewise.
2176
2177 1999-11-19 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2178
2179         * bits/valarray_meta.h: Don't forget to define tanh
2180
2181 1999-11-18  Philip Martin  <pm@corris.dircon.co.uk>
2182  
2183        * src/stl-inst.cc: Use typedef to refer to iterator
2184        * stl/bits/stl_algobase.h: Add traits based dispatch for
2185        __normal_iterator in the copy()algorithm
2186        * stl/bits/type_traits.h: Add _Is_normal_iterator trait support
2187
2188 1999-11-18  Kevin Ediger  <kediger@licor.com>
2189
2190         * src/locale.cc (locale::_Imp::_Imp): Use auto_ptr to make
2191         constructors for locale::_Impl exception safe.
2192
2193 1999-11-18  Scott Snyder  <snyder@fnal.gov>
2194
2195         * stl/bits/stl_queue.h: The C++ standard gives the default for the
2196         _Sequence template argument of priority_queue<> as vector<>, not
2197         deque<>.
2198
2199 1999-11-18  Benjamin Kosnik  <bkoz@gnu.org>
2200
2201         * bits/std_sstream.h (stringbuf::_M_really_sync): Add __iend as a
2202         parameter.
2203         * bits/sstream.tcc: Adjust here too.
2204         
2205 1999-11-17  Benjamin Kosnik  <bkoz@gnu.org>
2206
2207         * bits/sbuf_iter.h (istreambuf_iter::equal): Tweak.
2208         * bits/istream.tcc (operator>>): Replace iostate(0) with
2209         iostate(ios_base::goodbit), which is the same thing, but hopefully
2210         a bit clearer.
2211         * bits/locale_facets.tcc (do_get(bool)): Streamline, deal with
2212         libraries issue list 17.
2213         (do_gets): Don't set goodbit explicitly, instead only set on
2214         failures as good bit is the default setting.
2215         * bits/ios_base.h (setf): Set correctly.
2216         * bits/fstream.tcc: Tweak.
2217         * bits/std_sstream.h (_M_really_sync): Fix ibuffer positioning for
2218         in|out bufs that are empty. . .
2219         * testsuite/27_io/istream_extractor_arith.cc (test03): Add.
2220         
2221 1999-11-16  Benjamin Kosnik  <bkoz@gnu.org>
2222
2223         * testsuite/27_io/streambuf.cc (class testbuf): Don't set _M_buf_size.
2224         * bits/std_streambuf.h (setp): Set _M_buf_size, _M_mode.
2225         Add comments "all about _M_buf."
2226         (setg): Set _M_mode.
2227
2228 1999-11-16  Kevin Ediger  <kediger@licor.com>
2229
2230         * bits/locale_facets.tcc (_S_build_float_format): New function.
2231         (_S_output_float): New function.
2232         (num_put::do_put(double)): Use 'em.
2233         (num_put::do_put(long double)): Use 'em.
2234         * testsuite/27_io/ostream_inserter_arith.cc: New file.
2235
2236 1999-11-15  Scott Snyder  <snyder@fnal.gov>
2237
2238         * bits/basic_file.h: Type of __off parm should be __c_streampos, to
2239         match how libio is calling us.
2240         * src/basic_file.cc (sys_seek): Likewise.
2241         * bits/std_fstream.h (basic_filebuf::sync): Restore sync call.
2242
2243 1999-11-15  Benjamin Kosnik  <bkoz@gnu.org>
2244
2245         * docs/17_intro/contribute.html: Add link to assignment form.
2246         * docs/17_intro/libstdc++-assign.txt: New file.
2247
2248         * mkcheck (TESTS_FILE): Move a copy of test files as well as
2249         output files.
2250
2251         * bits/std_streambuf.h (_M_buf_bump): New function.
2252         * bits/streambuf.tcc: Mods to support _M_buf_bump.
2253         (xsputn): Here. Also add checks for output valid.
2254         (xsgetn): Add checks for input valid.
2255         (sputc): Here.
2256         (sgetc): Set _M_in_end to _M_buf + _M_buf_end.
2257         * bits/std_sstream.h (_M_really_sync): Set _M_buf.
2258         Set _M_out_end to variable-length-end.
2259         * bits/sstream.tcc (overflow): Use _M_buf_bump.
2260         (seekpos): Same.
2261         (seekoff): Same.
2262         * bits/fstream.tcc (std): Tweak formatting.
2263         (filebuf::overflow): Simplify.
2264         (filebuf::showmanyc): Same.
2265         (filebuf::underflow): Same.
2266         * testsuite/27_io/filebuf.cc: Fix.
2267         * testsuite/27_io/ostream_inserter_other.cc: Fix.
2268         * testsuite/27_io/ostream_inserter_other-2.tst: New file.
2269         * testsuite/27_io/stringbuf.cc: Tweak.  
2270         * testsuite/27_io/streambuf.cc: Tweak.  
2271         * testsuite/27_io/istream_extractor_other.cc: Fix.
2272
2273 1999-11-11  Matthias Klose  <doko@cs.tu-berlin.de>
2274
2275         * stl_deque.h: Use static_casts<size_type>(signed_type).
2276
2277 1999-11-11  Benjamin Kosnik  <bkoz@gnu.org>
2278
2279         Cleanups for callbacks, more regression hunting. Remaining
2280         failures (1) due to last unresolved stringstream issues, not
2281         regressions per se.
2282         * bits/std_fstream.h: Revert. Disable call to _M_file->sync as
2283         killing 27_io/filebuf.cc tests. . . need another solution.
2284
2285         * bits/streambuf.tcc (_S_copy_streambufs): Fix.
2286         * testsuite/27_io/istream_extractor_other.cc: Tweak comments.
2287
2288         * bits/basic_ios.h: Add cached facets here. UGH. The standard
2289         foils all attempts at a graceful, minimal implementation.
2290         * bits/basic_ios.tcc: Tweaks.
2291         * bits/istream.tcc: Fix.
2292         * bits/ostream.tcc: Fix.
2293         * bits/std_istream.h: Fix.
2294         * bits/std_ostream.h: Fix.
2295         * src/ios.cc (ios_base::imbue): Set _M_locale_ios before calling
2296         callbacks.
2297         * bits/locale_facets.tcc (std): Minor, minor formatting tweak.
2298         (_S_pad_numeric): Make comprehensible.
2299
2300 1999-11-10  Benjamin Kosnik  <bkoz@cygnus.com>
2301
2302         * bits/std_ostream.h: Add callbacks for _M_fnumput.
2303         (_S_ostream_fcache): New function.
2304         Move functions out-of-line.
2305         * bits/ostream.tcc: Put here.
2306
2307         * bits/std_istream.h: Add callbacks for _M_fnumget.
2308         (_S_istream_fcache): New function.
2309         Move functions out-of-line.
2310         * bits/istream.tcc: Put here.
2311         
2312         * bits/basic_ios.tcc (basic_ios::imbue): Tweaks, remove call to
2313         _M_call_callbacks(), as ios_base::imbue does this already.
2314         * src/ios.cc (register_callback): Clean.
2315         (_M_call_callbacks): Same.
2316         * bits/ios_base.h: Callback work.
2317         * testsuite/27_io/ios_base_callbacks.cc (test01): New file.
2318         
2319 1999-11-10  Benjamin Kosnik  <bkoz@cygnus.com>  
2320             Matthias Klose  <doko@cs.tu-berlin.de>
2321
2322         * stl/ext/stl_rope.h: Fix initialization order.
2323
2324 1999-11-09  Scott Snyder  <snyder@fnal.gov>
2325
2326         * bits/std_fstream.h (basic_filebuf::sync): Unconditionally call
2327         _M_file->sync() so that redirection works correctly.
2328
2329 1999-11-09  Benjamin Kosnik  <bkoz@gnu.org>
2330
2331         * bits/istream.tcc: Re-order.
2332         * bits/std_istream.h: Fix getline problems.
2333         * testsuite/27_io/istream_unformatted.cc: New tests.
2334         
2335         Clean up regressions.
2336         * bits/std_sstream.h: Set initial stringbufs correctly.
2337
2338 1999-11-09  Scott Snyder <snyder@fnal.gov>
2339
2340         * stl_vector.h (_M_range_insert): Fix mixing pointers and
2341         vector::iterator.
2342         * testsuite/23_containers/vector_modifiers.cc (test01): New file,
2343         tests.
2344         
2345 1999-11-09  Benjamin Kosnik  <bkoz@cygnus.com>
2346
2347         * src/Makefile.am (CXXFLAGS): Add -Winline.
2348         * src/Makefile.in: Regenerate.
2349
2350 1999-11-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2351
2352         * bits/valarray_meta.h (_DEFINE_EXPR_UNARY_FUNCTION): When
2353         building meta-expressions don't forget to take the contained
2354         closures. 
2355
2356 1999-11-02  Benjamin Kosnik  <benjamin@cygnus.com>
2357
2358         * configure: Regenerate.
2359         
2360 1999-11-02  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2361
2362         * bits/valarray_meta.h (_Expr<>::sum): Tweak. Use copy-initialization
2363         syntax.
2364         * bits/valarray_meta.h (min): Likewise.
2365         * bits/valarray_meta.h (max): Likewise.
2366
2367 1999-11-01  Benjamin Kosnik  <bkoz@cygnus.com>
2368
2369         * bits/std_sstream.h (_M_really_sync): Take into account in | out bufs.
2370         * bits/std_streambuf.h (_S_copy_streambufs): New function.
2371         * bits/streambuf.tcc: Define.
2372         * bits/istream.tcc (istream::operator>>(streambuf)): Rewrite.
2373         * bits/ostream.tcc (ostream::operator<<(streambuf)): Rewrite.
2374         * testsuite/27_io/ostream_inserter_other.cc: Add tests.
2375         * testsuite/27_io/ostream_inserter_other-1.tst: New file.
2376
2377         * bits/basic_string.h: Explicitly cast npos to unsigned type,
2378         reported by Richard Atterer.
2379         * bits/char_traits.h: For consistency's sake, here too.
2380         
2381         * configure.in: Bump version to 2.90.7.
2382         
2383 1999-10-31  Benjamin Kosnik  <bkoz@cygnus.com>
2384
2385         * testsuite/27_io/ostream_inserter_char-1.tst: Check file output.
2386         * testsuite/27_io/ostream_inserter_char.cc (test05, test01): Add tests.
2387         * bits/streambuf.tcc (xsputn): Treat--size const char for long loops.
2388         (xsgetn): Same.
2389         * bits/sstream.tcc (seekpos): Tricks, mostly: check _M_mode before
2390         writing into buffer.
2391         (seekoff): Same.
2392         
2393 1999-10-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2394
2395         * bits/valarray_array.h (__valarray_sum): New function.
2396         * bits/valarray_array.h (__valarray_product): Same.
2397
2398         * bits/std_valarray.h (valarray<T>::product): Comment out.
2399         * bits/std_valarray.h (valarray<T>::sum): Use __valarray_sum
2400         instead of accumulate. 
2401
2402         * src/valarray-inst.cc: Remove explicit intantiation of
2403         class multiplies<size_t>, accumulate, valarray<size_t>::product. 
2404         * src/valarray-inst.cc (__valarray_product): Instantiate
2405         explicitly. 
2406         * src/valarray-inst.cc (__valarray_product(const
2407         valarray<size_t>&)): New function.   
2408         * src/valarray-inst.cc (gslice::_Indexer::_Indexer): Don't use
2409         valarray<size_t>::product. Use __valarray_product instead.
2410         
2411
2412 1999-10-25  Benjamin Kosnik  <bkoz@cygnus.com>
2413
2414         * bits/std_ostream.h (ostream.inserters.char): Correctly pad output.
2415         (_S_pad_char): New function. Not done: ios_base::internal.
2416         * bits/ostream.tcc: Clean for above.
2417         * bits/locale_facets.tcc (_S_fill): Remove ostreambufiterator
2418         specialization that was commented out, as ostreams now have to
2419         correctly deal with padding.
2420         * testsuite/27_io/ostream_inserter_char.cc (main): Add tests.
2421         
2422         * testsuite/21_strings/ctor_copy_dtor.cc(test02): Add test case
2423         from mailing list. This is a bug, and should be fixed.
2424         * testsuite/21_strings/inserters_extractors.cc (main): Tweak, fix typo.
2425         
2426 1999-10-22  Petter Urkedal  <petter@matfys.lth.se>
2427
2428         * stl/bits/stl_numeric.h (__power): Replaced argument name `__opr'
2429         to avoid conflict with gcc name mangling.
2430         * stl/bits/stl_algo.h (__transform): Same.
2431
2432 1999-10-21  Benjamin Kosnik  <bkoz@cygnus.com>
2433
2434         * bits/ios_base.h: Change argument names.
2435         * docs/17_intro/BADNAMES: Add __opr.
2436         
2437 1999-10-20  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
2438         
2439         Work on compilation slowdowns from 10-5 to 10-12, which are
2440         related to the _Callback_list inlining/merge-ifcation, which is
2441         still a pending issue, but this stuff is necessary cleanup anyway.
2442
2443         * src/ios.cc: Re-arrange.
2444         * bits/ios_base.h: Tweak.
2445         * bits/basic_ios.tcc: Move out of line definitions here, move
2446         small out-of-line definitions inline.
2447         * bits/basic_ios.h: From here.
2448         
2449         * bits/streambuf.tcc (pbackfail, overflow): Move back inline.
2450         * bits/std_streambuf.h: From here.
2451
2452 1999-10-19  Benjamin Kosnik  <bkoz@cygnus.com>
2453
2454         * testsuite/27_io/istream_extractor_char.cc: Add tests.
2455         * bits/std_istream.h: Tweaks--set eofbit on eof condition.
2456         * bits/istream.tcc (operator>>(istream&, string&): Remove
2457         vestigial issspace hacks and use ctype::is instead.
2458         (getline): Remove unnecessary loops, fortify and pasteurize.
2459         (ws): Same.
2460         
2461 1999-10-18  Benjamin Kosnik  <bkoz@cygnus.com>
2462
2463         * bits/istream.tcc (operator>>): Tweak.
2464         * bits/std_istream.h: Fix according to library issues list 68.
2465         Add typedefs.
2466
2467         * bits/locale_facets.h: Fix table_size to be non-zero.
2468
2469 1999-10-18  Vadim Egorov  <egorovv@HotPOP.com>
2470
2471         * src/basic_file.cc: ifdef instead of comment for binary mode
2472
2473 1999-10-18  Russell Davidson  <russell@qed.econ.queensu.ca>
2474
2475         * bits/std_sstream.h: Stringbuf initialization based on actual,
2476         not allocated, size.
2477         * testsuite/21_strings/inserters_extractors.cc (test06): Add test
2478         case.
2479         
2480 1999-10-17  Benjamin Kosnik  <bkoz@cygnus.com>
2481
2482         * testsuite/26_numerics/c_math.cc (test03): Tweak.
2483         * testsuite/27_io/istream_manip.cc (test01): Corrections due to
2484         sentry change.
2485         * testsuite/21_strings/inserters_extractors.cc (test01): Same.
2486
2487 1999-10-14  Benjamin Kosnik  <bkoz@cygnus.com>
2488
2489         * bits/std_istream.h: Tweaks.
2490         * bits/istream.tcc (istream::sentry::sentry()): Simplify, correct
2491         as per issues list addition--set failbit, eof on empty buffers.
2492         * testsuite/27_io/istream_sentry.cc: New file.
2493         
2494 1999-10-12  Chris Prince <prince@wcug.wwu.edu> 
2495
2496         * bits/std_cstdio.h: Remove Solaris hacks.
2497
2498 1999-10-12  Phil Edwards  <philip.edwards@sn.wpafb.af.mil>
2499
2500         * docs/index.html:  Fix minor typos and tweaks.
2501         * docs/17_intro/contribute.html:  Ditto.
2502         * docs/*/howto.html:  Ditto.  More "EGCS"->"GCC" conversion, notes on
2503         thread safety and binary I/O, links to external sites.
2504         * docs/faq/index.html: EGCS/GCC cleanup, new entries for Cygwin
2505         and MT.
2506
2507 1999-10-12  Petter Urkedal  <petter@matfys.lth.se>
2508
2509         * bits/std_cmath.h (abs(float)): When ::absf is not present, call
2510         ::fabs(double) rather than ::abs(int).
2511
2512 1999-10-11  Benjamin Kosnik  <bkoz@milou.cygnus.com>
2513
2514         * bits/std_streambuf.h: Fix minor blip--should explicitly return
2515         *gptr(), not the result of underflow.
2516         (pbackfail): Conform to default behavior.
2517         (overflow): Same.
2518         * bits/streambuf.tcc: Add out-of-line streambuf members.
2519         (xsputn): Tweak.
2520         (xsgetn): Tweak.
2521         * testsuite/27_io/streambuf.cc: New file.
2522         * testsuite/27_io/filebuf.cc: Correct test.
2523
2524 1999-10-08  Benjamin Kosnik  <bkoz@haight.constant.com>
2525
2526         * bits/std_cmath.h: Correctly cast int to double.
2527         * testsuite/26_numerics/c_math.cc: Add test.
2528
2529         * mknumeric_limits (OUT_C): Tweaks.
2530         * src/gen-num-limits.cc: Checks for WCHAR_MIN, WCHAR_MAX before
2531         trying to instantiate type_traits<wchar_t>.
2532         * acconfig.h: Add _GLIBCPP_HAS_WCHAR_MIN_MAX.
2533         * configure.in (LIBS): Plus checks for WCHAR_MIN, WCHAR_MAX.
2534         * configure: Regenerate.
2535         
2536 1999-10-06  Benjamin Kosnik  <bkoz@milou.cygnus.com>
2537
2538         * bits/streambuf.tcc (streambuf::xsgetn): Rewrite.
2539         (streambuf::xsputn): Put in break.
2540         Aiming for parity between these two (mostly) similar functions.
2541         Need to re-write tests.
2542         
2543         * bits/ios_base.h (ios_base::_M_copy_base): Remove declaration.
2544         Make data members protected, not private.
2545         * src/ios.cc (ios_base::_M_copy_base): Move _Callback_list into
2546         ios_base.h. As called only once, collapse into . . .
2547         * bits/basic_ios.h (basic_ios::copyfmt): Fix.
2548         (basic_ios::clear): Throw ios_base::failure on occasion.
2549         (basic_ios::exceptions): Fix.
2550         * testsuite/27_io/ios_members.cc (test02): Add tests.
2551         
2552         * bits/fpos.h: Default initialize.
2553         * testsuite/27_io/fpos.cc (test03): Add test.
2554
2555 1999-10-04  Russell Davidson <russell@qed.econ.queensu.ca> 
2556
2557         * src/basic_file.cc: Fix open modes.
2558         
2559 1999-10-04  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2560
2561         * bits/locale_facets.tcc (num_get<>::do_get): Fix typo.
2562
2563 1999-09-23  Benjamin Kosnik  <bkoz@milou.cygnus.com>
2564
2565         * bits/streambuf.tcc: Yea. Fix this for real.
2566         * testsuite/27_io/ostream_inserter_other.cc: Add file.
2567         * src/Makefile.*: Regenerate.
2568
2569 1999-09-22  Benjamin Kosnik  <bkoz@milou.cygnus.com>
2570
2571         * bits/std_cstdlib.h: Add more linux-specif hacks to the header
2572         files so that stdtof and strtold will be declared. Some hacks
2573         already exits in bits/std_cctype.h -- these should all be removed
2574         at a later date.
2575         * bits/locale_facets.tcc: Add cstring.h include.
2576         _S_format_long: Use long, not int.
2577         Add std_limits.h include, for numeric_limits.
2578         * testsuite/27_io/istream.cc: Make instantiations work when using
2579         -fhonor-std.  
2580         * testsuite/27_io/ostream.cc: Same.
2581         
2582 1999-09-21  Benjamin Kosnik  <bkoz@milou.cygnus.com>
2583
2584         * bits/fpos.h (fpos::operator streamoff): Make const, don't return
2585         a reference. Same for operators == and !=.
2586         * testsuite/27_io/fpos.cc: Add tests.
2587
2588 1999-09-21  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2589
2590         * bits/valarray_array.h: Fix typo.
2591
2592         * mknumeric_limits: Make sure we are regenerating things from
2593         scratch.  Otherwise things get redefined.  Not good.
2594
2595 1999-09-20  Benjamin Kosnik  <bkoz@milou.cygnus.com>
2596
2597         * bits/std_ostream.h: Fix typo.
2598         * bits/std_istream.h: Same.
2599         * bits/std_iomanip.h: Same.
2600
2601         * bits/istream.tcc (sentry::sentry()): Remove optional tie with
2602         ostream, as happens with underflow anyway.
2603         * testsuite/27_io/istream.cc (main): New file.
2604         * testsuite/27_io/ostream.cc (main): New file.
2605         * testsuite/27_io/istream_unformatted.cc: Add tests.
2606
2607         * src/Makefile.am (headers): Add new file.
2608         * src/Makefile.in (headers): Regenerated.
2609
2610         * bits/basic_ios.h: Remove local-related files.
2611         * bits/basic_ios.tcc: New file, add locale-related items.
2612         * src/misc-inst.cc: Add include of basic_ios.tcc, as a hack for now.
2613         * testsuite/27_io/ios_members_static.cc: Change to
2614         * testsuite/27_io/ios_base_members_static.cc: This.
2615         * testsuite/27_io/ios_members.cc: New file.
2616         * testsuite/27_io/stdios_basefield_manip: Change to
2617         * testsuite/27_io/ios_manip_basefield.cc: This.
2618         * testsuite/27_io/stdios_fmtflags_manip: Change to
2619         * testsuite/27_io/ios_manip_fmtflags.cc: This.
2620         
2621         * bits/fpos.h: Fix discarding qualifiers on this when
2622         using _M_position with a const fpos.
2623         * bits/std_iosfwd.h: Tweak.
2624         * testsuite/27_io/fpos.cc: New file.
2625
2626 1999-09-17  Benjamin Kosnik  <bkoz@milou.cygnus.com>
2627
2628         * bits/streambuf.tcc (streambuf::xsputn): Tweak.
2629         * bits/ostream.tcc: Tweak.
2630         * testsuite/21_strings/inserters_extractors.cc (test04, test05):
2631         Add new regressions.
2632         
2633 1999-09-16  Benjamin Kosnik  <bkoz@milou.cygnus.com>
2634
2635         * bits/basic_ios.h: Inline, tweak.
2636         * bits/fstream.tcc (basic_filebuf::_M_really_overflow): Tweak,
2637         pass back accurate return value to basic_filebuf::overflow.
2638         * bits/streambuf.tcc (streambuf::xsputn): Fix overflow accounting.
2639         This fixes sstream problems reported in libstdc++/9, but screws up
2640         filebufs. That solution is pending.
2641
2642 1999-09-15  Vadim Egorov  <egorovv@1c.ru>
2643
2644         * bits/streambuf.tcc (basic_streambuf::xsputn): Add check for 
2645         zero count puts.
2646         * testsuite/21_strings/inserters_extractors.cc (test01): Add test.
2647         
2648 1999-09-08  Benjamin Kosnik  <bkoz@milou.cygnus.com>
2649
2650         * bits/c++config.h.in: Add emacs hints.
2651
2652         * stl/bits/stl_range_errors.h: Don't define here, for now define
2653         in stdexcept.cc along with string inlines __length_error, etc.
2654         * src/stdexcept.cc: Define here.
2655         * stl/bits/stl_config.h (__STL_CAN_THROW_RANGE_ERRORS): Enable, so
2656         at(size_t) will be declared/defined.
2657         (__STL_THREADS): Fix mess surrounding use of this, enable.
2658
2659 1999-08-31  Benjamin Kosnik  <bkoz@milou.cygnus.com>
2660
2661         * testsuite/27_io/istream_extractor_arith.cc: Fix.
2662         * src/localename.cc: Tweak formatting, fix assignment to
2663         const compiler errors.
2664
2665 1999-08-25  Benjamin Kosnik  <bkoz@cygnus.com>
2666
2667         * acconfig.h: Add absf, cosf.
2668         * configure.in (use_builtin_sinf): Same.
2669         * configure: Regenerate.
2670         * bits/std_cmath.h: Add mess of defines.
2671         * testsuite/26_numerics/modf_float.cc: Change to
2672         * testsuite/26_numerics/c_math.cc: This.
2673         
2674         * src/locale.cc: Change.
2675         * bits/locale_facets.h: Fix.
2676         * testsuite/22_locale/ctype.cc: Add temporary tests.
2677         
2678 1999-08-24  Benjamin Kosnik  <bkoz@cygnus.com>
2679
2680         * bits/fpos.h: Test.
2681
2682         * docs/index.html: Add powerpc-linux-gnu results with gcc-2.95.1.
2683         Fix database name for "libstdc++".
2684
2685 1999-08-23  Benjamin Kosnik  <bkoz@cygnus.com>
2686
2687         * mknumeric_limits (numeric_limits): Add default definitions to
2688         member functions.
2689         * testsuite/18_support/numeric_limits.cc: New file.
2690
2691 1999-08-18  Benjamin Kosnik  <bkoz@cygnus.com>
2692
2693         * bits/std_istream.h: Correct initialization.
2694         * bits/std_ostream.h: Likewise.
2695         * bits/std_sstream.h: Likewise.
2696         * bits/std_fstream.h: Likewise. 
2697         * testsuite/27_io/stringstream.cc: Add test case.
2698         
2699         * bits/std_sstream.h: Replace ____string_type with __string_type.
2700         * bits/basic_ios.h (basic_ios::rdbuf(sb*): Call clear(), as required.
2701         * bits/std_ostream.h: Tweak dtor.
2702
2703 1999-08-17  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
2704
2705         * src/Makefile.am (CXXFLAGS): Add -O2.
2706         * src/Makefile.in: Likewise.
2707         
2708         * src/gen-num-limits.cc: Conditionally allow wchar_t. See what
2709         this breaks. . .
2710         * mknumeric_limits (numeric_limits): Uglify.
2711
2712         * bits/std_istream.h: Fix warnings.
2713         * bits/locale_facets.tcc: Collateral damage from
2714         char_traits<char>::int_type change.
2715
2716         * testsuite/27_io/istream_extractor_char.cc: Terminate strings.
2717
2718 1999-08-17  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
2719
2720         * docs/index.html: Add mailing list form.
2721         * docs/27_io/howto.html: Add link to iostreams_hierarchy.pdf.
2722
2723 1999-08-16  Benjamin Kosnik  <bkoz@cygnus.com>
2724
2725         * bits/streambuf.tcc (streambuf::xsputn): Allow copies to continue
2726         if overflow successfully allocates more space.
2727         * bits/std_sstream.h: Adjust comments.
2728         * bits/sstream.tcc (stringbuf::overflow): Copy buffer into string
2729         before overflow forces a resize.
2730         * testsuite/27_io/ostream_inserter_char.cc: New file.
2731         
2732         * bits/std_fstream.h: Remove declaration.
2733         * bits/fstream.tcc: Move uflow.
2734         * bits/std_streambuf.h: To here.
2735         * bits/streambuf.tcc: Make consistent.
2736         
2737         * src/Makefile.am (WERROR): Enable.
2738         * src/Makefile.in: Regenerate.
2739         * bits/sbuf_iter.h: Tweak.
2740         * bits/char_traits.h: (char_traits<wchar_t>::eof): Use WEOF.
2741         Use unsigned int as char_traits<char>::int_type.
2742
2743         * bits/ostream.tcc (ostream::putc(char)): Tweak.
2744         * testsuite/27_io/iostream_objects.cc: Terminate string.
2745         Move cin::operator>>(char*) test to extractor_char.cc.
2746         * testsuite/27_io/stringstream.cc: Add stringstream instantiation.
2747         * bits/std_istream.h (basic_iostream): Make explicit definition
2748         for default ctor.
2749         * bits/std_sstream.h: Fix typos.
2750         * bits/fstream.tcc (_M_init_filebuf): Set to indeterminate for
2751         basic_filebuf ctor with fileno open arguments. Thus, filebufs are
2752         initialized in a consistent manner, no matter if the underlying
2753         FILE/bit bucket is a tty or a text file or some other imaginary
2754         construct. This and setting _M_buf_size to 1 for cin allows
2755         istream::get(char) to work in a manner consistent with what others
2756         expect.
2757
2758         * docs/index.html: Link Stroustrup's C++ page.
2759         
2760 1999-08-12  Michael Cook  <cook@sightpath.com>
2761
2762         * bits/fstream.tcc: Fix signed/unsigned -Wall warning.
2763         * bits/istream.tcc: ditto.
2764         * bits/sbuf_iter.h: ditto.
2765         * bits/std_istream.h: ditto.
2766         * src/Makefile.am: Add -Wall to CXXFLAGS.
2767         * src/Makefile.in: ditto.
2768
2769 1999-08-12  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
2770             Russell Davidson <russell@ehess.cnrs-mrs.fr> 
2771
2772         * bits/locale_facets.tcc (_M_extract): Finish off patch from yesterday.
2773         * src/Makefile.am (myinstallheaders): Tweak, remove PHONY.
2774         
2775 1999-08-11  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
2776
2777         * testsuite/27_io/istream_unformatted.cc: New file.
2778
2779         * testsuite/27_io/istream_extractor_arith.cc (test02): Add more
2780         elaborate tests for int types with noskipws.
2781
2782         * testsuite/27_io/istream_extractor_other-1.txt: New file.
2783         * testsuite/27_io/istream_extractor_other-1.tst: New file.
2784         * testsuite/27_io/istream_extractor_other-2.tst: New file.      
2785         * testsuite/27_io/istream_extractor_other.cc: Add tests.
2786         * bits/istream.tcc: Fix operator>>(streambuf*).
2787
2788         * testsuite/23_containers/vector_ctor.cc (test01): Add.
2789
2790         * docs/index.html: Remove references to egcs.
2791         * docs/17_intro/DESIGN: Same.
2792         * docs/17_intro/contribute.html: Same.
2793         * docs/17_intro/RELEASE-NOTES: Ditto.
2794         * docs/17_intro/howto.html: Same here.
2795
2796         Russell Davidson <russell@ehess.cnrs-mrs.fr>
2797         * stl/bits/stl_vector.h (_M_insert_aux): 
2798         * bits/locale_facets.tcc (_M_extract): Tweaks for preliminary
2799         decimal/floating point support.
2800         * bits/locale_facets.h: Change _M_extract prototype.
2801         * bits/char_traits.h (char_traits::to_int_type): Cast to unsigned.
2802         * bits/std_istream.h (istream::read(char_type, streamsize)): Fix.
2803         
2804 1999-08-10  Michael Cook  <cook@sightpath.com>
2805
2806         * bits/fstream.tcc: Fix for unused variable warning (-Wall).
2807         * bits/ios_base.h: ditto.
2808         * bits/istream.tcc: ditto.
2809         * bits/locale_facets.h: ditto.
2810         * bits/locale_facets.tcc: ditto.
2811         * bits/std_streambuf.h: ditto.
2812         * src/basic_file.cc: ditto.
2813         * src/locale.cc: ditto.
2814         * src/localename.cc: ditto.
2815
2816 1999-08-10  Kirat Singh  <singhki@jany.gs.com> 
2817
2818         * bits/std_iomanip.h: Inline.
2819         
2820 1999-08-10  Alfred Minarik <a8601248@unet.univie.ac.at>
2821         
2822         * bits/std_streambuf.h: Correct member initialization order.
2823         * src/ios.cc: Add definitions for ios_base data members.
2824         
2825 1999-08-06  Phil Edwards  <pedwards@ball.com>
2826         
2827         * docs/index.html:  Seventh snapshot updates.  Minor tweaks.
2828         * docs/faq/index.html: Ditto.  Removed bugs sections that have
2829         been fixed for a long time...  Lots of "egcs" references still
2830         exist.
2831         * docs/faq/index.txt:  Regenerated.
2832
2833 1999-08-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2834             Andreas Amann <amann@physik.tu-berlin.de>
2835
2836         * testsuite/26_numerics/binary_closure.cc (main): new test.
2837
2838 1999-07-29  Andreas Amann <amann@physik.tu-berlin.de>
2839
2840         * bits/valarray_meta.h: (_BinClos<>::_Binclos): fix typo causing
2841         segmentation fault.
2842
2843 1999-08-04  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
2844
2845         * docs/index.html (host): Put in testing status.
2846
2847 1999-08-03  Benjamin Kosnik  <bkoz@cygnus.com>
2848
2849         * docs/index.html: Update for libstdc++-2.90.6 release.
2850         * docs/17_intro/RELEASE-NOTES (New): Update.
2851         * docs/17_intro/BUGS: Update.
2852         * bits/c++config.h.in (__GLIBCPP__): Bump version number.
2853         * README (file): Update.
2854
2855 1999-08-03  Benjamin Kosnik  <bkoz@cygnus.com>
2856
2857         * src/Makefile.am (generated_headers): Remove bits/c++config.h as
2858         a target.
2859         ($(generated_headers)): Same.
2860         * src/gen-c++config.cc: Remove, rename to
2861         * bits/c++config.h.in: New file. Bump version number.
2862         * configure.in: Generate bits/c++config.h at configure time. 
2863         * math/mathconf.h: include bits/c++config.h, not config.h.
2864         
2865         * bits/std_cmath.h: Fix remaining link error for solaris shared
2866         builds.  _GLIBCPP_HAS_BUILTIN_SINF has to be disabled for the time
2867         being, as on Solaris this silently calls sinf, which does not
2868         exist.
2869         
2870         * src/complex.cc: More tweaks.
2871
2872 1999-08-03  Benjamin Kosnik  <bkoz@cygnus.com>
2873
2874         * src/complex.cc: Same.
2875         * math/complex-stub.h: Change.
2876         * math/c_log10*.c: Change back to clog10*.c.
2877
2878         * configure.in (NEED_C_LOG10): Delete.
2879         * configure: Regenerate.
2880         * math/Makefile.am: Change.
2881         
2882 1999-07-30  Benjamin Kosnik  <bkoz@cygnus.com>
2883
2884         * math/Makefile.am: Fix, for real.
2885         * configure.in (use_builtin_sinf): Ok, make autoconf solution.
2886         * math/clog.c: Move to c_log.c.
2887         * math/clog*: Ditto.
2888         * math/c_log10l.c (c_log10l): Change function name.
2889         * math/c_log10f.c (c_log10f): Change function name.
2890         * math/c_log10.c (c_log10): Change function name.
2891         
2892         * math/complex-stub.h: Change to c_log* variants.
2893         * src/complex.cc: And here. 
2894         
2895 1999-07-29  Benjamin Kosnik  <bkoz@cygnus.com>
2896
2897         * testsuite/27_io/istream_extractor_other.cc: Correct last test.
2898         * bits/sstream.tcc (stringbuf::overflow): Don't update the input
2899         sequence, just the output sequence.
2900         * bits/std_sstream.h (stringbuf::str()): Only in stringbufs return
2901         the original string, all others use complicated heuristic.
2902
2903         * src/complex.cc: Assume c_log10.
2904         * math/Makefile.am (EXTRA_yes): Fix c_log/c_logf unresolved
2905         symbols in shared libraries by making c_log/c_log10 part of the
2906         "must cmpile" sources. This may not work on solaris, must check.
2907
2908 1999-07-29  Benjamin Kosnik <bkoz@cygnus.com>
2909
2910         * bits/istream.tcc (operator>>(streambuf*)): Re-do.
2911         * bits/std_istream.h: Fix char extractors.
2912         * testsuite/27_io/istream_extractor_char.cc: Change.
2913         * testsuite/27_io/istream_extractor_other.cc: Add tests.
2914         
2915 1999-07-28  Benjamin Kosnik <bkoz@cygnus.com>
2916
2917         * bits/std_cctype.h: Fix for solaris2.6 builds. 
2918
2919         * bits/istream.tcc: Fix, thanks Alfred.
2920         * bits/std_istream.h: Formatting changes.
2921
2922         * libio/Makefile.am (libio_la_SOURCES): Remove cleanup.c, so that
2923         _IO_cleanup will not be undefined.
2924         * libio/*: Regenerate.
2925         
2926         * bits/basic_string.h: More namespace-safety stuff.
2927         * testsuite/27_io/istream_extractor_char.cc: Fix.
2928         * testsuite/27_io/istream_extractor_arith.cc: Fix.
2929         * testsuite/27_io/iostream_objects.cc: Fix.
2930         * testsuite/27_io/ios_ctor.cc: Fix.
2931         * testsuite/27_io/istream_manip.cc: Make namespace safe.
2932         * testsuite/27_io/istream_extractor_other.cc: New file.
2933
2934         * mkcheck (TESTS_FILE): Tweaks.
2935
2936 1999-07-27  Benjamin Kosnik  <bkoz@cygnus.com>
2937
2938         * src/gen-c++config.cc: Note here, change version.
2939         * acconfig.h( _GLIBCPP_USE_CTYPE_ISBIT): New macro.
2940         * src/locale.cc: Used here.
2941         * configure.in (use_builtin_sinf): Check for _ISBit using autoconf.
2942
2943         * aclocal.m4: Regenerate by running `aclocal -I m4.`
2944         
2945         * bits/istream.tcc: Fix.
2946         * bits/std_istream.h: More changes to extractors.
2947
2948         * testsuite/27_io/istream_extractor_char.cc: More.
2949         * testsuite/21_strings/inserters_extractors.cc (test01): Fix logic
2950         error in testsuite construction.
2951
2952         * bits/std_istream.h: Partially revert.
2953         * bits/std_ostream.h: Same.
2954         * bits/std_sstream.h: Revert. 
2955
2956 1999-07-26  Benjamin Kosnik  <bkoz@cygnus.com>
2957
2958         * bits/std_sstream.h: Change initialization.
2959         * bits/std_ostream.h: Make default ctor/assign/operator= private.
2960         * bits/std_istream.h: Same, also correct sentry args.
2961         * bits/istream.tcc: Add correct sentry args.
2962         
2963         * testsuite/27_io/istream_extractor_char.cc: New file.
2964         * testsuite/27_io/istream_extractor_arith.cc: New file, old file,
2965         name changes making me dizzy.
2966
2967 1999-07-26  Ulrich Drepper  <drepper@happy.cygnus.com>
2968             Benjamin Kosnik  <bkoz@cygnus.com>
2969
2970         * aclocal.m4, config.guess, config.sub, ltconfig ltmain.sh: Update
2971         to libtool 1.3.3.
2972
2973 1999-07-26 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2974
2975         * bits/std_complex.h: Tweak. Make the primary template class
2976         complex work with user-defined numerical types.  Provide member
2977         definitions.  Restructure.
2978         (class complex<float>): Uglify.  Remove  __value().  Rename __val
2979         to _M_value.  Rename __complex_value_type to _ComplexT. Make it
2980         private.  Remove dependency on __value().  Fix various explicit
2981         specialization syntax.  Declare a some functions friend.  Now the
2982         implementation is nearly comforming.
2983         (class complex<double>): Likewise.
2984         (class complex<long double>): Likewise.
2985
2986         * src/complex.cc: Tweak.  Remove dependency on complex::__value().
2987         (sin, sinh, tan, than): Fix call to corresponding C9x function
2988         syntax. 
2989
2990 1999-07-24  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
2991
2992         * bits/istream.tcc (ws): Fix error with failbit being set.
2993
2994         Disabled due to egcs/gcc-2_95 internal compiler errors.
2995         * src/Makefile.am (CXXFLAGS): Add -fsquangle -fhonor-std
2996         -fnew-exceptions. Compiling with namespaces enabled will now be
2997         the default.
2998         * mkcheck (CXX_FLAG): Same.
2999         * src/gen-c++config.cc (_GLIBCPP_USE_NAMESPACES): Yup. New macro.
3000         * bits/std_cctype.h: Not enough to just define in namespace std if
3001         ctype-isms are macros. Need to also define in namespace std:: if
3002         the C functions are just plain functions.
3003
3004         * src/gen-num-limits.cc: Fix spelling inconsistencies.
3005         
3006 1999-07-24  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3007
3008         * docs/18_support/howto.html: Start documentation.  Need to keep
3009         track of the ongoing discussion in th LWG reflector.
3010
3011         * src/gen-num-limits.cc: Tweak.
3012         (class predicate): New class.
3013         (class value): Likewise.
3014         Make the whole machinery more flexible. Add comments.
3015
3016 1999-07-23  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
3017
3018         * bits/ios_base.h: Move state/exception functions into basic_ios. 
3019         * bits/basic_ios.h: Same.
3020         * src/ios.cc: And here. Callbacks don't attempt to reset
3021         state now.  
3022
3023         * bits/std_streambuf.h: Separate ios and streambuf locale data
3024         members and cached facets. Using this convention: _M_locale_buf for
3025         the streambuf-related classes, and _M_locale_ios for the ios
3026         hierarchy.
3027         * bits/fstream.tcc: And here.
3028         * bits/basic_ios.h: And here. Also, add cached ctype.
3029         * src/ios.cc: Ditto.
3030         * bits/ios_base.h: Ditto.
3031         * bits/std_istream.h: Use cached ctype facet.
3032         * docs/27_io/iostreams_hierarchy.pdf: Update for new data member
3033         arraignment.
3034
3035         * testsuite/27_io/ios_ctor.cc: New file.
3036         * src/ios.cc: Move _M_state init to basic_ios::init().
3037         * bits/basic_ios.h: To here.
3038         
3039         Attempt for some consistency in naming for testsuite/27_io/*.cc.
3040         * testsuite/27_io/boolfmt.cc: Rename to stdios_fmtflags_manip.cc
3041         * testsuite/27_io/octfmt.cc: Rename to stdios_basefield_manip.cc
3042         * testsuite/27_io/istream_manip.cc: Rename to istringstream_manip.cc.
3043         * testsuite/27_io/ostream_manip.cc: Rename to ostringstream_manip.cc.
3044         
3045 1999-07-22  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
3046         
3047         * src/ios.cc: Tweak initializations of standard iostream
3048         objects to closely match the standard. Tie cin/wcin, set flags on
3049         cerr/wcerr
3050         * bits/char_traits.h: Change from size_t to int_type, as per
3051         standard. As per wide streams.
3052         * bits/basic_ios.h: Infect with __ctype_type, as a preparation
3053         for caching a bunch of ctype info. For instance, ctype_base::space
3054         info needs to be stored somewhere, somehow.
3055         * bits/std_istream.h: Also here.
3056         * bits/std_ostream.h: Ditto.
3057         * bits/std_istream.h (operator>>(istream, char): Aggh. Fixup.
3058         * testsuite/27_io/iostream_objects.cacc (test01): Oh yeah. Fix
3059         stream states.
3060
3061         * bits/istream.tcc (ws): Fix.
3062         * testsuite/27_io/istream_manip.cc: New file, test ws.
3063         * testsuite/27_io/ostream_manip.cc: New file, test endl, ends, flush.
3064
3065         * bits/basic_string.h: Provide a specialized member function for
3066         _S_find<char> using strchr.
3067         * src/string-inst.cc: Put specializations here.
3068         * bits/string.tcc: Small fix for find, remove typo.
3069         * testsuite/21_strings/find.cc (test01): Add tests to catch this
3070         find bug. . .
3071
3072 1999-07-20  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>       
3073
3074         * bits/basic_ios.h: Put into basic_ios namespace.
3075         Tweak widen/narrow.
3076
3077 1999-07-19  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>       
3078
3079         * bits/std_sstream.h (stringbuf::sync): Change to _M_really_sync,
3080         adjust _M_*_cur pointers inside the function, so callee doesn't
3081         have to adjust.
3082         * bits/sstream.tcc (stringbuf::overflow): Tweak.
3083
3084         * mkcheck: Tweak. Add execution time field, even though it is not
3085         implemented yet. Simplify pass/fail status notation.
3086
3087 1999-07-18  Mumit Khan  <khan@xraylith.wisc.edu>
3088
3089         * configure.in: Check for float.h and underscored version of 
3090         math functions.
3091         * acconfig.h: Add @BOTTOM@ section for handling underscored
3092         math functions.
3093         * configure: Regenerate.
3094         * config.h.in: Regenerate. 
3095         * math/mathconf.h (float.h): Include conditionally.
3096         (M_PI): Define conditionally.
3097         (INFINITE_P): Define for Mingw.
3098         * bits/locale_facets.tcc: Workaround for compiler crash on
3099         ix86-*-mingw32.
3100         * bits/std_cwchar.h (bits/std_cstddef.h): Include.
3101         * src/locale.cc (bits/std_istream.h): Include.
3102         (bits/std_ostream.h): Likewise.
3103
3104 1999-07-18  Phil Edwards  <pedwards@ball.com>
3105
3106         * docs/faq/index.html:  Updated __black_count notes, fixed typos.
3107         * docs/faq/index.txt:  Regenerated.
3108
3109 1999-07-15  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
3110
3111         * testsuite/27_io/stringbuf.cc: Cccchanges, latent bugs.
3112
3113         * bits/sstream.tcc (stringbuf::overflow): Modify accounting of
3114         newly-allocated buffer.
3115         * bits/streambuf.tcc (streambuf::xsgetn): Aaaaaah. Fix final
3116         overflow condition bits.
3117
3118 1999-07-14  Benjamin Kosnik  <bkoz@cygnus.com>
3119
3120         * bits/std_sstream.h (stringbuf::_M_init_stringbuf): Set
3121         _M_buf_size to initial _M_string.size(), even though for
3122         ostringstreams it is pretty pointless. It's necessary for
3123         istringstreams.
3124         (stringbuf::str()): Adjust. 
3125         (stringbuf::str()): Adjust, call _M_init_stringbuf.
3126         * bits/streambuf.tcc (streambuf::xsgetn): Adjust return value for
3127         overflow's possible success.
3128         (streambuf::xsputn): Adjust.
3129         
3130         * testsuite/27_io/filebuf.cc: Adjust for the xsgetn re-write from
3131         yesterday.
3132         * testsuite/27_io/stringbuf.cc: Tweak.
3133         * testsuite/21_strings/inserters_extractors.cc (test01): Remove
3134         notes to myself.
3135         * testsuite/23_containers/vector_cons.cc: Rename to be consistent
3136         with other constructor tests to. . .
3137         * testsuite/23_containers/vector_ctor.cc: New file.
3138         
3139 1999-07-14  Alfred Minarik <a8601248@unet.univie.ac.at>
3140
3141         * testsuite/*: Changes to make the testsuit compilable with
3142         -fhonor-std. Contains direct qualification of library names with
3143         std::.
3144
3145 1999-07-13  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
3146
3147         * bits/streambuf.tcc: Tweaks.
3148         (streambuf::xsputn): Optimize, fix for sstreams.
3149         (streambuf::xsgetn): Same.
3150         * bits/sstream.tcc (stringbuf::overflow): Adjust _M_buf_size
3151         correctly, handle overflow/reallocate conditions correctly.
3152         * bits/std_sstream.h: Fix typo.
3153         _M_init_stringbuf(): Fix _M_buf_size initialization.
3154         (stringbuf::str()): Construct return string if output has occurred.
3155
3156         * bits/basic_string.h: Fix typo from yesterday's patch.
3157
3158 1999-07-12  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
3159
3160         * bits/string.tcc: _M_mutate - clear _M_state again.
3161         * bits/basic_string.h: In the three functions that return
3162         an iterator set _M_state to -1 before return.
3163         Also optimized two cases of operator+.
3164         
3165 1999-07-12  Phil Edwards  <pedwards@ball.com>
3166
3167         * docs/index.html:  Expand egcs-1.1.2 notes/links.
3168         * docs/faq/index.html:  And here.  Add links to LWG issues-list.
3169         * docs/faq/index.txt:  Regenerate.  (lynx rocks)
3170         * docs/21_strings/howto.html:  Fix notes on case conversion.
3171         * docs/21_strings/stringtok_h.txt:  Goodly spelling...
3172         * docs/23_containers/howto.html:  Stub for bitmasks.
3173         * docs/27_io/howto.html: Add section on buffering, stub binary.
3174         
3175 1999-07-12  Nathan Myers <ncm@cantrip.org>
3176
3177         * stl/bits/stl_tree.h (__black_count): Optimize.
3178
3179 1999-07-09  Vadim Egorov  <egorovv@1c.ru>
3180
3181         * src/basic_file.cc: Cleanup in __basic_file destructor.
3182
3183 1999-07-08  Benjamin Kosnik  <bkoz@cygnus.com>
3184
3185         * bits/std_streambuf.h: Changes. . .
3186         * bits/streambuf.tcc: Merge xsputn from filebuf into xsputn in
3187         basic_streambuf, to be used for both filebufs and streambufs.
3188         * bits/std_fstream.h (_M_init_filebuf): New function.
3189         Take out specialized xsputn, put into basic_streambuf.
3190         * bits/fstream.tcc: Define, call from both ctors.
3191         * bits/std_sstream.h (_M_init_stringbuf): New function.
3192         * bits/sstream.tcc: Tweak.
3193         
3194         * docs/27_io/iostreams_heirarchy.pdf: New file.
3195         
3196         * docs/17_intro/CHECKLIST (basic_string<char>): Validation and
3197         acceptance. Wooo-hoo!
3198
3199         * bits/char_traits.h: Change int_type for char_traits general
3200         template, so that 21_strings/capacity.cc will compile.
3201         * testsuite/21_strings/capacity.cc: Add operators.
3202         
3203         * bits/string.tcc (string::compare): Clean up, re-implement.
3204         * testsuite/21_strings/compare.cc: Tweak.
3205         
3206         * bits/string.tcc (string:_M_mutate): Keep leaked value in
3207         _M_state, which means that whenever begin() or end() has been
3208         called, the string is unshareable, period. By doing this, insert
3209         and erase member functions that return iterators can remain
3210         footloose and fancy free. 
3211         * testsuite/21_strings/invariants.cc: Update.
3212
3213         * bits/basic_string.h (string::append): Fix self-referential
3214         problems, ie when "this" is also an argument to a member function.
3215         * bits/string.tcc: Tweak, same.
3216         * testsuite/21_strings/append.cc: New file.
3217
3218 1999-07-07  Benjamin Kosnik  <bkoz@cygnus.com>
3219
3220         * bits/char_traits.h: Tweaks.
3221         * bits/basic_string.h: Tweak.
3222         * bits/fstream.tcc: Remove warning for _M_buf_size assignment.
3223
3224 1999-07-06  Benjamin Kosnik  <bkoz@cygnus.com>
3225
3226         * bits/std_streambuf.h: Absorb/acquire data members previously
3227         working in basic_filebuf.
3228         * bits/streambuf.tcc: Tweaks.
3229         * bits/fstream.tcc: Adjust.
3230         * bits/std_fstream.h: Move and rename the following functions:
3231         _M_set_ideterminate, _M_is_indeterminate, _M_set_determinate are
3232         now declared and defined in the base class, basic_streambuf.  Oh
3233         fuck it, move data members _M_buf, and _M_buf_size into
3234         basic_streambuf as well.
3235
3236         * bits/ostream.tcc: Tweak.
3237         * bits/locale_facets.tcc: Fix typo in comments.
3238
3239         * testsuite/21_strings/inserters_extractors.cc (test01): Change
3240         state from good to not good, as eof() is set.
3241
3242 1999-07-05  Benjamin Kosnik  <bkoz@cygnus.com>
3243
3244         * bits/char_traits.h (char_traits::compare). Fix.
3245
3246         * config.guess, config.sub: Update.
3247
3248 1999-07-02  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
3249
3250         * bits/string.tcc: Check the __res_arg for a length error.
3251
3252 1999-07-01  Benjamin Kosnik  <bkoz@nabi.net>
3253
3254         * bits/std_streambuf.h: Tweaks. Need to move _M_is_indeterminate
3255         and related functions into basic_streambuf, from basic_filebuf to
3256         take care of ostringstreams and empty strings. So that's groovy,
3257         or will be groovy.
3258         * bits/std_istream.h: Tweaks.
3259         * bits/istream.tcc: Implement ws, getline, operator>> for string.
3260         * bits/std_ostream.h: And here.
3261         * bits/ostream.tcc: Same.
3262         * src/misc-inst.cc: Add instantiations for ws.
3263         
3264         * src/string-inst.cc: Add instantiations for inserters and
3265         extractors (operators << and >>, getline).
3266
3267         * testsuite/21_strings/inserters_extractors.cc: Amazingly enough,
3268         a testcase for getline and operators << and >>. Ostream tests are
3269         failing right now, but istream tests should work. . .
3270
3271         * bits/string.tcc: Change _S_max_size, as GNU malloc won't budge.
3272         * bits/std_sstream.h: Revert.
3273
3274         * testsuite/17_intro: header_[iosfwd, ios, iostream, iomanip,
3275         istream, ostream, streambuf, fstream, sstream].cc: New files.
3276         
3277 1999-06-30  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
3278
3279         * bits/std_sstream.h (stringbuf::sync): Don't use string::begin()
3280         and string::end().
3281         
3282         * bits/basic_string.h (basic_string<>::_S_copy_chars): Add
3283         specializations for _CharT*, iterator and const_iterator.
3284         * src/string-inst.cc: Remove explicit instantiation, as
3285         now explicitly specialized.
3286
3287         * bits/basic_string.h: Add a size_type parameter to _M_clone with
3288         a default value set to 0.
3289         * bits/string.tcc: In _M_clone by the call of _S_create add the
3290         value of the new parameter to _M_length.  In reserve check
3291         _M_state and use _M_clone instead of _M_mutate.
3292
3293 1999-06-30  Benjamin Kosnik  <bkoz@happy.cygnus.com>    
3294
3295         * bits/basic_string.h: Fix _S_max_size.
3296         * bits/string.tcc: Add def here.
3297         * testsuite/21_strings/insert.cc: Fix.
3298         
3299         * bits/sbuf_iter.h: Remove detritus.
3300         * testsuite/24_iterators/istreambuf_iterator.cc: Add tests.
3301
3302         * src/locale-inst.cc: Elaborate iterator/locale instantiations
3303         to resolve alpha-osf4 build problems.
3304
3305 1999-06-29  Benjamin Kosnik  <bkoz@happy.cygnus.com>    
3306
3307         * bits/string.tcc: Fix signed/unsigned issues in compares.
3308         * stl/bits/stl_deque.h: And here.
3309         * stl/bits/stl_string_fwd.h: Remove __get_c_string.
3310
3311 1999-06-29  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
3312  
3313          * bits/string.tcc: New implementation and interface of _M_mutate.
3314            Adapt the change in all functions that call _M_mutate.
3315          * bits/basic_string.h: And here.
3316
3317 1999-06-29  Benjamin Kosnik  <bkoz@happy.cygnus.com>
3318
3319         * testsuite/21_strings/capacity.cc (test01): Fix.
3320
3321 1999-06-29  Phil Edwards  <pedwards@ball.com>
3322
3323         * mknumeric_limits:  Exit script if gen-num-limits isn't built.
3324         
3325 1999-06-29  Andreas Gruenbacher  <agruenba@pent224.infosys.tuwien.ac.at> 
3326
3327         * stl/bits/stl_vector.h: Fix.
3328         * testsuite/23_containers/vector_cons.cc: Add.
3329         
3330 1999-06-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3331
3332         * mknumeric_limits (LDFLAGS): fix.
3333
3334 1999-06-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3335
3336         * mknumeric_limits (LDFLAGS): set it according to the system.
3337
3338         * math/mathconf.h (NAN): Check whether host is running under
3339         Cygwin and make the appropriate definition.
3340         * math/complex-stub.h (nan): protect declaration.
3341
3342 1999-06-28  Benjamin Kosnik  <bkoz@haight.constant.com>
3343
3344         * bits/sbuf_iter.h: Rename internal data structure to prevent
3345         confusion between basic_ios and istreambuf_iterators internal
3346         basic_streambuf data member.
3347         * testsuite/24_iterators/istreambuf_iterator.cc: New file.
3348
3349         * bits/basic_string.h: Remove conditionals, add input_iterator
3350         version of S_construct again.
3351         * bits/string.tcc: Same.
3352         * src/string-inst.cc: And add explicit instantiation here.
3353         
3354         * src/gen-c++config.cc (_GNU_SOURCE): Take out both _GNU_SOURCE
3355         and __USE_GNU macro defines, as single __USE_GNU use leading to
3356         confusion on glibc2.1 systems (ie, RedHat 6.0).
3357         
3358         * src/Makefile.am (headers): Add std_utility to installed headers.
3359
3360 1999-06-25  John Potter  <jpotter@eagle.lhup.edu>
3361
3362         * stl/bits/stl_tree.h (insert_unique): Revert, just fix insert_equal.
3363
3364 1999-06-25  Gilles Zunino  <Gilles.Zunino@hei.fr>
3365
3366         * mknumeric_limits (LDFLAGS): Swap -lc and -lgcc.
3367
3368 1999-06-24  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
3369
3370         * src/gen-c++config.cc (_GLIBCPP_*): Change all
3371         macros to include _GLIBCPP as a distinct namespace.
3372         * bits/*: And here.
3373         * src/*: And here.
3374         
3375         * stl/bits/std_stdexcept.h: Forward-declare __Named_exception ctor.
3376         * bits/basic_string.h: Remove __get_c_string.
3377         * src/stdexcept.cc: Define ctor here.
3378         * bits/ios_base.h: And fix ios_base::failure as well.
3379         * src/ios.cc: Define here. 
3380         
3381         * bits/std_streambuf.h: Add a private copy ctor and assignment
3382         operator wrapped in _G_RESOLVE_LIB_DEFECTS.
3383         * bits/ios_base.h: And here too.
3384         
3385         * bits/basic_string.h: Tweak.
3386         * testsuite/21_strings/nonmember.cc: Add operator+ tests.
3387
3388         * src/valarray.cc: Rename to. . .
3389         * src/valarray-inst.cc: This.
3390         * src/Makefile.am (sources): Change here.
3391         * src/Makefile.in: Regenerated.
3392         
3393 1999-06-24  Vadim Egorov  <egorovv@1c.ru>
3394
3395         * bits/string.tcc(basic_string<>::_Rep::_S_create): Fixed
3396         allocated size
3397
3398 1999-06-24  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
3399             Tom Tromey  <tromey@cygnus.com>
3400         
3401         * configure.in (use_glibc2): Eek, correct for non-glibc systems.
3402         Use AM_CONDITIONAL to get us out of this jam. . 
3403         * libio/Makefile.am: Same.
3404         * */Makefile: Regenerated.
3405
3406 1999-06-24  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
3407             John Potter  <jpotter@eagle.lhup.edu>
3408
3409         * stl/bits/stl_tree.h (insert_equal): Fix.
3410         * testsuite/23_containers/multiset.cc: New file.
3411         
3412 1999-06-23  Benjamin Kosnik  <bkoz@cygnus.com>
3413
3414         * configure.in (test for glibc2): Correct AC_TRY_COMPILE so that
3415         this works correctly on glibc-2 systems. This should allow
3416         simplified linking on these systems, and successful linking on Red
3417         Hat 6.0 systems.
3418         * configure, Makefile: Regenerate.
3419         
3420         * bits/std_cwctype.h: Add missing 'w' to _S_iswpunct_helper name. 
3421         
3422         * testsuite/ext: New directory.
3423         * testsuite/ext/headers.cc: New file.
3424
3425 1999-06-23  Vadim Egorov  <egorovv@1c.ru>
3426
3427         * stl/ext/hash_set: include missing headers
3428         * stl/ext/hash_map: Same
3429         * stl/ext/slist: Same
3430
3431 1999-06-17  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3432
3433         * bits/std_cmath.h: comment out modf. Kills build on hpux10.20
3434
3435 1999-06-15  Benjamin Kosnik  <bkoz@cygnus.com>
3436
3437         * src/Makefile.am (sources): Regenerate.
3438         * mkcheck: Add TESTS_FILE as a way of controlling what testcases
3439         are run.
3440
3441 1999-06-14  Benjamin Kosnik  <bkoz@cygnus.com>
3442
3443         * src/string-inst.cc: Change _S_construct signature, to
3444         track requested allocation size versus valid input iterator range.
3445         * bits/basic_string.h: Here too.
3446         * bits/string.tcc: And here.
3447
3448 1999-06-12  Benjamin Kosnik  <bkoz@cygnus.com>
3449
3450         * mkcheck (LOG_FILE): Correctly append errors. 
3451
3452         * stl/bits/stl_iterator.h: Revert previous, delirious, change.
3453
3454         * bits/basic_string.h: Change _Rep::_M_data to _Rep::_M_refdata,
3455         to clarify differences between basic_string::_M_data() calls and
3456         _Rep::_M_data() calls.
3457         * bits/std_string.h: Fix.
3458         Put in check for out_of_range in substr.
3459         * bits/string.tcc:  Fix for _S_find.
3460
3461         * testsuite/21_strings/compare.cc: Add tests.
3462         * testsuite/21_strings/find.cc: New file.
3463         * testsuite/21_strings/substr: New file.
3464         * testsuite/21_strings/replace.cc: New file.
3465         
3466 1999-06-11  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3467
3468         * bits/valarray_array.h: __restrict__ify pointers.
3469
3470         * bits/std_valarray.h: Tweak.
3471         (valarray<T>::cshift, valarray<T>::shift): use __builtin_alloca.
3472
3473         * bits/gslice_array.h: Tweak. Reflect changes in bits/gslice.h
3474
3475         * bits/gslice.h: Tweak.
3476         (class gslice::_Indexer): new class.
3477         (gslice::gslice(const gslice&)): implement copy-ctor to support
3478         ref-counted index. 
3479         (gslice::operator=(const gslice&)): support ref-counted index.
3480         (gslice::_M_convert_to_index): delete.
3481
3482         * src/valarray.cc: New file.
3483         (__gslice_to_index): turn a gslice into a valarray<size_t>
3484         (ctor gslice::_Indexer::_Indexer): implement.
3485
3486         * src/Makefile.am (sources): add valarray.cc
3487         * src/Makefile.in: regenerate.
3488
3489 1999-06-08  Benjamin Kosnik  <bkoz@cygnus.com>
3490
3491         * stl/bits/stl_iterator.h (__normal_iterator::const_iterator
3492         ctor): Put in a const_cast.
3493
3494         * testsuite/21_strings/invariants.cc: New file.
3495
3496         * testsuite/21_strings/insert.cc: Add exception handling bits.
3497         * testsuite/21_strings/ctor_copy_dtor.cc: Same.
3498
3499         * src/wstring-inst.cc: Add c++config.h include.
3500
3501         * bits/basic_string.h: Fix const operator[] for size == pos.
3502         Add _M_leak for rbegin, non-const.
3503         Add _M_leak for rend, non-const.
3504         Make member function at standards conformant.
3505         Add _S_terminal to _Rep for operator[] const, add this into
3506         c_str() as well.
3507         * bits/string.tcc: Add static member definition here,
3508         temporarily.
3509         
3510         * testsuite/21_strings/element_access.cc: Add tests.
3511
3512 1999-06-08  Vadim Egorov  <egorovv@1c.ru>
3513
3514          * bits/fstream.tcc (_M_really_overflow): Fixed size of
3515          conversion buffer.
3516
3517 1999-06-08  Phil Edwards  <pedwards@ball.com>
3518
3519         * bits/fstream.tcc (basic_filebuf::xsputn):  Fix off-by-one count
3520           caused when __testinit is true.
3521         * bits/ostream.tcc (basic_ostream::op<<(streambuf*)):  Write buffer
3522           using rdbuf()->sputn rather than _M_fnumput->put.
3523
3524 1999-06-08  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
3525
3526         * testsuite/23_containers/bitset_ctor.cc: New file.
3527         * stl/bits/std_bitset.h (__BITSET_WORDS): Fix integration bug.
3528
3529 1999-06-08  Phil Edwards  <pedwards@ball.com>
3530
3531         * bits/fstream.tcc (basic_filebuf::underflow):  Fix, rename local vars.
3532
3533 1999-06-07  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
3534
3535         * testsuite/21_strings/element_access.cc: Finish off these tests.
3536         * testsuite/21_strings/insert.cc (test01): Uncomment.
3537         * testsuite/21_strings/ctor_copy_dtor.cc (test01): Finish off ctors.
3538         * bits/basic_string.h: Tweak, okay, fix for real this time.
3539         * bits/string.tcc: Same.
3540         * bits/char_traits.h: Tweak.
3541
3542 1999-06-07  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
3543
3544         * bits/std_cmath.h: Example of how to use the generated macro.
3545         * acconfig.h: Add macro for sinf here.
3546         * configure.in (LIBS): Add test for builtin math function sinf.
3547         * configure: Regenerated.
3548         
3549         * bits/basic_string.h: Fix _S_max_size.
3550
3551 1999-06-06  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
3552
3553         * bits/basic_string.h: Fixes for out-of-memory segv for large strings.
3554         Remove _S_construct signature for forward_iterator_tag and
3555         input_iterator_tag.
3556         Clean _M_fold.
3557         * src/string-inst.cc: Same, tweaks. 
3558         * bits/string.tcc: Same, tweaks.
3559
3560         * testsuite/21_strings/ctor_copy_dtor.cc: Add/clarify tests.
3561         * mkcheck (LOG_FILE): Fix filebuf-[2,3].tst checks.
3562         * mknumeric_limits (LD_FLAGS): Add -nodefaultlibs -lc -lgcc as per
3563         Gaby.
3564
3565         * src/locale.cc: Final separation for char/wchar_t bits.
3566
3567 1999-06-05  Phil Edwards  <pedwards@ball.com>
3568
3569         * docs/index.html:  Added link to book upon request'n'agreement.
3570         * docs/23_containers/wrappers_h.txt:  Added.
3571         * docs/{23_containers,27_io}/howto.html:  Added sections.
3572
3573         * bits/std_fstream.h: Tweak.
3574         
3575 1999-06-05  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
3576
3577         * src/ios.cc: Same here.
3578         * bits/std_iosfwd.h: More wchar_t defines.
3579
3580         * bits/basic_string.h: Tweaks. 
3581         * bits/string.tcc: Tweak. Fix _S_construct to check for max_size
3582         when doing error checking, as per LWG defect #83.
3583         
3584         * src/gen-c++config.cc: Fix comment.
3585         
3586         * testsuite/21_strings/ctor_copy_dtor.cc: New file, checks ctors,
3587         assignments, dtors.
3588         * testsuite/21_strings/element_access.cc: New file, checks for
3589         operator[], at(...).
3590         * testsuite/21_strings/insert.cc: New file, tests string::insert.
3591         * testsuite/21_strings/char_traits.cc: New file, tests
3592         for char_traits<char>.
3593         
3594         * bits/utility.h: Remove, again.
3595         * src/Makefile.am (std_headers): Remove utility.h.
3596         * src/Makefile.in (std_headers): Regenerate.
3597
3598         Alfred Minarik <a8601248@unet.univie.ac.at>
3599         * bits/basic_string.h: Move __out_of_range and __length_error into
3600         namespace std.
3601
3602 1999-06-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3603
3604         * testsuite/26_numerics/modf_float.cc: New file.
3605
3606         * bits/std_cmath.h (modf(float, float*)): Fix signature. Correct
3607         typo: use ::modff, not ::modf.
3608
3609 1999-06-03  Vadim Egorov  <egorovv@1c.ru>
3610
3611         * bits/string.tcc (basic_string::_M_mutate): Fixed memory
3612         allocation error
3613         * testsuite/21_strings/capacity.cc (test01): Test.
3614         
3615 1999-06-03  Phil Edwards  <pedwards@ball.com>
3616
3617         * bits/fstream.tcc:  Re-order inits to stop warnings.  Comment/move
3618           unused variables to within #if 0 blocks to do the same.
3619         * bits/std_fstream.h:  Fix typos (one prevents compilation).
3620
3621 1999-06-03  Benjamin Kosnik <bkoz@pacifica.cygnus.com>
3622
3623         * src/wstring-inst.cc: Fix.
3624
3625 1999-06-02  Benjamin Kosnik <bkoz@madcow.cygnus.com>
3626
3627         * bits/char_traits.h: Add _G_USE_WCHAR_T macro guards.
3628         * stl/bits/stl_string_fwd.h: Same.
3629         * bits/locale_facets.h: Same.
3630         * bits/locale_facets.tcc: Same.
3631         * src/wstring-inst.cc: And here.
3632         
3633         * src/gen-c++config.cc: Comment _G_USE_WCHAR_T. Leading to
3634         problems on HPUX 10.20.  
3635         * your-build-directory-here/bits/c++config.h: Just kidding, do it
3636         here as a temporary hack till the compiler/host problems get
3637         worked out.
3638
3639         * bits/locale_facets.tcc (num_get::do_get): Change from ifdef
3640         HAVE_STRTOLD to HAVE_STRTOLD && !(__hpux). Apparently, problems
3641         converting "long double" to struct long_double. Probably should be
3642         done with one macro (HAVE_STRTOLD) at configure time.
3643
3644         * bits/std_cmath.h: Comment out pow(double, int) defintion as
3645         gives re-declaration under hpux10.20. Revert previous change, as
3646         kills linux/x86, solaris 2.7, hpux builds. These should be done
3647         using autoconf, see std_cctype.h and the solutions started in
3648         configure.in (see config.h for the generated file.)
3649
3650         * mknumeric_limits (LDFLAGS): Remove '-nodefaultlibs -lc', as
3651         -nodefaultlibs prevents linking under HPUX 10.20 as __main is not
3652         defined.
3653
3654         * docs/index.html: Add some useful links.
3655         * docs/17_intro/contribute.html: Fix broken links.
3656
3657 1999-06-02  Benjamin Kosnik <bkoz@rhino.cygnus.com>
3658
3659         * mkcheck (LOG_FILE): Add !/bin/bash instead of cygnus-style
3660         paths. The rest of the world should be able to run this script
3661         now.
3662
3663         * src/Makefile.am ($(generated_headers)): Remove comment.
3664         * Makefile*: Regenerate.
3665         
3666         * bits/std_locale.h: Remove detritus.
3667         * bits/localefwd.h: Add <cctype> include to undefine the isspace
3668         macro.
3669
3670 1999-06-01  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
3671
3672         * src/gen-c++config.cc: New file. Making c++config.h at configure
3673         time by catting this file (nee bits/config.h) with the build
3674         directories config.h. This is not a complete or perfect solution
3675         but is better than what was in place previously. 
3676         * bits/c++config.h: Rename/move to above.
3677         * src/Makefile.am (headers): Remove c++config.h.
3678         (myinstallheaders). Add.
3679         * Makefile*: Regenerated.
3680
3681         * bits/std_cwchar.h: Add include of c++config.h for HAVE_*
3682         definitions, so that wmemcmp, wcslen, wmemchr, etc are properly
3683         declared only if not present in the host's wchar.h.
3684
3685         * bits/locale_facets.tcc (std): Change _G_USE_STRTO* to HAVE_STRTO*.
3686         
3687         * bits/std_cmath.h: Define out, for the moment. Linux has no
3688         __buitin_fsqrtl? Probably need some kind of configure trickery
3689         here as well.
3690
3691         * src/Makefile.*: Regenerate.
3692         * bits/c++config.h: Add config.h include.
3693
3694         * bits/std_cwchar.h: Remove remaining #error guard.
3695         
3696         * acconfig.h: Add bits for HAVE_LC_MESSAGES.
3697
3698         * configure.in (LIBS): Replace previous effort for mbstate_t and
3699         strtold/strtof with this implementation.
3700
3701 1999 06-01  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3702
3703         * bits/std_cmath.h: Tweak. Add more functions. Use __builtin_xxx
3704         whenever possible.
3705
3706 1999-05-28  Benjamin Kosnik  <bkoz@cygnus.com>
3707
3708         * bits/locale_facets.tcc (std): Eek: this left in. Autoconf bits
3709         for determining mbstate_t differences across various hosts not
3710         finished. 
3711
3712 1999-05-26  Benjamin Kosnik  <bkoz@nabi.net>
3713
3714         * bits/locale_facets.tcc: Change to ifdef.
3715
3716         * bits/std_sstream.h (stringbuf::setbuf): Remove dynamic_cast.
3717         * bits/std_fstream.h (filebuf::setbuf): Same.
3718
3719         * bits/std_istream.h: Add ws declaration.
3720         * bits/istream.tcc: Stub out definition.
3721         
3722         * docs/index.html: Fix broken link for design.txt.
3723
3724         * configure.in: Test for mbstate_t. If wchar.h doesn't have it,
3725         then set _G_NEED_MBSTATE_T.
3726         * configure: Regenerate.
3727         * bits/c++config.h: Move mbstate_t define.
3728         * bits/std_cwchar.h: To here.
3729
3730 1999-05-25  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
3731
3732         * bits/std_sstream.h:
3733           basic_stringbuf<>::basic_stringbuf: fix.
3734           basic_stringbuf<>::setbuf: 
3735           remove the temporary __string_type object,
3736           remove the unnecessary dynymic_cast in the return value,
3737           change the type of the returned value from __streambuf_type*
3738           to basic_stringbuf<_CharT, _Traits, _Alloc>*.
3739
3740 1999-05-25  Phil Edwards  <pedwards@ball.com>
3741
3742         * bits/std_streambuf.h (streambuf::setbuf): Always return streambuf*. 
3743
3744 1999-04-25  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3745
3746         * bits/std_cmath.h: Tweak. Add float versions of the math functions
3747         in <math.h>.  <cmath> still incomplete and incorrekt.
3748
3749 1999-05-24  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3750
3751         * mknumeric_limits (LDFLAGS): set appropriate link flags.
3752         
3753 1999-05-23  Phil Edwards  <pedwards@ball.com>
3754
3755         * docs/17_intro/howto.html:  Added links to text docs,
3756         e.g., BUGS. 
3757         * docs/21_strings/howto.html:  Updated sections and links.
3758         * docs/21_strings/{gotw29a.txt,stringtok_h.txt}:  Added.
3759         * docs/faq/index.html:  Updated what-works for sixth
3760         snapshot. Also a number of "internal" links have been
3761         fixed, now that the web pages are the docs directory...
3762         * docs/faq/index.txt: Regenerated.
3763         
3764 1999-05-21   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
3765
3766         * bits/basic_string.h: Add Nathan's documentation on the string class.
3767
3768         * testsuite/27_io/ios_members_static.cc: New file, for testing
3769         ios_base::sync_with_stdio.
3770
3771 1999-05-21   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
3772
3773         * bits/std_locale.h: Simplify includes.
3774         * bits/loccore.h: Delete.
3775         * bits/localefwd.h: Renamed, trimmed.
3776         * bits/locfacets.h: Delete.
3777         * bits/locale_facets.h: Rename, expanded.
3778         * bits/loccore.tcc: Deleted.
3779         * bits/locfacets.tcc: Deleted.
3780         * bits/locale_facets.tcc: Resultant merge.
3781         * bits/std_fstream.h: Modify include.
3782         * bits/ostream.tcc: Same.
3783         * bits/istream.tcc: Same.
3784
3785         * src/locale-inst.cc: And here.
3786         * src/locale.cc: Ditto. 
3787         * src/Makefile.am: Updated.
3788         * src/Makefile.in: Rengenerated.
3789
3790         * bits/std_istream.h: Move istream::sentry ctor definition.
3791         * bits/istream.tcc: Move istream::sentry ctor here.
3792         Add more detailed locale include here for ctype member functions.
3793         * bits/ostream.tcc (std): And here.
3794
3795         * bits/sbuf_iter.h: Include std_streambuf.h
3796
3797         * bits/locfacets.h: Start separating this into a localeimp.h file.
3798         * bits/loccore.h: Start separating this into a localefwd.h file.
3799         Add std_climits for CHAR_BIT.
3800         
3801         * bits/ios_base.h (ios_base::sync_with_stdio): Stub in.
3802
3803         * bits/char_traits.h: Tweak.
3804
3805         * bits/ios_base.h: Remove INT_MAX, use 1<<16.
3806
3807         * bits/std_ostream.h: Remove c++config.h include.
3808         * bits/std_istream.h: Same.
3809         * bits/std_streambuf.h: Same.
3810         * bits/std_fstream.h: Same.
3811         * bits/std_sstream.h: And here.
3812         
3813         * bits/std_iosfwd.h: Add _G_RESOLVE_LIB_DEFECTS here for streampos.
3814         * bits/char_traits.h: Add include of std_cwchar.h for mbstate_t.
3815         * bits/fpos.h: Tweak, format.
3816
3817         * std/ciso646: New file.
3818         * bits/std_ciso646.h: New file.
3819         * src/Makefile.am (std_headers): Add ciso646.
3820         (headers): Add bits/std_ciso646.h.
3821         * src/Makefile.in: Regenerate.
3822         * testsuite/17_intro/header_ciso646.cc: New file, disable
3823         equivalance tests.
3824         
3825         * bits/fpos.h: Remove libio.h include.
3826         * bits/basic_file.h: And here.
3827         * bits/std_ios.h: Put here.
3828
3829         * src/ios.cc: Simplify includes, tweak.
3830         * bits/std_ios.h: Simplify include order. 
3831         * bits/ios_base.h: Modify ios_base::failure.
3832
3833         * stl/bits/std_numeric.h: Change include from stl_iterator to
3834         std_iterator.
3835         
3836 1999-05-19  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
3837
3838         * std/iostream: Remove static member __ioint.
3839         * bits/std_iostream.h: Put here.
3840
3841         * stl/bits/std_numeric.h: Remove unneccessary std_iostream.h include.
3842         * stl/bits/stl_algobase.h: Same.
3843         * testsuite/27_io/iostream_objects.cc: Regression tests.
3844         * testsuite/27_io/hello.cc: Remove, subset of above.
3845         
3846 1999-05-19  Phil Edwards  <pedwards@ball.com>
3847         
3848         * docs/index.html: Tweak, update.
3849
3850 1999-05-18  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3851
3852         * docs/17_intro/RELEASE-NOTES: remove outdated
3853         documentation about numeric_limits. Correct CXXINCLUDE setting
3854         documentation.
3855
3856 1999-05-18  Phil Edwards  <pedwards@ball.com>
3857
3858         * docs/{17_intro,18_support,19_diagnostics,20_util,21_strings,
3859           22_locale,23_containers,24_iterators,25_algorithms,26_numerics,
3860           27_io}/howto.html:  Created, with some initial entries.
3861         * docs/faq/index.html:  Fixed some links.
3862         * docs/faq/index.txt:  Regenerated.
3863
3864 1999-05-18  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
3865
3866         * bits/c++config.h (__GLIBCPP__): Set version to 19990518.
3867
3868         * docs/17_intro/RELEASE-NOTES: Update.
3869         * docs/index.html: Correct link to mailing list help page, update News.
3870         * docs/faq/index.html: Change fifth to sixth for snapshot.
3871         
3872         * src/Makefile.am (myinstallheaders): Bring over Gaby's changes to
3873         install $(top_builddir)/bits/std_limits.h into
3874         $(myincludepfx)/bits. This was mistakenly omitted from yesterday's
3875         Makefile.am changes.
3876         * *Makefile*: Regenerate using automake.
3877
3878         * mkcheck (LOG_FILE): Fix filebuf directory oddness.
3879         * testsuite/27_io/filebuf.cc: Same.
3880
3881 1999-05-18  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3882
3883         * docs/17_intro/CHECKLIST: update.
3884         * docs/17_intro/TODO: update.
3885
3886 1999-05-17  Phil Edwards  <pedwards@ball.com>
3887
3888         * docs/{17_intro,18_support,19_diagnostics,20_util,21_strings,
3889           22_locale,23_containers,24_iterators,25_algorithms,26_numerics,
3890           27_io}/howto.html:  Created, with some initial entries.
3891         * docs/faq/index.html:  Fixed some links.
3892         * docs/faq/index.txt:  Regenerated.
3893         
3894 1999-05-17  Benjamin Kosnik  <bkoz@unhappy.cygnus.com>
3895
3896         * src/Makefile.am (myinstallheaders): Missed removing missing.h. 
3897         * Makefile.in*: Regenerate.
3898
3899 1999-05-17  Benjamin Kosnik  <bkoz@happy.cygnus.com>
3900
3901         * bits/std_streambuf.h: Same.
3902
3903         * bits/loccore.h (_Bad_use_facet): Remove bits warned about.
3904         * bits/locfacets.h (std): Same.
3905         * bits/sstream.tcc: Same.
3906         * testsuite/27_io/stringstream.cc: Tweak.
3907
3908         * testsuite/27_io/filebuf.cc: Adjust.
3909         * testsuite/21_strings/capacity.cc (test01): Add more
3910         string::reserve tests.
3911
3912         * bits/c++config.h: Remove broken CCTYPE.
3913         * bits/std_cctype.h: Tweak, remove de-macroization, enable
3914         sequestered topper implementation.      
3915         * bits/std_cwctype.h: Same.
3916         
3917         * bits/missing.h: Remove.
3918         * bits/std_locale.h: Remove missing.h include.
3919         
3920         * stl/bits/std_bitset.h (bitset::bitset(string): Tweak to compile.
3921         
3922         * src/Makefile.am (headers): Add bits/std_cwctype.h.
3923         INCLUDES: Add top_builddir. 
3924         * src/Makefile.in: Regenerate.
3925
3926         * Makefile.am: Add check and check-install as new targets.
3927         * testsuite/make_check_libfree++: Move to. . .
3928         * mkcheck: Here.
3929         * configure.in: Tweak versions.
3930         * mknumeric_limits: Set paths correctly.
3931         
3932 1999-05-17  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3933         
3934         * src/Makefile.in (myinstallheaders): add rule to install
3935         std_limits.h. 
3936         
3937         * bits/slice.h (class slice): don't const-qualify data members
3938         since the copy and assignment operator is implicitly used. The
3939         valarray specification is definitively a bad one.
3940         
3941         * Makefile.in (generate-limits-sources): fix typo.
3942         
3943         * docs/text/TODO: update.
3944         * docs/text/CHECKLIST: update.
3945
3946         * bits/gslice.h (gslice): fix bugglet.
3947         (gslice::gslice): set _M_index_size to 0 whenever given lengths
3948         (lj) of size zero.
3949
3950         * src/Makefile.am (libstdc___la_SOURCES): add gen-num-limits.
3951         * src/Makefile.in (libstdc___la_SOURCES): keep in sync.
3952         [Note: **/Makefile.in should be generated from the corresponding
3953         Makefile.am.  The current situation is a litte chaotic.  ]
3954
3955 1999-05-16 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3956
3957         * mknumeric_limits: tweak.
3958
3959         * Makefile.in (all): add target generate-limits-sources.
3960         (generate-limits-sources): make a directory bits/ in top_builddir
3961         where the generated std_limits.h is put; generate limitsMEMBERs.cc
3962         directly under $(top_builddir)/src. Remains to put the appropriate
3963         rule for installing std_limits.h.
3964         
3965         * src/Makefile.in (headers): remove bits/std_limits.h to this list.
3966         (INCLUDES): add -I$(top_builddir) for bits/std_limits.h which is
3967         now generated at build-time in the build directory
3968         (libstdc___la_SOURCES): remove limitsMEMBERS.cc form this list
3969         * src/Makefile.am: reflect changes in src/Makefile.in
3970
3971 1999-05-12  Phil Edwards  <pedwards@ball.com>
3972
3973         * docs/faq/index.html: Add more entries (5.4,5.5), finish
3974         all but one empty entry.  Add links for HOWTOs, but no files yet.
3975         (Corrected HOWTO links are for bkoz's new scheme.)
3976         * docs/faq/index.txt: Regenerated.
3977         
3978 1999-05-12  Benjamin Kosnik  <bkoz@happy.cygnus.com>
3979
3980         * testsuite/17_intro/headers.cc: New file.
3981         * stl/bits/std_queue.h: Change stl_bvector.h include path.
3982         * bits/std_cwctype.h: New file.
3983         
3984         * testsuite/27_io/filebuf.cc: Need to tweak directory structure.
3985
3986 1999-05-11  Benjamin Kosnik  <bkoz@loony.cygnus.com>
3987
3988         * stl/bits/stl_config.h (__USE_MALLOC): Change underlying allocator.
3989         Check __USE_MALLOC before defining specializations containing
3990         __default_alloc_template.
3991         * src/stl-inst.cc: Here too.
3992
3993         * bits/basic_string.h: Change.
3994
3995         * testsuite/make_check_libfree++: More tweaks.
3996         * testsuite/21/capacity.cc: New file.
3997         
3998         * src/string.cc: Rename to be consistent with other inst files. 
3999         Rename to string-inst.cc.
4000         * src/string*.cc: Change include.
4001         * src/wstring.cc: Rename to wstring-inst.cc.
4002         * src/wstring*.cc: Ditto.
4003         * src/Makefile.in: Also here.
4004         * src/Makefile.am: Ditto.
4005
4006         * src/traits.cc: Remove.
4007         * src/wtraits.cc: Same.
4008
4009         Try a new way of organizing documentation, one with synchronicity
4010         between testsuites and docs subdirectories, and see who yelps.
4011         * docs/html: Remove, use chapter and subject specific directories
4012         instead of forcing things immediately into format of
4013         documentation.
4014         * docs/text: Same.
4015         * docs/image: Same.
4016         * docs/faq/text, docs/faq/html: Remove, put in the docs/faq
4017         directory and sort by filename and extension.
4018         * docs/17_intro, 18_support, 19_diagnostics, 20_util, 21_strings,
4019         22_locale, 23_containers, 24_iterators, 25_algorithms,
4020         26_numerics, 27_io: Add.
4021         * docs/17_intro/*: Populate with all the text files. . .
4022         * docs/index.html: Construct.
4023         
4024         * testsuite/*: Update with same names as the docs subdir.
4025         * testsuite/results: Where to stash conformance results for the
4026         different snapshots, so that progress/size/speed issues can be
4027         tracked over time.
4028         
4029 1999-05-10  Benjamin Kosnik  <bkoz@loony.cygnus.com>
4030         
4031         * src/string.cc: Add _S_copy_chars instantiation, as well as
4032         string::binary operators !=, ==, etc.
4033
4034         * src/Makefile.am (CXXFLAGS): Remove -fvtable-thunks.
4035         * src/Makefile.in (CXXFLAGS): Same here.
4036         * testsuite/make_check_libfree++ (CXX_FLAG): And here.
4037         
4038 1999-05-07  Benjamin Kosnik  <bkoz@cygnus.com>
4039
4040         * src/string.cc:  Add missing member functions to instantiation list.
4041
4042 1999-05-07  Benjamin Kosnik  <bkoz@cygnus.com>
4043
4044         * src/misc-inst.cc: Remove unused string instantiations.
4045
4046         * bits/string.tcc: Tweak, fix.
4047         * bits/basic_string.h: Format. Fix reported error with c_str().
4048
4049         * testsuite/make_check_libfree++: Tweak for shared builds.
4050         * testsuite/21/operations.cc: New file for testing c_str() etc.
4051
4052 1999-05-06  Benjamin Kosnik  <bkoz@cygnus.com>
4053             Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
4054
4055         * stl/bits/stl_vector.h: Fix the code of vector<> for usage with
4056         an iterator class.  Delineate pointer versus iterator differences
4057         in implementation.
4058         * 23/vector_capacity.cc: New file, tests for above.
4059         
4060 1999-05-06 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4061
4062         * mknumeric_limits: Fix typo. 'unsigned lont' should read
4063         'unsigned long'.
4064         * src/Makefile.am (libstdc___la_SOURCES): add limitsMEMBERS.cc,
4065         generated by mknumeric_limits to the list. Now std_limits.h is
4066         basically working. 
4067         * src/Makefile.in (generate-numeric-limits): new target to handle
4068         automatic generation of bits/std_limits.h and src/limitsMEMBERS.cc.
4069         (all): add target generate-numeric-limits.
4070         (libstdc___la_OBJECTS): add limitsMEMBERS.lo
4071         (libstdc___la_SOURCES): add limitsMEMBERS.cc
4072
4073 1999-05-05  Benjamin Kosnik  <bkoz@cygnus.com>
4074
4075         Irix build issues.
4076         * bits/c++config.h (_G_USE_CTYPE_ISBIT): Defines new macro for
4077         mask values in ctype_base. Move hacks for _ISBit to locfacets.h.
4078         * bits/locfacts.h: Here.
4079
4080 1999-05-05  Benjamin Kosnik  <bkoz@cygnus.com>
4081             Ulrich Drepper <drepper@cygnus.com> 
4082
4083         Solaris build issues.
4084         * bits/c++config.h: Define new macros, _G_USE_STRTOF and
4085         _G_USE_STRTOLD.
4086         
4087         * bits/locfacets.tcc (num_get::do_get): Tweak long double and
4088         float overloads to use the above macros. Account for the lack of
4089         strtold on some systems, and revert back to using sscanf.
4090
4091 1999-05-04  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
4092
4093         * bits/locfacets.tcc (num_get::do_get): Check the errno variable.
4094         Use strtoul/strtoull for unsigned types.  Check the ranges for
4095         short/unsigned short and if necessary for int/unsigned int.
4096
4097 1999-05-04  Benjamin Kosnik  <bkoz@cygnus.com>
4098
4099         * src/gen-num-limits.cc (round_style): Need to use mknumericlimits
4100         to generate bits/std_limits.h now, as the SGI std_limits.h is
4101         being depricated. Not done, but should be done immediately: need
4102         to make sure this script is run as part of the configuration
4103         process, because without it "make" in a configured build directory
4104         will fail. Also tweaked: added a space for float_round_style, and
4105         used static_cast of zero to default-initialize, which should be ok
4106         according to the standard. (see 8.5 p5 and 20.1.3).
4107         * mknumeric_limits (OUT_C): Need this for x86 long
4108         double extensions.
4109         
4110         * bits/basic_file.h: Include libio.h, not libioP.h.
4111         * src/basic_file.cc: And add libioP.h include here, so that
4112         _IO_init, et. al are well-declared.
4113
4114         * testsuite/make_check_libfree++ (LIB_PATH): Test installed
4115         headers, not source directory headers.
4116
4117         * src/Makefile.am (headers): Add stl_range_errors.h, also adjust
4118         for ext/*.  Also add basic_file.h.
4119         * src/Makefile.in (headers): Same.
4120         
4121         * bits/std_string.h: Reduce dependencies for faster
4122         pre-processing. Move istream and ostream specific defines into
4123         istream.tcc and ostream.tcc respectively.
4124         * bits/string.tcc: And here.
4125         * bits/basic_string.h: Move getline inline out-of-line, and to
4126         istream.tcc.
4127         * bits/istream.tcc: Move string::getline and operator>> here.
4128         * bits/ostream.tcc: And here too.
4129
4130         * bits/utility.h: Remove, as clashes with a standard header. Put
4131         __OUTOFRANGE and __LENGTHERROR macros into string.tcc for the time
4132         being, until this can be combined with SGI's approach.
4133         * bits/string.tcc: Add macros, as above.
4134         * bits/loccore.h: Add _Count_ones defines.
4135         * bits/std_string.h: And here too.
4136         * bits/std_locale.h: And here.
4137         * bits/std_ios.h: Take out include here.
4138         * src/Makefile.am (headers): Remove utility.h
4139         * src/Makefile.in (headers): Remove utility.h
4140
4141         * stl/bits/*: Update to SGI STL 3.20.
4142         * stl/ext/pthread_alloc: Delete this file.
4143         
4144 1999-05-04 Phil Edwards <pedwards@ball.com>
4145
4146         * docs/faq/html/index.html: Add more entries
4147         * docs/faq/html/index.txt: regenerated.
4148
4149 1999-05-04 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4150
4151         * src/gen-num-limits.cc (DO_DEFINE_MIN_MAX): fix typo.
4152
4153 1999-04-29  Benjamin Kosnik  <bkoz@haight.cygnus.com>
4154
4155         * bits/locfacets.tcc (num_get::do_get): Re-implement, with input
4156         from Ulrich and Nathan. Remove extraneous string class usage,
4157         tweak, clean, simplify and consolidate with a eye towards removing
4158         duplcate code. Use strto[l, ll, f, d, ld] instead of sscanf.
4159         Not done: dealing with leading zeros, wchar_t work.
4160         * bits/locfacets.h: And here too.
4161
4162         * doc: Remove.
4163         
4164 1999-04-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4165
4166         * docs/: add a FAQ.
4167         * docs/faq/: New directory.
4168         * docs/faq/html/: Likewise.
4169         * docs/faq/text/: Likewise.
4170         * docs/faq/html/index.html: New file.
4171         * docs/faq/html/index.txt: Likewise. Generated from 
4172         docs/faq/html/index.html by lynx.
4173
4174 1999-04-28  Benjamin Kosnik  <bkoz@happy.cygnus.com>
4175             Ryszard Kabatek and Branko Cibej 
4176
4177         * bits/locfacets.tcc: Modify.
4178
4179 1999-04-27  Benjamin Kosnik  <bkoz@happy.cygnus.com>
4180
4181         * bits/sbuf_iter.h: Clean, fix istreambuf_iterator, make
4182         conformant to 14882, wrap non-standard extensions with
4183         _G_RESOLVE_LIB_DEFECTS, remove detritus and cruft, rennovate.
4184         * bits/locfacets.tcc (num_get::do_get(bool)): Return correct iterator.
4185         
4186         * testsuite/27/istringstream_formatted.cc: Add tests.
4187         
4188         * bits/locfacets.h: Remove cruft from _Format_cache, continue
4189         commenting, simplify.
4190         * bits/locfacets.tcc: Same.
4191
4192         1999-04-27  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
4193         * bits/locfacets.tcc (num_get::do_get):
4194         Fix the sscanf format parameter 
4195         for long long 'll' (as in C9X) instead of 'l'.
4196         Fix the order of sscanf format parameters: "%dl" --> "%ld".
4197         Change the type of the local variable '__conv' from 'string'
4198         to 'const char*' and adapt the change.
4199         
4200 1999-04-26  Benjamin Kosnik  <bkoz@happy.cygnus.com>
4201
4202         * bits/locfacets.h: Document _Format_cache, and name data members
4203         after the corresponding functions in numpunct. For instance:
4204         _M_grsep -> _M_thousands_sep, and _M_decsep -> _M_decimal_point.
4205         Break apart _M_boolnames{2] into _M_truename and _M_falsename.
4206         * bits/locfacets.tcc: Same.
4207
4208         * bits/locfacets.h (num_get::_M_extract): Don't allow groupings to
4209         stop parsing--store for later analysis.
4210         * testsuite/27/istringstream_formatted.cc: Add cases.
4211         
4212 1999-04-25  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4213
4214         * bits/valarray_meta.h: tweak.
4215         (_UnFunBase, _BinFunBase, _BinFunBase1, _BinFunBase2, _BinBase1,
4216         _BinFunBase2): rename typedef-name _Tp to _Vt to keep the compiler
4217         happy -- boggus warning.
4218         * bits/std_valarray.h: Fix.
4219         (valarray<T>::shift): Fix. Update comment.
4220         (valarray<T>::cshift): Fix. 
4221
4222 1999-04-23  Benjamin Kosnik  <bkoz@cygnus.com>
4223         
4224         * testsuite/27filebuf-2.txt: Delete.
4225         * testsuite/27/filebuf.cc: Put output files directly into the
4226         correct subdirectory (27).
4227
4228         Alexandre Petit-Bianco <apbianco@cygnus.com>
4229         * testsuite/make_check_libfree++: Check generated (*.txt) file
4230         against stored results file (*.tst).
4231
4232 1999-04-22  Benjamin Kosnik  <bkoz@nabi.net>
4233
4234         * bits/locfacets.tcc: Fix.
4235
4236         * bits/fstream.tcc (filebuf::seekoff): Output current out pointer.
4237         (filebuf::overflow): Simplify.
4238         (filebuf::xsputn): Correctly handle indeterminate state.
4239
4240         * testsuite/27/istringstream_formatted.cc: Tweak.
4241         * testsuite/27/filebuf.cc: Tweak.
4242         * testsuite/27/filebuf-3.tst: Correct: this is the canonical
4243         results file, please use this in the future to guarantee filebuf
4244         positioning accuracy.
4245         * testsuite/27/filebuf-2.tst: Same.
4246         
4247 1999-04-21  Benjamin Kosnik  <bkoz@cygnus.com>
4248
4249         * bits/fstream.tcc (filebuf::xsputn): Add.
4250         * bits/std_fstream.h: Declare.
4251         
4252         * src/basic_file.cc (__basic_file::open): Add O_CREAT to open
4253         calls using ios_base::trunc.
4254
4255         * bits/sstream.tcc (streambuf::overflow): Fix crasher.
4256         
4257         * testsuite/make_check_libfree++ (LOG_FILE): Ugh. Another fix.
4258         * testsuite/27/27stringstream.cc: Same.
4259         * testsuite/27/27stringbuf.cc: More tweaks.
4260         * testsuite/27/27filebuf-2.txt: Remove.
4261
4262         * testsuite/27/27filebuf-1.tst: Append, to force byte size over
4263         BUFSIZE so that overflows/underflow can be tested with default
4264         buffer setting.  
4265         * testsuite/27/27filebuf-1.tst: Add.
4266
4267         * testsuite/*/*: Remove pre-pended chapter names, as they
4268         duplicate the chapter info contained in the enclosing directory
4269         anyway.
4270         
4271 1999-04-20  Benjamin Kosnik  <bkoz@cygnus.com>
4272
4273         * bits/streambuf.tcc (streambuf::xsputn): Re-implement to conform
4274         to sputc conditions.
4275
4276         * bits/ios_base.h: Define here.
4277         * src/ios.cc (ios_base::_M_clear): Remove hack.
4278         * bits/basic_ios.h: Fix rdstate().
4279
4280         * bits/sstream.tcc (streambuf::seekoff): Fix.
4281         * bits/fstream.tcc (filebuf::seekoff): Tweak comments.
4282
4283         * testsuite/make_check_libfree++ (LOG_FILE): More c-c-c-changes.
4284         * testsuite/24/24iterator.cc: Add/Fixes for DEBUG_ASSERT.
4285         * testsuite/27/27stringstream.cc: Same. 
4286         * testsuite/27/27stringbuf.cc: Same.
4287         * testsuite/27/27istringstream_formatted.cc: Same.
4288         * testsuite/27/27filebuf.cc: Same.
4289         
4290         * bits/locfacets.h: Remove specializations for messages<char> and
4291         messages<wchar_t> ctors. Same for moneypunct. Not required, not used.
4292         * src/locale.cc: Remove definitions for above.
4293         * src/misc-inst.cc: Revert, take out iomanip.h include. 
4294         * bits/std_iomanip.h: Tweak, format.
4295         
4296 1999-04-19  Benjamin Kosnik  <bkoz@cygnus.com>
4297
4298         * bits/loccore.h: Format, move inline.
4299         * bits/locfacets.tcc: Same.
4300         * bits/locfacets.h: Same.
4301
4302         Ulrich Drepper  <drepper@cygnus.com>
4303         * aclocal.m4: Re-generate.
4304         * configure, configure.in: Same.
4305         * m4/lc_messages.m4: New file.
4306
4307 1999-04-18  Benjamin Kosnik  <bkoz@cygnus.com>
4308
4309         * bits/std_ostream.h: Fix typedef for wchar_t instantiations.
4310         * bits/sstream.tcc: Tweak.
4311
4312         * std/iostream: Put __ioinit inside macro guards.
4313         
4314         * src/stlinst.cc: Delete and move to . . .
4315         * src/stl-inst.cc: New file, plus wrapping in namespace std.
4316         * src/Makefile.in: Change.
4317         * src/Makefile.am: Same.
4318         * src/misc-inst.cc: Add istringstream/ostringstream instantiations.
4319
4320         * testsuite/make_check_libfree++: Efficiently format for minimal
4321         space. Enforce stricter execution tests by enabling
4322         -DDEBUG_ASSERT.
4323         
4324 1999-04-16  Benjamin Kosnik  <bkoz@cygnus.com>
4325
4326         * docs/text/RELEASE-NOTES: Fix include typo.
4327
4328         * src/Makefile.am (headers): Add istream.tcc. 
4329         * src/Makefile.in (headers): Add istream.tcc. 
4330
4331         * ltconfig, ltmain.sh, libtool: Update to libtool-1.2g.
4332         
4333 1999-04-16  Benjamin Kosnik  <bkoz@cygnus.com>
4334
4335         * bits/locfacets.tcc (num_get::do_get(long)): Finish roughing in.
4336         * bits/locfacets.h (num_get::_M_extract): New functin:
4337         consolidate logic for do_get(...) members.
4338
4339         * bits/sbuf_iter.h (istreambuf_iterator::operator++()): Fix.
4340         * testsuite/27/27istringstream_formatted.cc: Add.
4341
4342 1999-04-16  Martin v. Loewis  <martin@mira.isdn.cs.tu-berlin.de>
4343
4344         * src/basic_file.cc (__basic_file::open): Fix thinko in
4345         _G_HAVE_IO_FILE_OPEN bits.
4346         * bits/std_istream.h (sentry::sentry(istream, bool)): Fix isspace bug.
4347         * bits/std_cmath.h: Add stdlib.h include for ldiv_t.
4348         * src/complex.cc (FCT): Qualify all functions with global namespace.
4349         * src/locale.cc: Don't qualify memcpy and setlocale.
4350         * src/stdexcept.cc (__out_of_range): Qualify out_of_range with std::.
4351         (__length_error): Likewise, for length_error.
4352         * src/stlinst.cc: Qualify instantiations with std::.
4353
4354 1999-04-15   Benjamin Kosnik  <bkoz@cygnus.com>
4355
4356         * C++STYLE: Add ChangeLog guidelines for member functions.
4357
4358         * doc/* : Delete.  
4359         * BADNAMES, BUGS, C++STYLE, CHECKLIST, COPYING,
4360         DESIGN, HEADER_POLICY, PROBLEMS, RELEASE-NOTES, TODO: Moved into
4361         docs/text and made less strident.
4362         
4363         * bits/fstream.tcc: Change non-standard ctor to match Sun's sematics.
4364         * bits/std_fstream.h: Same.
4365         * src/ios.cc: Same.
4366
4367         * bits/locfacets.h: Touch. 
4368         
4369 1999-04-15  Ulrich Drepper  <drepper@cygnus.com>
4370
4371         * math/cexp.c (cexp): Use NAN instead of nan("").
4372         Reported by joel reed <joelreed@yahoo.com>.
4373
4374         * libio/libioP.h: Define _IO_seek_fpos_t and _IO_seek_off_t based on
4375         _G_IO_IO_FILE_VERSION.  Use these types in the prototypes.
4376         * libio/fileops.c: Use _IO_seek_fpos_t and _IO_seek_off_t types
4377         instead of #if cascades.
4378         * libio/genops.c: Likewise.
4379         * libio/ioseekoff.c: Likewise.
4380         * libio/ioseekpos.c: Likewise.
4381         * libio/strops.c: Likewise.
4382         Patch by Chip Salzenberg <chip@perlsupport.com>.
4383
4384 1999-04-15  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4385
4386         * docs: New directory.
4387         * docs/html: Likewise.
4388         * docs/text: Likewise.
4389         * docs/image: Likewise.
4390
4391         * bits/std_cmath.h: Add new functions.
4392         (abs): overload for long and double.
4393         (div): overload for long.
4394
4395         * bits/valarray_array.h: Fix.
4396         * bits/gslice.h: Adjust friend.
4397         * bits/slice_array.h: likewise.
4398         * bits/valarray_meta.h: likewise.
4399
4400 1999-04-13   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
4401
4402         * bits/locfacets.h: More changes, for num_get for insertion
4403         operators for integral types. Comment fields in _Format_cache.
4404         * bits/locfacets.tcc: And here too: add preliminary long version.
4405         * testsuite/27/27istringstream_formatted.cc: Add cases.
4406
4407 1999-04-13   Mark Elbrecht  <snowball3@usa.net>
4408
4409         * configure.in: Add locale.h to AC_CHECK_HEADERS argument. Call
4410         AC_LC_MESSAGES macro.
4411         * aclocal.m4 (AC_LC_MESSAGES): New. Determines if a target
4412         supports LC_MESSAGES.
4413         * config.h.in: Add entry for HAVE_LC_MESSAGES.
4414         * src/locale.cc (locale::_S_normalize_category): Use the
4415         HAVE_LC_MESSAGES macro to check for LC_MESSAGES support instead of
4416         _G_NO_CLOCALE_HAS_MESSAGES.
4417         * aclocal.m4 (AM_PROG_LD): For DOS style paths, simplify test to
4418         '?:' from '?:\\' so any path beginning with a drive name matches.
4419
4420 1999-04-12   Mark Elbrecht  <snowball3@usa.net>
4421
4422         * src/basic_file.cc(sys_open) [O_BINARY]: Declare __testb.
4423
4424 1999-04-12   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
4425
4426         * bits/locfacets.h: Tweak.
4427         * bits/locfacets.tcc(do_get): Clean/fix bool method.
4428
4429         * testsuite/21/21nonmember.cc: Same.
4430         * testsuite/21/21compare.cc: Fix license.
4431         * testsuite/27/27istringstream_formatted.cc: New file.
4432
4433 1999-04-12  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4434
4435         * bits/valarray_meta.h: _BinFunBase1, _BinFunBase2, _BinBase1,
4436         _BinBase2: new template classes; put in there to work around a
4437         compiler limitation. The whole valarray architecture is now
4438         working.
4439
4440 1999-04-08  Benjamin Kosnik  <bkoz@haight.constant.com>
4441
4442         * bits/locfacets.tcc: Fix, format.
4443         * bits/locfacets.h: Fix.
4444         * src/locale.cc: Same, plus format.
4445
4446         * bits/basic_string.h: Re-add definition here.
4447         * src/string.cc: Take out.
4448
4449 1999-04-08  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4450
4451         * bits/std_valarray.h: tweak.
4452         * bits/valarray_array.h tweak. use _Expr.
4453         * bits/slice_array.h: likewise.
4454         * bits/gslice_array.h: likewise.
4455         * bits/mask_array.h: likewise.
4456         * bits/indirect_array.h: likewise.
4457         * bits/valarray_meta.h: tweak.
4458         _UnFunBase, _UnFunClos, _BinFunBase, _FunBase, _ValFunClos,
4459         _RefFunClos, _UnBase, _UnClos, _BinBase, _BinClos, _SClos, _GClos,
4460         _IClos: new template classes.
4461         _Meta: renamed to _Expr. Made template with args.
4462         _Constant: made template with two args.
4463
4464 1999-04-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4465
4466         * bits/valarray_array.h: tweak.
4467
4468 1999-04-06  Benjamin Kosnik  <bkoz@cygnus.com>
4469
4470         * bits/basic_string.h: Whoops--fix blip.
4471
4472 1999-04-06  Benjamin Kosnik  <bkoz@cygnus.com>
4473
4474         Update to SGI STL 3.13
4475         * bits/basic_string.h: Add __get_c_string definition.
4476         * stl/bits/stl_range_errors.h: New file.
4477         * stl/bits/std_bvector.h: Same.
4478         * stl/bits/*: Update.
4479
4480 1999-04-04 1999  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4481
4482         * bits/slice_array.h: tweak.
4483         * bits/gslice_array.h: tweak.
4484         * bits/mask_array.h: tweak.
4485         * bits/indirect_array.h: tweak.
4486         * bits/valarray_array.h: tweak.
4487         (__valarray_copy): replace copy with memcpy.
4488         * bits/std_valarray.h: use __valarray_copy whenever possible.
4489         use __valarray_fill instead of fill.
4490
4491 1999-04-02  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4492
4493         * src/gen-num-limits.cc: new file
4494         * mknumeric_limits: Ditto.
4495
4496 1999-03-30  Benjamin Kosnik  <bkoz@cygnus.com>
4497
4498         * bits/locfacets.tcc: Do a stub version of num_get for short, int,
4499         and long types.
4500         * bits/locfacets.h: Add num_get::get methods overloaded for int
4501         and short, to resolve ambiguous overloads in istream insertion
4502         operators.
4503
4504 1999-03-30  Benjamin Kosnik  <bkoz@cygnus.com>
4505
4506         * bits/std_istream.h: Fix.
4507         * bits/istream.tcc: Fix.
4508
4509 1999-03-30  Philip Martin  <pm@corris.dircon.co.uk>
4510
4511         * testsuite/24/24iterator.cc: fix ++/-- tests
4512
4513 1999-03-29  Benjamin Kosnik  <bkoz@cygnus.com>
4514
4515         * bits/std_ostream.h: Looks like this, actually: Fix up eh-isms.
4516         * bits/ostream.tcc: Same.
4517
4518         * bits/std_istream.h: Bring over ostream changes, implement member
4519         functions. Baseline.
4520         * bits/istream.tcc: New file.
4521
4522 1999-03-26  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4523
4524         * bits/gslice.h (class gslice): fix friends template.
4525
4526 1999-03-23  Benjamin Kosnik  <bkoz@cygnus.com>
4527
4528         * bits/std_ostream.h: Fix sentry objects, implement seekp, tellp,
4529         delete cruft, etc.
4530         * bits/ostream.tcc: Same.
4531
4532         * bits/std_istream.h: Minor tweaks.
4533
4534 1999-03-18  Benjamin Kosnik  <bkoz@cygnus.com>
4535
4536         * src/locale-inst.cc: Remove duplicate instantiations.
4537         * bits/locfacets.tcc: Tweak definitions of static member.
4538
4539 1999-03-18  Benjamin Kosnik  <bkoz@cygnus.com>
4540
4541         * bits/std_fstream.h: Format: prepend "__" in front of
4542         non-standard typedefs.
4543         * bits/fstream.tcc: Match.
4544         * bits/std_streambuf.h: Format: prepend "__" in front of
4545         non-standard typedefs.
4546
4547         * bits/sstream.tcc: Match.
4548         * bits/std_istream.h: Format.
4549         * src/locale-inst.cc: Add num_get instantiations.
4550
4551         * bits/std_sstream.h: Fix crash in stringstreams. Remove member
4552         _M_sb, a basic_stringbuf object, and use the basic_ios pointer
4553         _M_streambuf instead. Make initializations sane. Fix
4554         allocation/deallocation of _M_streambuf.
4555         * bits/std_ostream.h: Fix initialization code.
4556         (ctor): Eliminate redundant this->init(), let base class initialize.
4557         (default ctor): New. Assume base classes already initialzed.
4558         * bits/std_istream.h: Parallel work to ostream.
4559         (ctor): Eliminate redundant this->init(), let base class initialize.
4560         (default ctor): New. Assume base classes already initialzed.
4561         Fix initialization of basic_iostream.
4562
4563         * bits/std_fstream.h: While we're at it, make initializations sane
4564         here too. Now matches sstream.h.
4565
4566         * bits/string.tcc: Fix crash in basic_string::compare.
4567         * bits/basic_string.h: And here.
4568         * bits/c++config.h: Add comment about _G_USE_EXCEPTIONS.
4569
4570         * testsuite/make_check_libfree++: Check shared as well.
4571         * testsuite/27/27stringstream.cc: Add bits.
4572         * testsuite/27/27boolfmt.cc: Add bits.
4573         * testsuite/27/27octfmt.cc: Add bits.
4574
4575 1999-03-17  Benjamin Kosnik  <bkoz@happy.cygnus.com>
4576
4577         * configure.in (USE_LONG_DOUBLE): signbitl link error.
4578
4579         * bits/locfacets.h: Fix errors that cause build problems
4580         with current egcs (template parameters have class scope).
4581         * bits/locfacets.tcc: Same.
4582         * src/locale-inst.cc: Same, clean.
4583         * src/misc-inst.cc: Same, clean.
4584
4585 1999-03-17  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
4586
4587         * stl/bits/std_memory.h:  Modify auto_ptr::reset to reflect the
4588         standard. Re-apply this previous patch.
4589
4590 1999-03-17  Philip Martin  <pm@corris.dircon.co.uk>
4591
4592         * bits/basic_string.h: Use __normal_iterator<> for iterators.
4593         * bits/std_sstream.h: Support __normal_iterator<> iterators.
4594         * bits/string.tcc: Ditto.
4595         * src/misc-inst.cc: Ditto.
4596         * src/locale-inst.cc: Ditto.
4597         * stl/bits/stl_iterator.h: Add __normal_iterator<>.
4598         * stl/bits/stl_vector.h: Use __normal_iterator<> for iterators.
4599         * testsuite/24/24iterator.cc: Add test cases for basic_string and
4600         vector iterators.
4601
4602 1999-03-16  Benjamin Kosnik  <bkoz@cygnus.com>
4603
4604         * bits/locfacets.tcc: Remove macro hack.
4605         * bits/locfacets.h: Tweaks.
4606         * src/misc-inst.cc: Weed out locale-related instantiations.
4607         * src/locale-inst.cc: Same.
4608
4609         * RELEASE-NOTES: Make more changes.
4610         * bits/c++config.h: Bump version number.
4611
4612         * testsuite/make_check_libfree++: Collect diagnostics.
4613
4614         * bits/std_ostream.h: Fix ostream initialization/destruction
4615         problem, related to dtor cleanup and new cached facets, agggggggh.
4616         * bits/ostream.tcc: Tweak.
4617         * bits/locfacets.h: Remove all friends of iostream classes.
4618         * bits/ios_base.h: Same.
4619         * bits/streambuf.tcc: Tweak.
4620         * bits/std_streambuf.h: Tweak.
4621         * bits/std_fstream.h: Tweak.
4622         * bits/fstream.tcc: Tweak.
4623         * src/stdstreams.cc: Tweak.
4624         * src/ios.cc: Close streams.
4625
4626         * math/Makefile.in: Add missing files for shared link errors.
4627         * math/Makefile.am: Same.
4628
4629 1999-03-15  Benjamin Kosnik  <bkoz@cygnus.com>
4630
4631         * src/locale-inst.cc: More wchar_t instantiations.
4632         * src/misc-inst.cc: Missed a few bits.
4633         * testsuite/make_check_libfree++: Add static and shared runs.
4634         * src/ios.cc: Add clarity to ios_base::Init::~Init().
4635
4636 1999-03-15  Benjamin Kosnik  <bkoz@cygnus.com>
4637
4638         * bits/std_ostream.h: Format, expunge, simplify. Add cached
4639         facets. Resolve link errors.
4640         * bits/ostream.tcc: Same.
4641         * src/misc-inst.cc: Add ostream, wostream instantiations.
4642         * src/Makefile.am: Add missing bits for stdstreams.cc.
4643         * src/Makefile.in: Same.
4644         * bits/std_iosfwd.h: Format.
4645         * bits/locfacets.h (num_put): Add basic_ostream as a friend to
4646         num_put so that cached _M_fnumput pointer can be deleted in
4647         basic_ostream's dtor. Now everybody plays nice.
4648
4649 1999-03-12  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4650
4651         * bits/gslice.h (class gslice): Make friends valarray,
4652         gslice_array and _GliceExpression.
4653
4654 1999-03-11  Benjamin Kosnik  <bkoz@cygnus.com>
4655
4656         * RELEASE-NOTES: Update.
4657         * src/ios.cc: Use do proper init.
4658         * bits/std_streambuf.h: Tweak.
4659         * bits/std_iostream.h: Take out static member.
4660         * std/iostream: Put here.
4661         * bits/std_ostream.h: Non-default ctor shouldn't smash _M_streambuf.
4662         * bits/std_istream.h: Ditto.
4663         * bits/basic_ios.h: Format.
4664         * bits/ostream.tcc(write): Fix.
4665         * bits/fstream.tcc: Fix stdstreams ctor to do a proper
4666         initialization of the fstream class.
4667         * src/stdstreams.cc: I'm baaaaaaaack.
4668
4669 1999-03-10  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
4670
4671         * bits/ios_base.h: Correct comments. Add ios_base::init()
4672         functionality. Format, tweak, expunge, clean, bathe, and hang to dry.
4673         * src/misc-inst.cc: Add instantiations here.
4674         * src/ios.cc: Clean.
4675         * bits/std_iostream.h: Add wrappers, global ios_base::Init object.
4676         * src/stdstreams.cc: Delete this file, as now unnecessary.
4677         * bits/fstream.tcc: Add missing initialization bits for ctor.
4678         * src/Makefile.am (libstdc___la_SOURCES): Delete here as well.
4679         * src/Makefile.in (libstdc___la_OBJECTS): And here.
4680
4681         * bits/streambuf.tcc: Tweak.
4682         * bits/sstream.tcc: Here too.
4683
4684         * bits/fstream.tcc: And change definition as well.
4685         * bits/std_fstream.h: Change ctor.
4686         * src/basic_file.cc (sys_open): Add call that opens a specific fileno.
4687         * bits/basic_file.h: Add declarations.
4688
4689         * testsuite/27/27hello.cc: New file.
4690
4691         * bits/std_ostream.h: Move flush() inline.
4692         * bits/ostream.tcc: From here.
4693
4694         * bits/char_traits.h: Add include of fpos.h for streamoff/streampos.
4695         * bits/std_ios.h: Change include libio to only when necessary.
4696         * bits/fpos.h: Like here.
4697         * ios_base.h: And here.
4698
4699         * bits/locfacets.h: Change _Iostate to _Ios_Iostate.
4700         * bits/locfacets.tcc: Same.
4701         * bits/std_locale.h: Include std_ios.h not std_iosfwd.h.
4702         * bits/std_iosfwd.h: Move _Ios_Iostate to ios_base.h
4703
4704 1999-03-09  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
4705
4706         * bits/basic_ios.h: Change _M_ctype to _M_fctype.
4707
4708         * bits/std_streambuf.h: Clean, tweak.
4709         * bits/std_fstream.h: Same.
4710         * bits/std_sstream.h: Same.
4711         * bits/streambuf.tcc: Move most member functions out-of-line.
4712         * bits/fstream.tcc: Same.
4713         * bits/streambuf.tcc: Same.
4714
4715         * bits/basic_file.h(filepos_cur): Set correctly.
4716         (filepos_beg): Same.
4717         (seekpos): Change to __c_streampos.
4718         * src/basic_file.cc (std): Change to __c_streampos.
4719
4720         * testsuite/27/27filebuf.cc: Round one is finished.
4721         * testsuite/27/27filebuf-2.tst: New file, final output should match.
4722         * testsuite/27/27filebuf-3.tst: Same.
4723
4724 1999-03-08  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
4725
4726         * bits/basic_file.h: Fix typo, add comments about what to expect
4727         from the various member functions in __basic_file.
4728
4729         * bits/std_fstream.h: Re-do sync/underflow to work
4730         together. Change from sys_read to xsgetn and from sys_write to
4731         xsputn. As it should have been from the beginning. . .
4732
4733 1999-03-06  Benjamin Kosnik  <bkoz@haight.constant.com>
4734
4735         * bits/c++config.h (__GLIBCPP__): Add versioning macro.
4736
4737         * bits/basic_file.h(file_beg): New function.
4738         (file_cur): Ditto.
4739
4740         * testsuite/27/27filebuf.cc: Test in, out, in | out.
4741         * bits/std_fstream.h: More _M_mode refinements.
4742         (synch): Add bits for out mode only.
4743         * bits/std_streambuf.h(xsputn): Correct for filebufs.
4744         * bits/std_sstream.h: Ditto.
4745
4746 1999-03-03  Benjamin Kosnik  <bkoz@cygnus.com>
4747
4748         * bits/std_fstream.h: Fix _M_mode AND with ios_base::openmode.
4749         * testsuite/27/27filebuf.cc: Modify.
4750         * bits/c++config.h: Fix.
4751
4752 1999-03-02  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
4753
4754         * bits/c++config.h: New macro, _G_RESOLVE_LIB_DEFECTS, used to put
4755         code in place that diverges from the final standard, but has been
4756         brought up on the library mailing list.
4757
4758         * bits/std_fstream.h(underflow): Position all three internal
4759         buffer pointers at the same initial position. Re-implement with
4760         basic_filebuf abstraction.
4761         (overflow): Ditto.
4762         (seekoff): Ditto.
4763         (seekpos): Ditto.
4764         * bits/std_sstream.h: Move _M_mode down into base class
4765         basic_streambuf.
4766         * bits/sstream.tcc: Ditto.
4767         * bits/std_streambuf.h: Ditto.
4768
4769         * testsuite/27/27filebuf.cc: Tweak.
4770
4771 1999-02-27  Benjamin Kosnik  <bkoz@slap-happy.cygnus.com>
4772
4773         * bits/std_sstream.h: Ditto.
4774         * bits/std_fstream.h: Fix blip.
4775
4776 1999-02-26  Benjamin Kosnik  <bkoz@happy.cygnus.com>
4777
4778         * C++STYLE: Add cases.
4779         * bits/std_fstream.h: Format.
4780         * bits/std_streambuf.h: Ditto.
4781         * bits/std_sstream.h: Ditto.
4782
4783         * src/basic_file.cc(sys_seek): Fix stack delirium, by keeping
4784         return type for _IO_file_seek and __basic_file::seek the same size.
4785         * bits/basic_file.h: Ditto.
4786
4787 1999-02-26  Benjamin Kosnik  <bkoz@happy.cygnus.com>
4788
4789         * bits/fstream.tcc: Add include guards.
4790         * src/misc-inst.cc: Add instantiations for shared libes.
4791         * src/locale-inst.cc: Add instantiaions for use_facet.
4792         * bits/loccore.h: Remove specialization foward decls for
4793         use_facet<ctype>: perhaps add the whole lot of them later on.
4794         * bits/std_fstream.h: Fix.
4795         * bits/locfacets.h: Ditto.
4796         * src/stdstreams.cc: Disable wide streams for now.
4797
4798         * src/Makefile.am (CXXFLAGS): Change up.
4799         * src/Makefile.in (CXXFLAGS): Ditto.
4800
4801 1999-02-25  Benjamin Kosnik  <bkoz@happy.cygnus.com>
4802
4803         * src/basic_file.cc: Change to ios_base::seekdir from int.
4804         * bits/basic_file.h: Ditto.
4805         * bits/locfacets.h : Fix blip with new guard macros.
4806
4807 1999-02-25  Benjamin Kosnik  <bkoz@cygnus.com>
4808
4809         * stl/bits/stl_config.h (__STL_USE_STD_ALLOCATORS): Minor tweaking.
4810         * bits/c++config.h: Clean. Remove _G_NO_STREAMBUF_ITERATORS and
4811         _G_USE_NAMESPACE.
4812         * amm1/locale: Remove unused defines.
4813         * generic/locale: Ditto.
4814         * src/ios.cc: Ditto.
4815         * src/locale.cc: Ditto.
4816         * src/locale-inst.cc: Ditto.
4817         * src/localename.cc: Ditto.
4818         * src/stdstreams.cc: And here.
4819
4820         * bits/c++config.h (_G_USE_WCHAR_T): Fix.
4821         * bits/loccore.h: Simplify, clean, add wchar_t guards.
4822         * bits/loccore.tcc: Ditto.
4823         * bits/locfacets.h: Ditto.
4824         * src/locale-inst.cc: Ditto.
4825         * bits/locfacets.tcc: Add do_put long long here.
4826
4827 1999-02-24  Benjamin Kosnik  <bkoz@cygnus.com>
4828
4829         * bits/std_streambuf.h: Add cached ctype facet, _M_ctype.
4830         * bits/basic_ios.h: Clean. Replace _M_strbuf with
4831         _M_streambuf. Use cached _M_cvt in basic_streambuf.
4832         * bits/std_istream.h: Replace _M_strbuf with _M_streambuf.
4833         * bits/std_fstream.h: Tweak.
4834
4835         * bits/char_traits.h: Remove fpos definitions from here. . .
4836         * bits/fpos.h: New file, put them here. Eventually, this may allow
4837         the severing of char_traits and fpos dependancies.
4838         * src/Makefile.in: Add fpos.h.
4839         * src/Makefile.am: Ditto.
4840         * bits/std_string.h: Add fpos.h include here.
4841         * bits/std_ios.h: And here.
4842
4843         * bits/std_streambuf.h: Change _M_init to _M_initialized.
4844         * bits/ios_base.h: Remove cstdio include.
4845         * bits/std_ios.h: ... Place here.
4846
4847 1999-02-23  Benjamin Kosnik  <bkoz@loony.cygnus.com>
4848
4849         * src/Makefile.in (CXXFLAGS): Re-add -fvtable-thunks.
4850         * src/Makefile.am (CXXFLAGS): Re-add -fvtable-thunks.
4851
4852         * bits/basic_file.h: Comment, adjust arguments.
4853         * src/basic_file.cc: Ditto.
4854
4855         * bits/std_fstream.h(seekoff): Error is of fpos type, not integral
4856         type: check and convert accordingly. Re-interpet "resultant stream
4857         position" to indicate external byte sequence location, not internal
4858         buffer info.
4859
4860 1999-02-22  Benjamin Kosnik  <bkoz@loony.cygnus.com>
4861
4862         * mkcshadow: And change copyright here.
4863         * src/Makefile.am (CXXFLAGS): Add -g -O2. Add new header
4864         dependencies for stl_pthread_alloc.h, pthread_allocimpl.h,
4865         stl_thread.h, and stl_iterator_base.h.
4866         * src/Makefile.in (CXXFLAGS): Ditto.
4867         * stl/backward/pthread_alloc.h: Remove.
4868
4869 1999-02-19  Benjamin Kosnik  <bkoz@loony.cygnus.com>
4870
4871         * bits/std_streambuf.h (sungetc): Use standard defs for putback
4872         position.
4873         * bits/std_fstream.h (pbackfail): Correct.
4874         (sungetc): Test.
4875         (seekoff): Implement.
4876         (seekpos): Re-do.
4877         * testsuite/27/27filebuf.cc: Add test cases.
4878
4879 1999-02-18  Benjamin Kosnik  <bkoz@loony.cygnus.com>
4880
4881         * bits/std_fstream.h: Go with basic_file's interfaces for dealing
4882         with the external buffers, and stop mucking around with setting
4883         and re-setting the external buf's pointers. Aka, clarity and
4884         simplicity rule the day.
4885         * src/locale.cc: Use memcpy in codecvt::do_in and codecvt::do_out.
4886         Remove partial result and support code.
4887
4888 1999-02-18  Ulrich Drepper  <drepper@cygnus.com>
4889
4890         * configure.in: Add hypot, hypotf, atan2f, expf, and copysignf to
4891         list of function which have to be replaced.
4892         Remove expf from list of functions to test for.
4893         Define USE_LONG_DOUBLE in case the libm has partial support for long
4894         doubles.
4895         * Makefile.in: Regenerated.
4896         * config.h.in: Likewise.
4897         * configure: Likewise.
4898         * libio/Makefile.am (LIBIO_SRCS): Add missing backslash.
4899         * libio/Makefile.in: Regenerated.
4900         * src/Makefile.in: Regenerated.
4901         * string/Makefile.in: Regenerated.
4902         * math/Makefile.am (EXTRA_DIST): Add hypot.c, hypotf.c, hypotl.c,
4903         atan2f.c, expf.c, and $(EXTRA_yes).
4904         (EXTRA_yes): Add signbitl.c mycabsl.c.
4905         (libmath_la_LIBADD): Add $(EXTRA_$(USE_LONG_DOUBLE)).
4906         (libmath_la_SOURCES): remove long double versions.
4907         * math/Makefile.in: Regnerated.
4908         * math/atan2f.c: New file.
4909         * math/copysignf.c: New file.
4910         * math/expf.c: New file.
4911         * math/hypot.c: New file.
4912         * math/hypotf.c: New file.
4913         * math/hypotl.c: New file.
4914         * math/cargf.c: Use correct function and macro names.
4915         * math/ccos.c: Likewise.
4916         * math/ccosh.c: Likewise.
4917         * math/ccoshf.c: Likewise.
4918         * math/ccoshl.c: Likewise.
4919         * math/cexp.c: Likewise.
4920         * math/cexpf.c: Likewise.
4921         * math/cexpl.c: Likewise.
4922         * math/clog.c: Likewise.
4923         * math/clog10.c: Likewise.
4924         * math/clog10f.c: Likewise.
4925         * math/clog10l.c: Likewise.
4926         * math/clogf.c: Likewise.
4927         * math/clogl.c: Likewise.
4928         * math/copysignf.c: Likewise.
4929         * math/csin.c: Likewise.
4930         * math/csinf.c: Likewise.
4931         * math/csinh.c: Likewise.
4932         * math/csinhf.c: Likewise.
4933         * math/csinhl.c: Likewise.
4934         * math/csinl.c: Likewise.
4935         * math/csqrt.c: Likewise.
4936         * math/csqrtf.c: Likewise.
4937         * math/csqrtl.c: Likewise.
4938         * math/ctan.c: Likewise.
4939         * math/ctanf.c: Likewise.
4940         * math/ctanh.c: Likewise.
4941         * math/ctanhf.c: Likewise.
4942         * math/ctanhl.c: Likewise.
4943         * math/ctanl.c: Likewise.
4944
4945 1999-02-17  Benjamin Kosnik  <bkoz@cygnus.com>
4946
4947         * testsuite/27/27filebuf.cc: Add cases.
4948         * testsuite/27/27filebuf-1.txt: Remove inadvertent garbage.
4949         * bits/std_streambuf.h: Simplify, always have one return statement.
4950         * bits/std_fstream.h: Tweak comments in underflow.
4951
4952 1999-02-17  Ulrich Drepper  <drepper@cygnus.com>
4953
4954         * ltmain.sh: Update from libtool 1.2d and fix Solaris problems.
4955         * ltconfig: Likewise.
4956
4957 1999-02-16  Christophe Pierret  <cpierret@businessobjects.com>
4958
4959         * src/locale.cc: Fix assert.
4960
4961 1999-02-16  Benjamin Kosnik  <bkoz@cygnus.com>
4962
4963         FIXME: Still need some kind of solution for undefined math symbols.
4964         * src/Makefile.in (locale-inst.lo): Compile with
4965         -fimplicit-templates to fix Solaris link problem.
4966         * src/Makefile.am: Ditto.
4967         * libio/Makefile.in: Add stdfiles.c so that _IO_list_all is defined.
4968         * libio/Makefile.am: Ditto.
4969         * src/locale.cc: Provide some kind of def for _S_tolower.
4970         * bits/locfacets.h: Fix declarations of ctype<wchar_t> to
4971         match ctype<char> for _S_tolower, _S_toupper, _S_table.
4972
4973 1999-02-10  Benjamin Kosnik  <bkoz@cygnus.com>
4974
4975         * bits/loccore.tcc: Move member-template ctor inline...
4976         * bits/loccore.h: ...here.
4977         * src/locale-inst.cc: Add instantiation here.
4978
4979         * testsuite/27/27stringstream.cc: Tweak.
4980
4981         * bits/ostream.tcc: Include sbuf_iter.h.
4982
4983         * bits/ostream.tcc: Convert *this to ostreambuf_iterator before
4984         passing to num_put, as num_put's first argument is an interator,
4985         not basic_ostream.
4986
4987         * testsuite/make_check_libfree++: New file, runs through the
4988         existing test files in the testsuite directory and makes sure
4989         they link.
4990
4991 1999-02-10  Brendan Kehoe  <brendan@cygnus.com>
4992
4993         * testsuite/21/21compare.cc: Fix typo.
4994         * src/locale.cc (ctype<wchar_t>::_S_{toupper,tolower,table}):
4995         Don't try to provide non-linux versions, since it's impossible to
4996         initialize their const references with the integer 0, no matter
4997         how we try to cast it.
4998
4999 1999-02-10  Benjamin Kosnik  <bkoz@cygnus.com>
5000
5001         * bits/std_locale.h: Move std_vector.h dependency.
5002         * bits/std_ios.h: ...from here.
5003         * bits/std_string.h: ...and here.
5004         * src/locale.cc: ..to here.
5005         * bits/loccore.h: Ditto, add vector forward declaration,
5006         make locale::_Impl data members pointers not containers.
5007         * bits/loccore.tcc: Move out-of-line for now.
5008         * bits/locfacets.h: Move vector dependency from here...
5009         * bits/locfacets.tcc: ...to here.
5010         * src/localename.cc: ..and here.
5011         * src/locale-inst.cc: Add include of locfacets.tcc here.
5012
5013         * stl/bits/stl_string_fwd.h: Make __get_c_string non-static.
5014         * bits/basic_string.h: Can't use sizeof on an incomplete type.
5015         * bits/string.tcc: Tweak.
5016         * src/string.cc: And add __get_c_string def here.
5017
5018         * bits/std_fstream.h: Yeah, comment the fill_n idea out as impractical.
5019
5020         * src/stlinst.cc: Add include of stl_config.h.
5021
5022 1999-02-09  Benjamin Kosnik  <bkoz@cygnus.com>
5023
5024         * stl/bits/std_bitset.h: Update to SGI STL 3.12.
5025         * stl/bits/stl_config.h: Tweak, update.
5026         * stl/bits/std_stdexcept.h: Ditto, change stl_exception to
5027         std_exception.
5028         * stl/bits/std_memory.h: Reconstructed auto_ptr, Ditto.
5029         * stl/bits/std_functional.h: Ditto.
5030
5031         * stl/bits/stl_string.h: New file, SGI's string
5032         implementation. For reference only, corresponding to string in
5033         3.12 source.
5034         * stl/bits/stl_char_traits.h: As above.
5035
5036         * stl/bits/pthread_allocimpl.h: New file corresponding to
5037         pthread_alloc.
5038         * stl/bits/stl_pthread_alloc.h: New file corresponding to
5039         pthread_alloc.h
5040         * stl/bits/stl_threads.h: New file.
5041
5042         Note that SGI STL 3.12's file iterator.h is not used.
5043         * stl/bits/std_iterator.h: Ditto.
5044         * stl/bits/stl_iterator.h: Drop in replace.
5045         * stl/bits/stl_iterator_base.h: New file, drop in replace.
5046
5047         * stl/bits/stl_queue.h, stl_rope.h, stl_set.h, stl_stack.h,
5048         stl_string_fwd.h, stl_tempbuf.h, stl_tree.h, stl_vector.h,
5049         stl_pair.h, stl_multimap.h, stl_multiset.h, stl_list.h,
5050         stl_hashtable.h, stl_hash_set.h, stl_hash_map.h, stl_function.h,
5051         stl_deque.h, stl_alloc.h, stl_algo.h, stl_algobase.h, ropeimpl.h:
5052         Drop-in replace (ie, stop changing __SGI_STL_* to _CPP_BITS_* for
5053         preprocessor guards, but fixup include paths and names according
5054         to new directory layout).
5055
5056 1999-02-05  Benjamin Kosnik  <bkoz@cygnus.com>
5057
5058         * bits/std_fstream.h: Remove _M_open data member.
5059         * bits/fstream.tcc: Ditto.
5060
5061         * src/locale.cc: Tweak.
5062
5063         * bits/std_sstream.h: Simplify.
5064
5065         * bits/std_streambuf.h: Simplify.
5066         (sputc): Use correct definition of "write area."
5067
5068         * bits/std_fstream.h: Fix uflow.
5069         * src/basic_file.cc: Tweak.
5070         * testsuite/27/27filebuf.cc: Add tests.
5071         * testsuite/27/27filebuf-3.txt: Rename to *-2.txt.
5072
5073 1999-02-02  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
5074
5075         * bits/ios_base.h: Make protected.
5076
5077 1999-02-01  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
5078
5079         * bits/ios_base.h: Changes in the class ios_base:
5080         Rename _M_exceptions member to _M_exceptions_data.
5081         Make the member functions rdstate(), clear(), exceptions()
5082         and exceptions(iostate) protected and add the "_M_" prefix.
5083         * src/ios.cc: Ditto.
5084         * bits/basic_ios.h: Adapt the changes from ios_base.
5085
5086 1999-01-29  Benjamin Kosnik  <bkoz@cygnus.com>
5087
5088         * bits/std_fstream.h: Remove _M_flags, _M_equilibrate  as unnecessary.
5089         * bits/fstream.tcc: Ditto.
5090
5091         * bits/std_fstream.h (underflow): Resize deallocates memory and
5092         resets pointers in the internal cache according to new _M_buf. . dooh!
5093         * src/locale.cc: Mas changes with codecvt::do_in, do_out.
5094
5095 1999-01-29  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
5096
5097         * stl/bits/std_memory.h:  Modify auto_ptr::reset to reflect the
5098         standard.
5099
5100 1999-01-28  Benjamin Kosnik  <bkoz@cygnus.com>
5101
5102         * src/locale.cc (codecvt::do_in): Finer-grained tuning to take
5103         into account partial returns.
5104         (codecvt::do_out): Likewise.
5105
5106         * bits/char_traits.h: Change streamsize to be a signed type, as
5107         required by 27.4.1 Types p 2. (Changing to _IO_ssize_t.)
5108         * bits/std_streambuf.h: Make
5109         in_avail() and showmanyc() have streamsize as return types, so
5110         that showmanyc()'s return of eof won't underflow in_avail's return
5111         value and give a bogus result.
5112         * src/misc-inst.cc: And more changes. . .
5113
5114         * bits/std_streambuf.h (basic_streambuf): Add _M_buf_unified to keep
5115         track of joint in/out pointers into the internal buffer.
5116         (sbumpc): Add check for _M_buf_unified.
5117         (sputbackc): Ditto.
5118         (sungetc): Ditto.
5119
5120         * testsuite/27/27filebuf.cc: Add cases.
5121         * testsuite/27/27stringbuf.cc: Add showmanyc case.
5122
5123         * bits/std_fstream.h (close): Fix logic error.
5124         (open): Initialize internal pointers based on _M_buf and _M_buf_size.
5125         (showmanyc): Add underflow component, to match the standard.
5126
5127         * bits/fstream.tcc: Ditto.
5128
5129 1999-01-27  Benjamin Kosnik  <bkoz@cygnus.com>
5130
5131         * bits/basic_file.h: Match vtables w/ _IO_FILE_plus.
5132         * src/basic_file.cc: Ditto.
5133         * src/Makefile.in: Add -fvtable-thunks to CXXFLAGS: preferred
5134         format for dealing with _IO_file in libio.
5135
5136 1999-01-27  Ulrich Drepper  <drepper@cygnus.com>
5137
5138         * src/basic_file.cc: Include fcntl.h.
5139
5140 1999-01-27  Benjamin Kosnik  <bkoz@cygnus.com>
5141
5142         * libio/Makefile.in: Add fileops.lo, genops.lo to objects to debug
5143         libio calls.
5144         * bits/std_streambuf.h: Redefine read posion.
5145
5146         * bits/std_fstream.h: Temporary hack to get vtables working again.
5147         * bits/basic_file.h: Revert.
5148         * src/basic_file.cc: Ditto.
5149         * testsuite/27/27filebuf.cc: Tweak.
5150
5151 1999-01-26  Benjamin Kosnik  <bkoz@cygnus.com>
5152
5153         * bits/basic_file.h: Add showmanyc, underflow. .
5154         * src/basic_file.cc: Ditto.
5155
5156         * bits/std_fstream.h (showmanyc): Add bits to ping libio to see if more
5157         chars can be read.
5158
5159         * testsuite/27/27filebuf.cc: Add testcases.
5160         * src/basic_file.cc: Add O_CREAT to open calls with
5161         ios_base::trunc as part of the open mode.
5162
5163 1999-01-26  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
5164
5165         * bits/basic_ios.h: fix basic_ios::exceptions(iostate)
5166
5167 1999-01-25  Benjamin Kosnik  <bkoz@nabi.net>
5168
5169         * src/ios.cc (clear): Correct typo.
5170         * bits/ios_base.h: Tweak spacing.
5171
5172 1999-01-25  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
5173
5174         * bits/basic_ios.h: fix basic_ios::fail()
5175
5176 1999-01-25  Benjamin Kosnik  <bkoz@loony.cygnus.com>
5177
5178         * bits/basic_file.h: Include libioP.h from libio instead of here.
5179         * bits/iolibio.h: Remove.
5180         * bits/libio.h: Remove.
5181
5182 1999-01-22  Benjamin Kosnik  <bkoz@lunatic.cygnus.com>
5183
5184         * bits/std_fstream.h: Tweak cvt-> in call for newer egcs compilers.
5185
5186 1999-01-22  Ulrich Drepper  <drepper@cygnus.com>
5187
5188         * Makefile.am (SUBDIRS): Add libio.
5189         * configure.in: Add rule to test for glibc2.
5190
5191         * src/Makefile.am (INCLUDES): Add -I to libio subdir.
5192         (libstdc___la_LIBADD): Add libio.la.
5193
5194 1999-01-21  Benjamin Kosnik  <bkoz@cygnus.com>
5195
5196         * bits/basic_file.h: Make new abstraction for underlying C library
5197         FILE, named __basic_file.
5198         * src/basic_file.cc: New file.
5199         * bits/os_raw.h: Delete.
5200         * src/os_raw.cc: Delete.
5201         * src/Makefile.in: Tweak.
5202         * src/Makefile.am: Tweak.
5203         * bits/iolibio.h: Add this here, for the time being.
5204         * bits/libioP.h: Ditto.
5205
5206         * bits/ios_base.h: Delete unused defines.
5207         * src/locale.cc (codecvt<char, char, mbstate_t>::do_in): Use
5208         strcpy to copy between the two buffers.
5209
5210         * testsuite/27/27stringbuf.cc: Change license, fix in_avail tests.
5211         * testsuite/27/27filebuf.cc: New file.
5212         * testsuite/27/27filebuf-1.txt: Data file for above test.
5213         * testsuite/27/27filebuf-2.txt: Ditto.
5214
5215         * bits/std_streambuf.h (uflow): Re-implement default.
5216         * bits/std_fstream.h: Set _M_buf_size based on cstdio's BUFSIZ.
5217         Re-implement virtual functions.
5218         * bits/fstream.tcc: Delete unused mf's.
5219
5220 1998-12-31  Benjamin Kosnik  <bkoz@lunatic.cygnus.com>
5221
5222         * bits/fstream.tcc: Add fstream ctor for cin/cout/etc.
5223         * bits/std_fstream.h: Ditto.
5224         * src/stdstreams.cc: Ditto.
5225
5226         * math/cpowl.c: Fix header typo with last change.
5227
5228 1998-12-31  Benjamin Kosnik  <bkoz@loony.cygnus.com>
5229
5230         * COPYING: New file (GPL v 2).
5231         * LICENSE.STD: Remove.
5232         * ./*: Change license.
5233
5234 1998-12-30  Benjamin Kosnik  <bkoz@haight.constant.com>
5235
5236         * bits/std_streambuf.h (std): Remove static on _M_init.
5237         * bits/streambuf.tcc (std): Ditto.
5238
5239         * bits/std_fstream.h: Add changes as discussed with Nathan, including
5240         state_type and codecvt_type members, the allocation of an internal
5241         buffer, the streamlined codecvt calls, etc.
5242
5243 1998-12-21  Benjamin Kosnik  <bkoz@haight.constant.com>
5244
5245         * bits/std_sstream.h: Tweak.
5246         * bits/fstream.tcc: Remove unused stubs.
5247         * bits/std_fstream.h: Tweak.
5248
5249 1998-12-17  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
5250
5251         * bits/std_streambuf.h: Move _IO_file_flags into basic_filebuf.
5252         Remove unused _IO_* members, possibly put into filebuf, which may
5253         need them.
5254         * bits/std_fstream.h: Add _M_flag.
5255         * bits/sbuf_iter.h: Tweak.
5256
5257         * bits/std_cstdio.h: Add SEEK_SET, SEEK_END, SEEK_CUR.
5258         * bits/ios_base.h: Use.
5259
5260         * src/stdstreams.cc: Modify to reflect standard ctors for
5261         filebuf.
5262         * src/misc-inst.cc: Ditto.
5263
5264         * bits/os_raw.h: Wrap in std namespace. Model parameters on
5265         underlying C library calls instead of the underlying unix
5266         filesystem.
5267         * src/os_raw.cc (_S_os_open): Use fopen, and compute a mode
5268         string as per p.659.
5269         (_S_os_close): Model on fopen.
5270         (_S_os_read): Model on fread.
5271         (_S_os_write): Model on fwrite.
5272         (_S_os_seek): Model on fseek.
5273
5274         * bits/ios_base.h: Tweak.
5275         * bits/std_iosfwd.h: Wrap libio.h include with extern "C".
5276         * bits/std_sstream.h: Tweak.
5277         * bits/sstream.tcc: Remove old, uncalled code.
5278         * bits/std_fstream.h: Major reconstruction.
5279         * bits/fstream.tcc: Disable for the time being.
5280
5281 1998-12-11  Benjamin Kosnik  <bkoz@haight.constant.com>
5282
5283         * bits/basic_string.h: Fix insert method.
5284         * stl/bits/stl_iterator.h: Remove previous hack.
5285         * bits/std_streambuf.h (sbumpc): Correct increment/return oddness.
5286         * bits/std_sstream.h: Fix more regressions.
5287         * testsuite/27/27stringbuf.C: Add (almost) complete tests.
5288
5289 1998-12-09 Benjamin Kosnik  <bkoz@loony.cygnus.com>
5290
5291         * bits/basic_string.h: Tweak.
5292
5293         * stl/bits/stl_iterator.h: Specialize iterator_traits for int so
5294         that string::append can be instantiated. HACK--checkin
5295         basic_string::iterator class.
5296
5297 1998-12-07  Benjamin Kosnik  <bkoz@haight.constant.com>
5298
5299         * bits/std_sstream.h: Tweak.
5300         * bits/sstream.tcc: Tweak ctors.
5301
5302         FIXME invalid friend defs. . WHERE ARE THEY??
5303
5304         * bits/sbuf_iter.h (istreambuf_iterator::equal): Change to new
5305         names for basic_streambuf data members.
5306
5307         * bits/std_streambuf.h: Add getloc() initialization bits.
5308         basic_streambuf(): Initialize with global locale data.
5309         imbue(): Set _M_init.
5310
5311         * bits/std_streambuf.h(seekoff, seekpos): Complete with invalid
5312         stream pos == pos_type(off_type(-1)).
5313         in_avail(): Complete default implementation.
5314         snextc, sbumpc, sputbackc, sungetc, sputc, setg, xsputn,
5315         underflow, uflow, xsgetn, showmany, sync: Ditto.
5316
5317         * bits/std_streambuf.h: _M_snextc_helper(): Remove.
5318
5319         * bits/streambuf.tcc (sputbackc): Temporarily remove, need to
5320         re-populate with in-line member functions that are too big.  Add
5321         initialization for _M_init.
5322
5323 1998-12-03  Benjamin Kosnik  <bkoz@cygnus.com>
5324
5325         * bits/sstream.tcc: Convert _Allocator to _Alloc.  Add typedefs
5326         for basic_string and basic_streambuf. Scope _IO_buf_* pointers to
5327         streambuf_type.
5328
5329         * src/stdstreams.cc (std): Disable wchar_t instantiations.
5330
5331         * bits/c++config.h (_G_DEPRICATED): Add.
5332         (_G_USE_WCHAR_T): Add.
5333         * bits/std_streambuf.h: Radical reconstruction of basic_streambuf.
5334         Take out _Streambuf_base. Put _IO_FILE data member in basic_filebuf.
5335         * bits/streambuf.tcc (sputbackc): Remove ctor anti-def, Tweak.
5336         * bits/std_fstream.h: Add comment for implementation.
5337         * src/streambuf.cc: Remove.
5338         * src/Makefile.in: Remove streambuf.lo.
5339         * src/misc-inst.cc: Tweak.
5340
5341 1998-12-02  Benjamin Kosnik  <bkoz@cygnus.com>
5342
5343         * bits/std_sstream.h: Add const_cast to rdbuf returns.
5344         * testsuite/27stringstream.C: Modify.
5345
5346 1998-11-25  Benjamin Kosnik  <bkoz@haight.constant.com>
5347
5348         * src/Makefile.in (libstdc___la_OBJECTS): Add streambuf.lo.
5349         (libstdc___la_SOURCES): Ditto.
5350
5351         * bits/streambuf.tcc: Tweak.
5352
5353         * src/streambuf.cc: New file, add out-of-line definitions for
5354         _Streambuf_base.
5355
5356         * src/misc-inst.cc: Remove _Streambuf_base instantiations.
5357         Comment out wchar_t versions of the buffer instantiations, for now.
5358
5359         * bits/std_streambuf.h: Wrap libio.h include with extern "C".
5360         Remove template wrapper around _Streambuf_base.
5361         Move IO_* data members into _Streambuf_base.
5362         Move _Streambuf_base members into streambuf.tcc.
5363
5364         * bits/c++config.h (_G_USE_LIBIO): Enable.
5365
5366 1998-11-02  Nathan Myers <ncm@cantrip.org>
5367
5368         * CHECKLIST: downgrade iterator implementations
5369         * DESIGN: fill out notes about unimplemented features
5370
5371 1998-10-31  Nathan Myers <ncm@cantrip.org>
5372
5373         * CHECKLIST: itemized list of all interfaces, and status of each.
5374
5375 1998-10-30  Nathan Myers  <ncm@cantrip.org>
5376
5377         * RELEASE-NOTES: add notes about optional includes, linking, running
5378         * src/Makefile.am: handle header installs properly
5379         * src/Makefile.in: regenerate from new src/Makefile.am
5380
5381 1998-10-30  Benjamin Kosnik  <bkoz@loony.cygnus.com>
5382
5383         * bits/basic_string.h: Revert npos pending ciso646.
5384         * src/Makefile.am: Revert CXX flags for now.
5385         * src/Makefile.in: Ditto.
5386
5387 1998-10-30  Brendan Kehoe  <brendan@cygnus.com>
5388
5389         * bits/std_sstream.h: Re-order ctors to put base before member
5390         inits.
5391
5392 1998-10-30  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
5393
5394         * stl/bits/std_memory.h: Fix typo.
5395
5396 1998-10-30  Nathan Myers <ncm@cantrip.org>
5397
5398         * src/string[A-Z]+.cc: change back to include "string.cc".
5399         * src/Makefile.am: revert filename changes.  We need a different
5400         way to keep filenames in std/ from confusing Make.
5401         * bits/basic_string.h: define _S_max_size right, return it from
5402         string::max_size(); churn definition of npos again.
5403         * bits/string.tcc: fix _S_frob_size to avoid uint overflow.
5404         * bits/ios.cc: remove #ifdef on ios_base locale member initialization
5405         * BUGS: clear cruft.
5406         * C++STYLE: Touchup for release.
5407         * CHECKLIST: Touchup for release.
5408         * DESIGN: New file.
5409         * LICENSE.STD: Add requirement to retain copyrights and to provide
5410         the license with any copies.
5411         * README: Update for release.
5412         * TODO: Minor touchup for release.
5413         * RELEASE-NOTES: prepare for release
5414
5415 1998-10-29  Ulrich Drepper  <drepper@cygnus.com>
5416
5417         * src/string[A-Z]+.cc: Include stdstring.cc, not string.cc.
5418
5419         * src/Makefile.am (CXXFLAGS): Define _GNU_SOURCE.
5420
5421         * src/Makefile.am (CXXLINK): New variable.  Make sure we don't use
5422         CXX to generate the shared object.
5423
5424         * src/Makefile.am (headers): Remove duplicated char_traits.h.
5425
5426 1998-10-29  Brendan Kehoe  <brendan@cygnus.com>
5427
5428         * bits/basic_string.h (basic_string<>::max_size): Subtract 1, not
5429         2, from npos, solving infinite loop problems.
5430
5431 1998-10-29 18:41  Ulrich Drepper  <drepper@cygnus.com>
5432
5433         * src/Makefile.am: Add rules to install headers.
5434
5435 1998-10-29  Nathan Myers <ncm@cantrip.org>
5436
5437         * bits/std_ostream.h: Remove #ifdef on operator<< for long double
5438         * bits/ostream.tcc:   Remove #ifdef on operator<< for long double
5439         * shadow/libio.h:
5440         * shadow/unistd.h:
5441         * shadow/bits/wrap_libio.h:
5442         * shadow/bits/wrap_unistd.h: New files.
5443
5444 1998-10-29  Brendan Kehoe  <brendan@cygnus.com>
5445
5446         * bits/ostream.tcc (operator<<): Wrap with #ifdef
5447         _G_HAVE_LONG_DOUBLE_IO, to match bits/std_ostream.h.
5448
5449 1998-10-29  Ulrich Drepper  <drepper@cygnus.com>
5450
5451         * src/Makefile.am: Add temporarily rules to make sure misc-inst.cc
5452         is not compiled with -fno-implicit-templates in effect.
5453
5454         * src/Makefile.am (EXTRA_SOURCES): Add string.cc and wstring.cc here.
5455         (libstdc___la_SOURCES): Add all the string*.cc and wstring*.cc files.
5456         * src/stringADDCS.cc: Wrapper around string.cc to define individual
5457         function.
5458         * src/stringADDPS.cc: Likewise.
5459         * src/stringADDSC.cc: Likewise.
5460         * src/stringADDSP.cc: Likewise.
5461         * src/stringADDSS.cc: Likewise.
5462         * src/stringBIST.cc: Likewise.
5463         * src/stringBOST.cc: Likewise.
5464         * src/stringCHTR.cc: Likewise.
5465         * src/stringEQPS.cc: Likewise.
5466         * src/stringEQSP.cc: Likewise.
5467         * src/stringEQSS.cc: Likewise.
5468         * src/stringEXTRA.cc: Likewise.
5469         * src/stringGEPS.cc: Likewise.
5470         * src/stringGESP.cc: Likewise.
5471         * src/stringGESS.cc: Likewise.
5472         * src/stringGETLI.cc: Likewise.
5473         * src/stringGTPS.cc: Likewise.
5474         * src/stringGTSP.cc: Likewise.
5475         * src/stringGTSS.cc: Likewise.
5476         * src/stringINSER.cc: Likewise.
5477         * src/stringLEPS.cc: Likewise.
5478         * src/stringLESP.cc: Likewise.
5479         * src/stringLESS.cc: Likewise.
5480         * src/stringLTPS.cc: Likewise.
5481         * src/stringLTSP.cc: Likewise.
5482         * src/stringLTSS.cc: Likewise.
5483         * src/stringMAIN.cc: Likewise.
5484         * src/stringNEPS.cc: Likewise.
5485         * src/stringNESP.cc: Likewise.
5486         * src/stringNESS.cc: Likewise.
5487         * src/stringSCOPY.cc: Likewise.
5488         * src/wstringADDCS.cc: Wrapper around wstring.cc to define individual
5489         functions.
5490         * src/wstringADDPS.cc: Likewise.
5491         * src/wstringADDSC.cc: Likewise.
5492         * src/wstringADDSP.cc: Likewise.
5493         * src/wstringADDSS.cc: Likewise.
5494         * src/wstringBIST.cc: Likewise.
5495         * src/wstringBOST.cc: Likewise.
5496         * src/wstringCHTR.cc: Likewise.
5497         * src/wstringEQPS.cc: Likewise.
5498         * src/wstringEQSP.cc: Likewise.
5499         * src/wstringEQSS.cc: Likewise.
5500         * src/wstringEXTRA.cc: Likewise.
5501         * src/wstringGEPS.cc: Likewise.
5502         * src/wstringGESP.cc: Likewise.
5503         * src/wstringGESS.cc: Likewise.
5504         * src/wstringGETLI.cc: Likewise.
5505         * src/wstringGTPS.cc: Likewise.
5506         * src/wstringGTSP.cc: Likewise.
5507         * src/wstringGTSS.cc: Likewise.
5508         * src/wstringINSER.cc: Likewise.
5509         * src/wstringLEPS.cc: Likewise.
5510         * src/wstringLESP.cc: Likewise.
5511         * src/wstringLESS.cc: Likewise.
5512         * src/wstringLTPS.cc: Likewise.
5513         * src/wstringLTSP.cc: Likewise.
5514         * src/wstringLTSS.cc: Likewise.
5515         * src/wstringMAIN.cc: Likewise.
5516         * src/wstringNEPS.cc: Likewise.
5517         * src/wstringNESP.cc: Likewise.
5518         * src/wstringNESS.cc: Likewise.
5519         * src/wstringSCOPY.cc: Likewise.
5520         * src/string.cc: Remove now unneeded #defines now.
5521
5522 1998-10-29 Nathan Myers <ncm@cantrip.org>
5523
5524         * bits/locfacets.tcc: Define num_put::put(... const void*), improve
5525         integer formatting.
5526         * bits/ostream.tcc: Delete cruft, rewrite various op<< as members,
5527         add definitions for double, long double, const void*.
5528         * bits/std_ostream.h: Move op<<'s back into class ostream,
5529         define some in-line.
5530         * bits/string.tcc: fix unnecessary-copying bug in op[], typos in
5531         string construction from input iterators that Brendan reported.
5532
5533
5534 1998-10-28  Brendan Kehoe  <brendan@cygnus.com>
5535
5536         * stl/bits/stl_pair.h (op!=, op>, p<=, op>=): Add missing definitions.
5537
5538         * bits/valarray_meta.h (class _Constant): Move declaration to the
5539         top, so the rest of the file can grok it.
5540         (_ApplyBinaryFunction::operator[]): Add missing parenthesis.
5541
5542         * bits/std_sstream.h (basic_ostringstream::str): Fix typo of extra
5543         semicolon.
5544         (basic_stringstream::str, both instances): Likewise.
5545
5546 1998-10-28 Nathan Myers <ncm@cantrip.org>
5547
5548         * bits/locfacets.h: fix num_put<>::falsename()
5549         * bits/locfacets.tcc: fix _Format_cache<>::_M_populate bool name init
5550         * testsuite/27/27octfmt.C, testsuite/27/27octfmt.C: new tests
5551         * bits/locfacets.tcc: touch up _S_group_digits.
5552         * src/misc-inst.cc: adjust _S_group_digits insts to match.
5553
5554 1998-10-27 Nathan Myers <ncm@cantrip.org>
5555
5556         * stl/bits/stl_config.h: Turn off long long support, for now.
5557         * src/locale-inst.cc: Instantiate num_put<> only for
5558         ostreambuf_iterator, num_get only for istreambuf_iterator.
5559         * src/misc-inst.cc: Delete duplicate locale-related instantiations,
5560         add lots of new instantiations for num_put support function templates;
5561         remove junk about __match_parallel for ostreambuf_iterator.
5562
5563 1998-10-27 Nathan Myers <ncm@cantrip.org>
5564
5565         * bits/locfacets.tcc: Make num_put's digit grouping work.
5566         * bits/string.tcc: More uglification.
5567         * src/ios.cc: initialize format cache right
5568
5569 1998-10-26 Nathan Myers <ncm@cantrip.org>
5570
5571         * bits/basic_string.h: Uglify more names.
5572         * bits/fstream.tcc: Rewrite some filebut output handling.
5573         * bits/ios_base.h: Cosmetic.
5574         * bits/locfacets.h: Changes to _Format_cache for support of num_put.
5575         Also, specialize its default ctor for optimal default case.
5576         #ifdef out "long long" prototypes for now.
5577         * bits/locfacets.tcc: Do complete, optimized num_put<>::do_put
5578         implementation for integer types.  (Still needs optimized
5579         std::copy() applied to ostreambuf_iterator to be optimal.)
5580         * bits/ostream.tcc: Write operator<< for long, bool types.
5581         Make other operators<< non-members, per spec.  (Many still
5582         not implemented.)  Identify those that fail to create a sentry.
5583         * bits/sbuf_iter: Cosmetic.
5584         * bits/std_fstream.h: Add some filebuf members.
5585         * bits/std_locale.h: Include <limits> for use in bits/locfacets.h
5586         * bits/std_ostream.h: Make member operators<< global, per spec.
5587         (Should do the same in std_istream.h.)
5588         * bits/std_string.h: Include <limits> for use in bits/locfacets.h
5589         * bits/string.tcc: Uglify names
5590         * shadow/bits/std_cstdlib.h: Optimize std::div and std::ldiv.
5591         * src/ios.cc: Specialize _Format_cache<> for char and wchar_t,
5592         for optimal default behavior.
5593
5594 1998-10-26  Benjamin Kosnik  <bkoz@loony.cygnus.com>
5595
5596         * src/Makefile.in (libstdc___la_SOURCES): Add misc-inst.cc again.
5597
5598 1998-10-21 Nathan Myers <ncm@cantrip.org>
5599
5600         * src/locale.cc: make ctype operations actually work for glibc
5601         * CHECKLIST: add a comprehensive (i.e. huge) implementation
5602         checklist of stdlib facilities.  Not filled in yet.
5603
5604 1998-10-20 Nathan Myers <ncm@cantrip.org>
5605
5606         * bits/string.tcc: fix patching NULs on string ends.
5607
5608 1998-10-19 Nathan Myers <ncm@cantrip.org>
5609
5610         * bits/std_iosfwd.h: eliminate "basic_" prefix on streambuf
5611         iterator forward declarations
5612         * bits/sbuf_iter.h: eliminate default template argument definitions
5613         on streambuf iterators (rely on <iosfwd> decls).
5614         * TODO: add note about lazy facet construction
5615         * bits/basic_ios.h: hit operator void* again.  This should be the
5616         last time we need to touch it.
5617         * bits/basic_ios.h: copyfmt now returns *this.
5618         * bits/basic_string.h: fix npos again.  npos cannot be defined as zero.
5619         * bits/basic_string.h: put back overloaded constructors; adjust
5620         behavior for default allocator on copy constructor.
5621         * bits/char_traits.h: make not_eof return correct type.
5622         * bits/loccore.h: remove call to bits/std_stdexcept.h; subincludes
5623         cannot be in non-standard headers or we get include loops (bad)
5624         * bits/loccore.h: delete ifdef'd out workarounds for old compiler bugs.
5625         * bits/loccore.h: add apparatus to support lazy construction of
5626         facets.
5627         * bits/locfacets.tcc: Uglify names in __match_parallel decl.
5628         * bits/std_ios.h: add include of <typeinfo> to get bad_cast for
5629         locale use_facet<> failure.
5630         * bits/std_locale.h: same.
5631         * bits/std_string.h: same.
5632         * bits/std_stdexcept.h: change exception member __msg from a
5633         reference to a regular object.
5634         * bits/string.tcc: add pasting a NUL on the end of strings after
5635         each operation. We had already left room for it, but previously
5636         plugged it only on a call to c_str(), but the WG changed the
5637         requirement when I wasn't looking.  (Can't leave them alone for
5638         a second without they break something else.)
5639         * bits/valarray_meta.h: add Gaby's changes from 981018.
5640         * src/locale.cc: add new type _Bad_use_facet to be thrown on
5641         failure of use_facet<>().
5642         * src/stdexcept.cc: remove pragma, remove bkoz's #if 0,
5643         comment out leftover member definitions
5644
5645 1998-10-16  Ulrich Drepper  <drepper@cygnus.com>
5646
5647         * string/Makefile.am: Revert last change.
5648         * math/Makefile.am: Likewise.
5649
5650 1998-10-15  Benjamin Kosnik  <bkoz@haight.constant.com>
5651
5652         * bits/std_sstream.h: Fix typo.
5653
5654 1998-10-15  Benjamin Kosnik  <bkoz@haight.constant.com>
5655
5656         * src/Makefile.am (libstdc___la_SOURCES): Add misc-inst.cc.
5657
5658         * bits/std_sstream.h: Add typedefs, member definitions. Clean.
5659         * bits/std_stdexcept.h: Remove.
5660
5661 1998-10-15  Benjamin Kosnik  <bkoz@haight.constant.com>
5662
5663         * src/misc-inst.cc: Tweak again.
5664
5665         * bits/std_sstream.h: Move out-of-line definitions to sstream.tcc.
5666         * bits/sstream.tcc: New file.
5667
5668 1998-10-15  Ulrich Drepper  <drepper@cygnus.com>
5669
5670         * configure.in: Test for machine/param.h, sys/machine.h and fp.h.
5671         Don't run AC_C_BIGENDIAN if machine/param.h or sys/machine.h are
5672         available.
5673
5674         * math/mathconf.h: Include sys/machine.h, machine/param.h and fp.h
5675         if available.
5676         (INFINITE_P): Use IS_INF macro if available.
5677
5678 1998-10-15  Ulrich Drepper  <drepper@cygnus.com>
5679
5680         * math/Makefile.am (EXTRA_LTLIBRARIES): Renamed from
5681         noinst_LTLIBRARIES.
5682         * string/Makefile.am: Likewise.
5683
5684 1998-10-15  Ulrich Drepper  <drepper@cygnus.com>
5685
5686         * configure.in (AC_CHECK_FUNCS): Add finite, qfinite, fpclass, and
5687         qfpclass.
5688         (AC_CHECK_HEADERS): Add machine/endian.h.  If no header specifying
5689         endianess is available run AC_C_BIGENDIAN.
5690
5691         * math/clog10l.c: Add ugly hack around bug in Irix 6.2 header until
5692         fixincludes is fixed.
5693         * math/clogl.c: Likewise.
5694         * math/csqrtl.c: Likewise.
5695         * math/mycabsl.c: Likewise.
5696
5697         * math/mathconf.h: Include machine/endian.h if possible.  If no
5698         header describing endianess is available rely on WORDS_BIGENDIAN
5699         macro.
5700         (FINITE_P, FINITEF_P, FINITEL_P): Use finite functino if available.
5701         (INFINITE_P, INFINITEF_P, INFINITEL_P): Use fpclass function if
5702         available.
5703
5704         * src/complex.cc (polar): Don't use sincos on OSF machines.
5705
5706 1998-10-09  Benjamin Kosnik  <bkoz@loony.cygnus.com>
5707
5708         * src/locale-inst.cc: Don't instantiate time_get for
5709         ostreambuf_iterators as time_get::do_get_weekday and
5710         time_get::do_get_monthname use __match_parallel, which is illegal
5711         for ostreambuf_iterators to use, as they don't have operator== or
5712         operator!=.
5713         * bits/std_stdexcept.h: Add dtor definitions.
5714         Use stl/bits/std_stdexcept.h instead of this file?
5715         * bits/sbuf_iter.h : Tweak.
5716         * src/misc-inst.cc: Tweak.
5717
5718 1998-10-09  Benjamin Kosnik  <bkoz@haight.constant.com>
5719
5720         * bits/std_stdexcept.h: New file.
5721         * src/stdexcept.cc: Define the following:
5722         logic_error::what()
5723         runtime_error::what()
5724
5725         * src/misc-inst.cc: New file.
5726         * src/Makefile.in (libstdc___la_SOURCES): Add misc-inst.cc.
5727         (libstdc___la_OBJECTS): Add misc-inst.lo.
5728
5729         * bits/basic_string.h: Disable non-standard ctor declarations.
5730         * bits/string.tcc: Disable definitions as well.
5731         * src/string.cc: Disable <ios> dependancies.
5732         * bits/sbuf_iter.h (std): Add default to template parameter for
5733         ostreambuf_iterator and istreambuf_iterator.
5734         * bits/std_iosfwd.h: Change istreambuf_iterator to
5735         basic_istreambuf_iterator. Likewise for ostreambuf.
5736         * bits/locfacets.tcc (__match_parallel): Fix typo.
5737         * src/ios.cc (imbue): Remove the _G_HAVE_LOCALE guards around
5738         ios_base::imbue.
5739         * bits/std_streambuf.h: Define _Streambuf_base::getloc().
5740         * bits/std_istream.h: Define the following:
5741         get (basic_streambuf<char_type,_Traits>& __sb, char_type __delim)
5742         get (char_type* __s, streamsize __n, char_type __delim);
5743         getline (char_type* __s, streamsize __n, char_type __delim)
5744         * bits/loccore.h : FIXME friend template code for use_facet.
5745         Add std_stdexcept.h include so that range_error will be defined.
5746         Add explicit conversion to string for range_error throws. (HACK?)
5747
5748 1998-10-8  Ulrich Drepper  <drepepr@cygnus.com>
5749
5750         * configure.in: Check for sincos, sincosf, and sincosl.
5751         * src/complex.cc (polar): Use sincos if available.
5752
5753         * bits/c++config.h: Fix hack to get LONG_LONG* definitions on Linux.
5754         * stl/bits/std_limits.h: Include bits/c++config.h.  HACK!!!
5755
5756         * math/clog10.c: Fix typo (FP_INIFITE_P -> INFINITE_P).
5757
5758         * math/cpow.c: Use c_log, not clog.
5759         * math/cpowf.c: Likewise.
5760         * math/cpowl.c: Likewise.
5761
5762         * math/cexp.c: Remove unused fpclassify calls.  Use FINITE_P instead
5763         of isfinite call.
5764
5765         * math/mathconf.h (FINITE_P, FINITEF_P, FINITEL_P): Define using
5766         isfinite macro if it is available.
5767         (INFINITE_P, INFINITEF_P, INFINITEL_P): Define using isinf macro.
5768
5769         * math/ccosf.c: Use appropriate test macros for this type.
5770         * math/ccoshf.c: Likewise.
5771         * math/ccoshl.c: Likewise.
5772         * math/ccosl.c: Likewise.
5773         * math/cexpf.c: Likewise.
5774         * math/cexpl.c: Likewise.
5775         * math/clog10f.c: Likewise.
5776         * math/clog10l.c: Likewise.
5777         * math/clogf.c: Likewise.
5778         * math/clogl.c: Likewise.
5779         * math/csinf.c: Likewise.
5780         * math/csinhf.c: Likewise.
5781         * math/csinhl.c: Likewise.
5782         * math/csinl.c: Likewise.
5783         * math/csqrtf.c: Likewise.
5784         * math/csqrtl.c: Likewise.
5785         * math/ctanf.c: Likewise.
5786         * math/ctanhf.c: Likewise.
5787         * math/ctanhl.c: Likewise.
5788         * math/ctanl.c: Likewise.
5789
5790 1998-10-06  Benjamin Kosnik  <bkoz@bliss.nabi.net>
5791
5792         * bits/basic_ios.h: Fix previous change.
5793
5794 1998-10-06  Benjamin Kosnik  <bkoz@bliss.nabi.net>
5795
5796         * bits/basic_ios.h: Add const_cast<basic_ios&>
5797         (operator void*): As per 5.2.9 p 2, make sure static_cast is
5798         well-formed.
5799         * bits/char_traits.h: No _CharT for specialization, change to 0.
5800         * bits/basic_string.h: As per 9.4.2 p4, initialize with
5801         constant-initializer.
5802         * bits/locfacets.tcc: Add template parameter to initialization list.
5803
5804 1998-10-02  Benjamin Kosnik  <bkoz@loony.cygnus.com>
5805
5806         * bits/basic_string.h: Should just be <, not <=.
5807
5808 1998-10-01  Benjamin Kosnik  <bkoz@bliss.nabi.net>
5809
5810         * bits/string.tcc (compare): Fix for strings that are similar, but
5811         not the same length.
5812
5813 1998-09-04  Brendan Kehoe  <brendan@cygnus.com>
5814
5815         * bits/c++config.h: For __linux__, define _GNU_SOURCE.  This is
5816         required for us to get LONG_LONG_{MIN,MAX} out of gcc's limits.h.
5817         We can't check for __GLIBC__ here, since this header can be read
5818         before any system one (that would lead to features.h) being used.
5819
5820         * stl/bits/stl_config.h (__STL_LONG_LONG): Re-enabled
5821
5822         * stl/bits/std_limits.h [__STL_LONG_LONG]: Fix usage to use
5823         LONG_LONG_MIN, LONG_LONG_MAX, and ULONG_LONG_MAX.
5824
5825         * stl/bits/stl_config.h: Don't do __STL_LONG_LONG, it uses
5826         LONGLONG_{MIN,MAX} which I can't find the origin of.
5827
5828 1998-09-03  Brendan Kehoe  <brendan@cygnus.com>
5829
5830         * stl/bits/stl_iterator.h: Add extern decl of cin for now; where
5831         should this come from, if not iostream.h?
5832         (class istream_iterator): Make the new operator!= a friend also.
5833
5834         * stl/bits/stl_config.h: Define __STL_HAS_WCHAR_T,
5835         __STL_MEMBER_TEMPLATE_CLASSES, and __STL_LONG_LONG.  Don't include
5836         _G_config.h like the egcs one does.
5837
5838 1998-09-01  Brendan Kehoe  <brendan@cygnus.com>
5839
5840         * bits/string.tcc: Call `_M_destroy' instead of `destroy'.
5841
5842         * bits/valarray_meta.h: Throughout, rename _Expr typedefs to be
5843         _Expr1 (or _Expr_def if it's taken), and change definitions.
5844         Avoids redecl of the template parm.
5845
5846         * bits/string.tcc (basic_string copy ctor): Fix typo in declaration.
5847         (operator>>): Initialize __ERROR with ios_base::goodbit, not 0.
5848
5849         * bits/std_streambuf.h (_POSIX_SOURCE): Only define if it's not
5850         already done.
5851
5852         * src/locale-inst.cc: New file, **TOTAL HACK**.  There has GOT to
5853         be a better way to do this.
5854
5855         * src/stlinst.cc: New file.
5856
5857         * BUGS: New file, with various discovered bugs that need to be
5858         fixed.
5859
5860         * Makefile.in, math/Makefile.in, string/Makefile.in,
5861         src/Makefile.in: Reran automake.
5862
5863         Workarounds, these may not all be the final fixes:
5864
5865         * bits/basic_ios.h (class basic_ios): Make _M_strbuf be protected,
5866         not private, for basic_istream::get() in std_istream.h to be able
5867         to use it.
5868         (basic_ios::operator void*): Don't use static_cast for the false
5869         case.
5870         (basic_ios::copyfmt): Fix `rhs.except' to be `rhs.exceptions ()'.
5871         This appears to have been in sep94, but didn't get corrected
5872         afterwards.
5873
5874         * bits/basic_string.h (npos): Don't init here.
5875         * bits/string.tcc: Instead, do initialization here, to -1 instead
5876         of the size_type destructor.
5877
5878         * src/traits.cc, src/wtraits.cc: New files.
5879         * bits/char_traits.h: For char_traits<char> and
5880         char_traits<wchar_t>, declare static, but define over in the src
5881         files.
5882
5883         * bits/gslice.h: Comment out forward decls of _Array, valarray,
5884         gslice_array, and _GsliceExpression.
5885
5886         * bits/std_cstdio.h [__sparc__ && __svr4__]: #undef all of
5887         clearerr, feof, ferror, getc, getchar, putc, putchar, stdin,
5888         stdout, and stderr.  Note we do get unresolved refs to stdin, but
5889         that'll get fixed by the "true" solution.
5890
5891         * bits/std_ios.h: Include <bits/std_streambuf.h> to get the
5892         definition of basic_streambuf.h, which is used in basic_ios.h to
5893         call pubimbue.
5894
5895         * bits/std_streambuf.h: Don't include libio.h for now.
5896         (class basic_streambuf): Define missing methods pubimbue and
5897         getloc.
5898
5899         * src/Makefile.am (libstdc___la_SOURCES): Add stdexcept.cc,
5900         ios.cc, os_raw.cc, stdstreams.cc, locale.cc, localename.cc,
5901         locale-inst.cc, stlinst.cc, traits.cc, wtraits.cc.
5902
5903         * src/ios.cc: Instantiate basic_ios<char> and basic_ios<wchar_t>.
5904
5905         * src/locale.cc: Come up with munged versions of _S_toupper,
5906         _S_tolower, and _S_table instead of the glibc-specific ones, so
5907         they're at least defined, if not necessarily usable.  The glibc
5908         ones on any other system will yield unresolved refs to
5909         __ctype_{b,toupper,tolower}.
5910
5911         * src/string.cc: Define all of ADDCS, ADDPS, et al.  Add
5912         basic_ios, basic_istream, basic_ostream.  Don't do char_traits
5913         anymore cuz of the explicit specialization in char_traits.h.
5914         Also add _S_string_copy, but this doesn't fix it -- cf the BUGS
5915         file for the details.
5916
5917         * stl/bits/stl_algobase.h (equal): Fix to do `! (x==y)'.
5918         * stl/bits/stl_iterator.h (__distance): Likewise.
5919
5920         * stl/bits/stl_iterator.h: As with 8/18 set, define missing op!=,
5921         op>, op<=, and op>= for reverse_iterator.  Also add op!= for
5922         istream_iterator.
5923
5924 1998-08-26  Brendan Kehoe  <brendan@cygnus.com>
5925
5926         * bits/string.tcc (basic_string::compare (const char*)): Fix to
5927         return 0, not 1.
5928
5929 1998-08-25  Brendan Kehoe  <brendan@cygnus.com>
5930
5931         This should really be fixed with __asm__ directives renaming the
5932         symbol, but keeping the function.
5933         * math/clogf.c (c_logf): Renamed from `clogf'.
5934         * math/clogl.c (c_logl): Renamed from `clogl'.
5935         * math/complex-stub.h (c_logf, c_logl): Change decls.
5936
5937         * bits/locfacets.h (class _Numeric_get): For friend decls, rename
5938         _CharT and _InIter parms, since they duplicate the enclosing ones.
5939
5940 1998-08-19  Brendan Kehoe  <brendan@cygnus.com>
5941
5942         Deal with conflict of the iostreams `clog' and our internal
5943         complex number `clog'.
5944         * src/complex.cc: Call `c_log' instead of `clog'.
5945         * math/clog.c (c_log):: Renamed from clog.
5946         * math/complex-stub.h (c_log): Renamed from clog decl.
5947
5948         * bits/locfacets.h (class _Numeric_get): Tweak fwd decls of the
5949         get/put classes.
5950         (num_put::put): #if 0 long long version, since we don't declare or
5951         define the long long version of do_put.
5952
5953 1998-08-18 Nathan Myers <ncm@cantrip.org>
5954
5955         * bits/basic_string.h: add basic_string<>::push_back(), fix return
5956         type of get_allocator (thanks to Ryszard Kabatek).
5957         * bits/char_traits.h: make init order of fpos<> members
5958         match decl order.
5959         * bits/ios_base.h: fix decls of ios_base bitmask & enum types, add
5960         flags _S_fd_in etc. for special filebuf ctor.
5961         * bits/locfacets.h: make _Numeric_get and _Format_cache public
5962         to work around problems in friend declarations.
5963         * bits/locfacets.tcc: qualify _S_get_cache in num_get<>::get(..bool&),
5964         fix random type errors & typos
5965         * bits/std_fstream.h: major refitting to bypass libio (for now),
5966         instrument to use bits/fstream.tcc template definitions
5967         * bits/std_iosfwd.h: mess with wrappers
5968         * bits/std_istream.h: remove meaningless comment
5969         * bits/std_ostream.h: instrument to work with ostream.tcc.
5970         * bits/std_streambuf.h: instrument to work with streambuf.tcc
5971         * bits/fstream.tcc: template defs for <fstream>
5972         * bits/ostream.tcc: template defs for <ostream>
5973         * bits/streambuf.tcc: template defs for <streambuf>
5974         * bits/os_raw.h: thin OS interface wrapper, to bypass libio (for now).
5975         * Delete .cc files, replace with bits/*.tcc
5976         src/fstream.cc
5977         src/istream.cc
5978         src/ostream.cc
5979         src/streambuf.cc
5980         * Add files:
5981         src/os_raw.cc: thin interface to OS, to bypass libio (for now).
5982         src/stdstreams.cc: cout, cin, etc. definitions
5983         (these still need work: must be init'd before user statics.)
5984
5985
5986 1998-08-18  Brendan Kehoe  <brendan@cygnus.com>
5987
5988         Sent to SGI before checkin:
5989         * stl/bits/stl_vector.h (operator!=, operator>, operator<=,
5990         operator>=): Define.
5991         * stl/bits/stl_bvector.h (vector<bool>::flip): Define method.
5992         * stl/bits/stl_deque.h (operator!=, operator>, operator<=,
5993         operator>=): Define.
5994         (operator==, operator<): Add inline.
5995         * stl/bits/stl_map.h (operator!=, operator<, operator<=,
5996         operator>=): Define.
5997         * stl/bits/stl_multimap.h (operator!=, operator<, operator<=,
5998         operator>=): Define.
5999         * stl/bits/stl_list.h (operator!=, operator<, operator<=,
6000         operator>=): Define.
6001         * stl/bits/stl_set.h (operator!=, operator<, operator<=,
6002         operator>=): Define.
6003         * stl/bits/stl_multiset.h (operator!=, operator<, operator<=,
6004         operator>=): Define.
6005
6006         * bits/std_valarray.h (_Shift_left, _Shift_right): Inherit from
6007         unary_function.
6008
6009 1998-08-15 Nathan Myers <ncm@cantrip.org>
6010
6011         * bits/ios_base.h: change nominal bitmask and enum types to real enums
6012         * bits/locfacets.h: make _Format_cache bool names usable by num_get
6013         * bits/locfacets.tcc: make num_get<>::get(... bool&) use _Format_cache
6014         * bits/std_fstream.h: minor cleanups: ctors delegate to open()
6015         * bits/std_iosfwd.h: more bitmask changes, for ios_base::iostate
6016         * bits/std_sstream.h: formatting cleanups
6017
6018 1998-08-14 Nathan Myers <ncm@cantrip.org>
6019
6020         * bits/locfacets.tcc: implement num_get<>::do_get(..., bool&)
6021         * bits/locfacets.tcc: implement time_get<>::do_get_weekday
6022         * bits/locfacets.tcc: implement time_get<>::do_get_monthname
6023         * bits/locfacets.h:   fix missing argument in do_get_monthname
6024         (this is a bug in the standard, ref. 36 in my list.)
6025         * bits/locfacets.h: make month and day name caches mutable
6026         * bits/locfacets.tcc: various typos in get() functions
6027         * bits/sbuf_iter.h: fix omission in istreambuf_iterator::op++().
6028         * bits/std_streambuf.h: fix typo in sgetn (Brendan)
6029
6030 1998-08-12 Nathan Myers <ncm@cantrip.org>
6031         * move streambuf iterators to bits/sbuf_iter.h
6032         * optimize streambuf iterators
6033         * begin generalizing streambuf
6034         * begin implementing num_get<>::get (starting with bool)
6035         * patch stl/bits/stl_config.h so that relops operators are
6036         contained properly, out of the way.
6037
6038 1998-07-24 Nathan Myers <ncm@cantrip.org>
6039         * Fold in SGI 3.11 changes (uglified names, some algorithm
6040           improvements, very minor bug fixes.)
6041         * Uglify names elsewhere to match (s/_T/_Tp/).
6042         * Begin work on optimized streambuf
6043         * Put complex.cc in namespace std:: (thanks Martin)
6044
6045 1998-07-17 Nathan Myers <ncm@cantrip.org>
6046
6047         * bits/char_traits.h: add _Char_traits_match template.
6048         * bits/string.tcc: fix bugs in various find_last* members.
6049         * bits/basic_string.h: redeclare member _S_find.
6050         * stl/bits/stl_iterator.h: change member names in nonstandard
6051           templates bidirectional_reverse_iterator and
6052           random_access_reverse_iterator to match expected changes
6053           in upstream source.
6054         * src/string.cc: fix definitions of stream operators.
6055
6056 1998-07-14 16:06  Ulrich Drepper  <drepper@cygnus.com>
6057
6058         * Makefile.am (SUBDIRS): Add string.
6059
6060         * configure.in: Test for long double functions separately.  Test for
6061         ISO C 89 float functions.  Test for endian.h and sys/isa_defs.h.
6062         Generate string/Makefile.
6063
6064         * bits/c++config.h: Define mbstate_t for Solaris.
6065
6066         * bits/char_traits.h: Remove unused #if.
6067
6068         * bits/std_cwchar.h: Declare wide char string functions.
6069
6070         * m4/stringfcts.m4: New file.
6071
6072         * math/complex-stub.h: Declare nan.
6073         * math/nan.c: New file.
6074
6075         * math/mathconf.h: Hack around missing endian.h file.
6076         Handle missing NAN definition.
6077         Handle missing float math functions.
6078
6079         * src/Makefile.am (libstdc___la_LIBADD): Add libstring.la.
6080         (libstdc___la_LDFLAGS): Set version information.
6081
6082         * src/complexl.cc: Don't compile any code if no long double functions
6083         are available.
6084
6085         * string/Makefile.am: New file.
6086         * string/dummy.c: New file.
6087         * string/wmemchr.c: New file.
6088         * string/wmemcmp.c: New file.
6089         * string/wmemcpy.c: New file.
6090         * string/wmemmove.c: New file.
6091         * string/wmemset.c: New file.
6092
6093 1998-07-14 10:45  Ulrich Drepper  <drepper@cygnus.com>
6094
6095         * configure.in: Make it work.
6096         * install-sh: New file.
6097         * missing: New file.
6098         * mkinstalldirs: New file.
6099         * m4/mathfcts.m4: New file.
6100         * math/Makefile.am: New file.
6101
6102         * bits/std_complex.h (conj): Mark specializations as inline.
6103
6104         * math/carg.c: New file.
6105         * math/cargf.c: New file.
6106         * math/cargl.c: New file.
6107         * math/mycabs.c: New file.
6108         * math/mycabsf.c: New file.
6109         * math/mycabsl.c: New file.
6110         * math/signbit.c: New file.
6111         * math/signbitf.c: New file.
6112         * math/signbitl.c: New file.
6113
6114         * math/ccos.c: Avoid ISO C 9x functionality.
6115         * math/ccosf.c: Likewise.
6116         * math/ccosh.c: Likewise.
6117         * math/ccoshf.c: Likewise.
6118         * math/ccoshl.c: Likewise.
6119         * math/ccosl.c: Likewise.
6120         * math/cexp.c: Likewise.
6121         * math/cexpf.c: Likewise.
6122         * math/cexpl.c: Likewise.
6123         * math/clog.c: Likewise.
6124         * math/clog10.c: Likewise.
6125         * math/clog10f.c: Likewise.
6126         * math/clog10l.c: Likewise.
6127         * math/clogf.c: Likewise.
6128         * math/clogl.c: Likewise.
6129         * math/cpow.c: Likewise.
6130         * math/cpowf.c: Likewise.
6131         * math/cpowl.c: Likewise.
6132         * math/csin.c: Likewise.
6133         * math/csinf.c: Likewise.
6134         * math/csinh.c: Likewise.
6135         * math/csinhf.c: Likewise.
6136         * math/csinhl.c: Likewise.
6137         * math/csinl.c: Likewise.
6138         * math/csqrt.c: Likewise.
6139         * math/csqrtf.c: Likewise.
6140         * math/csqrtl.c: Likewise.
6141         * math/ctan.c: Likewise.
6142         * math/ctanf.c: Likewise.
6143         * math/ctanh.c: Likewise.
6144         * math/ctanhf.c: Likewise.
6145         * math/ctanhl.c: Likewise.
6146         * math/ctanl.c: Likewise.
6147
6148         * math/complex-stub.h: New file.
6149
6150         * math/mathconf.h: New file.
6151
6152         * src/Makefile.am: New file.
6153
6154         * src/complex.cc: Use mathconf.h instead of complex.h.
6155         Don't use cabs, always use __mycabs.
6156
6157 1998-02-13  Brendan Kehoe  <brendan@cygnus.com>
6158
6159         * iterator (class reverse_iterator): Do some tweaks to be in sync
6160         w/ the FDIS.