OSDN Git Service

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