OSDN Git Service

2002-04-15 Benjamin Kosnik <bkoz@redhat.com>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2002-04-15  Benjamin Kosnik  <bkoz@redhat.com>
2
3         PR libstdc++/4164
4         Valgrind fixes.
5         * config/io/basic_file_stdio.cc (__basic_file::~__basic_file):
6         Call close.
7         (__basic_file::close): Call fflush. Correct return if fclose ok. 
8         (__basic_file::is_open): Make const.
9         Change __c_file_type to __c_file.
10         * config/io/basic_file_stdio.h: Change __c_file_type to __c_file.
11         (__basic_file::is_open): Make const.    
12         * config/io/c_io_stdio.h: Change __c_file_type to __c_file.
13         * include/std/std_fstream.h (filebuf::_M_allocate_file): Remove.
14         (filebuf::_M_unbuf): Add.
15         (filebuf::_M_file): Change to non-pointer.
16         (filebuf::_M_allocate_pback_buffer): Remove.
17         * include/bits/fstream.tcc (filebuf::_M_allocate_file): Remove.
18         (filebuf::_M_allocate_internal_buffer): Use _M_unbuf.
19         Change initialization list for _M_file change.
20         (filebuf::_M_allocate_pback_buffer): Remove.
21         Change _M_file usage to reflect non-pointer data member.
22         
23         * config/locale/generic/c_locale.cc
24         (locale::facet::_S_create_c_locale): Add parameter.
25         * config/locale/generic/collate_members.cc: Change
26         _M_compare_helper to _M_compare.
27         Change _M_transform_helper to _M_transform.
28         * config/locale/generic/monetary_members.cc: Changeup data types.
29         Add dtors.
30         * config/locale/generic/numeric_members.cc: Add dtors.
31         * config/locale/generic/time_members.cc: Add dtors.
32         * config/locale/gnu/c_locale.cc: Add parameter.
33         * config/locale/gnu/collate_members.cc:Change
34         _M_compare_helper to _M_compare.
35         Change _M_transform_helper to _M_transform.
36         * config/locale/gnu/ctype_members.cc: Better error checking.
37         * config/os/gnu-linux/bits/ctype_noninline.h: Better error checking.
38         * config/locale/gnu/messages_members.cc: Tweak comment.
39         * config/locale/gnu/monetary_members.cc: Change data types.
40         Add dtors.
41         * config/locale/gnu/numeric_members.cc: Add dtors, better error
42         checking.
43         * config/locale/gnu/time_members.cc: Same.
44         * config/locale/ieee_1003.1-2001/c_locale.cc
45         (locale::facet::_S_create_c_locale): Add parameter.
46         * config/locale/ieee_1003.1-2001/c_locale.h: Correct typedef.
47         * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Remove
48         bogus ctor.
49         
50         * include/bits/locale_facets.h (moneypunct): Use string literals.
51         Don't define dtor.
52         (numpunct): Same.
53         (__timepunct): Same.
54         (locale::_Impl::_M_facets): Change from vector to array.
55         (locale::_Impl::_M_names): Change from array of strings to array
56         of string literals.
57         (locale::facet::_S_create_c_locale): Add parameter.
58         (locale::locale::_S_num_facets): Move to...
59         (locale::_Impl::_M_facets_size): Here.
60         * include/bits/locale_facets.tcc: Fixups for _M_facets, _M_name
61         changes.
62         * include/bits/localefwd.h: (locale::id::_M_id): Add member function.
63         (locale::_Impl::_Impl(facet**, size_t, bool)): Add.
64         (locale::_Impl::_Impl(string, size_t)): Change to
65         (locale::_Impl::_Impl(const char*, size_t)): This.
66         
67         * include/bits/streambuf.tcc (streambuf::_S_pback_size): Define.
68         * include/std/std_streambuf.h (streambuf::_M_pback_size): Change to
69         (streambuf::_S_pback_size): This.
70
71         * src/globals.cc: Add pre-allocations for "C" facets.
72         * src/locale-inst.cc: Remove vector instantiations.
73         * src/locale.cc: Remove vector include. Fixups for _M_names,
74         _M_facets changes.
75         * src/localename.cc: Same.
76
77         * include/bits/stl_vector.h: Fix odd formatting.
78         
79         * include/bits/basic_string.tcc: Tweak comment.
80
81         * libsupc++/new: Make sure parameters are uglified.
82         * libsupc++/typeinfo: Same.
83                 
84         * testsuite/22_locale/num_get_members_char.cc: Fixup.
85         * testsuite/22_locale/num_get_members_wchar_t.cc: Same.
86         * testsuite/27_io/filebuf_members.cc: Same.
87
88 2002-04-12  Steve Ellcey  <sje@cup.hp.com>
89
90         * gcc/libstdc++-v3/config/os/hpux/bits/os_defines.h
91         (strtoll, strtoull): In 64 bit mode HP-UX (IA64 and HPPA)
92         does not define strtoll or strtoull, but does define strtol
93         and strtoul which are the same since in 64 bit mode
94         sizeof(long) == sizeof(long long).
95
96 2002-04-12  Phil Edwards  <pme@gcc.gnu.org>
97
98         * include/std/std_bitset.h:  Doxygenate std::bitset<>.  Clean up
99         trailing spaces, indentation, and macro names.  Make exception
100         messages more informative.
101
102 2002-04-11  Richard Henderson  <rth@redhat.com>
103
104         * include/bits/fstream.tcc (basic_filebuf<>::open): Fix & ordering.
105         * include/bits/ostream.tcc (basic_ostream<>::operator<<(long)): Same.
106         (basic_ostream<>::operator<<(long long)): Same.
107
108 2002-04-11  Richard Henderson  <rth@redhat.com>
109
110         * config/linker-map.gnu: Add __gxx_personality_sj0.
111
112 2002-04-09  Benjamin Kosnik  <bkoz@redhat.com>
113
114         libstdc++/1072
115         * include/bits/localefwd.h (locale::_Impl::_M_facets): Change from
116         pointer to vector.
117         Remove forward declaration of vector.
118         Include vector.
119         * include/bits/locale_facets.tcc: Remove vector include.
120         (use_locale): Adjust.
121         (has_locale): Adjust.
122         * src/locale.cc: Adjust.
123         * src/localename.cc: Same.
124         
125 2002-04-09  Benjamin Kosnik  <bkoz@redhat.com>
126             Richard Henderson  <rth@redhat.com>
127
128         * include/bits/sstream.tcc: Clean up bit ops.
129         * include/bits/fstream.tcc: Same.
130         
131 2002-04-09  Jakub Jelinek  <jakub@redhat.com>
132
133         * include/bits/locale_facets.h (__num_base::_S_scale_hex): Remove.
134         (__num_base::_S_scale_oct): Remove.
135         * src/locale.cc (__num_base::_S_scale_hex): Remove.
136         (__num_base::_S_scale_oct): Remove.
137
138 2002-04-09  Benjamin Kosnik  <bkoz@redhat.com>
139
140         libstdc++/6124
141         * testsuite/23_containers/bitset_members.cc: New test.
142         * include/std/std_bitset.h (_Bit_count::_S_bit_count): Move..
143         (_S_bit_count): Here.
144         (_First_one::_S_first_one): Move...
145         (_S_first_one): Here.
146         Format.
147         * src/bitset.cc: Adjust.
148         * config/linker-map.gnu: Export.
149         
150 2002-04-08  Benjamin Kosnik  <bkoz@redhat.com>
151
152         libstdc++/5180
153         * include/bits/fstream.tcc (filebuf::seekpos): Fix.
154         * include/std/std_fstream.h: Clean.
155         * include/bits/ostream.tcc: Remove extraneous variables.
156         * include/bits/sstream.tcc (stringbuf::seekoff): Be strict about
157         open modes and which modes.
158         (stringbuf::seekpos): Same.
159         * testsuite/27_io/stringbuf_virtuals.cc: New tests.
160         
161 2002-04-05  Jonathan Wakely <jw@kayari.org>
162
163         * include/bits/stl_algo.h (unique_copy, __gcd, rotate, rotate_copy,
164         random_shuffle, partition, stable_partition, sort, stable_sort,
165         partial_sort, partial_sort_copy, nth_element):  Doxygenate.
166
167 2002-04-05  David S. Miller  <davem@redhat.com>
168
169         * config/os/gnu-linux/bits/os_defines.h
170         (__glibcpp_long_double_bits): Set to 64 on 32-bit Sparc.
171
172 2002-04-04  Benjamin Kosnik  <bkoz@redhat.com>
173
174         libstdc++/3457 
175         via gawrilow@math.tu-berlin.de
176         * acinclude.m4 (version_specific_libs): Fix combo usage with
177         --with-gxx-include-dir.
178         * aclocal.m4: Regenerate.
179         * configure: Same.
180         
181 2002-04-03  Benjamin Kosnik  <bkoz@redhat.com>
182
183         As per DR 184, libstdc++/3139
184         * include/std/std_limits.h (__glibcpp_bool_digits): Change to 1.
185         (numeric_limits<bool>::is_iec559): False.
186         (numeric_limits<bool>::is_modulo): False.       
187
188         * testsuite/27_io/ios_init.cc: Add instantiations.
189
190 2002-04-02  Benjamin Kosnik  <bkoz@redhat.com>
191         
192         libstdc++/5268
193         * src/ios.cc: (ios_base::Init::_S_ios_destroy): Remove flush calls.
194         * testsuite/27_io/ios_init.cc (tests04): Add test.
195
196         libstdc++/3983
197         * include/bits/basic_ios.h (basic_ios::_M_get_fctype_ios): Remove.
198         (basic_ios::_M_ios_fctype): Consistently name to _M_fctype.
199         * include/bits/basic_ios.tcc: Same. Remove outdated comments.
200         * include/bits/istream.tcc: Use _M_fctype, make consistent with
201         ostream.
202         * testsuite/27_io/ios_init.cc (tests03): Add test.
203         
204 2002-04-02  Phil Edwards  <pme@gcc.gnu.org>
205
206         * include/Makefile.am (install-data-local):  Use mkinstalldirs.
207         * include/Makefile.in:  Regenerate.
208
209 2002-04-02  Paolo Carlini  <pcarlini@unitus.it>
210             Nathan Myers  <ncm@cantrip.org>
211             Philip Martin  <philip@codematters.co.uk>
212
213         * include/bits/basic_string.h
214         (replace(i1, i2, _CharT* k1, _CharT* k2),
215         replace(i2, i2, const _CharT* k1, const _CharT* k2),
216         replace(i1, i2, iterator k1, iterator k2,
217         replace(i1, i2, const_iterator k1, const_iterator k2):
218         New specializations to optimize for the common cases of
219         pointers and iterators.
220         (replace(pos, n1, s, n2)): Tweak.
221         * include/bits/basic_string.tcc: Tweak comments.
222         * testsuite/21_strings/replace.cc (test04): New tests.
223
224 2002-04-01  Benjamin Kosnik  <bkoz@redhat.com>
225
226         libstdc++/5542
227         * acinclude: More extensive checks for msgfmt, --enable-nls.
228         * aclocal.m4: Regenerate.
229         * configure: Regenerate.
230
231 2002-04-01  Phil Edwards  <pme@gcc.gnu.org>
232
233         * libsupc++/exception (__verbose_terminate_handler):  Point to docs.
234         * docs/doxygen/doxygroups.cc:  Doxygen hooks for abi::__cxa_demangle.
235         * docs/html/18_support/howto.html:  Document the demangler.
236         * docs/html/17_intro/howto.html:  And link to it.
237
238         * docs/doxygen/mainpage.html:  Describe user-vs-maintainer docs.
239         * docs/doxygen/run_doxygen:  Print user-vs-maintainer.
240
241 2002-04-01  Phil Edwards  <pme@gcc.gnu.org>
242
243         * config/linker-map.gnu:  Export __verbose_terminate_handler.
244         * libsupc++/Makefile.am (sources):  Add cxa_demangle.c, dyn-string.c.
245         Make new LTCOMPILE variable, use it in new special build rules.
246         * libsupc++/Makefile.in:  Rebuild.
247         * src/vterminate.cc (__verbose_terminate_handler):  Enable use of
248         runtime __cxa_demangle.
249
250         * docs/html/install.html:  Update prereqs and instructions.
251         * docs/html/19_diagnostics/howto.html:  Bring naming for
252         verbose_terminate_handler into line with reality.
253
254 2002-04-01  Benjamin Kosnik  <bkoz@redhat.com>
255         
256         libstdc++/3129
257         * include/bits/basic_ios.h (basic_ios::_M_exception): Move.
258         (basic_ios::_M_streambuf_state): Move.  
259         * include/bits/ios_base (ios_base): To here.
260         * include/bits/ios_base.h (ios_base::_S_local_words): To
261         _S_local_word_size.
262         (ios_base::_M_word_array): To _M_local_word.
263         (ios_base::_M_words_limit): To _M_word_size.    
264         (ios_base::_M_words): To _M_word.               
265         Comment.
266         * include/bits/basic_ios.tcc: Adjust.   
267         * src/ios.cc (ios_base::_M_grow_words): Tweak.
268         * testsuite/27_io/ios_base_storage.cc: Add tests.
269
270         libstdc++/5207
271         Kenny Simpson <theonetruekenny@yahoo.com>
272         * include/bits/ios_base.h: Fix.
273         
274         Richard Henderson  <rth@redhat.com>
275         * include/bits/ostream.tcc (ostream::operator<<(_CharT)): Correct
276         last change.
277
278         * include/bits/basic_string.h: Tweak formatting.
279         
280 2002-04-01  Paolo Carlini  <pcarlini@unitus.it>
281
282         * config/locale/ieee_1003.1-2001/codecvt_specializations.h
283         (codecvt::do_out, codecvt::do_unshift, codecvt::do_in):
284         By definition, sizeof(char) == 1.
285         * include/bits/locale_facets.tcc (money_get::do_get,
286         money_put::do_put): Ditto.
287         * testsuite/21_strings/inserters_extractors.cc
288         (test04): Ditto.
289
290 2002-03-30  Richard Henderson  <rth@redhat.com>
291
292         PR c++/3719
293         * libsupc++/eh_personality.cc (__cxa_call_unexpected): Copy handler
294         data out of the exception struct before calling unexpectedHandler.
295
296 2002-03-28  Roger Sayle  <roger@eyesopen.com>
297
298         * include/c_std/std_cmath.h:  To prevent problems overloading
299         g++ builtins, use the double variants from the global namespace
300         before defining float and long double variants in std::.
301
302 2002-03-28  Loren J. Rittle <ljrittle@acm.org>
303
304         * testsuite/18_support/numeric_limits.cc (test_extrema): Fix typo.
305
306 2002-03-28  Paolo Carlini  <pcarlini@unitus.it>
307
308         * testsuite/24_iterators/istream_iterator.cc
309         (test02): New tests.
310
311 2002-03-28  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
312             Paolo Carlini  <pcarlini@unitus.it>
313
314         * testsuite/22_locale/codecvt_members_unicode_wchar_t.cc
315         (test01): Protect the test with _GLIBCPP_USE_WCHAR_T;
316         fix i_lit_base e_lit_base arrays, making them independent
317         from the endianness of the platform; tweak UCS4 to UCS-4BE.
318
319 2002-03-27  Benjamin Kosnik  <bkoz@redhat.com>
320
321         * include/bits/ostream.tcc (ostream::operator<<(_CharT)): Always
322         allocate at least a byte.
323
324         * testsuite/18_support/numeric_limits.cc (test_extrema): Make
325         debugger-friendly.
326         * testsuite/27_io/streambuf.cc (test07): Fix.
327         (test06): Enable.
328
329 2002-03-27  Phil Edwards  <pme@gcc.gnu.org>
330
331         * docs/doxygen/Intro.3:  Date tweak.
332         * docs/doxygen/TODO:  Update.
333         * docs/doxygen/doxygroups.cc:  Point to tables.html.
334         * docs/doxygen/mainpage.html:  Date tweak.
335         * docs/doxygen/run_doxygen:  Version tweak.  Copy tables.html over.
336         * docs/doxygen/tables.html:  Fill in the blanks.
337
338         * docs/doxygen/user.cfg.in (ALIASES):  Remove maint and endmaint.
339         * include/bits/stl_algo.h:  Likewise; use expanded form.
340         * include/bits/stl_alloc.h:  Likewise.
341         * include/bits/stl_construct.h:  Likewise.
342         * include/bits/stl_deque.h:  Likewise.
343         * include/bits/stl_iterator_base_types.h:  Likewise.
344         * include/bits/stl_list.h:  Likewise.
345         * include/bits/stl_relops.h:  Likewise.
346         * include/bits/stl_tempbuf.h:  Likewise.
347         * include/bits/stl_vector.h:  Likewise.
348         * include/std/std_memory.h:  Likewise.
349
350         * include/bits/stl_deque.h:  Point into tables.html and add @ingroup.
351         * include/bits/stl_list.h:  Likewise.
352         * include/bits/stl_vector.h:  Likewise.
353
354 2002-03-26  Benjamin Kosnik  <bkoz@redhat.com>
355
356         * include/c/: Guard with _CPP_.
357         * include/c_std/: Same.
358         * include/Makefile.am: Fixup install, link routines for null
359         c_base_headers_extra scenarios.
360         * include/Makefile.in: Regerate.
361
362 2002-03-25  Paolo Carlini <pcarlini@unitus.it>
363             Richard Henderson  <rth@redhat.com>
364
365         * testsuite/22_locale/codecvt_members_unicode_char.cc
366         (test01, test02): make sure that the i_lit_base array
367         is sufficiently aligned.
368
369 2002-03-25  Benjamin Kosnik  <bkoz@redhat.com>
370
371         * config/os/newlib/bits/ctype_noninline.h (ctype::classic): Set to
372         _ctype_.
373
374 2002-03-25  Paolo Carlini  <pcarlini@unitus.it>
375
376         * testsuite/22_locale/collate_byname.cc
377         (test01): compare the result of collate::compare with
378         that of collate::transform + string::compare, not with
379         that of collate::transform + collate::compare; values
380         returned by collate::compare are normalized, therefore
381         test against +-1.
382
383 2002-03-25  Benjamin Kosnik  <bkoz@redhat.com>
384             Jakub Jelinek  <jakub@redhat.com>
385
386         * config/locale/gnu/messages_members.h: Correct conditional.
387         * config/locale/gnu/messages_members.cc: Same.
388         * config/locale/gnu/time_members.cc: Same.
389
390 2002-03-25  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
391             Paolo Carlini  <pcarlini@unitus.it>
392
393         * testsuite/22_locale/codecvt_members_unicode_char.cc
394         (test01, test02): Fix i_lit_base arrays, making them
395         independent from the endianness of the platform.
396
397 2002-03-22  Benjamin Kosnik  <bkoz@redhat.com>
398
399         * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_SUPP): Just test for
400         signbit and __signbit directly.
401         * aclocal.m4: Regenerate.
402         * configure: Regenerate.
403         * config.h.in: Regenerate.
404         * libmath/Makefile.am: Simplify.
405         * libmath/Makefile.in: Regenerate.
406         * include/c_std/std_cmath.h: Update paths for include of cmath.tcc.
407
408         * include/Makefile.am: Clean up handling of extra "C" header files.
409         Add hooks for "C" compatibility headers.
410         * include/Makefile.in: Regenerate.
411
412         * include/c/*: Formatting tweaks, cleanups.
413         * include/c_std/*: Same.
414
415 2002-03-22  Benjamin Kosnik  <bkoz@redhat.com>
416
417         * config/locale/gnu/messages_members.h: Add __uselocale bits.
418         * config/locale/gnu/messages_members.cc: Same.
419         * config/locale/gnu/time_members.cc: Same.
420
421 2002-03-22  Benjamin Kosnik  <bkoz@redhat.com>
422
423         * src/vterminate.cc: Format, -fno-exceptions cleanup.
424
425 2002-03-21  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
426
427         * acinclude.m4 (GLIBCPP_CHECK_STDLIB_DECL_AND_LINKAGE_3): New.
428         (GLIBCPP_CONFIGURE_TESTSUITE): Use it to check for setenv.
429         * aclocal.m4: Regenerate.
430         * configure: Likewise.
431
432 2002-03-19  Paolo Carlini  <pcarlini@unitus.it>
433             Ulrich Drepper  <drepper@redhat.com>
434
435         * src/locale-inst.cc (__convert_from_v): Add an additional
436         __size parameter in the declarations.
437         * include/bits/locale_facets.tcc
438         (__convert_from_v): When available (that is,
439         _GLIBCPP_USE_C99 defined) use snprintf instead of sprintf.
440         (num_put::_M_convert_float): Depending on _GLIBCPP_USE_C99
441         being defined or not, call and use __convert_from_v in the
442         appropriate way.
443         (num_put::_M_convert_int): Same here.
444         (money_put::do_put(long double)): Same here.
445
446 2002-03-19  Phil Edwards  <pme@gcc.gnu.org>
447
448         * docs/html/faq/index.html (#3.6):  Rewrap and close <a href> tags.
449         * docs/html/faq/index.txt:  Regenerate.
450
451 2002-03-19  Steve Ellcey  <sje@cup.hp.com>
452
453         * acinclude.m4 (GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS): Define
454         GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS to set LIBUNWIND_FLAG if
455         --enable-libunwind-exceptions is set.
456         * configure.in (GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS): Call new
457         macro to check for libunwind.
458         * configure: Regenerate.
459         * src/Makefile.am (libstdc___la_LDFLAGS): Add
460         LIBUNWIND_FLAG to libstdc link line.
461         * src/Makefile.in: Regenerate.
462
463 2002-03-19  Benjamin Kosnik  <bkoz@redhat.com>
464
465         * docs/html/faq/index.html: Add OS X workaround.
466         * docs/html/17_intro/TODO: Update.
467
468 2002-03-18  Paolo Carlini  <pcarlini@unitus.it>
469
470         * include/bits/locale_facets.tcc
471         (money_put::do_put(long double)): Fix dimensioning of
472         temporary buffers to avoid risk of overruns.
473         (money_put::do_put(string)): Same for the buffer used to
474         add the grouping chars.
475         * testsuite/22_locale/money_put_members_char.cc: Add test06.
476         * testsuite/22_locale/money_put_members_wchar_t.cc: Ditto.
477
478         * include/bits/locale_facets.tcc
479         (collate::do_transform): Simplify.
480
481 2002-03-18  Phil Edwards  <pme@gcc.gnu.org>
482
483         * acinclude.m4 (GLIBCPP_CONFIGURE):  Make indentation/spacing uniform.
484         * configure.in:  Add comments pointing the way for autoconf 2.5x.
485         * aclocal.m4, config.h.in, configure:  Regenerate.
486
487 2002-03-18  Philipp Thomas  <pthomas@suse.de>
488
489         * include/backward/hash_map.h: hash, hashtable, hash_map and
490         hash_multimap are in namespace __gnu_cxx.
491         include/backward/hash_set.h: hash, hashtable, hash_set and
492         hash_multiset are in namespace __gnu_cxx.
493         include/backward/hashtable.h: hash and hashtable are in
494         namespace __gnu_cxx.
495         include/backward/rope.h: char_producer, sequence_buffer,
496         rope, crope and wrope are in namespace __gnu_cxx.
497         include/backward/slist.h: slist is in namespace __gnu_cxx.
498         * testsuite/backward/header_hash_map_h.cc
499         testsuite/backward/header_hash_set_h.cc
500         testsuite/backward/header_hashtable_h.cc
501         testsuite/backward/header_rope_h.cc
502         testsuite/backward/header_slist_h.cc
503         testsuite/backward/header_tempbuf_h.cc: New tests for
504         checking that we're using the correct namespace.
505
506 2002-03-17  Jason Merrill  <jason@redhat.com>
507
508         PR c++/4381
509         * libsupc++/eh_personality.cc (get_adjusted_ptr): New static fn.
510         (check_exception_spec): Call it.  Take the thrown pointer.
511         (__cxa_call_unexpected): Pass it.
512         (PERSONALITY_FUNCTION): Likewise.  Use get_adjusted_ptr.
513
514 2002-03-15  Anthony Green  <green@redhat.com>
515
516         * configure.in: Remove useless is_mingw32.
517         * configure: Rebuilt.
518
519 2002-03-15  Paolo Carlini  <pcarlini@unitus.it>
520
521         * testsuite/22_locale/collate_members_char.cc
522         (test01): compare the result of collate::compare with
523         that of collate::transform + string::compare, not with
524         that of collate::transform + collate::compare.
525         (test01): values returned by collate::compare are
526         normalized, therefore test against +-1.
527         * testsuite/22_locale/collate_members_wchar_t.cc: Ditto.
528
529 2002-03-12  Loren Rittle  <ljrittle@acm.org>
530
531         reported by Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
532         * testsuite/thread/pthread4.cc: Lower nominal iteration counter.
533
534 2002-03-12  Benjamin Kosnik  <bkoz@redhat.com>
535             Per Liboriussen  <liborius@stofanet.dk>
536
537         * config/os/gnu-linux/bits/ctype_noninline.h: Cast to
538         unsigned char.
539         * config/os/gnu-linux/bits/ctype_inline.h: Same.
540
541         * config/os/irix/irix6.5/bits/ctype_inline.h: Same.
542
543         * config/os/solaris/solaris2.5/bits/ctype_inline.h: Same.
544         * config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
545
546         * config/os/solaris/solaris2.6/bits/ctype_inline.h: Same.
547         * config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.
548
549         * config/os/solaris/solaris2.7/bits/ctype_inline.h: Same.
550         * config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.
551
552         * testsuite/22_locale/ctype_members_char.cc (main): Add tests.
553
554 2002-03-12  Benjamin Kosnik  <bkoz@redhat.com>
555
556         * include/bits/basic_string.tcc (string::_S_construct(_InIter,
557         _InIter, const _Alloc&, forward_iterator_tag): Check for null.
558         (string::basic_string(const _CharT* __s, const _Alloc& __a)): Same.
559         * testsuite/21_strings/ctor_copy_dtor.cc (test01): Re-enable, now
560         that memory limits are in place.
561         (test03): Add tests.
562
563 2002-03-11  Benjamin Kosnik  <bkoz@redhat.com>
564
565         * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Check for wctype.h.
566         * aclocal.m4: Regenerate.
567         * config.h.in: Regenerate.
568         * configure: Regenerate.
569         * include/c_std/std_cwctype.h: Guard.
570
571 2002-03-11  Chris Demetriou  <cgd@broadcom.com>
572
573         * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Enhance check for
574         whether GLIBCPP_CHECK_LINKER_FEATURES has been used.
575         * aclocal.m4: Regenerate.
576         * configure: Regenerate.
577
578 2002-03-11  Benjamin Kosnik  <bkoz@redhat.com>
579
580         * include/bits/stl_bvector.h: Fix warning.
581
582 2002-03-11  Richard Henderson  <rth@redhat.com>
583
584         * include/bits/stl_bvector.h (_Bit_type): New.  Use throughout.
585
586 2002-03-11  Phil Edwards  <pme@gcc.gnu.org>
587
588         * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-list-sourcefiles):
589         New function.  Build the list of tests to run in testsuite_files.
590         * testsuite/libstdc++-v3.dg/dg.exp:  Use it.
591
592 2002-03-11  Phil Edwards  <pme@gcc.gnu.org>
593
594         * testsuite/21_strings/capacity.cc:  Only explicitly instantiate on
595         platforms with no weak support.
596         * testsuite/27_io/ios_init.cc:  Likewise.
597
598 2002-03-10  Paolo Carlini  <pcarlini@unitus.it>
599
600         * include/bits/locale_facets.tcc (time_put::do_put):
601         Consider sizeof(char_type) in allocating the buffer.
602
603         * include/bits/locale_facets.tcc (collate::do_tranform):
604         Remove redundant variable.
605
606 2002-03-10  Ulrich Drepper  <drepper@redhat.com>
607             Paolo Carlini  <pcarlini@unitus.it>
608
609         * config/locale/generic/collate_members.cc
610         (collate<char,wchar_t>::_M_compare_helper): normalize
611         values returned by strcoll and wcscoll.
612         * config/locale/gnu/collate_members.cc
613         (collate<char,wchar_t>::_M_compare_helper): ditto
614         for __strcoll_l and __wcscoll_l.
615
616 2002-03-10  Anthony Green  <green@redhat.com>
617
618         * configure.in: Support cross builds to mingw32 target.
619         * configure: Rebuilt.
620
621 2002-03-09  Paolo Carlini  <pcarlini@unitus.it>
622
623         * include/bits/locale_facets.tcc (collate::do_transform):
624         Rewrite to fix problems with long transformed strings.
625
626 2002-03-08  Benjamin Kosnik  <bkoz@redhat.com>
627
628         * c_locale_generic.cc: Move to...
629         * generic/c_locale.cc
630         * c_locale_generic.h: Move to...
631         * generic/c_locale.h
632         * codecvt_specializations_generic.h: Move to...
633         * generic/codecvt_specializations.h
634         * collate_members_generic.cc: Move to...
635         * generic/collate_members.cc
636         * ctype_members_generic.cc: Move to...
637         * generic/ctype_members.cc
638         * messages_members_generic.cc: Move to...
639         * generic/messages_members.cc
640         * messages_members_generic.h: Move to...
641         * generic/messages_members.h
642         * moneypunct_members_generic.cc: Move to...
643         * generic/monetary_members.cc
644         * numpunct_members_generic.cc: Move to...
645         * generic/numeric_members.cc
646         * time_members_generic.cc: Move to...
647         * generic/time_members.cc
648         * c_locale_gnu.cc: Move to...
649         * gnu/c_locale.cc
650         * c_locale_gnu.h: Move to...
651         * gnu/c_locale.h
652         * collate_members_gnu.cc: Move to...
653         * gnu/collate_members.cc
654         * ctype_members_gnu.cc: Move to...
655         * gnu/ctype_members.cc
656         * messages_members_gnu.cc: Move to...
657         * gnu/messages_members.cc
658         * messages_members_gnu.h: Move to...
659         * gnu/messages_members.h
660         * moneypunct_members_gnu.cc: Move to...
661         * gnu/monetary_members.cc
662         * numpunct_members_gnu.cc: Move to...
663         * gnu/numeric_members.cc
664         * time_members_gnu.cc: Move to...
665         * gnu/time_members.cc
666         * c_locale_ieee_1003.1-200x.cc: Move to...
667         * ieee_1003.1-2001/c_locale.cc
668         * c_locale_ieee_1003.1-200x.h: Move to...
669         * ieee_1003.1-2001/c_locale.h
670         * codecvt_specializations_ieee_1003.1-200x.h: Move to...
671         * ieee_1003.1-2001/codecvt_specializations.h
672         * messages_members_ieee_1003.1-200x.cc: Move to...
673         * ieee_1003.1-2001/messages_members.cc
674         * messages_members_ieee_1003.1-200x.h: Move to...
675         * ieee_1003.1-2001/messages_members.h
676
677         * acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Make consistent.
678         * aclocal.m4: Regenerate.
679         * configure: Regenerate.
680         * src/Makefile.am (sources): Change to monetary and numeric.
681         * src/Makefile.in: Regenerate.
682         * docs/html/configopts.html: Update to ieee_1003.1-2001.
683
684 2002-03-08  scott snyder  <snyder@fnal.gov>
685
686         libstdc++/5875
687         * include/bits/locale_facets.tcc (num_put::_M_convert_float):
688         Allow one more digit of precision.
689         * testsuite/27_io/ostream_inserter_arith.cc: Test that we can
690         write a double and read back in the same value.
691
692 2002-03-08  Benjamin Kosnik  <bkoz@redhat.com>
693
694         * include/std/std_limits.h: Move static const data members out of
695         generic template, into base class __numeric_limits_base.
696         * src/limits.cc: Add definitions.
697         * config/linker-map.gnu: Add __numeric_limits_base.
698         * testsuite/18_support/numeric_limits.cc: Declare test in scope.
699
700 2002-03-07  Benjamin Kosnik  <bkoz@redhat.com>
701
702         * include/bits/stl_alloc.h: Add extern implicit allocator
703         instantiations.
704         * include/bits/basic_string.tcc: Tweak.
705         * include/bits/locale_facets.tcc: Remove default args. Add
706         has_facet, use_facet extern instantiations.
707         * src/stl-inst.cc: Add explicit instantiation.
708         * src/locale-inst.cc: Clean. Remove locale member template
709         instantiations.
710
711         * testsuite/22_locale/operators.cc (test02): Enable.
712
713 2002-03-06  Benjamin Kosnik  <bkoz@redhat.com>
714             Stephen M. Webb  <stephen.webb@bregmasoft.com>
715
716         * include/bits/stl_tree.h (_S_rb_tree_red): Make enum.
717         (_S_rb_tree_black): Make enum.
718         Clean. Format.
719         * include/bits/stl_bvector.h (__WORD_BIT): To _M_word_bit, enum.
720         * include/bits/stl_algo.h (__stl_chunk_size): _M_chunk_size, enum.
721         (__stl_threshold): _M_threshold, enum.
722         * src/stl-inst.cc: Same.
723         * config/linker-map.gnu: Remove.
724
725         * testsuite/23_containers/vector_bool.cc: New.
726
727 2002-03-06  Phil Edwards  <pme@gcc.gnu.org>
728
729         * docs/doxygen/user.cfg.in:  Also document deprecated entries.
730         * docs/html/Makefile:  Example rule to rebuild porting-howto.html.
731         * docs/html/17_intro/howto.html:  "gcc"->"GCC" changes, when
732         referring to the collection as a whole.  New section on which macros
733         can be redefined by the user.
734         * docs/html/19_diagnostics/howto.html:  Update note for concepts.
735         * docs/html/20_util/howto.html:  Update link to SGI.
736         * docs/html/faq/index.html:  Update snapshot versions.  New entry
737         on why g++ (but not gcc) must currently predefine certain macros.
738         * docs/html/faq/index.txt:  Regenerated.
739
740         * include/bits/basic_string.h (basic_string::_S_construct):  Fix
741         names in declaration.
742         (basic_string::compare):  These are no longer optional.
743         * include/bits/ostream.tcc:  Tweak closing brace placement.
744         * include/bits/stl_algo.h:  Lots of initial doxygen comment hooks.
745         * include/std/std_sstream.h:  Fix typo in comment.
746         * include/bits/locale_facets.tcc:  Remove unneeded header inclusion.
747         * src/locale.cc:  Likewise.
748
749 2002-03-06  Phil Edwards  <pme@gcc.gnu.org>
750
751         PR libstdc++/5734
752         * include/bits/stl_vector.h (vector::push_back()):  Guard with
753         _GLIBCPP_DEPRECATED.
754
755 2002-03-06  Phil Edwards  <pme@gcc.gnu.org>
756
757         * include/bits/c++config:  Fix misplaced leading blanks on first line.
758
759 2002-03-05  Benjamin Kosnik  <bkoz@redhat.com>
760
761         * docs/html/17_intro/RELEASE-NOTES: Fix usage.
762         * README (libmath): Make clear.
763
764 2002-03-05  Jakub Jelinek  <jakub@redhat.com>
765
766         * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Check for version
767         script globbing in ld.
768         * aclocal.m4: Rebuilt.
769         * configure: Rebuilt.
770
771 2002-03-05  Benjamin Kosnik  <bkoz@redhat.com>
772
773         * docs/html/17_intro/RELEASE-NOTES: Update.
774         * README: Format subdirectories.
775
776 2002-03-05  Paolo Carlini  <pcarlini@unitus.it>
777
778         libstdc++/5816
779         * include/bits/locale_facets.tcc
780         (num_get::_M_extract_float): Fix the parsing of __dec, since
781         the standard prescribes that if no grouping characters are
782         seen, no grouping check is applied.
783         * testsuite/22_locale/num_get_members_char.cc: Add test05
784         distilled from the PR.
785         * testsuite/22_locale/num_get_members_wchar_t.cc: Ditto.
786
787 2002-03-04  Craig Rodrigues  <rodrigc@gcc.gnu.org>
788
789         * docs/html/17_intro/porting-howto.xml: Refer to
790         http://www.oasis-open.org for docbookx.dtd.
791         * docs/html/17_intro/porting-howto.html: Regenerated.
792
793 2002-03-03  Phil Edwards  <pme@gcc.gnu.org>
794
795         PR libstdc++/3955
796         * include/std/std_sstream.h:  Remove trailing spaces.
797         (basic_stringbuf::_M_stringbuf_init):  Also check for ios_base::app.
798         * testsuite/27_io/stringbuf.cc (test05, test06):  New tests.
799
800 2002-03-02  Paolo Carlini  <pcarlini@unitus.it>
801
802         * testsuite/22_locale/num_get_members_char.cc (test04):
803         Use a named locale expecting grouping (de_DE).
804         * testsuite/22_locale/num_get_members_wchar_t.cc (test04):
805         Ditto.
806         * testsuite/27_io/ios_manip_basefield.cc (test01):
807         Extend coverage, uniform treatment of hexs and octs.
808
809 2002-02-28  Richard Henderson  <rth@redhat.com>
810
811         * config/linker-map.gnu: Export operator new with unsigned long,
812         and with std::nothrow_t.  Likewise operator delete.
813
814 2002-02-28  Paolo Carlini  <pcarlini@unitus.it>
815
816         * include/bits/locale_facets.tcc (num_get::_M_extract_int):
817         Admit grouping for octals and hexadecimals too.
818         * testsuite/22_locale/num_get_members_char.cc: Add test04.
819         (test01): Tweak "." -> "," in void* test.
820         * testsuite/22_locale/num_get_members_wchar_t.cc: Ditto.
821
822         * testsuite/27_io/ios_manip_basefield.cc: Remove static keyword.
823         * testsuite/27_io/ios_manip_fmtflags.cc: Remove two of them.
824
825 2002-02-27  Paolo Carlini  <pcarlini@unitus.it>
826
827         * testsuite/27_io/ios_manip_basefield.cc (test01):
828         Fix for 64 bit machines.
829
830 2002-02-26  Benjamin Kosnik  <bkoz@redhat.com>
831
832         libstdc++/3983
833         * include/bits/basic_ios.tcc (basic_ios::init): Set _M_fill to zero.
834         Adjust comment.
835         * include/bits/basic_ios.h (basic_ios::_M_fill): Make mutable.
836         (basic_ios::_M_fill_init): New.
837         (basic_ios::fill()): Delay dealing with _M_fill.
838         Adjust comment.
839         * ios.cc (ios_base::ios_base()): Initialize _M_callbacks, _M_words.
840         (ios_base::_M_call_callbacks): Adjust.
841         * testsuite/27_io/ios_init.cc (test02): Adjust testcase.
842
843 2002-02-26  Loren Rittle  <ljrittle@acm.org>
844
845         * include/Makefile.am (thread_target_headers): Unconditionally
846         stage and install gthr-posix.h.
847         (${target_builddir}/gthr-posix.h): New rule cloned off
848         ${target_builddir}/gthr-default.h.
849         (${target_builddir}/gthr-default.h): Support chained inclusion
850         of gthr support headers.
851         * include/Makefile.in: Rebuilt.
852
853 2002-02-26  Paolo Carlini  <pcarlini@unitus.it>
854
855         * include/bits/locale_facets.tcc (num_put::_M_widen_int):
856         Group all the integral types, not only decs.
857         * testsuite/27_io/ios_manip_basefield.cc (test01): Tweak existing
858         tests, add a few more.
859
860 2002-02-25  Benjamin Kosnik  <bkoz@redhat.com>
861
862         * src/ios.cc (ios_base::~ios_base): Tweak.
863         (ios_base::_M_call_callbacks): Deal with null __p.
864         (ios_base::ios_base): Set _M_callbacks.
865         * include/bits/basic_ios.tcc (basic_ios::init): Adjust comment.
866         * testsuite/27_io/ios_init.cc (test02): Fix.
867
868         * mkcheck.in (static_fail): Failed links go to output file.
869
870 2002-02-25  Phil Edwards  <pme@gcc.gnu.org>
871
872         * docs/html/faq/index.html:  Update.
873         * docs/html/faq/index.txt:  Regenerate.
874
875 2002-02-22  Phil Edwards  <pme@gcc.gnu.org>
876
877         * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS):  Fix comment.
878         * aclocal.m4:  Regenerate.
879         * docs/html/configopts.html:  Document --enable-symvers.
880         * config/linker-map.gnu:  Break libsupc++ symbols out to their own tag.
881
882 2002-02-22  Philipp Thomas  <pthomas@suse.de>
883
884         * include/backward/tempbuf.h: get_temporary_buffer and
885         return_temporary_buffer are in namespace std, not in __gnu_cxx.
886
887 2002-02-21  Benjamin Kosnik  <bkoz@redhat.com>
888
889         * configure.in (target_alias): Default to yes.
890         * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Add check for shared
891         libgcc to default case.
892
893 2002-02-20  Phil Edwards  <pme@gcc.gnu.org>
894
895         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES):  Also check version.
896         (GLIBCPP_ENABLE_SYMVERS):  Redo logic, use linker version.
897         * configure.in (GLIBCPP_ENABLE_SYMVERS):  Move later in the script.
898         * aclocal.m4:  Regenerate.
899         * configure:  Regenerate.
900         * config/linker-map.dummy:  New file.  Contains nothing useful.
901
902 2002-02-20  Benjamin Kosnik  <bkoz@redhat.com>
903
904         * testsuite/22_locale/money_put_members_char.cc: Fix.
905         * testsuite/22_locale/money_put_members_wchar_t.cc: Fix.
906
907         * testsuite/27_io/standard_manipulators.cc: New file.
908
909         * testsuite/27_io/ios_manip_basefield.cc: Check results, now failing.
910         * testsuite/27_io/ios_manip_fmtflags.cc: Use locale::classic().
911
912 2002-02-20  Danny Smith  <dannysmith@users.sourceforge.net>
913
914         * config/os/mingw32/bits/ctype_noninline.h
915         (ctype<char>::ctype): Remove default args from parm list.
916         * config/os/djgpp/bits/ctype_noninline.h: Same.
917
918 2002-02-19  Benjamin Kosnik  <bkoz@redhat.com>
919
920         * include/std/std_iomanip.h: Inline, tweaks.
921         * config/linker-map.gnu: Remove hacks.
922
923         * testsuite/21_strings/capacity.cc: Add explicit instantiations.
924         * testsuite/27_io/ios_init.cc: Same.
925         * testsuite/22_locale/money_get_members_char.cc (test07): Fix.
926         * testsuite/22_locale/money_get_members_wchar_t.cc (test07): Same.
927
928 2002-02-19  Benjamin Kosnik  <bkoz@redhat.com>
929
930         * config/linker-map.gnu: Export global vtable, typeinfo, guard
931         variable, and thunk info as per CXXABI docs.
932
933 2002-02-19  Loren Rittle <ljrittle@acm.org>
934
935         * include/Makefile.am: Use CONFIG_HEADER instead of ad hoc names.
936         * include/Makefile.in: Rebuilt.
937
938 2002-02-18  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
939
940         * testsuite/22_locale/collate_byname.cc (test01): Replace size4
941           with size3 for the string collations of str5.
942
943 2002-02-18  Paolo Carlini  <pcarlini@unitus.it>
944
945         libstdc++/5708
946         * include/bits/locale_facets.tcc (money_put::do_put):
947         For the space field use __fill instead of ' ', uniformly.
948         * testsuite/22_locale/money_put_members_char.cc:
949         Add test05 distilled from PR.
950         (test01-02-03): Trim some '*' to ' '.
951         * testsuite/22_locale/money_put_members_wchar_t.cc: Ditto.
952
953 2002-02-18  Loren Rittle <ljrittle@acm.org>
954
955         libstdc++/5697
956         * include/Makefile.am (thread_builddir): Remove (map all
957         existing uses to target_builddir).
958         (thread_headers): Rename to...
959         (thread_target_headers): ...this.
960         (stamp-thread): Remove.
961         (stamp-target): Correctly state the position as built.
962         Update all dependencies to match the new reality.  Remove all
963         dependency calculations on directories.
964         * include/Makefile.in: Rebuilt.
965
966 2002-02-16   Benjamin Kosnik  <bkoz@redhat.com>
967
968         * include/bits/locale_facets.tcc: Add pragma GCC system_header.
969         * include/bits/fstream.tcc: Same.
970         * include/bits/sstream.tcc: Same.
971         * include/bits/ostream.tcc: Same.
972         * include/bits/istream.tcc: Same.
973         * include/bits/streambuf.tcc: Same.
974         * include/bits/basic_ios.tcc: Same.
975         * include/bits/basic_string.tcc: Same.
976
977 2002-02-15  Benjamin Kosnik  <bkoz@redhat.com>
978
979         * include/std/std_iosfwd.h: Don't guard typedefs with
980         _GLIBCPP_USE_WCHAR_T
981         * include/bits/stringfwd.h: Same.
982
983 2002-02-15  Benjamin Kosnik  <bkoz@redhat.com>
984
985         * src/locale.cc (moneypunct_byname): Remove definitions.
986         * include/std/std_streambuf.h (streambuf::operator=): Return.
987
988 2002-02-15  Benjamin Kosnik  <bkoz@redhat.com>
989
990         Tune for size.
991         * src/string-inst.cc (string::_Rep::_S_terminal): Remove redundant
992         explicit instantiation.
993         (string::_Rep::_S_max_size): Same.
994         * include/bits/basic_string.tcc: Add extern explicit
995         instantiations for string, wstring.
996         * include/bits/basic_ios.tcc: Add extern explicit instantiations
997         for ios, wios.
998         * include/bits/streambuf.tcc: Same, for streambuf, wstreambuf.
999         * include/bits/istream.tcc: Same, for istream, wistream.
1000         * include/bits/ostream.tcc: Same for ostream, wostream, iostream,
1001         wiostream.
1002         * include/bits/sstream.tcc: Same, for stringbuf, wstringbuf,
1003         istringstream, wistringstream, ostringstream, wostringstream,
1004         stringstream, wstringstream.
1005         * include/bits/fstream.tcc: Same, for filebuf, wfilebuf, ifstream,
1006         wifstream, ofstream, wofstream, fstream, wfstream.
1007         * src/misc-inst.cc: Correct comments.
1008         Add iomanip instantiations for wide streams.
1009         * include/std/std_iomanip.h: Same.
1010         * include/bits/locale_facets.tcc: Same.
1011
1012         * include/std/std_streambuf.h: Correct
1013         _GLIBCPP_FULLY_COMPLIANT_HEADERS guard.
1014         * include/std/std_sstream.h: Same.
1015         * include/std/std_ostream.h: Same.
1016         * include/std/std_istream.h: Same.
1017         * include/std/std_fstream.h: Same.
1018
1019         * include/std/std_streambuf.h: Add definitions for private copy
1020         ctor and assignment operator.
1021         * include/std/std_istream.h: Remove declared but undefined copy
1022         ctor and assignment operator. This is taken care of in ios_base,
1023         so adding it in the derived class as well is superfluous.
1024         * include/std/std_ostream.h: Same.
1025
1026         * include/bits/basic_ios.h (basic_ios::clear): Don't inline.
1027         * include/bits/basic_ios.tcc (basic_ios::clear): Move definition here.
1028
1029 2002-02-14  Benjamin Kosnik  <bkoz@redhat.com>
1030
1031         * config/linker-map.gnu: Change tag from GCC_3.1 to GLIBCPP_3.1.
1032         Add typeinfo bits. Smooth.
1033         * aclocal.m4: Regenerate.
1034         * configure: Same.
1035         * src/Makefile.in: Same.
1036
1037 2001-02-14  Joel Sherrill  <joel@OARcorp.com>
1038
1039         * config/cpu/m68k/bits/atomicity.h: Corrected for RTEMS targets
1040         which do not have a CAS instruction.
1041
1042 2002-02-14  Phil Edwards  <pme@gcc.gnu.org>
1043
1044         * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS):  New macro, initial revision.
1045         * configure.in:  Call it.
1046         * config/linker-map.gnu:  New file, initial incomplete revision.
1047         * src/Makefile.am:  Optionally pass version script to the linker.
1048         * aclocal.m4:  Regenerate.
1049         * configure:  Regenerate.
1050         * src/Makefile.in:  Regenerate.
1051
1052 2002-02-13  Benjamin Kosnik  <bkoz@redhat.com>
1053
1054         * src/localename.cc: Remove stdexcept include.
1055         * src/locale-inst.cc: Same.
1056         * src/locale.cc: Same.
1057         * src/functexcept.cc: Remove string includes.
1058         * include/std/std_bitset.h: Remove stdexcept include.
1059         * testsuite/23_containers/bitset_members.cc: Add stdexcept.
1060         * testsuite/23_containers/bitset_ctor.cc: Same.
1061
1062 2002-02-11  Benjamin Kosnik  <bkoz@redhat.com>
1063
1064         * include/bits/stl_algo (__stl_threshold): Declare external.
1065         (__stl_chunk_size): Same.
1066         * include/bits/stl_bvector.h (__WORD_BIT): Same.
1067         * include/bits/stl_tree.h (_S_rb_tree_red): Same.
1068         (_S_rb_tree_black): Same.
1069         * src/stl-inst.cc (__stl_threshold): Define.
1070         (__stl_chunk_size): Same.
1071         (__WORD_BIT): Same.
1072         (_S_rb_tree_red): Same.
1073         (_S_rb_tree_black): Same.
1074
1075         * config/io/basic_file_libio.h (__basic_file): Add declarations.
1076         * include/bits/basic_file.h: Remove.
1077         * config/io/c_io_stdio.h: Remove _GLIBCPP_BASIC_FILE_ENCAPSULATION
1078         Declare generic types, specialization.
1079         * config/io/basic_file_stdio.cc: Definitions.
1080         * config/io/c_io_libio.h: Remove _GLIBCPP_BASIC_FILE_INHERITANCE.
1081         Declare generic types.
1082         * include/Makefile.am (bits_headers): Remove basic_file.h.
1083         (extra_target_headers): Change basic_file_model.h to basic_file.h.
1084         (stamp-target): Same.
1085
1086         * include/bits/stl_alloc.h: Tweaks.
1087         * include/bits/localefwd.h: Same.
1088
1089 2002-02-11  Aaron W LaFramboise  <AWLaFramboise@aol.com>
1090
1091         * include/bits/locale_facets.tcc (collate::do_hash): Fix.
1092         * testsuite/22_locale/collate_members_char.cc (test03): New test.
1093         * testsuite/22_locale/collate_members_wchar_t.cc (test03): Same.
1094
1095 2002-02-10  Phil Edwards  <pme@gcc.gnu.org>
1096
1097         * include/bits/stl_algo.h (transform (both signatures), generate_n):
1098         Use __typeof__ in concept checks.
1099
1100 2002-02-10  Jonathan Wakely  <cow@compsoc.man.ac.uk>
1101
1102         * include/bits/stl_algo.h (__median, for_each, find, find_if,
1103         adjacent_find, count, count_if, search, search_n, swap_ranges,
1104         transform, replace, replace_if, replace_copy, replace_copy_if,
1105         generate, generate_n, remove_copy, remove_copy_if, remove, remove_if,
1106         unique, unique_copy, reverse, reverse_copy):  Doxygenate.
1107
1108 2002-02-08  Benjamin Kosnik  <bkoz@redhat.com>
1109
1110         * include/bits/locale_facets.h
1111         (numpunct<_CharT>::_M_initialize_numpunct): Remove definition.
1112         (__timepunct<_CharT>::_M_initialize_timepunct): Same.
1113         (__timepunct<_CharT>::_M_put_helper): Same.
1114         (moneypunct<_CharT, _Intl>::_M_initialize_moneypunct): Same.
1115
1116         * include/bits/fstream.tcc (filebuf::underflow): Remove
1117         __codecvt_type typedef.
1118         (filebuf::_M_convert_to_external): Same.
1119
1120 2002-02-08  Phil Edwards  <pme@gcc.gnu.org>
1121
1122         * docs/doxygen/TODO:  Update.
1123         * docs/doxygen/doxygroups.cc:  Tweak __gnu_cxx description.
1124         * docs/doxygen/mainpage.html:  Add TODO list link.
1125         * docs/doxygen/user.cfg.in:  Add @doctodo hook.
1126         * docs/doxygen/tables.html:  New file, emoty structure only.
1127
1128         * include/bits/stl_iterator.h:  Doxygenate just about everything.
1129         * include/bits/stl_iterator_base_funcs.h:  Ditto, clean up spaces.
1130         * include/bits/stl_iterator_base_types.h:  Add notes.
1131
1132 2002-02-07  Stephan Buys  <sbproxy@icon.co.za>
1133
1134         * include/bits/stl_map.h:  Tweak doxygen markup.
1135         * include/bits/stl_multimap.h:  Doxygenate and remove extra spaces.
1136         * include/bits/stl_vector.h:  Likewise.
1137
1138 2002-02-07  Benjamin Kosnik  <bkoz@redhat.com>
1139
1140         libstdc++/5286
1141         libstdc++/3860
1142         * include/std/std_fstream.h (filebuf::__file_type): Change to
1143         __basic_file<char>.
1144         (filebuf::_M_convert_to_external): Declare.
1145         * include/bits/fstream.tcc (filebuf::_M_convert_to_external): Define
1146         codecvt bits for wide streams.
1147         (filebuf::_M_really_overflow): Use it.
1148         (filebuf::underflow): Use codecvt.
1149         * config/locale/codecvt_specializations_ieee_1003.1-200x.h:
1150         (codecvt<__enc_traits>::do_out): Deal with partial.
1151         (codecvt<__enc_traits>::do_encoding): Return something useful.
1152         * src/codecvt.cc (codecvt<wchar_t>::do_encoding): Return sizeof
1153         wchar_t.
1154         * testsuite/22_locale/codecvt_members_unicode_char.cc (test01):
1155         Change expected encoding output.
1156         (test02): Same.
1157         * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test01): Same.
1158         (test02): Same.
1159
1160 2002-02-07  Benjamin Kosnik  <bkoz@redhat.com>
1161             Wolfgang Bangerth  <wolfgang.bangerth@iwr.uni-heidelberg.de>
1162
1163         * include/bits/basic_ios.tcc (basic_ios::narrow): Add default value.
1164         (basic_ios::widen): Same.
1165
1166 2002-02-07  Paolo Carlini  <pcarlini@unitus.it>
1167
1168         * testsuite/22_locale/money_get_members_char.cc:
1169         Add comment, tidy up.
1170         (test01): more "en_HK" tests (without showbase).
1171         * testsuite/22_locale/money_get_members_wchar_t.cc: Ditto.
1172
1173 2002-02-06  Loren Rittle <ljrittle@acm.org>
1174
1175         * config/locale/c_locale_generic.cc: Do not trust
1176         _GLIBCPP_HAVE_STRTOF or _GLIBCPP_HAVE_STRTOLD as
1177         set by configure.
1178
1179 2002-02-06  Loren Rittle <ljrittle@acm.org>
1180
1181         * acinclude.m4: Add C++ linkage check for strtof.
1182         * aclocal.m4: Rebuilt.
1183         * config.h.in: Rebuilt.
1184         * configure: Rebuilt.
1185         * config/locale/c_locale_generic.cc: Conditionally include
1186         <ieeefp.h>.  Improve handling and error checking of float
1187         and long double input for non-C99 configurations.
1188
1189 2002-02-06  Paolo Carlini  <pcarlini@unitus.it>
1190
1191         * include/bits/locale_facets.tcc (money_get::do_get(string)):
1192         In case money_base::symbol deal properly with multi-char sign
1193         for patterns {X,Y,Z,symbol} and {X,Y,symbol,none}.
1194         * testsuite/22_locale/money_get_members_char.cc: Add test07.
1195         * testsuite/22_locale/money_get_members_wchar_t.cc: Add test07.
1196
1197 2002-02-05  Paolo Carlini  <pcarlini@unitus.it>
1198
1199         * include/bits/locale_facets.tcc (money_get::do_get(string)):
1200         First construct a tentative returned string, then, only if the
1201         parsing succeeds, copy it into the string passed by reference.
1202         * testsuite/22_locale/money_get_members_char.cc: Add test06.
1203         * testsuite/22_locale/money_get_members_wchar_t.cc: Add test06.
1204
1205 2002-02-04  Phil Edwards  <pme@gcc.gnu.org>
1206
1207         * docs/doxygen/TODO:  Impl-defined behavior now documented...
1208         * docs/html/17_intro/howto.html:  ...here.
1209         * docs/doxygen/mainpage.doxy:  Remove, rename...
1210         * docs/doxygen/mainpage.html:  ...to this.  Tweak HTML, add license.
1211         * docs/doxygen/style.css:  Add small text.
1212         * docs/doxygen/run_doxygen:  Adjust for new mainpage.
1213         * docs/doxygen/user.cfg.in:  Likewise.
1214
1215 2002-02-04  Stephan Buys  <sbproxy@icon.co.za>
1216
1217         * include/bits/stl_map.h:  Initial doxygen markup.
1218         * include/std/std_fstream.h:  Initial doxygen markup.
1219
1220 2002-02-04  Paolo Carlini  <pcarlini@unitus.it>
1221
1222         libstdc++/5579
1223         * include/bits/locale_facets.tcc (money_get::do_get(string)):
1224         Deal correctly with !(__io.flags() & ios_base::showbase)
1225         for case money_base::symbol.
1226         * testsuite/22_locale/money_get_members_char.cc: Add test05.
1227         * testsuite/22_locale/money_get_members_wchar_t.cc: Add test05.
1228
1229 2002-02-02  Paolo Carlini  <pcarlini@unitus.it>
1230
1231         * testsuite/22_locale/operators.cc
1232         (gnu_collate::do_compare()): Add return statement to
1233         suppress "no return statement" warning.
1234
1235 2002-02-01  Paolo Carlini  <pcarlini@unitus.it>
1236
1237         * testsuite/27_io/ostream_manip.cc: Enable test02.
1238
1239 2002-02-01  Phil Edwards  <pme@gcc.gnu.org>
1240
1241         * docs/html/documentation.html:  Update for 3.0.96.
1242         * docs/html/faq/index.html:  Update for 3.0.96.
1243         * docs/html/faq/index.txt:  Regenerated.
1244         * docs/doxygen/TODO:  Update notes.
1245         * docs/html/17_intro/howto.html:  Initial impl-specific listing.
1246
1247 2002-01-31  Benjamin Kosnik  <bkoz@redhat.com>
1248
1249         * config/locale/codecvt_specializations_ieee_1003.1-200x.h:
1250         Initialize all data members in copy ctor. Make ctors explicit.
1251         (__enc_traits::__enc_traits()): Default ctor does nothing.
1252         (__enc_traits::_M_init): Guard against multiple iconv_opens.
1253         * include/std/std_sstream.h (basic_stringbuf): Make data members
1254         protected.
1255         * include/std/std_fstream.h (basic_filebuf): Same.
1256         * include/std/std_streambuf.h: Tweak.
1257         * include/bits/streambuf.tcc: Same.
1258         * include/bits/sstream.tcc: Same.
1259         * include/bits/fstream.tcc: Same.
1260
1261 2002-01-31  Loren Rittle <ljrittle@acm.org>
1262
1263         * testsuite/22_locale/codecvt_members_char_char.cc: Do not
1264         allow NULL argument to be passed to setenv().
1265         * testsuite/22_locale/codecvt_members_wchar_t_char.cc: Likewise.
1266         * testsuite/22_locale/collate_members_char.cc: Likewise.
1267         * testsuite/22_locale/collate_members_wchar_t.cc: Likewise.
1268         * testsuite/22_locale/ctype_members_char.cc: Likewise.
1269         * testsuite/22_locale/ctype_members_wchar_t.cc: Likewise.
1270         * testsuite/22_locale/messages_members_char.cc: Likewise.
1271         * testsuite/22_locale/money_get_members_char.cc: Likewise.
1272         * testsuite/22_locale/money_get_members_wchar_t.cc: Likewise.
1273         * testsuite/22_locale/money_put_members_char.cc: Likewise.
1274         * testsuite/22_locale/money_put_members_wchar_t.cc: Likewise.
1275         * testsuite/22_locale/moneypunct_members_char.cc: Likewise.
1276         * testsuite/22_locale/moneypunct_members_wchar_t.cc: Likewise.
1277         * testsuite/22_locale/num_get_members_char.cc: Likewise.
1278         * testsuite/22_locale/num_get_members_wchar_t.cc: Likewise.
1279         * testsuite/22_locale/num_put_members_char.cc: Likewise.
1280         * testsuite/22_locale/num_put_members_wchar_t.cc: Likewise.
1281         * testsuite/22_locale/numpunct_members_char.cc: Likewise.
1282         * testsuite/22_locale/numpunct_members_wchar_t.cc: Likewise.
1283         * testsuite/22_locale/time_get_members_char.cc: Likewise.
1284         * testsuite/22_locale/time_get_members_wchar_t.cc: Likewise.
1285         * testsuite/22_locale/time_put_members_char.cc: Likewise.
1286         * testsuite/22_locale/time_put_members_wchar_t.cc: Likewise.
1287
1288 2002-01-30  Benjamin Kosnik  <bkoz@redhat.com>
1289
1290         * config/locale/c_locale_gnu.cc: Same errno fixes as generic.
1291
1292         * ChangeLog-2001: Fix spelling errors...
1293         * docs/html/17_intro/RELEASE-NOTES: Update.
1294         * docs/html/17_intro/TODO: Update.
1295         * README (file): Update.
1296
1297 2002-01-30  Loren Rittle <ljrittle@acm.org>
1298
1299         * config/locale/c_locale_generic.cc: Check errno for ERANGE
1300         instead of non-zero to aid portability.
1301
1302 2002-01-30  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
1303
1304         * docs/html/22_locale/messages.html: Fix example code.
1305
1306 2002-01-30  Richard Henderson  <rth@redhat.com>
1307
1308         * testsuite/27_io/ostream_inserter_arith.cc (test03_check): Break
1309         out from test03 and templatize.
1310         (test03): Use it.
1311
1312 2002-01-30  Paolo Carlini  <pcarlini@unitus.it>
1313
1314         * config/locale/numpunct_members_gnu.cc
1315         (numpunct<char, wchar_t>::_M_initialize_numpunct()):
1316         Fix initialization of _M_grouping for locales which have
1317         _M_thousands_sep == '\0'(L'\0', respectively).
1318         * testsuite/22_locale/numpunct_byname.cc (test02): Add test.
1319
1320 2002-01-30  Paolo Carlini  <pcarlini@unitus.it>
1321
1322         * testsuite/27_io/ostream_inserter_arith.cc (test03):
1323         Better fix for 32/64 bit architectures, avoiding the
1324         implicit assumption that CHAR_BIT == 8.
1325
1326 2002-01-28  Phil Edwards  <pme@gcc.gnu.org>
1327
1328         * Makefile.am (doxygen, doxygen-maint, doxygen-man):  Tweak targets.
1329         * Makefile.in:  Regenerate.
1330
1331         * docs/doxygen/run_doxygen:  Update, mostly for man pages.
1332         * docs/doxygen/Intro.3:  Update.
1333         * docs/doxygen/TODO:  Update.
1334         * docs/doxygen/doxygroups.cc:  Add namespace hook for __gnu_cxx.
1335         * docs/doxygen/mainpage.doxy:  Update.
1336         * docs/doxygen/user.cfg.in:  Update for header rename.  Also
1337         regenerate comments and variables with 1.2.12.
1338         * docs/doxygen/maint.cfg.in:  Remove file.
1339
1340         * include/bits/stl_relops.h:  Doxygenate.
1341         * include/bits/stl_tempbuf.h (std::_Temporary_buffer):  Likewise.
1342
1343         * include/c_std/std_cassert.h, include/c_std/std_cctype.h,
1344         include/c_std/std_cerrno.h, include/c_std/std_cfloat.h,
1345         include/c_std/std_ciso646.h, include/c_std/std_climits.h,
1346         include/c_std/std_clocale.h, include/c_std/std_cmath.h,
1347         include/c_std/std_csetjmp.h, include/c_std/std_csignal.h,
1348         include/c_std/std_cstdarg.h, include/c_std/std_cstddef.h,
1349         include/c_std/std_cstdio.h, include/c_std/std_cstdlib.h,
1350         include/c_std/std_cstring.h, include/c_std/std_ctime.h,
1351         include/c_std/std_cwchar.h, include/c_std/std_cwctype.h,
1352         include/ext/algorithm, include/ext/functional, include/ext/hash_map,
1353         include/ext/hash_set, include/ext/iterator, include/ext/memory,
1354         include/ext/numeric, include/ext/rb_tree, include/ext/rope,
1355         include/ext/ropeimpl.h, include/ext/slist, include/ext/stl_hash_fun.h,
1356         include/ext/stl_hashtable.h, include/ext/stl_rope.h,
1357         include/std/std_algorithm.h, include/std/std_bitset.h,
1358         include/std/std_complex.h, include/std/std_deque.h,
1359         include/std/std_fstream.h, include/std/std_functional.h,
1360         include/std/std_iomanip.h, include/std/std_ios.h,
1361         include/std/std_iosfwd.h, include/std/std_iostream.h,
1362         include/std/std_istream.h, include/std/std_iterator.h,
1363         include/std/std_limits.h, include/std/std_list.h,
1364         include/std/std_locale.h, include/std/std_map.h,
1365         include/std/std_memory.h, include/std/std_numeric.h,
1366         include/std/std_ostream.h, include/std/std_queue.h,
1367         include/std/std_set.h, include/std/std_sstream.h,
1368         include/std/std_stack.h, include/std/std_stdexcept.h,
1369         include/std/std_streambuf.h, include/std/std_string.h,
1370         include/std/std_utility.h, include/std/std_valarray.h,
1371         include/std/std_vector.h:  Add/correct @file doxygen hook.
1372
1373         * include/ext/memory:  Doxygenate most of rest of file.
1374         * libsupc++/exception:  Doxygen output formatting.
1375         * libsupc++/new:  Say which header it is.
1376
1377         * testsuite/lib/libstdc++-v3-dg.exp:  Fix spacing.
1378         * docs/html/19_diagnostics/howto.html:  Describe concept-checks switch.
1379         * docs/html/23_containers/howto.html:  Describe O(n) list::size().
1380         * docs/html/27_io/howto.html:  Also link to Langer and Kreft text.
1381
1382 2002-01-28  Paolo Carlini  <pcarlini@unitus.it>
1383             Charles Leggett <CGLeggett@lbl.gov>
1384
1385         * testsuite/27_io/filebuf_members.cc (test_05): Add test.
1386
1387 2002-01-28  Paolo Carlini  <pcarlini@unitus.it>
1388
1389         * testsuite/27_io/ostream_inserter_arith.cc (test03):
1390         Fix to deal correctly with both 32 bit and 64 bit architectures
1391
1392 2002-01-25  Loren Rittle <ljrittle@acm.org>
1393
1394         * testsuite/thread/pthread1.cc: Use one condition variable
1395         per predicate instead of tricky use of one condition variable.
1396
1397 2002-01-25  Benjamin Kosnik  <bkoz@redhat.com>
1398
1399         * include/bits/fstream.tcc (filebuf::close()): Fix close for input
1400         streams.
1401         (filebuf::_M_really_overflow): Match indeterminate and sync calls.
1402         * testsuite/27_io/filebuf.cc: Compile only.
1403         * testsuite/27_io/filebuf_members.cc: Move tests to here.
1404         * testsuite/27_io/filebuf_virtuals.cc: And here.
1405         Revert sungetc, sync changes for expected values.
1406         * testsuite/27_io/filebuf-*: Move to...
1407         * testsuite/27_io/filebuf_virtuals-*: ...here.
1408         * testsuite/27_io/istream.cc: Compile only, activate.
1409         * testsuite/27_io/ostream.cc: Same.
1410         * testsuite/27_io/iostream.cc: New.
1411         * testsuite/27_io/iostream_members.cc: New.
1412
1413 2002-01-25  David Billinghurst <David.Billinghurst@riotinto.com>
1414
1415         * testsuite/thread/pthread1.cc: Enable on cygwin.
1416         * testsuite/thread/pthread2.cc: Likewise.
1417         * testsuite/thread/pthread3.cc: Likewise.
1418         * testsuite/thread/pthread4.cc: Likewise.
1419         * testsuite/thread/pthread5.cc: Likewise.
1420         * testsuite/thread/pthread6.cc: Likewise.
1421
1422 2002-01-24  Benjamin Kosnik  <bkoz@redhat.com>
1423
1424         * testsuite/27_io/ostream_inserter_char.cc (test07): New.
1425
1426 2002-01-24  Benjamin Kosnik  <bkoz@redhat.com>
1427
1428         * include/bits/basic_ios.h (basic_ios::_M_check_facet): Make
1429         const, tweak.
1430         (basic_ios::fill(char_type)): Use fill().
1431         * include/bits/basic_ios.tcc (basic_ios::widen): Use _M_check_facet.
1432         (basic_ios::narrow): Same.
1433         (basic_ios::_M_cache_facets): Explicitly set cached facets to zero
1434         if they are invalid.
1435         (basic_ios::init): Comment.
1436         * testsuite/27_io/ios_init.cc (test02): New.
1437
1438 2002-01-24  Phil Edwards  <pme@gcc.gnu.org>
1439
1440         * include/bits/stl_tempbuf.h (_Temporary_buffer):  Add doxygen hook.
1441         * include/bits/stl_algo.h:  Include stl_tempbuf.h.
1442         * include/ext/memory:  Do not include stl_tempbuf.h.
1443         (temporary_buffer):  Add doxygen hook.
1444         (__get_temporary_buffer, get_temporary_buffer,
1445         return_temporary_buffer):  Move back to std:: header...
1446         * include/std/std_memory.h:  ...here.  Do not include stl_tempbuf.h.
1447         * include/ext/rope:  Do not include stl_tempbuf.h.
1448         * include/ext/stl_hashtable.h:  Likewise.
1449         * include/std/std_algorithm.h:  Likewise.
1450         * testsuite/20_util/temporary_buffer.cc:  New file.
1451
1452 2002-01-24  andrew@andypo.net
1453             (tweaks, test and commit by Loren J. Rittle  <ljrittle@acm.org>)
1454
1455         libstdc++/5432
1456         * include/bits/ios_base.h: Use _Atomic_word for reference counts.
1457         * include/bits/localefwd.h: Likewise.
1458         Also use for std::locale::id::_S_highwater.
1459         * src/ios.cc (ios_base::xalloc): Use _Atomic_word.
1460         * src/locale.cc: Support new usage of _Atomic_word.
1461         (std::locale::classic): Guard entire function against reentry.
1462         * src/localename.cc: Support new usage of _Atomic_word.
1463
1464 2002-01-24   Benjamin Kosnik  <bkoz@redhat.com>
1465
1466         * testsuite/22_locale/num_put_members_wchar_t.cc (test03): Use
1467         _GLIBCPP_HAVE_SETENV.
1468         * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test02): Same.
1469         * testsuite/22_locale/collate_members_char.cc (test02): Same.
1470         * testsuite/22_locale/ctype_members_char.cc (test03): Same.
1471         * testsuite/22_locale/ctype_members_wchar_t.cc (test03): Same.
1472         * testsuite/22_locale/messages_members_char.cc (test02): Same.
1473         * testsuite/22_locale/moneypunct_members_char.cc (test02): Same.
1474         * testsuite/22_locale/moneypunct_members_wchar_t.cc (test02): Same.
1475         * testsuite/22_locale/money_put_members_char.cc (test04): Same.
1476         * testsuite/22_locale/money_put_members_wchar_t.cc (test04): Same.
1477         * testsuite/22_locale/num_get_members_char.cc (test03): Same.
1478         * testsuite/22_locale/num_get_members_wchar_t.cc (test03): Same.
1479         * testsuite/22_locale/numpunct_members_char.cc (test02): Same.
1480         * testsuite/22_locale/numpunct_members_wchar_t.cc (test02): Same.
1481         * testsuite/22_locale/time_get_members_char.cc (test07): Same.
1482         * testsuite/22_locale/time_get_members_wchar_t.cc (test07): Same.
1483         * testsuite/22_locale/time_put_members_char.cc (test03): Same.
1484         * testsuite/22_locale/time_put_members_wchar_t.cc (test03): Same.
1485         * testsuite/22_locale/num_put_members_char.cc (test03): Same.
1486         * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Check for setenv.
1487         * aclocal.m4: Regenerate.
1488         * configure: Regenerate.
1489         * config.h.in: Regenerate.
1490
1491 2002-01-23  Loren Rittle <ljrittle@acm.org>
1492
1493         * testsuite/thread/pthread1.cc: New test.
1494         * testsuite/thread/pthread2.cc: New test adapted from libstdc++/5347.
1495         * testsuite/thread/pthread3.cc: Likewise.
1496         * testsuite/thread/pthread4.cc: New test adapted from
1497         http://gcc.gnu.org/ml/gcc-bugs/2002-01/msg00679.html
1498         * testsuite/thread/pthread5.cc: New test adapted from libstdc++/5464.
1499         * testsuite/thread/pthread6.cc: New test adapted from libstdc++/5444.
1500
1501 2002-01-23  Richard Henderson  <rth@redhat.com>
1502
1503         PR libstdc++/5198
1504         * config/cpu/m68k/bits/atomicity.h (__exchange_and_add): Only use
1505         CAS on the cpu variants that support it.  Add versions that use
1506         TAS and that disable interrupts.
1507         (__atomic_add): Use __exchange_and_add to guarantee atomicity.
1508
1509 2002-01-23  Matt Kraai  <kraai@alumni.cmu.edu>
1510
1511         * include/bits/locale_facets.tcc: Remove old comments.
1512
1513 2002-01-23  Andreas Tobler  <toa@pop.agri.ch>
1514
1515         * include/bits/locale_facets.tcc (__convert_to_v): Change template
1516         parameter to _Tv.
1517         (__convert_from_v): Same.
1518
1519 2002-01-23  Benjamin Kosnik  <bkoz@redhat.com>
1520
1521         * include/bits/locale_facets.h (num_get::_M_extract_int): Change
1522         prototype.
1523         * include/bits/locale_facets.tcc (num_get::_M_extract_int): Remove
1524         __max_digits checks, adjust arguments.
1525         (num_get::do_get(*)): Changeup.
1526
1527 2002-01-23  Loren Rittle <ljrittle@acm.org>
1528
1529         * config/locale/c_locale_generic.cc: Fix typename usage.
1530
1531 2002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
1532
1533         * config/locale/c_locale_generic.cc: Fix.
1534
1535 2002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
1536
1537         * docs/html/22_locale/messages.html: Remove angle brackets.
1538         * docs/html/17_intro/TODO: Add.
1539
1540 2002-01-22  Paolo Carlini  <pcarlini@unitus.it>
1541
1542         * testsuite/27_io/ios_manip_basefield.cc: Enable test02.
1543         * testsuite/27_io/ostream_inserter_arith.cc: Enable test03.
1544         * testsuite/27_io/ostream_inserter_char.cc: Enable test01.
1545         * testsuite/27_io/ostream_inserter_other.cc: Enable test04.
1546
1547 2002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
1548
1549         Audit for LANG independence.
1550         * include/bits/localefwd.h: Tweaks.
1551         * include/bits/locale_facets.tcc (money_get::do_get(long double)):
1552         Use __convert_to_v.
1553         (time_get::do_get_year): Same.
1554         (__convert_from_v): Add.
1555         (num_put::_M_convert_float): Use.
1556         (num_put::_M_convert_int): Same.
1557         (money_put::do_put): Same.
1558
1559         * src/locale-inst.cc: Add instantiations for __convert_from_v.
1560         * config/locale/time_members_gnu.cc: Cleanup setlocale usage.
1561         * config/locale/time_members_generic.cc:
1562         * config/locale/messages_members_gnu.cc: Same.
1563         * config/locale/messages_members_gnu.h: Same.
1564
1565         * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test02): New.
1566         * testsuite/22_locale/codecvt_members_char_char.cc (test02): New.
1567         * testsuite/22_locale/collate_members_wchar_t.cc (test02): New.
1568         * testsuite/22_locale/collate_members_char.cc (test02): New.
1569         * testsuite/22_locale/ctype_members_wchar_t.cc (test03): New.
1570         * testsuite/22_locale/ctype_members_char.cc (test03): New.
1571         * testsuite/22_locale/messages_members_char.cc (test02): New.
1572         * testsuite/22_locale/moneypunct_members_wchar_t.cc (test02): New.
1573         * testsuite/22_locale/moneypunct_members_char.cc (test02): New.
1574         * testsuite/22_locale/money_get_members_wchar_t.cc (test04): New.
1575         * testsuite/22_locale/money_get_members_char.cc (test04): New.
1576         * testsuite/22_locale/money_put_members_wchar_t.cc (test04): New.
1577         * testsuite/22_locale/money_put_members_char.cc (test04): New.
1578         * testsuite/22_locale/numpunct_members_wchar_t.cc (test02): New.
1579         * testsuite/22_locale/numpunct_members_char.cc (test02): New.
1580         * testsuite/22_locale/time_put_members_wchar_t.cc (test03): New.
1581         * testsuite/22_locale/time_put_members_char.cc (test03): New.
1582         * testsuite/22_locale/time_get_members_wchar_t.cc (test07): New.
1583         * testsuite/22_locale/time_get_members_char.cc (test07): New.
1584         * testsuite/22_locale/num_get_members_wchar_t.cc (test03): New.
1585         * testsuite/22_locale/num_get_members_char.cc (test03): New.
1586         * testsuite/22_locale/num_put_members_wchar_t.cc (test03): New.
1587         * testsuite/22_locale/num_put_members_char.cc (test03): New.
1588
1589         * testsuite/22_locale/time_get_members_char.cc: Fixups for global
1590         locale issues.
1591         * testsuite/22_locale/time_get_members_char.cc: Same.
1592
1593 2002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
1594
1595         libstdc++/5280
1596         * include/bits/localefwd.h: Tweak comments.
1597         * include/bits/locale_facets.h (__convert_to_v): Add.
1598         * include/bits/locale_facets.tcc (num_get::do_get(double)): Use it.
1599         (num_get::do_get(float)): Same.
1600         (num_get::do_get(long double)): Same.
1601         (num_get::do_get(bool)): Same.
1602         (num_get::do_get(long)): Same.
1603         (num_get::do_get(long long)): Same.
1604         (num_get::do_get(unsigned int)): Same.
1605         (num_get::do_get(unsigned short)): Same.
1606         (num_get::do_get(unsigned long)): Same.
1607         (num_get::do_get(unsigned long long)): Same.
1608         * config/locale/c_locale_gnu.cc (__convert_to_v): Specialize.
1609         * config/locale/c_locale_generic.cc: Same.
1610
1611 2002-01-22  Loren Rittle <ljrittle@acm.org>
1612
1613         * include/Makefile.am (c_base_builddir): Remove redundant slash.
1614         (std_builddir): Likewise.
1615         (std_headers_rename): Fix cut-n-paste typo.
1616         (install-data-local): Concat path per element instead of once to
1617         first element of list.
1618         * include/Makefile.in: Rebuilt.
1619
1620 2002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
1621
1622         * config/os/aix/bits/ctype_noninline.h: Fix formatting.
1623         * config/os/bsd/netbsd/bits/ctype_noninline.h: Fix typo.
1624         * config/os/bsd/freebsd/bits/ctype_noninline.h: Fix formatting.
1625
1626 2002-01-20  Benjamin Kosnik  <bkoz@redhat.com>
1627
1628         * include/bits/locale_facets.h (ctype<char>::classic_table):
1629         Remove definition.
1630         (ctype<char>::_S_ctable): Remove.
1631         * config/os/gnu-linux/bits/ctype_noninline.h
1632         (ctype<char>::_S_table): Remove definition.
1633         (ctype<char>::classic_table): Define.
1634         (ctype<char>::ctype): Replace _S_ctable with classic_table().
1635         * config/os/aix/bits/ctype_noninline.h: Same.
1636         * config/os/bsd/freebsd/bits/ctype_noninline.h: Same.
1637         * config/os/bsd/netbsd/bits/ctype_noninline.h: Same.
1638         * config/os/djgpp/bits/ctype_noninline.h: Same.
1639         * config/os/generic/bits/ctype_noninline.h: Same.
1640         * config/os/gnu-linux/bits/ctype_noninline.h: Same.
1641         * config/os/hpux/bits/ctype_noninline.h: Same.
1642         * config/os/irix/irix5.2/bits/ctype_noninline.h: Same.
1643         * config/os/irix/irix6.5/bits/ctype_noninline.h: Same.
1644         * config/os/mingw32/bits/ctype_noninline.h: Same.
1645         * config/os/newlib/bits/ctype_noninline.h: Same.
1646         * config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
1647         * config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.
1648         * config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.
1649
1650 2002-01-20  Danny Smith  <dannysmith@users.sourceforge.net>
1651
1652         * config/os/mingw32/bits/ctype_noninline.h: Declare _ctype instead
1653         of _pctype. Use to define _S_ctable.  Add definition for alternate
1654         ctor.  Initialise _M_ctable to _S_ctable in ctors.
1655         (do_toupper, do_tolower): Use inline code appropriate for C-locale
1656         rather than ::toupper, ::tolower.
1657
1658 2002-01-18  Loren Rittle <ljrittle@acm.org>
1659
1660         * testsuite/18_support/numeric_limits.cc (test_extrema<long double>):
1661         Add specialization for FreeBSD systems only to avoid losing test
1662         only due to extra precision unmentioned in system headers.
1663
1664 2002-01-18  David Billinghurst <David.Billinghurst@riotinto.com>
1665
1666         * config/os/irix/irix6.5/bits/ctype_noninline.h: Fix typo
1667
1668 2002-01-17  Nick Clifton  <nickc@cambridge.redhat.com>
1669
1670         * testsuite/testsuite_hooks.h: Fix comment typo.  Memory
1671         limiting is only attempted if _GLIBCPP_MEM_LIMIT is defined.
1672
1673 2002-01-17  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
1674
1675         * testsuite/22_locale/ctor_copy_dtor.cc: Remove check.
1676
1677 2002-01-17  David Edelsohn  <edelsohn@gnu.org>
1678
1679         * configure.target: Define OPT_LDFLAGS for AIX case.
1680
1681 2002-01-17  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>
1682
1683         * include/std/std_limits.h (__glibcpp_float_has_quiet_NaN,
1684         __glibcpp_double_has_quiet_NaN): Correct mispelling.
1685
1686 2002-01-17  Andreas Tobler  <toa@pop.agri.ch>
1687
1688         * config/os/solaris/solaris2.6/bits/ctype_noninline.h: Fix.
1689
1690 2002-01-16  David Edelsohn  <dje@watson.ibm.com>
1691
1692         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Do not clear
1693         SECTION_LDFLAGS and OPT_LDFLAGS.  Fix ac_sectionLDflags type.
1694         * aclocal.m4: Regenerate.
1695         * configure: Regenerate.
1696
1697 2002-01-16  Benjamin Kosnik  <bkoz@redhat.com>
1698
1699         * include/Makefile.am (c_base_headers_rename): New.
1700         (c_base_headers_extra): New.
1701         (stamp-c_base): Modify.
1702         (install-data-local): Use both.
1703         * include/Makefile.in: Regenerate.
1704         * include/c/[cctype ciso646 cmath cstdarg cstdlib cerrno climits
1705         csetjmp cstddef cstring cwchar cassert cfloat clocale csignal
1706         cstdio ctime cwctype]: Move to..
1707         * include/c/std_*: Here.
1708         * include/c_std/[cctype ciso646 cmath cstdarg cstdlib cerrno climits
1709         csetjmp cstddef cstring cwchar cassert cfloat clocale csignal
1710         cstdio ctime cwctype]: Move to..
1711         * include/c_std/std_*: Here.
1712
1713         Alexandre Oliva  <aoliva@redhat.com>
1714         * include/Makefile.am (.PRECIOUS): Add rule.
1715         * include/Makefile.in: Regenerate.
1716
1717 2002-01-16  Benjamin Kosnik  <bkoz@redhat.com>
1718             Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
1719
1720         * include/bits/stl_iterator.h (reverse_iterator::_M_current):
1721         Deuglify, should be current.
1722         (back_insert_iterator::_M_container): Deuglify, should be container.
1723         (front_insert_iterator::_M_container): Same.
1724         (insert_iterator::_M_container): Same.
1725         * testsuite/24_iterators/reverse_iterator.cc: Add check.
1726         * testsuite/24_iterators/back_insert_iterator.cc: Add check.
1727         * testsuite/24_iterators/front_insert_iterator.cc: Same.
1728         * testsuite/24_iterators/insert_iterator.cc: Same.
1729
1730 2002-01-16  Benjamin Kosnik  <bkoz@redhat.com>
1731
1732         * include/bits/locale_facets.h (ctype<char>::classic_table): Make
1733         static.
1734         (ctype<char>::_M_ctable): Make static, change name to _S_ctable.
1735         * config/os/gnu-linux/bits/ctype_noninline.h: Define _S_ctable.
1736         * config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.
1737         * config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.
1738         * config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
1739         * config/os/newlib/bits/ctype_noninline.h: Same.
1740         * config/os/irix/irix6.5/bits/ctype_noninline.h: Same.
1741         * config/os/irix/irix5.2/bits/ctype_noninline.h: Same.
1742         * config/os/hpux/bits/ctype_noninline.h: Same.
1743         * config/os/djgpp/bits/ctype_noninline.h: Same.
1744         * config/os/bsd/netbsd/bits/ctype_noninline.h: Same.
1745         * config/os/bsd/freebsd/bits/ctype_noninline.h: Same.
1746         * config/os/aix/bits/ctype_noninline.h: Same.
1747
1748         Testcase by Dietmar Kühl via Peter Schmid
1749         * testsuite/22_locale/ctype_members_char.cc (char>): Add test for
1750         classic_table().
1751
1752 2002-01-16  Benjamin Kosnik  <bkoz@redhat.com>
1753
1754         * libmath/signbitl.c: Copyright years as list, not range.
1755         * libmath/Makefile.am: Same.
1756         * libmath/Makefie.in: Regenerate.
1757         * libmath/signbit.c: Same.
1758         * libmath/nan.c: Same.
1759         * libmath/copysignf.c: Same.
1760         * libmath/signbitf.c: Same.
1761         * testsuite/22_locale/money_get_members_char.cc: Same.
1762         * testsuite/22_locale/money_get_members_wchar_t.cc: Same.
1763         * testsuite/22_locale/money_put_members_char.cc: Same.
1764         * testsuite/22_locale/money_put_members_wchar_t.cc: Same.
1765         * testsuite/22_locale/time_get_members_char.cc: Same.
1766         * testsuite/22_locale/time_get_members_wchar_t.cc: Same.
1767         * testsuite/22_locale/time_put_members_char.cc: Same.
1768         * testsuite/22_locale/time_put_members_wchar_t.cc: Same.
1769         * testsuite/21_strings/nonmember.cc: Same.
1770         * testsuite/21_strings/compare.cc: Same.
1771         * testsuite/27_io/stringstream.cc: Same.
1772         * testsuite/27_io/stringbuf.cc: Same.
1773         * testsuite/27_io/filebuf.cc: Same.
1774         * testsuite/27_io/ios_manip_basefield.cc: Same.
1775         * testsuite/27_io/ios_manip_fmtflags.cc: Same.
1776         * include/bits/cpp_type_traits.h: Same.
1777         * include/bits/generic_shadow.h: Same.
1778         * include/bits/gslice_array.h: Same.
1779         * include/bits/gslice.h: Same.
1780         * include/bits/indirect_array.h: Same.
1781         * include/bits/slice_array.h: Same.
1782         * include/bits/sstream.tcc: Same.
1783         * include/bits/streambuf_iterator.h: Same.
1784         * include/bits/valarray_array.tcc: Same.
1785         * include/bits/valarray_meta.h: Same.
1786         * include/bits/valarray_array.h: Same.
1787         * config/os/mingw32/bits/ctype_noninline.h: Same.
1788         * config/os/mingw32/bits/ctype_base.h: Same.
1789         * config/os/hpux/bits/ctype_noninline.h: Same.
1790         * config/os/hpux/bits/ctype_base.h: Same.
1791         * config/os/gnu-linux/bits/ctype_noninline.h: Same.
1792         * config/os/gnu-linux/bits/ctype_base.h: Same.
1793         * config/os/generic/bits/ctype_noninline.h: Same.
1794         * config/os/generic/bits/ctype_base.h: Same.
1795
1796         * libsupc++/tinfo.h: Tweaks.
1797
1798 2002-01-15  Benjamin Kosnik  <bkoz@redhat.com>
1799
1800         * testsuite/22_locale/num_put_members_wchar_t.cc (test02): Same.
1801         * testsuite/22_locale/num_put_members_char.cc (test01): Tweak.
1802         * testsuite/22_locale/ctype_members_char.cc: Tweak.
1803
1804 2002-01-15  Benjamin Kosnik  <bkoz@redhat.com>
1805
1806         * include/bits/locale_facets.tcc (num_put::do_put(bool): Fix.
1807         (num_put::do_put(void*)): Fix.
1808         * testsuite/22_locale/num_put_members_char.cc (test02): Add.
1809         * testsuite/22_locale/num_put_members_wchar_t.cc (test02): Add.
1810         * testsuite/22_locale/num_get_members_char.cc (test02): Add
1811         long double, void, bool types.
1812         * testsuite/22_locale/num_get_members_wchar_t.cc (test02): Add.
1813
1814 2002-01-15  Benjamin Kosnik  <bkoz@redhat.com>
1815             Alexandre Oliva  <aoliva@redhat.com>
1816
1817         * libmath/Makefile.am (LINK): Add --tag CC.
1818         * libmath/Makefile.in: Regenerate.
1819
1820 2002-01-15  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1821
1822         * config/os/hpux/bits/ctype_noninline.h: Use __SB_masks for address
1823         of character to attribute mapping table.
1824
1825 2002-01-15  David Billinghurst <David.Billinghurst@riotinto.com>
1826
1827         * testsuite/26_numerics/c99_classification_macros_c.cc
1828         Remove dg-error and dg-excess-errors comments.
1829
1830 2002-01-14  Benjamin Kosnik  <bkoz@redhat.com>
1831
1832         * include/bits/locale_facets.tcc (time_put::put): Correct output
1833         iterator positions.
1834         * testsuite/22_locale/time_put_members_char.cc (test02): Add.
1835         * testsuite/22_locale/time_put_members_wchar_t.cc (test02): Add.
1836         * testsuite/22_locale/time_get_members_wchar_t.cc (test06): Add.
1837         * testsuite/22_locale/time_get_members_char.cc (test06): Add.
1838
1839 2002-01-14  Craig Rodrigues  <rodrigc@gcc.gnu.org>
1840
1841         * docs/html/17_intro/porting-howto.xml: Update filebuf section.
1842
1843 2002-01-14  Paolo Carlini  <pcarlini@unitus.it>
1844             Nathan Myers  <ncm@cantrip.org>
1845
1846         * include/bits/basic_string.h
1847         (replace(__pos, __n1, __s, __n2)): Optimize by avoiding
1848         temporaries (i.e., call _M_replace_safe) when possible.
1849         (replace(__pos, __n, __str)): Call replace(__pos, __n1, __s, __n2).
1850         (replace(__pos, __n1, __s)): Call replace(__pos, __n1, __s , __n2).
1851         (replace(__i1, __i2, __str)): Call replace(__i1, __i2, __s, __n).
1852         (replace(__i1, __i2, __s)): Call replace(__i1, __i2, __s, __n).
1853         (replace(__i1, __i2, __s, __n)): Call replace(__pos1, __n1, __s, __n2).
1854         * include/bits/basic_string.tcc
1855         (replace(__pos1, __n1, __str, __pos2, __n2)): Call
1856         replace(__pos, __n1, __s, __n2).
1857         * testsuite/21_strings/replace.cc (test03): New testcases.
1858
1859         * include/bits/basic_string.h (insert(__pos, __s, __n)):
1860         Adjust comparison wrt overflow.
1861
1862 2002-01-12  Benjamin Kosnik  <bkoz@redhat.com>
1863
1864         * include/Makefile.am (std_headers_rename): New variable.
1865         (install-data-local): Use it.
1866         * include/Makefile.in: Regenerate.
1867
1868 2002-01-12  Benjamin Kosnik  <bkoz@redhat.com>
1869
1870         * include/bits/locale_facets.tcc (money_put::do_put(string):
1871         Correct output iterator value.
1872         * testsuite/22_locale/money_put_members_char.cc (test03): Add.
1873         * testsuite/22_locale/money_put_members_wchar_t.cc: Same.
1874
1875 2002-01-11  Phil Edwards  <pme@gcc.gnu.org>
1876
1877         * include/Makefile.am, include/Makefile.in (stamp-std):  Fix typo from
1878         previous commit.
1879
1880 2002-01-11  Phil Edwards  <pme@gcc.gnu.org>
1881
1882         * include/Makefile.am (std_headers):  Update list with new names.
1883         (stamp-std):  Link to standardized name.
1884         * include/Makefile.in:  Regenerate.
1885
1886         * include/std/algorithm, include/std/bitset, include/std/complex,
1887         include/std/deque, include/std/fstream, include/std/functional,
1888         include/std/iomanip, include/std/ios, include/std/iosfwd,
1889         include/std/iostream, include/std/istream, include/std/iterator,
1890         include/std/limits, include/std/list, include/std/locale,
1891         include/std/map, include/std/memory, include/std/numeric,
1892         include/std/ostream, include/std/queue, include/std/set,
1893         include/std/sstream, include/std/stack, include/std/stdexcept,
1894         include/std/streambuf, include/std/string, include/std/utility,
1895         include/std/valarray, include/std/vector:  Rename to...
1896
1897         * include/std/std_algorithm.h, include/std/std_bitset.h,
1898         include/std/std_complex.h, include/std/std_deque.h,
1899         include/std/std_fstream.h, include/std/std_functional.h,
1900         include/std/std_iomanip.h, include/std/std_ios.h,
1901         include/std/std_iosfwd.h, include/std/std_iostream.h,
1902         include/std/std_istream.h, include/std/std_iterator.h,
1903         include/std/std_limits.h, include/std/std_list.h,
1904         include/std/std_locale.h, include/std/std_map.h,
1905         include/std/std_memory.h, include/std/std_numeric.h,
1906         include/std/std_ostream.h, include/std/std_queue.h,
1907         include/std/std_set.h, include/std/std_sstream.h,
1908         include/std/std_stack.h, include/std/std_stdexcept.h,
1909         include/std/std_streambuf.h, include/std/std_string.h,
1910         include/std/std_utility.h, include/std/std_valarray.h,
1911         include/std/std_vector.h:  ...this.
1912
1913 2002-01-11  Loren Rittle <ljrittle@acm.org>
1914
1915         * include/Makefile.am (extra_target_headers): New list of all
1916         target files built with ad hoc naming rules.
1917         (stamp-*): Handle LN_S failure in manner portable across make
1918         implementations.
1919         (install-data-local): Install header files from human-maintained
1920         file lists and directory components instead of non-robust find.
1921         * include/Makefile.in: Rebuilt.
1922
1923 2002-01-11  Benjamin Kosnik  <bkoz@redhat.com>
1924
1925         * include/bits/locale_facets.tcc (money_get::do_get(string)):
1926         Check for zero-length negative sign before adding it to output
1927         string.
1928         (money_get::do_get(long double)): Return beg.
1929         * testsuite/22_locale/money_get_members_char.cc (test02): Add
1930         iterator checks.
1931         * testsuite/22_locale/money_get_members_wchar_t.cc: Same.
1932
1933 2002-01-10  David Seymour  <seymour_dj@yahoo.com>
1934
1935         libstdc++/5331
1936         * include/bits/locale_facets.h (num_get<>): Return advanced iterator
1937         for _M_extract_float and _M_extract_int
1938         * include/bits/locale_facets.tcc (num_get<>::_M_extract_float)
1939         (num_get<>::_M_extract_int): Likewise, all callers changed
1940         * testsuite/22_locale/num_get_members_char.cc: Testcase
1941
1942 2002-01-09  Paolo Carlini <pcarlini@unitus.it>
1943
1944         * libsupc++/exception (bad_exception): Add comment.
1945         * libsupc++/new (bad_alloc): Same.
1946         * libsupc++/typeinfo (bad_cast, bad_typeid): Same.
1947
1948 2002-01-09  Paolo Carlini <pcarlini@unitus.it>
1949
1950         libstdc++/3150: revert 2001-11-30 commit. DR266 only means
1951         that the destructors should be removed from the descriptions
1952         in the standard: writing them explicitly allows the vtable
1953         heuristic to work. For additional information see:
1954         http://gcc.gnu.org/ml/libstdc++/2002-01/msg00090.html
1955         http://gcc.gnu.org/ml/libstdc++/2002-01/msg00110.html
1956         http://gcc.gnu.org/ml/libstdc++/2002-01/msg00155.html
1957         * libsupc++/exception (bad_exception::~bad_exception()):
1958         Reintroduce declaration.
1959         * libsupc++/new (bad_alloc::~bad_alloc()): Same.
1960         * libsupc++/typeinfo (bad_cast::~bad_cast()): Same.
1961         (bad_typeid::~bad_typeid()): Same.
1962         * libsupc++/eh_exception.cc (bad_exception::~bad_exception()):
1963         Reintroduce definition.
1964         * libsupc++/new_handler.cc (bad_alloc::~bad_alloc()): Same.
1965         * libsupc++/tinfo.cc (bad_cast::~bad_cast()): Same.
1966         (bad_typeid::~bad_typeid()): Same.
1967
1968 2002-01-09  Benjamin Kosnik  <bkoz@redhat.com>
1969
1970         * include/Makefile.am (c_base_srcdir): Remove duplicate '/'.
1971         * include/Makefile.in: Regenerate.
1972
1973 2002-01-09  Bo Thorsen  <bo@suse.co.uk>
1974
1975         * config/cpu/x86-64/bits/cpu_limits.h (__glibcpp_long_bits): Add
1976         definition.
1977
1978 2002-01-08  Benjamin Kosnik  <bkoz@redhat.com>
1979
1980         libstdc++/2913
1981         libstdc++/4879
1982         * include/bits/fstream.tcc (filebuf::_M_really_overflow): Test
1983         return value of _M_file->sync().
1984         (filebuf::showmanyc): Check for is_open.
1985         * include/std/fstream (filebuf::sync): Tweak.
1986         * testsuite/27_io/filebuf.cc: Tweak.
1987
1988 2002-01-08  John Fardo  <jfardo@laurelnetworks.com>
1989             Brad Garcia  <garsh@attbi.com>
1990
1991         * testsuite/27_io/filebuf_members.cc: Add test.
1992
1993 2002-01-07  Benjamin Kosnik  <bkoz@redhat.com>
1994             Craig Rodrigues  <rodrigc@mediaone.net>
1995
1996         libstdc++/5174
1997         * po/Makefile.am (mkinstalldirs): Add.
1998         * po/Makefile.in: Regenerate.
1999
2000 2002-01-07  David Billinghurst  <David.Billinghurst@riotinto.com>
2001
2002         * testsuite_flags.in: Add -fmessage-length=0 to CXXFLAGS *
2003         testsuite/lib/prune.exp: Delete lines ":In function ..."  from
2004         compiler output.
2005         * testsuite/23_containers/map_operators.cc: Remove
2006         dg-excess-errors comment.
2007         * testsuite/23_containers/set_operators.cc: Likewise.
2008
2009 2002-01-06  Paolo Carlini  <pcarlini@unitus.it>
2010
2011         * include/bits/stl_function.h:  Remove two lines of comments;
2012         adjust copyright years.
2013
2014 2002-01-04  Benjamin  Kosnik  <bkoz@redhat.com>
2015
2016         * include/Makefile.am (std_headers): Remove cXXX from list.
2017         (c_base_srcdir): No bits subdirectory.
2018         (c_base_builddir): Same.
2019         (c_base_headers): Adjust names, add ciso646.
2020         (bits_headers): Remove std_xxx.h headers.
2021         * include/Makefile.in: Regenerate.
2022
2023         * include/ext/iterator: Adjust includes.
2024         * include/ext/ropeimpl.h: Same.
2025         * include/ext/stl_hash_fun.h: Same.
2026         * include/ext/algorithm: Same.
2027
2028         * include/backward/bvector.h: Adjust includes.
2029         * include/backward/vector.h: Same.
2030         * include/backward/strstream: Same.
2031         * include/backward/streambuf.h: Same.
2032         * include/backward/stack.h: Same.
2033         * include/backward/set.h: Same.
2034         * include/backward/queue.h: Same.
2035         * include/backward/multiset.h: Same.
2036         * include/backward/multimap.h: Same.
2037         * include/backward/map.h: Same.
2038         * include/backward/list.h: Same.
2039         * include/backward/iterator.h: Same.
2040         * include/backward/iostream.h: Same.
2041         * include/backward/iomanip.h: Same.
2042         * include/backward/fstream.h: Same.
2043         * include/backward/deque.h: Same.
2044         * include/backward/complex.h: Same.
2045
2046         * include/bits/std_algorithm.h: Move to...
2047         * include/std/algorithm: ...here.
2048         * include/bits/std_iosfwd.h, std_locale.h, std_stack.h,
2049         std_bitset.h, std_ios.h, std_map.h, std_stdexcept.h,
2050         std_complex.h, std_iostream.h, std_memory.h, std_streambuf.h,
2051         std_deque.h, std_istream.h, std_numeric.h, std_string.h,
2052         std_fstream.h, std_ostream.h, std_utility.h, std_iterator.h,
2053         std_queue.h, std_valarray.h, std_functional.h, std_limits.h,
2054         std_set.h, std_vector.h, std_iomanip.h, std_list.h, std_sstream.h:
2055         Same.
2056
2057         * include/c_std/bits/std_cassert.h: Move to...
2058         * include/c_std/cassert: Here.
2059         * include/c_std/std_cctype.h, std_cerrno.h, std_cfloat.h,
2060         std_climits.h, std_clocale.h, std_cmath.h, std_csetjmp.h,
2061         std_csignal.h, std_cstdarg.h, std_cstddef.h, std_cstdio.h,
2062         std_cstdlib.h, std_cstring.h, std_ctime.h, std_cwchar.h,
2063         std_cwctype.h: Same.
2064         * include/c_std/cmath: Adjust cmath.tcc include.
2065         * include/c_std/cstdlib: Adjust includes.
2066         * include/c_std/cwchar: Same.
2067         * include/c_std/ctime: Same.
2068         * include/c_std/cstring: Same.
2069         * include/c_std/cstdio: Same.
2070         * include/c_std/bits: Remove directory.
2071
2072         * include/c/bits/std_cassert.h: Move to...
2073         * include/c/cassert: Here.
2074         * include/c/std_cctype.h, std_cerrno.h, std_cfloat.h,
2075         std_climits.h, std_clocale.h, std_cmath.h, std_csetjmp.h,
2076         std_csignal.h, std_cstdarg.h, std_cstddef.h, std_cstdio.h,
2077         std_cstdlib.h, std_cstring.h, std_ctime.h, std_cwchar.h,
2078         std_cwctype.h: Same.
2079         * include/c/bits: Remove directory.
2080
2081         * include/std/cwctype: Remove.
2082         * include/std/cwchar: Remove.
2083         * include/std/ctime: Remove.
2084         * include/std/cstring: Remove.
2085         * include/std/cstdlib: Remove.
2086         * include/std/cstdio: Remove.
2087         * include/std/cstddef: Remove.
2088         * include/std/cstdarg: Remove.
2089         * include/std/csignal: Remove.
2090         * include/std/csetjmp: Remove.
2091         * include/std/cmath: Remove.
2092         * include/std/clocale: Remove.
2093         * include/std/climits: Remove.
2094         * include/std/ciso646: Remove.
2095         * include/std/cfloat: Remove.
2096         * include/std/cerrno: Remove.
2097         * include/std/cctype: Remove.
2098         * include/std/cassert: Remove.
2099
2100         * include/bits/fpos.h: Adjust includes, removing <bits/std_xxx.h>
2101         files and subsituting <xxx>.
2102         * include/bits/valarray_array.h: Same.
2103         * include/bits/stl_uninitialized.h: Same.
2104         * include/bits/stl_alloc.h: Same.
2105         * include/bits/stl_algobase.h: Same.
2106         * include/bits/sstream.tcc: Same.
2107         * include/bits/pthread_allocimpl.h: Same.
2108         * include/bits/ostream.tcc: Same.
2109         * include/bits/localefwd.h: Same.
2110         * include/bits/locale_facets.tcc: Same.
2111         * include/bits/locale_facets.h: Same.
2112         * include/bits/istream.tcc: Same.
2113         * include/bits/char_traits.h: Same.
2114         * include/bits/boost_concept_check.h: Same.
2115         * include/bits/basic_file.h: Same.
2116         * include/std/bitset: Same.
2117         * include/std/complex: Same.
2118         * include/std/fstream: Same.
2119         * include/std/functional: Same.
2120         * include/std/ios: Same.
2121         * include/std/iostream: Same.
2122         * include/std/ostream: Same.
2123         * include/std/sstream: Same.
2124         * include/std/streambuf: Same.
2125         * include/std/string: Same.
2126         * include/std/iterator: Same.
2127         * include/std/valarray: Same.
2128
2129         * src/ios.cc: Adjust includes.
2130         * src/valarray-inst.cc: Same.
2131         * src/string-inst.cc: Same.
2132         * src/stl-inst.cc: Same.
2133         * src/stdexcept.cc: Same.
2134         * src/misc-inst.cc: Same.
2135         * src/localename.cc: Same.
2136         * src/locale-inst.cc: Same.
2137         * src/locale.cc: Same.
2138         * src/limits.cc: Same.
2139         * src/concept-inst.cc: Same.
2140         * src/complex_io.cc: Same.
2141         * src/codecvt.cc: Same.
2142         * src/bitset.cc: Same.
2143         * src/cmath.cc: Same.
2144
2145 2002-01-04  Paolo Carlini  <pcarlini@unitus.it>
2146
2147         * include/bits/stl_tree.h (rb_tree):  Move to...
2148         * include/ext/rb_tree:  ...here, new file.
2149         * include/Makefile.am (ext_headers):  Add new file.
2150         * include/Makefile.in:  Regenerate.
2151         * include/bits/stl_tempbuf.h (get_temporary_buffer + helper,
2152         return_temporary_buffer, struct temporary_buffer):  Move to...
2153         * include/ext/memory:  ...here.
2154         * testsuite/ext/headers.cc:  Include <ext/rb_tree>.
2155         * include/backward/tempbuf.h:  Include <ext/memory>, tweak.
2156         * include/backward/tree.h:  Include <ext/rb_tree), tweak.
2157
2158 2002-01-03  Paolo Carlini  <pcarlini@unitus.it>
2159
2160         * include/bits/stl_numeric.h (power + helpers, iota):  Move to...
2161         * include/ext/numeric:  ...here, new file.
2162         * include/bits/stl_function.h (identity_element, unary_compose,
2163         binary_compose, compose1, compose2, identity, select1st,
2164         select2nd, project1st + helper, project2nd + helper,
2165         constant_void_fun + helper, constant_unary_fun + helper,
2166         costant_binary_fun + helper, constant0, constant1, constant2,
2167         subtractive_rng, mem_fun1, mem_fun1_ref):  Move to...
2168         * include/ext/functional:  ...here, new file.
2169         * include/Makefile.am (ext_headers):  Add new files.
2170         * include/Makefile.in:  Regenerate.
2171         * testsuite/ext/headers.cc:  Include <ext/numeric> and
2172         <ext/functional>.
2173         * include/backward/algo.h:  Include <ext/numeric>, tweak.
2174         * include/backward/function.h:  Include <ext/functional>, tweak.
2175         * include/ext/ropeimpl.h:  Include <ext/numeric>.
2176
2177 2002-01-03  Jeffrey A Law  <law@redhat.com>
2178
2179         * config/os/hpux/bits/os_defines.h: Prefix __strtoll and
2180         __strtoull declarations with __extension__.
2181
2182 2002-01-03  David Billinghurst <David.Billinghurst@riotinto.com>
2183
2184         * testsuite/lib/prune.exp: Correct regular expression for
2185         -ffunction-sections
2186
2187 2002-01-02  Phil Edwards  <pme@gcc.gnu.org>
2188
2189         * include/bits/stl_algo.h (upper_bound, equal_range, binary_search):
2190         Change concept checks, as with lower_bound and PR 2054.
2191         * testsuite/ext/concept_checks.cc:  Expand test to include those.
2192
2193 2002-01-02  Phil Edwards  <pme@gcc.gnu.org>
2194
2195         * include/bits/boost_concept_check.h:  Import some changes from
2196         upsteam (Boost) version.
2197
2198 2002-01-02  Paolo Carlini  <pcarlini@unitus.it>
2199
2200         * include/bits/stl_algobase.h (copy_n + helpers,
2201         lexicographical_compare_3way + helpers):  Move to...
2202         * include/ext/algorithm:  ...here.
2203         * include/bits/stl_uninitialized.h (uninitialized_copy_n +
2204         helpers):  Move to...
2205         * include/ext/memory:  ...here, new file.
2206         * include/Makefile.am (ext_headers):  Add new file.
2207         * include/Makefile.in:  Regenerate.
2208         * testsuite/ext/headers.cc:  Include <ext/memory>.
2209         * include/backward/algobase.h:  Include <ext/memory> and
2210         <ext/algorithm>, tweak.
2211         * include/ext/ropeimpl.h:  Include <ext/memory>, tweak.
2212         * include/ext/stl_rope.h:  Include <ext/memory>, tweak.
2213
2214 2002-01-01  Roger Sayle <roger@eyesopen.com>
2215
2216         * libmath/stubs.c (sinf,cosf): Implement stubs to enable the
2217         equivalent ___builtin__ versions.
2218
2219         * include/c_shadow/bits/std_cmath.h: All __builtin math functions
2220         are available in libstdc++ as the necessary stub implementations
2221         are provided by libmath/stubs.c.
2222
2223 2002-01-01  Jason Thorpe  <thorpej@wasabisystems.com>
2224
2225         * configure.in: Add support for NetBSD cross compiles.
2226         * configure: Regenerate.