OSDN Git Service

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