OSDN Git Service

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