configure.in: Use target, not target_alias, when matching triplet patterns.
[official-gcc.git] / libstdc++-v3 / ChangeLog
blob7db0e574f121b8bc674399636717e467fc88bc37
1 2002-10-18  Phil Edwards  <pme@gcc.gnu.org>
3         * configure.in:  Use target, not target_alias, when matching triplet
4         patterns.
5         * configure:  Regenerate.
7 2002-10-17  Momchil Velikov  <velco@fadata.bg>
8             Loren J. Rittle  <ljrittle@acm.org>
10         * configure.in: Add *-freebsd* to cross list.
11         * configure: Rebuilt.
13 2002-10-16  Benjamin Kosnik  <bkoz@redhat.com>
15         * include/bits/locale_facets.h (__timepunct::__timepunct): Allocate
16         _M_name_timepunct.
17         (__timepunct::~__timepunct): Deallocate, remove specialization
18         declarations.
19         (messages::messages): Allocate _M_name_messages.
20         (messages::~messages): Deallocate.
21         (messages_byname): Same.
22         * config/locale/gnu/time_members.cc (__timepunct::~__timepunct):
23         Remove.
24         * config/locale/generic/time_members.cc (__timepunct::~__timepunct):
25         Remove.
27         * docs/html/install.html: Add es_MX, en_PH to required locales list.
29 2002-10-16  Benjamin Kosnik  <bkoz@redhat.com>
31         * config/linker-map.gnu: Add exports for codecvt constructors
32         where size_t == unsigned long.
34 2002-10-14  Benjamin Kosnik  <bkoz@redhat.com>
36         * src/globals.cc (__gnu_cxx::c_locale_impl_compat): Add, alias to
37         c_locale_impl.
38         * testsuite/abi_check.cc (line_to_symbol_info): Collect size info.
39         * docs/html/abi.txt: Update.
40         
41 2002-10-14  Benjamin Kosnik  <bkoz@redhat.com>
43         * testsuite/22_locale/static_members.cc (test02): Less provincial.
45 2002-10-14  Benjamin Kosnik  <bkoz@redhat.com>
47         * testsuite/22_locale/static_members.cc (test02): Disable for 
48         systems without named locale support.
49         * testsuite/22_locale/ctor_copy_dtor.cc (test04): Don't assume
50         running the testsuites in "C" environment.
51         Add new tests.
52         * docs/html/22_locale/locale.html: Update.
54 2002-10-13  Danny Smith  <dannysmith@users.sourceforge.net> 
56         * include/bits/stl_threads.h (_GLIBCPP_mutex,
57         _GLIBCPP_mutex_init,_GLIBCPP_mutex_address,
58         _GLIBCPP_mutex_address_init, _GLIBCPP_once):
59         Declare in namespace __gnu_cxx.
60         (_STL_mutex_lock::_M_initialize): Qualify __gnu_cxx
61         names.
62         Adjust copyright.
64 2002-10-12  Benjamin Kosnik  <bkoz@redhat.com>
66         * testsuite/abi_check.cc (hash<string>): Specialize.
67         Simplify. Check compatible symbol versions.
68         * config/linker-map.gnu: Clarify, explicitly export
69         std::codecvt::c* symbols.
71         * testsuite/22_locale/static_members.cc (test02): Avoid null strings.
73 2002-10-12  Jonathan Wakely  <jw@kayari.org>
74             Gabriel Dos Reis  <gdr@integrable-solutions.net>
76         * docs/html/21_strings/howto.html#5:  Correct nasting of XHTML
77         elements.  Correct allocator-related text.
79 2002-10-11  Benjamin Kosnik  <bkoz@redhat.com>
81         * testsuite/22_locale/static_members.cc (test02): Fix.
83 2002-10-11  Benjamin Kosnik  <bkoz@redhat.com>
85         * acconfig.h (_GLIBCPP_SYMVER): Add.
86         (_GLIBCPP_ASM_SYMVER): Add.
87         * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Define _GLIBCPP_SYMVER.
88         * aclocal.m4: Regenerate.
89         * config.h.in: Regenerate.
90         * configure: Regenerate.
91         * include/bits/c++config (_GLIBCPP_AT_AT): Define, as an expedient
92         hack around m4 issues with quoting '@'.
93         * src/locale.cc: Use _GLIBCPP_ASM_SYMVER.
94         * src/globals.cc: Same.
95         
96         * testsuite/22_locale/ctor_copy_dtor.cc (test04): Fix for
97         non-glibc systems.
99 2002-10-10  Benjamin Kosnik  <bkoz@redhat.com>
101         * config/linker-map.gnu (GLIBCPP_3.2.1): Add.
102         (GLIBCPP_3.2): Don't export locale::_S_*. 
103         * src/ios.cc: Move globals into __gnu_cxx. Make old exported
104         symbols match.
105         * src/locale.cc: Same.
106         * src/localename.cc: Same.      
107         * src/globals.cc: Same. 
109 2002-10-10  Phil Edwards  <pme@gcc.gnu.org>
111         * docs/html/21_strings/howto.html:  Write #5, char_traits.
112         * docs/html/17_intro/porting.texi:  Expand on os_include_dir.
113         * docs/html/17_intro/porting.html:  Regenerate.
115 2002-10-09  Benjamin Kosnik  <bkoz@redhat.com>  
117         * src/locale.cc: Fix comments, move ctors together.
118         * testsuite/22_locale/static_members.cc (test03): Add.
120 2002-10-08  Jonathan Lennox  <lennox@cs.columbia.edu>
122         PR libstdc++/8071, libstdc++/8127, libstdc++/6745
123         * streambuf.tcc (__copy_streambufs): Handle cases where
124         __sbin->in_avail() returns 0, or where __sbin doesn't set gptr().
125         * testsuite/27_io/ostream_inserter_other.cc (test05): Add.
126         
127 2002-10-08  Paolo Carlini  <pcarlini@unitus.it>
128             Benjamin Kosnik  <bkoz@redhat.com>  
130         * include/bits/localefwd.h (class locale): Add static member
131         _S_num_extra_categories, encoding the number of additional
132         categories.
133         Change _S_num_categories to _S_categories_size.
134         (class locale::_Impl): Add _M_c_cats.
135         (class locale::_Impl::_M_names): Change to array of chars.
136         (class locale::_Impl::_M_check_same_name): Use
137         _S_extra_categories_size, tweak.
138         (locale::locale(const locale&, _Facet*)): Ditto.
139         * src/locale.cc (locale::locale(const char* )): Rewrite to deal
140         with the environment in a POSIX-compliant way while being thread
141         safe.
142         (locale::name()): Update to output POSIX environment strings.
143         * src/localename.cc
144         (locale::_Impl::_Impl(const _Impl&, size_t): Use
145         _S_categories_size_*, tweak.
146         (locale::_Impl::_Impl(facet**, size_t, bool)): Ditto.
147         (locale::_Impl::_Impl(const char*, size_t)): Name each category
148         individually.
149         (locale::_Impl::_M_replace_categories): Use strcpy.
151         * include/bits/locale_facets.h (numpunct::_M_initialize_numpunct):
152         Change default argument to NULL from _S_c_locale.
153         (timepunct::_M_initialize_timepunct): Same.
154         _S_c_locale cleanups.
155         * src/codecvt.c: _S_c_locale simplification.
156         * src/ctype.c: Same.
157         * src/globals.cc: Add fake_name.
158         * src/locale-inst.cc: Remove extra includes.    
159         * src/locale.cc: Remove extra includes.
160         Add _S_extra_categories_size definition.
161         Correct "C" initialization.
162         (locale::facet::facet): Don't initialize _S_c_locale.
163         (locale::facet::_M_remove_reference): Adjust.
164         * src/localename: Use facet_vec, facet_name.
165         (locale::_Impl::_Impl(facet** __f, size_t __refs, bool)): Set
166         facet ref counts to one. Initialize _S_c_locale.
167         (locale::_Impl::_M_install_facet(id*, facet*)): Adjust facet ref
168         counts when installing unilaterally.
170         * config/locale/generic/c_locale.cc: Add _S_categories definition.
171         * config/locale/generic/c_locale.h: Add _GLIBCPP_NUM_CATEGORIES macro.
172         * config/locale/generic/time_members.cc: _S_c_locale cleanup.
173         
174         * config/locale/gnu/c_locale.cc: Add _S_categories definition.
175         (_S_destroy_c_locale): Move checks against _S_c_locale here.
176         * config/locale/gnu/c_locale.h: Add _GLIBCPP_NUM_CATEGORIES macro.
177         * config/locale/gnu/ctype_members.cc: Simplify _S_destroy_c_locale
178         calls, _S_c_locale usage.
179         * config/locale/gnu/monetary_members.cc: Same, tweaks.
180         * config/locale/gnu/monetary_members.cc: Same.
181         * config/locale/gnu/time_members.cc: Same.      
182         * config/os/gnu-linux/ctype_noninline.h: Use locale::classic().
184         * docs/html/22_locale/locale.html: Add bits about global locales
185         and "C" setlocale.
187         * testsuite/22_locale/facet.cc (test02): Add.
188         * testsuite/22_locale/static_members.cc (test02): Add.
189         * testsuite/22_locale/ctor_copy_dtor.cc (test04): Add.
191 2002-10-07  Jonathan Wakely  <jw@kayari.org>
193         * docs/html/configopts.html, docs/html/documentation.html,
194         docs/html/explanations.html, docs/html/install.html,
195         docs/html/17_intro/contribute.html, docs/html/17_intro/howto.html,
196         docs/html/17_intro/license.html, docs/html/18_support/howto.html,
197         docs/html/19_diagnostics/howto.html, docs/html/20_util/howto.html,
198         docs/html/21_strings/howto.html, docs/html/22_locale/codecvt.html,
199         docs/html/22_locale/ctype.html, docs/html/22_locale/howto.html,
200         docs/html/22_locale/locale.html, docs/html/22_locale/messages.html,
201         docs/html/23_containers/howto.html, docs/html/24_iterators/howto.html,
202         docs/html/25_algorithms/howto.html, docs/html/26_numerics/howto.html,
203         docs/html/27_io/howto.html, docs/html/ext/howto.html,
204         docs/html/ext/sgiexts.html, docs/html/faq/index.html:  Add DOCTYPEs.
206 2002-10-03  Richard Earnshaw  <rearnsha@arm.com>
208         PR libstdc++/3584
209         * config/cpu/arm/atomicity.h (__exchange_and_add): Don't try to use
210         ASM sequences that don't give us atomic addition operations.  Instead
211         just add a comment explaining why it doesn't work.
212         (__atomic_add): Just use __exchange_and_add.
213         (__test_and_set, __always_swap): Delete.
215 2002-10-02  Andreas Jaeger  <aj@suse.de>
217         * config/abi/x86_64-unknown-linux-gnu/baseline_symbols.txt:
218         New file.
220 2002-10-01  Phil Edwards  <pme@gcc.gnu.org>
222         * Makefile.am (check-abi):  Add @ to rule.
223         * Makefile.in:  Regenerated.
225 2002-09-27  Paolo Carlini  <pcarlini@unitus.it>
227         * include/bits/locale_facets.tcc (num_put::_M_widen_int):
228         Deal correctly with grouped, showbased (oct or hex) zero.
229         * testsuite/22_locale/num_put_members_char.cc: Add test05.
230         * testsuite/22_locale/num_put_members_wchar_t.cc: Ditto.
232 2002-09-27  Richard Henderson  <rth@redhat.com>
234         * config/os/hpux/cpu_limits.h: Remove.
236         * include/std/std_limits.h (numeric_limits<T>::is_iec559): False
237         if denormals are not supported.
239 2002-09-25  Benjamin Kosnik  <bkoz@redhat.com>
241         * include/Makefile.am (target_headers): Remove cpu_limits.h.
242         * include/Makefile.in: Regenerate.
243         * configure.in (CPU_LIMITS_INC_SRCDIR): Remove
244         * configure: Regenerate.
245         * configure.target (CPULIMITS): Remove.
247         * include/std/std_limits.h: Remove cpu_limits.h include.
249         * config/os/solaris/solaris2.7/os_defines.h (__glibcpp_long_bits):
250         Remove.
251         * config/os/irix/irix6.5/os_defines.h
252         (__glibcpp_long_double_bits): Remove.
253         (__glibcpp_wchar_t_bits): Remove.
254         (__glibcpp_long_bits): Remove.
255         * config/os/irix/irix5.2/os_defines.h
256         (__glibcpp_long_double_bits): Remove.
257         (__glibcpp_long_bits): Remove.
258         * config/os/hpux/os_defines.h (__glibcpp_wchar_t_is_signed): Remove.
259         * config/os/bsd/freebsd/os_defines.h: 
260         (__glibcpp_long_double_bits): Remove.
261         * config/os/aix/os_defines.h (__glibcpp_wchar_t_bits): Remove.
262         (__glibcpp_wchar_t_is_signed): Remove.
263         (__glibcpp_long_bits): Remove.
264         * config/os/gnu-linux/os_defines.h (__glibcpp_long_bits): Remove.
265         (__glibcpp_long_double_bits): Remove.
267         * config/os/osf/osf5.0/cpu_limits.h: Remove.
268         * config/cpu/alpha/cpu_limits.h: Remove.
269         * config/cpu/arm/cpu_limits.h: Remove.
270         * config/cpu/cris/cpu_limits.h: Remove.
271         * config/cpu/generic/cpu_limits.h: Remove.
272         * config/cpu/generic/limits.h: Remove.          
273         * config/cpu/ia64/cpu_limits.h: Remove.
274         * config/cpu/m68k/cpu_limits.h: Remove. 
275         * config/cpu/mmix/cpu_limits.h: Remove.         
276         * config/cpu/powerpc/cpu_limits.h: Remove.                      
277         * config/cpu/S390/cpu_limits.h: Remove.
278         
279 2002-09-25  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
281         * testsuite/18_support/numeric_limits.cc: Check the maximum and
282         minimum values of the wchar_t type.
284 2002-09-25  Mark Mitchell  <mark@codesourcery.com>
286         * include/std/std_limits.h (numeric_limits<unsigned char>::digits): 
287         Fix typo.
288         
289 2002-09-23  Richard Henderson  <rth@redhat.com>
291         * include/std/std_limits.h (__glibcpp_plain_char_is_signed,
292         __glibcpp_wchar_t_is_signed, __glibcpp_s8_max, __glibcpp_s8_min,
293         __glibcpp_s8_digits, __glibcpp_s8_digits10, __glibcpp_u8_min,
294         __glibcpp_u8_max, __glibcpp_u8_digits, __glibcpp_u8_digits10,
295         __glibcpp_s16_max, __glibcpp_s16_min, __glibcpp_s16_digits,
296         __glibcpp_s16_digits10, __glibcpp_u16_min, __glibcpp_u16_max,
297         __glibcpp_u16_digits, __glibcpp_u16_digits10, __glibcpp_s32_max,
298         __glibcpp_s32_min, __glibcpp_s32_digits, __glibcpp_s32_digits10,
299         __glibcpp_u32_min, __glibcpp_u32_max, __glibcpp_u32_digits,
300         __glibcpp_u32_digits10, __glibcpp_s64_max, __glibcpp_s64_min,
301         __glibcpp_s64_digits, __glibcpp_s64_digits10, __glibcpp_u64_min,
302         __glibcpp_u64_max, __glibcpp_u64_digits, __glibcpp_u64_digits10,
303         __glibcpp_bool_digits, __glibcpp_signed_char_min,
304         __glibcpp_signed_char_max, __glibcpp_signed_char_digits,
305         __glibcpp_signed_char_digits10, __glibcpp_unsigned_char_min,
306         __glibcpp_unsigned_char_max, __glibcpp_unsigned_char_digits,
307         __glibcpp_unsigned_char_digits10, __glibcpp_char_min,
308         __glibcpp_char_max, __glibcpp_char_digits, __glibcpp_char_digits10,
309         __glibcpp_signed_short_min, __glibcpp_signed_short_max,
310         __glibcpp_signed_short_digits, __glibcpp_signed_short_digits10,
311         __glibcpp_unsigned_short_min, __glibcpp_unsigned_short_max,
312         __glibcpp_unsigned_short_digits, __glibcpp_unsigned_short_digits10,
313         __glibcpp_signed_int_min, __glibcpp_signed_int_max,
314         __glibcpp_signed_int_digits, __glibcpp_signed_int_digits10,
315         __glibcpp_unsigned_int_min, __glibcpp_unsigned_int_max,
316         __glibcpp_unsigned_int_digits, __glibcpp_unsigned_int_digits10,
317         __glibcpp_signed_long_min, __glibcpp_signed_long_max,
318         __glibcpp_unsigned_long_digits, __glibcpp_unsigned_long_digits10,
319         __glibcpp_signed_long_long_min, __glibcpp_signed_long_long_max,
320         __glibcpp_signed_long_long_digits, __glibcpp_signed_long_long_digits10,
321         __glibcpp_wchar_t_min, __glibcpp_wchar_t_max, __glibcpp_wchar_t_digits,
322         __glibcpp_wchar_t_digits10): Remove.
323         (__glibcpp_byte, __glibcpp_word_bits, __glibcpp_word): Remove.
324         (__float_storage, __double_storage, __long_double_storage): Remove.
325         (__glibcpp_signed, __glibcpp_min, __glibcpp_max): New.
326         (__glibcpp_digits, __glibcpp_digits10): New.
327         (numeric_limits<T>::min): Use __glibcpp_min or limits.h builtins.
328         (numeric_limits<T>::max): Use __glibcpp_max or limits.h builtins.
329         (numeric_limits<T>::is_signed, T=char,wchar_t): Use __glibcpp_signed.
330         (numeric_limits<T>::digits): Use __glibcpp_digits.
331         (numeric_limits<T>::digits10): Use __glibcpp_digits10.
332         * testsuite/18_support/numeric_limits.cc (test03): Don't use
333         __glibcpp_s8_digits10 et al; check vs the installed versions
334         of digits10 for particular sizes.
336         * include/std/std_limits.h (__glibcpp_float_is_modulo,
337         __glibcpp_double_is_modulo, __glibcpp_long_double_is_modulo): Kill.
338         (numeric_limits<T>::is_modulo, T floating): Use false.
340 2002-09-22  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
342         * Makefile.am (all-multi): Fix multilib parallel build.
344 2002-09-22  Richard Henderson  <rth@redhat.com>
346         * include/std/std_limits.h (__glibcpp_f32_round_error,
347         __glibcpp_f64_round_error, __glibcpp_f80_round_error,
348         __glibcpp_f96_round_error, __glibcpp_f128_round_error,
349         __glibcpp_float_round_error, __glibcpp_double_round_error,
350         __glibcpp_long_double_round_error, __glibcpp_float_round_style,
351         __glibcpp_double_round_style, __glibcpp_long_double_round_style): Kill.
352         (numeric_limits<char>::epsilon, round_error): Use constant 0.
353         (numeric_limits<float>::round_error): Use constant 0.5.
354         (numeric_limits<float>::round_style): Use round_to_nearest.
355         (numeric_limits<double>, numeric_limits<long double>): Similarly.
357         * include/std/std_limits.h (__glibcpp_f32_is_iec559,
358         __glibcpp_f64_is_iec559, __glibcpp_f80_is_iec559,
359         __glibcpp_f96_is_iec559, __glibcpp_f128_is_iec559,
360         __glibcpp_float_is_iec559, __glibcpp_double_is_iec559,
361         __glibcpp_long_double_is_iec559): Remove.
362         (numeric_limits<float>::is_iec559): Use has_infinity & has_quiet_NaN.
363         (numeric_limits<double>, numeric_limits<long double>): Similarly.
365         * include/std/std_limits.h (__glibcpp_integral_traps): New.
366         (__glibcpp_char_traps, __glibcpp_short_traps, __glibcpp_int_traps,
367         __glibcpp_long_traps, __glibcpp_wchar_t_traps,
368         __glibcpp_long_long_traps, __glibcpp_plain_char_traps,
369         __glibcpp_signed_char_traps, __glibcpp_unsigned_char_traps,
370         __glibcpp_signed_short_traps, __glibcpp_unsigned_short_traps,
371         __glibcpp_signed_int_traps, __glibcpp_unsigned_int_traps,
372         __glibcpp_signed_long_traps, __glibcpp_unsigned_long_traps,
373         __glibcpp_signed_long_long_traps, __glibcpp_unsigned_long_long_traps,
374         __glibcpp_char_is_modulo, __glibcpp_signed_char_is_modulo,
375         __glibcpp_signed_short_is_modulo, __glibcpp_signed_int_is_modulo,
376         __glibcpp_signed_long_is_modulo, __glibcpp_signed_long_long_is_modulo,
377         __glibcpp_wchar_t_is_modulo, __glibcpp_float_is_bounded,
378         __glibcpp_double_is_bounded, __glibcpp_long_double_is_bounded): Kill.
379         (numeric_limits<T>::traps, T integral): Use __glibcpp_integral_traps.
380         (numeric_limits<T>::is_modulo, T integral): Use true.
381         (numeric_limits<T>::is_bounded, T floating): Use true.
383 2002-09-18  Loren J. Rittle  <ljrittle@acm.org>
385         * testsuite/18_support/numeric_limits.cc (test_epsilon): New.
387 2002-09-18  Richard Henderson  <rth@redhat.com>
389         * testsuite/18_support/numeric_limits.cc: Add -mieee for alpha.
391 2002-09-16  Benjamin Kosnik  <bkoz@redhat.com>
393         * include/c_shadow: Remove.
394         * include/bits/generic_shadow.h: Remove.
395         * include/Makefile.am: Remove generic_shadow.h.
396         * acinclude.m4: Remove c_shadow references.
397         * aclocal.m4: Regenerate.
398         * configure: Regenerate.
399         * mkcshadow: Remove.
400         * mkinclosure: Remove.
402 2002-09-16  Loren J. Rittle  <ljrittle@acm.org>
404         libstdc++/7922
405         * include/ext/stl_rope.h (rope<>): Qualify dependent names
406         with `typename'.
408 2002-09-16  Richard Henderson  <rth@redhat.com>
410         * include/std/std_limits.h (__glibcpp_f32_QNaN_bytes,
411         __glibcpp_f32_has_QNaN, __glibcpp_f32_SNaN_bytes,
412         __glibcpp_f32_has_SNaN, __glibcpp_f64_QNaN_bytes,
413         __glibcpp_f64_has_QNaN, __glibcpp_f64_SNaN_bytes,
414         __glibcpp_f64_has_SNaN, __glibcpp_f80_QNaN_bytes,
415         __glibcpp_f80_has_QNaN, __glibcpp_f80_SNaN_bytes,
416         __glibcpp_f80_has_SNaN, __glibcpp_f96_QNaN_bytes,
417         __glibcpp_f96_has_QNaN, __glibcpp_f96_SNaN_bytes,
418         __glibcpp_f96_has_SNaN, __glibcpp_f128_QNaN_bytes,
419         __glibcpp_f128_has_QNaN, __glibcpp_f128_SNaN_bytes,
420         __glibcpp_f128_has_SNaN, __glibcpp_float_QNaN_bytes,
421         __glibcpp_float_has_QNaN, __glibcpp_float_SNaN_bytes,
422         __glibcpp_float_has_SNaN, __glibcpp_double_QNaN_bytes,
423         __glibcpp_double_has_QNaN, __glibcpp_double_SNaN_bytes,
424         __glibcpp_double_has_SNaN, __glibcpp_long_double_QNaN_bytes,
425         __glibcpp_long_double_has_QNaN, __glibcpp_long_double_SNaN_bytes,
426         __glibcpp_long_double_has_SNaN): Remove.
427         (__glibcpp_f128_is_iec559): True if IEEE.
428         (__glibcpp_float_QNaN, __glibcpp_float_SNaN): Remove.
429         (__glibcpp_double_QNaN, __glibcpp_double_SNaN): Remove.
430         (__glibcpp_long_double_QNaN, __glibcpp_long_double_SNaN): Remove.
431         (std::numeric_limits<float>::has_quiet_NaN): Use __builtin_nanf.
432         (std::numeric_limits<float>::has_signaling_NaN): Mirror has_quiet_NaN.
433         (std::numeric_limits<float>::quiet_NaN): Use __builtin_nanf.
434         (std::numeric_limits<float>::signaling_NaN): Use __builtin_nansf.
435         (std::numeric_limits<double>): Similarly.
436         (std::numeric_limits<long double>): Similarly.
437         * src/limits.cc (__glibcpp_float_QNaN, __glibcpp_float_SNaN): Remove.
438         (__glibcpp_double_QNaN, __glibcpp_double_SNaN): Remove.
439         (__glibcpp_long_double_QNaN, __glibcpp_long_double_SNaN): Remove.
441         * testsuite/18_support/numeric_limits.cc (test_infinity): New.
442         (test_denorm_min, test_qnan, test_is_iec559): New.
444 2002-09-16  Phil Edwards  <pme@gcc.gnu.org>
446         * testsuite/abi_check.cc:  Pull shell fragments out into...
447         * config/abi/extract_symvers:  ...here.  New file.
448         * Makefile.am (check_abi):  Change to match.
449         (new-abi-baseline):  New target.
450         * Makefile.in:  Regenerated.
452 2002-09-16  Richard Henderson  <rth@redhat.com>
454         * include/std/std_limits.h (__glibcpp_f32_denorm_min_bytes,
455         __glibcpp_f32_has_denorm, __glibcpp_f64_denorm_min_bytes,
456         __glibcpp_f64_has_denorm, __glibcpp_f80_denorm_min_bytes,
457         __glibcpp_f80_has_denorm, __glibcpp_f96_denorm_min_bytes,
458         __glibcpp_f96_has_denorm, __glibcpp_f128_denorm_min_bytes,
459         __glibcpp_f128_has_denorm, __glibcpp_float_denorm_min_bytes,
460         __glibcpp_float_has_denorm, __glibcpp_double_denorm_min_bytes,
461         __glibcpp_double_has_denorm, __glibcpp_long_double_denorm_min_bytes,
462         __glibcpp_long_double_has_denorm): Remove.
463         (__glibcpp_float_denorm_min, __glibcpp_double_denorm_min,
464         __glibcpp_long_double_denorm_min): Remove.
465         (std::numeric_limits<float>::has_denorm): Use __FLT_DENORM_MIN__.
466         (std::numeric_limits<float>::denorm_min): Likewise.
467         (std::numeric_limits<double>): Similarly.
468         (std::numeric_limits<long double>): Similarly.
469         * src/limits.cc (__glibcpp_float_denorm_min,
470         __glibcpp_double_denorm_min, __glibcpp_long_double_denorm_min): Remove.
472 2002-09-13  Andy Felt  <afelt@uwsp.edu>
474         * docs/html/17_intro/howto.html:  Update link.
476 2002-09-13  Phil Edwards  <pme@gcc.gnu.org>
478         * docs/doxygen/run_doxygen:  Massage man page for Iterator_types.3.
479         * docs/html/faq/index.html:  Whitespace fixes.
481 2002-09-12  Benjamin Kosnik  <bkoz@redhat.com>
483         * libmath/Makefile.am (LIBTOOL): Use --tag CC always for this
484         directory.
485         * libmath/Makefile.in: Regenerate.
486         * src/Makefile.am: Tweak comment.
487         * src/Makefile.in: Regenerate.
488         
489         * config/locale/gnu/c_locale.h: Remove warnings.
490         Inject __uselocale into __gnu_cxx.
491         * config/locale/generic/c_locale.h: Match.
492         
493 2002-09-11  Benjamin Kosnik  <bkoz@redhat.com>
495         * include/bits/locale_facets.tcc (__convert_from_v): Remove.
496         * config/locale/gnu/c_locale.h (__convert_from_v): Add.
497         * config/locale/generic/c_locale.h (__convert_from_v): Add.     
499 2002-09-11  Paolo Carlini  <pcarlini@unitus.it>
501         * include/bits/locale_facets.tcc (__convert_from_v):
502         Use __uselocale instead of setlocale for glibc 2.3+.
504 2002-09-10  Benjamin Kosnik  <bkoz@redhat.com>
506         * src/Makefile.am (sources): Edit.
507         (target_sources): New.
508         (target_sources_extra): New.
509         * src/Makefile.in: Regenerate.
510         * acinclude.m4: Set CCODECVT_CC. 
511         * aclocal.m4: Regenerate.
512         * configure: Regenerate.
513         * src/locale.cc: Move ctype definitions...
514         * src/ctype.cc: ...here. New file. 
515         * src/locale.cc: Move codecvt definitions...
516         * src/codecvt.cc: ...here.      
517         * config/generic/codecvt_members.cc: ...and here.       
518         * config/gnu/codecvt_members.cc: ...and here.           
519         * include/bits/codecvt.h: Tweak.
520         * include/bits/locale_facets: Tweak.
522         * src/bitset.cc: Correct license text.
523         * src/concept-inst.cc: Same.
524         * src/strstream.cc: Same.
525         * src/vterminate.cc: Same.      
527 2002-09-10  Gabriel Dos Reis  <gdr@soliton.integrable-solutions.net>
529         * include/bits/stl_vector.h (vector<>): Don't use a name with
530         different meanings before and after re-evaluation in the completed
531         scope. 
532         * include/bits/basic_string.h (basic_string<>): Likewise.
533         * include/bits/stl_bvector.h (vector<bool>): Likewise.
534         * include/bits/stl_deque.h (std): Likewise.
535         * include/bits/stl_list.h (list<>): Likewise.
536         * include/bits/stl_tree.h (_Rb_tree<>): Likewise.
538 2002-09-10  Paolo Carlini  <pcarlini@unitus.it>
540         * include/bits/codecvt.h (class __codecvt_abstract_base):
541         Add __c_locale type _M_c_locale_codecvt member.
542         (class codecvt<char, char, mbstate_t>,
543         class codecvt<wchar_t, char, mbstate_t>): Add new
544         codecvt(__c_locale, size_t) constructor.
545         (codecvt_byname::codecvt_byname): Update.
546         * src/codecvt.cc (class codecvt<char, char, mbstate_t>,
547         class codecvt<wchar_t, char, mbstate_t>): Update codecvt(size_t)
548         constructor and ~codecvt() destructor; define
549         codecvt(__c_locale, size_t) constructor.
550         (codecvt::do_out): Switch to _M_c_locale_codecvt around wcsrtombs call.
551         (codecvt::do_in): Ditto for mbsrtowcs call.
552         * src/localename.cc (locale::_Impl::_Impl(const char*, size_t)):
553         Tweak construction of codecvt facets.
555 2002-09-10  Danny Smith  <dannysmith@users.sourceforge.net>
557         * include/bits/locale_facets.tcc (__convert_from_v):
558         Replace strdup with ISO malloc and strcpy.
560 2002-09-09  Benjamin Kosnik  <bkoz@redhat.com>
562         * docs/html/configopts.html: Change grouping. Note ABI impacts.
563         Update information for locale model defaults.
564         * docs/html/install.html: Update include directory
565         information. 
566         Update testing information. 
567         Update linux issues for named locales.
568         * docs/html/abi.txt: Fix typos.
569         Add more info.
571         * src/misc-inst.cc: Add missing instantiations.
572         
573         * testsuite/abi_check.cc: Make output results more verbose.
574         
575         * config/os/gnu-linux/ctype_base.h: Remove shadow headers injections.
577 2002-09-07  Jakub Jelinek  <jakub@redhat.com>
579         * config/locale/generic/messages_members.cc: Add specialization for
580         messages<wchar_t>.
581         * config/locale/ieee_1003.1-20021/messages_members.cc: Likewise.
583 2002-09-06  Benjamin Kosnik  <bkoz@redhat.com>
585         * include/bits/localefwd.h: Tweak formatting.
586         * docs/html/abi.txt: Add.
588 2002-09-06  Jakub Jelinek  <jakub@redhat.com>
590         * configure.target: Use cpu_include_dir="config/cpu/sparc" for all
591         sparc targets.
592         * config/cpu/sparc/atomicity.h: New file.
593         * config/cpu/sparc/sparc32/atomicity.h: Removed.
594         * config/cpu/sparc/sparc64/atomicity.h: Removed.
596 2002-09-06  Jakub Jelinek  <jakub@redhat.com>
598         * config/os/gnu-linux/ctype_noninline.h
599         [_GLIBCPP_USE_SHADOW_HEADERS]: Remove using _C_legacy::__ctype_*.
600         (ctype<char>::classic_table): If _GLIBCPP_C_LOCALE_GNU, return
601         _S_c_locale->__ctype_b, otherwise temporarily switch to "C" locale
602         and return __ctype_b.
603         (ctype<char>::ctype(__c_locale, const mask*, bool, size_t)): If not
604         _GLIBCPP_C_LOCALE_GNU, temporarily switch to "C" locale and
605         initialize using __ctype_{b,tolower,toupper}.
606         (ctype<char>::ctype(const mask*, bool, size_t)): If
607         _GLIBCPP_C_LOCALE_GNU, initialize using
608         _S_c_locale->__ctype_{b,tolower,toupper}, otherwise temporarily
609         switch to "C" locale and initialize using __ctype_{b,tolower,toupper}.
611 2002-09-05  Paolo Carlini  <pcarlini@unitus.it>
612             Roland McGrath  <roland@redhat.com>
614         PR libstdc++/7811
615         * src/locale.cc (locale::locale(__s)): Use getenv instead
616         of setenv for the environment locale.
617         * testsuite/22_locale/ctor_copy_dtor.cc (test03): New.
619 2002-09-05  Jakub Jelinek  <jakub@redhat.com>
621         * config/abi/ia64-unknown-linux-gnu: Add.
622         * config/abi/ia64-unknown-linux-gnu/baseline_symbols.txt: New file.
623         * config/abi/alphaev67-unknown-linux-gnu: Add.
624         * config/abi/alphaev67-unknown-linux-gnu/baseline_symbols.txt: New file.
626 2002-09-05  Jonathan Wakely  <jw@kayari.org>
628         * docs/html/Makefile:  Use more portable shell wildcard.
629         * docs/html/makedoc.awk:  Nest elements correctly for XHTML conversion.
630         * docs/html/configopts.html, docs/html/documentation.html,
631         docs/html/explanations.html, docs/html/install.html,
632         docs/html/17_intro/contribute.html, docs/html/17_intro/howto.html,
633         docs/html/17_intro/license.html, docs/html/18_support/howto.html,
634         docs/html/19_diagnostics/howto.html, docs/html/20_util/howto.html,
635         docs/html/21_strings/howto.html, docs/html/22_locale/codecvt.html,
636         docs/html/22_locale/ctype.html, docs/html/22_locale/howto.html,
637         docs/html/22_locale/locale.html, docs/html/22_locale/messages.html,
638         docs/html/23_containers/howto.html, docs/html/24_iterators/howto.html,
639         docs/html/25_algorithms/howto.html, docs/html/26_numerics/howto.html,
640         docs/html/27_io/howto.html, docs/html/ext/howto.html,
641         docs/html/ext/sgiexts.html, docs/html/faq/index.html:  Convert
642         to XHTML.
643         * docs/html/faq/index.txt:  Regenerate.
645 2002-09-05  Jakub Jelinek  <jakub@redhat.com>
647         * config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_widen(char)):
648         Switch to _M_c_locale_ctype around btowc call.
649         (ctype<wchar_t>::do_widen(const char*, const char *, wchar_t*)):
650         Switch to _M_c_locale_ctype around mbsrtowcs call.
651         (ctype<wchar_t>::do_narrow(char)): Switch to _M_c_locale_ctype around
652         wctob call.
653         (ctype<wchar_t>::do_narrow(const char*, const char *, wchar_t*)):
654         Switch to _M_c_locale_ctype around wcsrtombs call.
656 2002-09-05  Jakub Jelinek  <jakub@redhat.com>
658         * config/locale/gnu/monetary_members.cc
659         (moneypunct<wchar_t, true>::_M_initialize_moneypunct,
660         moneypunct<wchar_t, false>::_M_initialize_moneypunct): Use
661         __uselocale instead of setlocale for glibc 2.3.
663 2002-09-05  Jakub Jelinek  <jakub@redhat.com>
665         * config/locale/generic/c++locale_internal.h: New header.
666         * config/locale/gnu/c++locale_internal.h: New header.
667         * config/locale/gnu/c_locale.cc: Include it.
668         * config/locale/gnu/collate_members.cc: Include it.
669         * config/locale/gnu/ctype_members.cc: Include it.
670         * config/locale/gnu/messages_members.cc: Include it.
671         * config/locale/gnu/monetary_members.cc: Include it.
672         * config/locale/gnu/numeric_members.cc: Include it.
673         * config/locale/gnu/time_members.cc: Include it.
674         (_M_put): Reorder __strftime_l and __wcsftime_l arguments to match
675         glibc.
676         (_M_initialize_timepunct): Initialize _M_c_locale_timepunct for
677         C locale.
678         * acinclude.m4: Include string.h when testing strcoll_l.
679         For glibc 2.3 provide __-prefixed prototypes.
680         (CLOCALE_INTERNAL_H): Set, add AC_LINK_FILES line.
681         * aclocal.m4, configure: Rebuilt.
683 2002-09-05  Benjamin Kosnik  <bkoz@redhat.com>
685         * include/bits/locale_facets.h: Add declaration of specialization
686         here.
687         * config/locale/gnu/messages_members.cc: Add specialization for
688         messages<wchar_t>.
689         * config/locale/gnu/messages_members.h: Remove generic definition
690         of do_get.
692 2002-09-04  Richard Henderson  <rth@redhat.com>
694         * include/std/std_limits.h (__glibcpp_f32_infinity_bytes,
695         __glibcpp_f32_has_infinity, __glibcpp_f64_infinity_bytes,
696         __glibcpp_f64_has_infinity, __glibcpp_f80_infinity_bytes,
697         __glibcpp_f80_has_infinity, __glibcpp_f96_infinity_bytes,
698         __glibcpp_f96_has_infinity, __glibcpp_f128_infinity_bytes,
699         __glibcpp_f128_has_infinity, __glibcpp_float_infinity_bytes,
700         __glibcpp_float_has_infinity, __glibcpp_double_infinity_bytes,
701         __glibcpp_double_has_infinity, __glibcpp_long_double_infinity_bytes,
702         __glibcpp_long_double_has_infinity): Remove.
703         (std::numeric_limits<float>, std::numeric_limits<double>,
704         std::numeric_limits<long double>): Use __builtin_huge_val
705         to implement has_infinity and infinity().
706         * src/limits.cc (__glibcpp_float_infinity, __glibcpp_double_infinity,
707         __glibcpp_long_double_infinity): Remove.
709 2002-09-03  Richard Henderson  <rth@redhat.com>
711         * include/std/std_limits.h (__glibcpp_f32_min, __glibcpp_f32_max,
712         __glibcpp_f32_digits, __glibcpp_f32_digits10, __glibcpp_f32_radix,
713         __glibcpp_f32_epsilon, __glibcpp_f32_min_exponent,
714         __glibcpp_f32_min_exponent10, __glibcpp_f32_max_exponent,
715         __glibcpp_f32_max_exponent10, __glibcpp_f64_min, __glibcpp_f64_max,
716         __glibcpp_f64_digits, __glibcpp_f64_digits10, __glibcpp_f64_radix,
717         __glibcpp_f64_min_exponent, __glibcpp_f64_min_exponent10,
718         __glibcpp_f64_max_exponent, __glibcpp_f64_max_exponent10,
719         __glibcpp_f80_min, __glibcpp_f80_max, __glibcpp_f80_digits,
720         __glibcpp_f80_digits10, __glibcpp_f80_radix, __glibcpp_f80_epsilon,
721         __glibcpp_f80_min_exponent, __glibcpp_f80_min_exponent10,
722         __glibcpp_f80_max_exponent, __glibcpp_f80_max_exponent10,
723         __glibcpp_f96_min, __glibcpp_f96_max, __glibcpp_f96_digits,
724         __glibcpp_f96_digits10, __glibcpp_f96_radix, __glibcpp_f96_epsilon,
725         __glibcpp_f96_min_exponent, __glibcpp_f96_min_exponent10,
726         __glibcpp_f96_max_exponent, __glibcpp_f96_max_exponent10,
727         __glibcpp_f128_min, __glibcpp_f128_max, __glibcpp_f128_digits,
728         __glibcpp_f128_digits10, __glibcpp_f128_radix, __glibcpp_f128_epsilon,
729         __glibcpp_f128_min_exponent, __glibcpp_f128_min_exponent10,
730         __glibcpp_f128_max_exponent, __glibcpp_f128_max_exponent10,
731         __glibcpp_float_min, __glibcpp_float_max, __glibcpp_float_digits,
732         __glibcpp_float_digits10, __glibcpp_float_radix,
733         __glibcpp_float_epsilon, __glibcpp_float_min_exponent,
734         __glibcpp_float_min_exponent10, __glibcpp_float_max_exponent,
735         __glibcpp_float_max_exponent10, __glibcpp_double_min,
736         __glibcpp_double_max, __glibcpp_double_digits,
737         __glibcpp_double_digits10, __glibcpp_double_radix,
738         __glibcpp_double_epsilon, __glibcpp_double_min_exponent,
739         __glibcpp_double_min_exponent10, __glibcpp_double_max_exponent,
740         __glibcpp_double_max_exponent10, __glibcpp_long_double_min,
741         __glibcpp_long_double_max, __glibcpp_long_double_digits,
742         __glibcpp_long_double_digits10, __glibcpp_long_double_radix,
743         __glibcpp_long_double_epsilon, __glibcpp_long_double_min_exponent,
744         __glibcpp_long_double_min_exponent10,
745         __glibcpp_long_double_max_exponent,
746         __glibcpp_long_double_max_exponent10): Remove macros.
747         (std::numeric_limits<float>, std::numeric_limits<double>,
748         std::numeric_limits<long double>): Use protected float.h macros.
750 2002-09-01  Phil Edwards  <pme@gcc.gnu.org>
752         * testsuite/Makefile.am:  Use LD_RUN_PATH when linking abi_check.
753         Fix spelling in comment.
754         * testsuite/Makefile.in:  Regenerate.
755         * testsuite/abi_check.cc:  Use string literals to build 'cmd' rather
756         than 'quote' and 'bslash'.
758 2002-08-31  Phil Edwards  <pme@gcc.gnu.org>
760         * acinclude.m4:  Minor comment tweaks.
762         * docs/html/makedoc.awk:  New file...
763         * docs/html/Makefile:  ...called from here...
764         * docs/html/documentation.html:  ...to help generate this.
766         * docs/html/21_strings/howto.html:  Prepare for new entry.
767         * include/bits/basic_string.h:  Initial basic_stirng hook for
768         doxygen.  Remove trailing whitespace.
769         * include/bits/char_traits.h:  Point to onlinedocs for new entry.
770         * include/bits/stringfwd.h:  Add doxygen hooks for string and
771         wstring typedefs.
773 2002-08-29  Richard Earnshaw  <rearnshaw@arm.com>
775         * config/cpu/arm/cpu_limits.h: New file.
776         * configure.target: Use config/cpu/arm for XScale and StrongARM
777         configurations.
779 2002-08-28  Gabriel Dos Reis  <gdr@integrable-solutions.net>
781         * include/std/std_limits.h (__glibcpp_char_bits,
782         __glibcpp_short_bits, __glibcpp_int_bits, __glibcpp_long_bits,
783         __glibcpp_long_long_bits, __glibcpp_float_bits,
784         __glibcpp_double_bits, __glibcpp_long_double_bits): Remove.  Use
785         compiler predifined macros.
786         (__glibcpp_wchar_t_is_signed): Define based on compiler predefined
787         __WCHAR_UNSIGNED__. 
789 2002-08-27  Gabriel Dos Reis  <gdr@integrable-solutions.net>
791         * include/std/std_limits.h (__glibcpp_f32_infinity_bytes,
792         __glibcpp_f32_has_infinity, __glibcpp_f32_QNaN_bytes,
793         __glibcpp_f32_has_QNaN, __glibcpp_f32_SNaN_bytes,
794         __glibcpp_f32_has_SNaN, __glibcpp_f32_denorm_min_bytes,
795         __glibcpp_f32_has_denorm, __glibcpp_f32_is_iec559,
796         __glibcpp_f64_infinity_bytes,
797         __glibcpp_f64_has_infinity, __glibcpp_f64_QNaN_bytes,
798         __glibcpp_f64_has_QNaN, __glibcpp_f64_SNaN_bytes,
799         __glibcpp_f64_has_SNaN, __glibcpp_f64_denorm_min_bytes,
800         __glibcpp_f64_has_denorm, __glibcpp_f64_is_iec559,
801         __glibcpp_f80_infinity_bytes,
802         __glibcpp_f80_has_infinity, __glibcpp_f80_QNaN_bytes,
803         __glibcpp_f80_has_QNaN, __glibcpp_f80_SNaN_bytes,
804         __glibcpp_f80_has_SNaN, __glibcpp_f80_denorm_min_bytes,
805         __glibcpp_f80_has_denorm, __glibcpp_f80_is_iec559,
806         __glibcpp_f96_infinity_bytes,
807         __glibcpp_f96_has_infinity, __glibcpp_f96_QNaN_bytes,
808         __glibcpp_f96_has_QNaN, __glibcpp_f96_SNaN_bytes,
809         __glibcpp_f96_has_SNaN, __glibcpp_f96_denorm_min_bytes,
810         __glibcpp_f96_has_denorm, __glibcpp_f96_is_iec559,
811         __glibcpp_f128_infinity_bytes,
812         __glibcpp_f128_has_infinity, __glibcpp_f128_QNaN_bytes,
813         __glibcpp_f128_has_QNaN, __glibcpp_f128_SNaN_bytes,
814         __glibcpp_f128_has_SNaN, __glibcpp_f128_denorm_min_bytes,
815         __glibcpp_f128_has_denorm, __glibcpp_f128_is_iec559,
816         __glibcpp_float_infinity_bytes,
817         __glibcpp_float_has_infinity, __glibcpp_float_QNaN_bytes,
818         __glibcpp_float_has_QNaN, __glibcpp_float_SNaN_bytes,
819         __glibcpp_float_has_SNaN, __glibcpp_float_denorm_min_bytes,
820         __glibcpp_float_has_denorm, __glibcpp_float_is_iec559,
821         __glibcpp_double_infinity_bytes,
822         __glibcpp_double_has_infinity, __glibcpp_double_QNaN_bytes,
823         __glibcpp_double_has_QNaN, __glibcpp_double_SNaN_bytes,
824         __glibcpp_double_has_SNaN, __glibcpp_double_denorm_min_bytes,
825         __glibcpp_double_has_denorm, __glibcpp_double_is_iec559,
826         __glibcpp_long_double_infinity_bytes,
827         __glibcpp_long_double_has_infinity, __glibcpp_long_double_QNaN_bytes,
828         __glibcpp_long_double_has_QNaN, __glibcpp_long_double_SNaN_bytes,
829         __glibcpp_long_double_has_SNaN, __glibcpp_long_double_denorm_min_bytes,
830         __glibcpp_long_double_has_denorm, __glibcpp_long_double_is_iec559:
831         New macros.
832         (__glibcpp_word_bits, __glibcpp_word): Likewise.
833         (__glibcpp_byte): New typedef.
834         (__float_storage, __double_storage, __long_double_storage): New types.
835         (__glibcpp_float_infinity, __glibcpp_float_QNaN,
836         __glibcpp_float_SNaN, __glibcpp_float_denorm_min): Now
837         objects. Declare.
838         (__glibcpp_double_infinity, __glibcpp_double_QNaN,
839         __glibcpp_double_SNaN, __glibcpp_double_denorm_min): Likewise.
840         (__glibcpp_long_double_infinity, __glibcpp_long_double_QNaN,
841         __glibcpp_long_double_SNaN, __glibcpp_long_double_denorm_min):
842         Likewise.
843         
844         * src/limits.cc (__glibcpp_float_infinity, __glibcpp_float_QNaN,
845         __glibcpp_float_SNaN, __glibcpp_float_denorm_min): Define.
846         (__glibcpp_double_infinity, __glibcpp_double_QNaN,
847         __glibcpp_double_SNaN, __glibcpp_double_denorm_min): Likewise.
848         (__glibcpp_long_double_infinity, __glibcpp_long_double_QNaN,
849         __glibcpp_long_double_SNaN, __glibcpp_long_double_denorm_min):
850         Likewise.
851         
852 2002-08-25  Gabriel Dos Reis  <gdr@integrable-solutions.net>
854         * include/std/std_limits.h: Indent conditional macro definitions.
856 2002-08-23  Phil Edwards  <pme@gcc.gnu.org>
858         * Makefile.am (check-abi):  Specify current directory.
859         * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE):  Fix shell syntax, use
860         abi_baseline_triplet in baseline_file.
861         * Makefile.in, aclocal.m4, configure:  Regenerate.
862         * configure.target:  Add abi_baseline_triplet with default.
863         * testsuite/abi_check.cc:  More error checking.
865 2002-08-23  Phil Edwards  <pme@gcc.gnu.org>
867         * config/linker-map.gnu:  Verbose comments, clean up spacing.
868         * include/bits/stl_alloc.h:  Fix indentation of 'if' bodies, return
869         statements.
870         __allocator:  Change class declaration to struct.
871         * docs/html/17_intro/C++STYLE:  Fix typo.
872         * include/bits/stl_deque.h, include/bits/stl_list.h,
873         include/bits/stl_map.h, include/bits/stl_multimap.h,
874         include/bits/stl_vector.h:  Fix fallout from typo.
876 2002-08-22  Benjamin Kosnik  <bkoz@redhat.com>
878         * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Set
879         GLIBCPP_BUILD_ABI_CHECK based on cross compiling, build, host
880         variables.
881         * aclocal.m4: Regenerate.
882         * testsuite/Makefile.am (noinst_PROGRAMS): Make conditional on
883         native compiling.
884         * testsuite/Makefile.in: Regenerate.
885         
886 2002-08-22  Loren J. Rittle <ljrittle@acm.org>
888         * testsuite/abi_check.cc: Enhance shell portability.
889         Support older binutils/readelf.
890         * config/abi/i386-unknown-freebsd4.6: Add.
891         * config/abi/i386-unknown-freebsd4.6/baseline_symbols.txt: New file.
893 2002-08-22  Paolo Carlini  <pcarlini@unitus.it>
895         * docs/html/faq/index.html: Add Loren James Rittle and
896         Paolo Carlini to the list of v3 maintainers.
897         * docs/html/faq/index.txt: Ditto.
898         * docs/html/17_intro/RELEASE-NOTES: Ditto.
900 2002-08-22  Benjamin Kosnik  <bkoz@redhat.com>
901             Phil Edwards  <pme@gcc.gnu.org>
902             Ulrich Drepper  <drepper@redhat.com>
903         
904         * Makefile.am (check-abi): New rule.
905         * Makefile.in: Regenerate.
906         * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Export baseline_file.
907         * aclocal.m4: Regenerate.
908         * configure: Regenerate.
909         * testsuite/Makefile.am (noinst_PROGRAMS): Add abi_check.
910         (abi_check_SOURCES): Add.
911         * testsuite/Makefile.in: Regenerate.    
912         * testsuite/abi_check.cc: New file.
913         * config/abi: Add.
914         * config/abi/i686-pc-linux-gnu: Add.
915         * config/abi/i686-pc-linux-gnu/baseline_symbols.txt: New file.
916         
917 2002-08-19  Benjamin Kosnik  <bkoz@redhat.com>
919         * configure.in (libtool_VERSION): Update to 5:1:0.
920         * configure: Regenerate.
921         
922 2002-08-19  Jonathan Wakely  <jw@kayari.org>
924         * docs/html/configopts.html, docs/html/documentation.html,
925         docs/html/install.html, docs/html/22_locale/codecvt.html,
926         docs/html/22_locale/ctype.html, docs/html/22_locale/howto.html,
927         docs/html/22_locale/locale.html,
928         docs/html/22_locale/messages.html: Conform to HTML 4.01 standard.
930 2002-08-15  Benjamin Kosnik  <bkoz@redhat.com>
932         * include/ext/stdio_filebuf.h (stdio_filebuf): Explicitly set
933         _M_buf_size_opt to zero when unbuffering.
934         * include/bits/fstream.tcc (filebuf::showmanyc): Simplify.
935         Consistency checks for _M_buf_size_opt.
937         Revert PR libstdc++/7445
938         * src/locale.cc (locale::classic): Revert.
939         
940         * docs/html/17_intro/TODO: Add.
941         
942 2002-08-15  Phil Edwards  <pme@gcc.gnu.org>
944         * docs/html/documentation.html:  Update doxygen links for 3.2.
946 2002-08-15  Steve Ellcey  <sje@cup.hp.com>
948         * libsupc++/unwind-cxx.h (__cxa_exception): Change catchTemp
949         type from void* to _Unwind_Ptr.
950         * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION):
951         Do not cast landing_pad or base_of_encoded_value to (void *).
952         * libsupc++/eh_throw.cc (__gxx_exception_cleanup):
953         Accept _URC_NO_REASON as a valid reason code.
955 2002-08-14  Jonathan Wakely  <jw@kayari.org>
957         * docs/html/22_locale/messages.html:  Use HTML entities for
958         punctuation.
960 2002-08-13  Jonathan Wakely  <jw@kayari.org>
961             Phil Edwards  <pme@gcc.gnu.org>
963         * docs/html/documentation.html:  Use HTML entities for punctuation.
965 2002-08-09  Phil Edwards  <pme@gcc.gnu.org>
967         * include/bits/deque.tcc, include/bits/list.tcc,
968         include/bits/stl_deque.h, include/bits/stl_iterator_base_funcs.h,
969         include/bits/stl_list.h, include/bits/stl_map.h,
970         include/bits/stl_multimap.h, include/bits/stl_queue.h,
971         include/bits/stl_stack.h, include/bits/stl_vector.h,
972         include/bits/vector.tcc:  Re-indent contents of namespace std,
973         re-wrap comment lines as necessary.
975 2002-08-08  Danny Smith  <dannysmith@users.sourceforge.net>
976             Benjamin Kosnik  <bkoz@redhat.com>
977         
978         * include/bits/istream.tcc (basic_istream::ignore): Use sbumpc,
979         not snextc.
980         * testsuite/27_io/narrow_stream_objects.cc (test10): Add.
981         
982 2002-08-07  John David Anglin  <dave@hiauly1.hia.nrc.ca>
984         * libsupc++/Makefile.am (LTCOMPILE): Add LIBSUPCXX_PICFLAGS.
985         * libsupc++/Makefile.in: Regenerate.
987 2002-08-05  Gabriel Dos Reis  <gdr@nerim.net>
989         PR/7491
990         * include/bits/slice_array.h(_DEFINE_VALARRAY_OPERATOR):
991         Instantiate with new function objects. 
992         * include/bits/mask_array.h (_DEFINE_VALARRAY_OPERATOR): Likewise.
993         Reformat.  Uglify.
994         * include/bits/gslice_array.h: Likewise.
995         * include/bits/indirect_array.h: Likewise.
997 2002-08-03  Gabriel Dos Reis  <gdr@nerim.net>
999         * testsuite/26_numerics/valarray_name_lookup.cc: Rename from
1000         testsuite/26_numerics/valarray_name_lookup.C
1002         * include/bits/valarray_array.h (_DEFINE_ARRAY_FUNCTION): Use our
1003         object function surrogates.
1004         * include/bits/valarray_meta.h (__shift_left): Fix typo.
1005         (_BinFunClos<>): Remove.
1006         (_BinFunBase<>): Likewise.
1007         (_BinFunBase1<>):Likewise.
1008         (_BinFunBase2<>): Likewise.
1009         (_DEFINE_EXPR_RELATIONAL_OPERATOR): Likewise.
1010         (_DEFINE_EXPR_UNARY_OPERATOR): Adjust definition.
1011         (_DEFINE_EXPR_BINARY_OPERATOR): Likewise.
1012         (_DEFINE_EXPR_BINARY_FUNCTION): Likewise.
1013         * include/std/std_valarray.h: Dont #include <functional> anymore.
1014         (_Bitwise_or<>, _Bitwise_and<>, _Bitwise_xor<>, _Shift_left<>,
1015         _Shift_right<>): Remove.
1016         (_DEFINE_VALARRAY_AUGMENTED_ASSIGNMENT): Adjust instantiation.
1017         (_DEFINE_BINARY_OPERATOR): Tweak definition.
1018         (_DEFINE_LOGICAL_OPERATOR): Remove.
1019         * testsuite/26_numerics/valarray_name_lookup.C (main): Add more tests.
1021 2002-08-02  Gabriel Dos Reis  <gdr@nerim.net>
1023         * include/bits/valarray_meta.h (_UnFunBase<>): Remove.
1024         (_UnFunClos<>): Same.
1025         (_UnBase<>): Reformat.  Make first template-parameter non
1026         template. 
1027         (_UnClos<>): Likewise.
1028         (_Expr<>): Reformate.  Adjust unary member operator return types. 
1029         (_DEFINE_EXPR_UNARY_OPERATOR): Adjust definition.
1030         (_DEFINE_EXPR_UNARY_FUNCTION): Likewise.
1031         * include/std/std_valarray.h (_UnClos<>): Adjust declaration.
1032         (valarray<>::_UnaryOp<>):  New nested traits. Adjust unary member
1033         operator return types.  Reformat.
1034         (_Bitwise_not): Remove.
1035         (_DEFINE_VALARRAY_UNARY_OPERATOR): Adjust definition.
1036         * testsuite/26_numerics/valarray_name_lookup.C: New test.
1038 2002-08-02  Danny Smith  <dannysmith@users.sourceforge.net>
1040         * config/os/newlib/ctype_inline.h (is): Don't offset _M_table.
1041         (scan_is): Use this->is.
1042         (scan_not): Likewise.
1044 2002-08-02  Benjamin Kosnik  <bkoz@redhat.com>
1046         Revert PR libstdc++/6594
1047         * src/strstream.cc (strstreambuf): Revert.
1048         (strstreambuf::overflow): Same.
1049         (strstreambuf::~strstreambuf): Same.    
1050         * testsuite/backward/strstream_members.cc (test02): Add.
1051         
1052         * docs/html/abi.txt: Update. Spell check.
1054         * testsuite/19_diagnostics/stdexceptions.cc (test04): Add bool test.
1056         * testsuite/Makefile.am (INCLUDES): Add LIBSUPCXX_INCLUDES.
1057         * testsuite/Makefile.in: Regenerate.
1058         * testsuite/testsuite_hooks.h: Use __throw_exception_again,
1059         include functexcept.h so that -fno-exceptions will build.
1060         
1061 2002-08-02  Gabriel Dos Reis  <gdr@nerim.net>
1063         * include/bits/valarray_meta.h (__unary_plus, __negate,
1064         __bitwise_not, __plus, __minus, __multiplies, __divides,
1065         __modulus, __bitwise_xor, __bitwise_or, __bitwise_and,
1066         __shift_left, __shift_right, __logical_and, __logical_or,
1067         __logical_not, __equal_to, __not_equal_to, __less, __less_equal,
1068         __greater_equal, __greater, __atan2, __pow): New function object
1069         classes. 
1070         (__fun<>):  New function traits class.
1072 2002-08-01  Rick Danos  <rdanos@hotmail.com>
1074         PR libstdc++/7461
1075         * config/os/newlib/ctype_noninline.h (classic_table): Add offset.
1076         * config/os/newlib/ctype_inline.h (is): Use static_cast.
1078 2002-08-01  Neil Booth  <neil@daikokuya.co.uk>
1080         * libsupc++/Makefile.am (LT_COMPILE): Remove C++ flags.
1081         * libsupc++/Makefile.in: Regenerate.
1082         
1083 2002-08-01  Benjamin Kosnik  <bkoz@redhat.com>
1084             Jakub Jelinek  <jakub@redhat.com>
1085         
1086         * config/linker-map.gnu: Change CXXABI_1 to CXXABI_1.2,
1087         GLIBCPP_3.1 to GLIBCPP_3.2.
1089 2002-07-31  Benjamin Kosnik  <bkoz@redhat.com>
1090             Mark Mitchell  <mark@codesourcery.com>
1092         PR libstdc++/7442
1093         * libsupc++/cxxabi.h (class __base_class_type_info::hwm_bit):
1094         Change to __hwm_bit.
1095         (__class_type_info): And here.
1097 2002-07-31  Benjamin Kosnik  <bkoz@redhat.com>
1099         PR libstdc++/7442
1100         * libsupc++/cxxabi.h 
1101         (__base_class_info): Change to __base_class_type_info. 2.9.5p6c
1102         (__base_class_info::__base): Change to __base_type. 2.9.5p6c
1103         (__base_class_info::offset_shift): Change to __offset_shift. 2.9.5p6c
1104         (__vmi_class_type_info::__base_info): Don't make const, of type
1105         __base_class_type_info, as per 2.9.5p6c
1106         (__pbase_type_info::__qualifier_flags): Change to __flags, as per
1107         2.9.5p7.
1108         (__pbase_type_info::__qualifier_masks): Change to __masks, as per
1109         2.9.5p7.
1110         (__pointer_to_member_type_info::__context_class): Change member to
1111         __context, as per 2.9.5p9.
1112         * libsupc++/tinfo2.cc (__pointer_catch): Change __context_class to
1113         __context.
1114         * libsupc++/tinfo2.cc (__do_catch): Change __qualifier_flags to
1115         __flags.
1116         * libsupc++/tinfo.cc (__do_find_public_src): Change __base to
1117         __base_type.
1118         * libsupc++/tinfo.cc (__do_dyncast): Same.
1119         * libsupc++/tinfo.cc (__do_upcast): Same.
1121 2002-07-31  Benjamin Kosnik  <bkoz@redhat.com>
1123         * src/fstream.cc: Add _GLIBCPP_USE_WCHAR_T guards.
1125 2002-07-31  Simon Whomsley  <whomsley@avacadcam.com>
1127         * docs/html/22_locale/howto.html: Fix.
1129 2002-07-31  Alex Kompel  <shurik@sequoiap.com>
1131         PR libstdc++/7445
1132         * src/locale.cc (locale::classic): Move locks inside !_S_classic
1133         block.
1135 2002-07-31  Benjamin Kosnik  <bkoz@redhat.com>
1137         * docs/html/abi.txt: Update.
1139 2002-07-30  Benjamin Kosnik  <bkoz@redhat.com>
1140             Gabriel Dos Reis  <gdr@nerim.net>
1142         * include/bits/char_traits.h: Remove generic definitions.
1143         * include/bits/streambuf_iterator.h (istreambuf_iterator): Use
1144         eof, not -2.
1145         * include/bits/istream.tcc (istream::readsome): Don't check
1146         against eof, instead use constants.
1147         (istream::sync): Same.
1148         (istream::sentry::sentry): Use eq_int_type.
1149         (istream::get): Same.
1150         * include/bits/ostream.tcc: Change __pad to 
1151         __pad<_CharT, _Traits>::_S_pad. 
1152         * include/bits/locale_facets.h: Add __pad_traits generic and
1153         ostreambuf_iterator specialization.
1154         * include/bits/locale_facets.tcc: Change __pad into struct __pad
1155         with a _CharT and _Traits template parameter and _S_pad static
1156         member function.
1157         * src/locale-inst.cc: Update __pad instantiations.
1158         
1159         * include/std/std_fstream.h: Declare _M_underflow_common
1160         specializations.
1161         * src/fstream.cc: New. Add _M_underflow_common specializations.
1162         * include/bits/fstream.tcc (filebuf::close): Use traits_type.
1163         (filebuf::_M_underflow_common(bool)): Remove generic version, as
1164         sys_ungetc and custom int_types don't get along.
1165         * include/std/std_streambuf.h: Add _M_pos.
1166         * src/Makefile.am (sources): Add fstream.cc.
1167         * src/Makefile.in: Regenerate.
1169         * testsuite/21_strings/capacity.cc: Add char_traits specializations.
1170         * testsuite/22_locale/codecvt_members_unicode_char.cc: Same.
1171         * testsuite/22_locale/codecvt_members_unicode_wchar_t.cc: Same.
1172         * testsuite/22_locale/ctor_copy_dtor.cc: Same.
1173         * testsuite/27_io/filebuf_virtuals.cc (test07): Move to...
1174         * testsuite/27_io/filebuf.cc: ...here.
1175         * testsuite/testsuite_hooks.h: Add gnu_char, gnu_int, char_traits
1176         specialization for both.
1177         * testsuite/27_io/streambuf.cc: Add instantiation test,
1178         testsuite_hooks include.
1179         * testsuite/27_io/istream.cc: Same.
1180         * testsuite/27_io/ostream.cc: Same.     
1181         * testsuite/27_io/fstream.cc: Same.
1182         * testsuite/27_io/stringstream.cc: Same.
1183         * testsuite/27_io/filebuf.cc: Same.
1184         * testsuite/27_io/stringbuf.cc: Same.
1185         
1186 2002-07-29  Alan Modra  <amodra@bigpond.net.au>
1188         * config/cpu/powerpc/cpu_limits.h (__glibcpp_long_bits): Define.
1189         * configure.target (cpu_include_dir): Use cpu/powerpc for powerpc64.
1190         * config/cpu/powerpc/atomicity.h (__always_swap): Remove.
1191         (__test_and_set): Remove.
1192         (_STWCX): Define and use.
1194 2002-07-26  Phil Edwards  <pme@gcc.gnu.org>
1196         * libsupc++/new (placement delete):  Remove unused parameter names.
1198 2002-07-25  Benjamin Kosnik  <bkoz@redhat.com>
1200         PR libstdc++/7216
1201         * include/std/std_istream.h (basic_iostream): Add typedefs for
1202         char_type, int_type, pos_type, off_type, and traits_type.
1203         * testsuite/27_io/iostream.cc (test01): Add typedef tests.
1204         * testsuite/27_io/istream.cc: Same.
1205         * testsuite/27_io/ostream.cc: Same.
1206         * testsuite/27_io/filebuf.cc: Same.
1207         * testsuite/27_io/stringbuf.cc: Replace content, move to...
1208         * testsuite/27_io/stringbuf_members.cc: ...here.        
1209         * testsuite/27_io/streambuf.cc: Replace content, move to...
1210         * testsuite/27_io/streambuf_members.cc: ...here.        
1211         * testsuite/27_io/stringstream.cc: Replace content, move to...
1212         * testsuite/27_io/stringstream_members.cc: ...here.
1213         * testsuite/27_io/ios.cc: New file.
1214         * testsuite/27_io/fstream.cc: New file.
1215         * testsuite/27_io/ifstream.cc: New file.        
1216         * testsuite/27_io/ofstream.cc: New file.                
1217         * testsuite/27_io/istringstream.cc: New file.   
1218         * testsuite/27_io/ostringstream.cc: New file.   
1219         
1220 2002-07-25  Benjamin Kosnik  <bkoz@redhat.com>
1222         PR libstdc++/7220
1223         * include/bits/istream.tcc (istream::ignore): Don't extract on
1224         zero.
1225         * testsuite/27_io/istream_unformatted.cc (test10): Add.
1226         
1227 2002-07-25  Benjamin Kosnik  <bkoz@redhat.com>
1229         * testsuite/27_io/ios_base_type.cc: Move to...
1230         * testsuite/27_io/ios_base_types.cc: ...here.
1231         
1232 2002-07-24  Benjamin Kosnik  <bkoz@redhat.com>
1234         PR libstdc++/7222
1235         * src/locale.cc (locale::locale(const char*)): Use setlocale NULL.
1236         * testsuite/22_locale/ctor_copy_dtor.cc (test02): New.
1237         
1238 2002-07-24  Benjamin Kosnik  <bkoz@redhat.com>
1240         PR libstdc++/7230
1241         * config/linker-map.gnu: Revert strstream patch from 2002-07-01.
1242         * include/Makefile.am (backward_headers): Use strstream, not
1243         strstream.h.
1244         * include/Makefile.in: Regenerate.
1245         * include/backward/strstream: Revert.
1246         * include/backward/strstream.h: Remove.
1247         * src/strstream.cc: Revert.
1248         * testsuite/backward/strstream_members.cc: Change include.      
1250 2002-07-24  Benjamin Kosnik  <bkoz@redhat.com>
1252         PR libstdc++/7219
1253         * include/bits/ios_base.h (ios_base::streampos): Add.
1254         (ios_base::streamoff): Add.
1255         * testsuite/27_io/ios_base_type.cc: New.
1256         
1257 2002-07-24  Benjamin Kosnik  <bkoz@redhat.com>
1259         PR libstdc++/7286
1260         * libsupc++/new: Add placement delete.
1261         * testsuite/18_support/new_delete_placement.cc: New.
1263         * docs/html/abi.txt: Fix typos.
1264         
1265 2002-07-23  Benjamin Kosnik  <bkoz@redhat.com>
1267         * docs/html/documentation.html: Remove libstdc++-v3.0.86 links,
1268         confusing usage of "latest."
1269         De-tangle contributor information from introductory notes.
1270         Move abi.txt link placement, activate.
1271         Re-organize.
1272         Move chapter info into old FAQ format. 
1273         * docs/html/organization.html: Removed, obsoleted by doxygen work.
1274         * docs/html/abi.txt: Add notes on testing ABI changes.
1275         
1276 2002-07-20  Phil Edwards  <pme@gcc.gnu.org>
1278         * docs/html/abi.txt:  New file.
1279         * docs/html/23_containers/howto.html:  Tweak vector-overhead text.
1280         * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
1281         Import from upstream, R22.
1283         * include/bits/char_traits.h, include/bits/stl_iterator.h,
1284         include/bits/stl_iterator_base_types.h, libsupc++/exception,
1285         libsupc++/new, libsupc++/typeinfo:  Use @brief markup.
1287         * include/bits/deque.tcc, include/bits/stl_alloc.h,
1288         include/bits/stl_deque.h, include/bits/stl_list.h:  Postpone removal
1289         of deprecated functions until 3.4.  (Same timeframe, different text.)
1290         * include/bits/stl_vector.h:  Ditto.  Also do the same cleanups that
1291         the other sequence classes received.
1293 2002-07-18  Brendan Kehoe  <brendan@zen.org>
1295         * bits/slice_array.h (_DEFINE_VALARRAY_OPERATOR): Fix typo of
1296         _Nname to _Name.
1297         
1298 2002-07-19  Gabriel Dos Reis  <gdr@nerim.net>
1300         DR/123
1301         * include/bits/slice_array.h 
1302         (slice_array<T>::operator=(const T&)): Constify.
1303         * include/bits/gslice_array.h 
1304         (gslice_array<T>::operator=(const T&)):  Likewise.
1305         * include/bits/mask_array.h 
1306         (mask_array<T>::operator=(const T&)): Likewise.
1307         * include/bits/indirect_array.h
1308         (indirect_array<T>::operator=(const T&): Likewise.
1310 2002-07-17  Phil Edwards  <pme@gcc.gnu.org>
1312         * docs/doxygen/run_doxygen:  Remove template parameter names from
1313         "Compound List" summary page.  Reformat.
1314         * docs/html/documentation.html:  XHTML fixes.
1316 2002-07-16  Andreas Schwab  <schwab@suse.de>
1318         * libsupc++/new (set_new_handler): Declare to not throw any
1319         exceptions.
1320         * libsupc++/new_handler.cc (set_new_handler): Likewise.
1322 2002-07-16  Gabriel Dos Reis  <gdr@nerim.net>
1324         * include/Makefile.am (bits_headers): Remove slice.h
1325         * include/Makefile.in: Regenerate.
1326         * include/bits/slice.h (slice): move to include/bits/slice_array.h
1327         * include/bits/slice.h Remove.
1328         * include/std/std_valarray.h: Don't #include bits/slice.h anymore.
1329         * include/bits/slice_array.h: Comply to official coding styles.
1330         * testsuite/26_numerics/slice.cc: New test.
1332 2002-07-15  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1334         * config/os/solaris/solaris2.5/ctype_base.h (ctype_base): Fix
1335         print to match vendor <ctype.h>.
1337 2002-07-15  Phil Edwards  <pme@gcc.gnu.org>
1339         * docs/html/faq/index.html:  Fix download links.
1340         * docs/html/faq/index.txt:  Regenerate.
1341         * docs/html/17_intro/porting.html:  Regenerate from earlier changes.
1343 2002-07-11  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1345         * configure.target (target_os switch): Allow for irix6*o32
1346         configurations.
1348 2002-07-10  Gabriel Dos Reis  <gdr@nerim.net>
1350         * include/bits/valarray_meta.h (_UnFunBase): Take a second
1351         template parameter. Remove _M_func data member.
1352         (_UnFunClos): Take a third template parameter.
1353         (__abs, __cos, __acos, __cosh, __sin, __asin, __sinh, __tan,
1354         __atan, __tanh, __exp, __log, __log10, __sqrt): New classes.
1355         (_DEFINE_EXPR_UNARY_OPERATOR): Adjust definition.
1357 2002-07-08  Eric Christopher  <echristo@redhat.com>
1359         * configure.target: Fix comment for mips atomicity. Add
1360         mips*-*-linux* target, enable atomic operations there.
1361         * config/cpu/mips/atomicity.h: Fix comments, remove
1362         #ifndef/#endif. Add push/pop mips2.
1364 2002-07-08  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
1366         * include/bits/stl_deque.h (_Deque_alloc_base):  Change order of
1367         member declarations to avoid compiler warnings and restore 3.1 ABI.
1369 2002-07-08  Phil Edwards  <pme@gcc.gnu.org>
1371         * docs/html/23_containers/howto.html:  Link to dk_std::vector paper
1372         and homepage.
1374 2002-07-07  Paolo Carlini  <pcarlini@unitus.it>
1376         PR libstdc++/7186
1377         * include/bits/stl_deque.h (_Deque_iterator::operator-):
1378         Make non-member, as already happens for the comparison
1379         operators in accord with DR179 (Ready).
1380         * testsuite/23_containers/deque_operators.cc: Add test02.
1382 2002-07-04  Benjamin Kosnik  <bkoz@redhat.com>
1383             Jack Reeves  <jackw_reeves@hotmail.com>
1385         * include/std/std_streambuf.h (basic_streambuf::_M_buf): Change to
1386         size_t, from int_type.
1387         (basic_streambuf::_M_buf_size_opt): Same.
1388         (basic_streambuf::_S_pback_sizex): Same.
1389         * include/bits/streambuf.tcc: Same.
1390         * include/std/std_streambuf.h (basic_streambuf::snextc): Use
1391         eq_int_type.
1392         (basic_streambuf::uflow): Same.
1393         * include/bits/sstream.tcc (basic_stringbuf::overflow): Use
1394         to_char_type.
1395         * include/bits/basic_ios.tcc (basic_ios::init): Use _CharT().
1396         * include/bits/streambuf.tcc (basic_streambuf::xsgetn): Use
1397         eq_int_type.
1398         (basic_streambuf::xsputn): Same.
1399         (__copy_streambufs): Same.
1401 2002-07-03  Benjamin Kosnik  <bkoz@redhat.com>
1403         * include/std/std_memory.h: Fix formatting.
1404         * testsuite/20_util/auto_ptr_neg.cc: New.
1405         * testsuite/20_util/auto_ptr.cc: Tweaks.
1406         * testsuite/23_containers/map_operators.cc (test01): Split into..
1407         * testsuite/23_containers/map_operators_neg.cc (test01): ...this. New.
1408         * testsuite/23_containers/set_operators.cc: Move to...
1409         * testsuite/23_containers/set_operators_neg.cc: ...here.
1410         * testsuite/README: Add some more naming rules.
1412 2002-07-03  Steev Wilcox  <steev@paradigmds.com>
1414         PR libstdc++/7057
1415         * include/ext/stl_hashtable.h: Fix.
1416         * testsuite/ext/hash_map.cc: New.
1418 2002-07-03  Jack Reeves  <jackw_reeves@hotmail.com>
1419             Kenny Simpson  <theonetruekenny@yahoo.com>
1420             Phil Edwards  <pme@gcc.gnu.org>
1422         PR libstdc++/3946
1423         * testsuite/20_util/auto_ptr.cc (test08):  New test.
1424         * include/std/std_memory.h (auto_ref_ptr):  Make constructor explicit.
1425         (auto_ptr::operator auto_ptr_ref):  Fix typo.
1426         General reformatting and doxygenating of the whole file.
1428 2002-07-03  Benjamin Kosnik  <bkoz@redhat.com>
1430         PR libstdc++/7097
1431         * include/c/std_cwchar.h: Fix.
1433 2002-07-02  Benjamin Kosnik  <bkoz@redhat.com>
1435         PR libstdc++/6410
1436         * include/bits/locale_facets.h (moneypunct::moneypunct): Add const
1437         char* name parameter.
1438         * config/locale/gnu/monetary_members.cc: Use it.
1439         * config/locale/generic/monetary_members.cc: Same.
1440         * src/localename.cc (_Impl::_Impl(const char*, size_t)): Use it.
1442         * include/backward/strstream.h: Update date.
1444 2002-07-02  Paolo Carlini  <pcarlini@unitus.it>
1446         PR libstdc++/6642
1447         * include/bits/stl_iterator.h
1448         (__normal_iterator::operator-(const __normal_iterator&)):
1449         Make non-member, as already happens for the comparison
1450         operators in accord with DR179 (Ready).
1451         * testsuite/24_iterators/iterator.cc: Add test from the PR.
1453 2002-07-02  Phil Edwards  <pme@gcc.gnu.org>
1455         PR libstdc++/7173
1456         * acinclude.m4:  Simplify determination of gcc_version, and move
1457         up to GLIBCPP_CONFIGURE.
1458         * configure.in (release_VERSION):  Really remove.
1459         (AM_INIT_AUTOMAKE, AM_CONFIG_HEADER):  Move after GLIBCPP_CONFIGURE.
1460         * aclocal.m4, configure:  Regenerate.
1462 2002-07-02  Phil Edwards  <pme@gcc.gnu.org>
1464         * docs/html/configopts.html, docs/html/install.html:  Tweaks.
1465         * include/ext/algorithm, include/ext/hash_map, include/ext/hash_set,
1466         include/ext/iterator, include/ext/numeric, include/ext/rb_tree,
1467         include/ext/slist, include/ext/stl_rope.h:  Add doxygen hooks.
1469 2002-07-01  Benjamin Kosnik  <bkoz@redhat.com>
1471         * include/backward/strstream: Remove namespace std. Transfer to...
1472         * include/backward/strstream.h: ...here. Qualify std names.
1473         * src/strstream.cc: Remove namespace std.
1474         * include/Makefile.am (backward_headers): Remove strstream.h.
1475         * include/Makefile.in: Regenerate.
1476         * config/linker-map.gnu: Export strstream bits.
1478         * src/fstream-inst.cc: Tweak.
1479         * src/io-inst.cc: Same.
1480         * src/istream-inst.cc: Same.
1481         * src/misc-inst.cc: Same.
1482         * src/ostream-inst.cc: Same.
1483         * src/sstream-inst.cc: Same.
1484         * src/valarray-inst.cc: Same.
1485         * src/misc-inst.cc: Remove unused instantiations.
1487 2002-07-01  Benjamin Kosnik  <bkoz@redhat.com>
1489         * configure.in (libtool_VERSION): Bump to 5:0:0.
1490         * configure: Regenerate.
1492 2002-06-28  Phil Edwards  <pme@gcc.gnu.org>
1494         PR libstdc++/7157, PR libstdc++/7158, PR libstdc++/7161
1495         * include/std/std_queue.h:  Include deque.tcc, vector.tcc.
1496         * include/std/std_stack.h:  Include deque.tcc.
1497         * testsuite/23_containers/adaptors.cc:  New file.
1499 2002-06-27  Phil Edwards  <pme@gcc.gnu.org>
1501         * include/bits/stl_alloc.h:  Deprecate all 'reallocate' memfns.
1502         * docs/html/ext/howto.html:  Update allocator notes.
1504 2002-06-26  Benjamin Kosnik  <bkoz@redhat.com>
1506         * configure.in (INTERFACE): Remove.
1507         (release_VERSION): Remove.
1508         * acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Change include placement.
1509         (libstdcxx_interface): Change. Use gcc methods to determine version.
1510         * configure: Regenerate.
1511         * aclocal.m4: Regenerate.
1513 2002-06-25  DJ Delorie  <dj@redhat.com>
1515         * acinclude.m4 (GLIBCPP_CONFIGURE): Split out
1516         GLIBCPP_TOPREL_CONFIGURE.
1517         * aclocal.m4: Likewise.
1518         * configure.in: Call it before AC_CANONICAL_SYSTEM.
1519         * configure: Regenerate.
1521 2002-06-25  Jessica Han  <jessica@cup.hp.com>
1523         * config/os/hpux/os_defines.h Define _GLIBCPP_VTABLE_PADDING
1524         * libsupc++/tinfo.cc Handle the 8 byte aligned vtable entries when
1525         _GLIBCPP_VTABLE_PADDING is defined.
1527 2002-06-25  Benjamin Kosnik  <bkoz@redhat.com>
1529         * include/bits/stl_alloc.h: Additional formatting.
1531 2002-06-24  Phil Edwards  <pme@gcc.gnu.org>
1533         * include/bits/stl_alloc.h:  Reformat as per C++STYLE.
1535 2002-06-24  Phil Edwards  <pme@gcc.gnu.org>
1537         * config/cpu/*/bits/*:  Move header files up a level.  Remove bits.
1538         * config/os/*/bits/*:  Likewise.
1539         * configure.in:  Update.
1540         * configure:  Regenerate.
1541         * configure.target:  Update.
1542         * docs/html/17_intro/porting.texi:  Update.
1544 2002-06-21  Phil Edwards  <pme@gcc.gnu.org>
1546         * include/bits/stl_map.h, include/bits/stl_multimap.h,
1547         include/bits/stl_queue.h, include/bits/stl_stack.h:  Reformat and
1548         complete doxygenation.
1549         * include/bits/boost_concept_check.h:  Minor comment.
1551 2002-06-21  Benjamin Kosnik  <bkoz@redhat.com>
1553         * include/c_compatibility: New.
1554         * include/c_compatibility/assert.h: New.
1555         * include/c_compatibility/ctype.h: New.
1556         * include/c_compatibility/errno.h: New.
1557         * include/c_compatibility/float.h: New.
1558         * include/c_compatibility/iso646.h: New.
1559         * include/c_compatibility/limits.h: New.
1560         * include/c_compatibility/locale.h: New.
1561         * include/c_compatibility/math.h: New.
1562         * include/c_compatibility/setjmp.h: New.
1563         * include/c_compatibility/signal.h: New.
1564         * include/c_compatibility/stdarg.h: New.
1565         * include/c_compatibility/stddef.h: New.
1566         * include/c_compatibility/stdio.h: New.
1567         * include/c_compatibility/stdlib.h: New.
1568         * include/c_compatibility/string.h: New.
1569         * include/c_compatibility/time.h: New.
1570         * include/c_compatibility/wchar.h: New.
1571         * include/c_compatibility/wctype.h: New.
1573         * include/c/std_cerrno.h: Get out of the way... define errno.
1574         * include/c/std_cmath.h: Add abs, modf overloads.
1575         Undefine C99 isms. Still not sure how to deal with this sanely.
1576         * include/c/std_csetjmp.h: Tweak.
1577         * include/c/std_cwchar.h: Include cstddef for size_t.
1579         * include/c_std/std_cmath.h: Remove extra function.
1581         Pendantic std usage in testsuites.
1582         * testsuite/17_intro/header_cstdlib.cc (test01): Qualify ldiv_t
1583         with std.
1584         * testsuite/17_intro/header_cwchar.cc: Tweak.
1585         * testsuite/22_locale/codecvt_members_char_char.cc (test03): Use
1586         std::setlocale.
1587         * testsuite/22_locale/ctype_to_wchar_t.cc (test05): Same.
1588         * testsuite/22_locale/ctype_to_char.cc (test05): Same.
1589         * testsuite/22_locale/ctype_is_wchar_t.cc (test05): Same.
1590         * testsuite/22_locale/ctype_is_char.cc (test05): Same.
1591         * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test03): Same.
1592         * testsuite/22_locale/time_get_members_wchar_t.cc (test08): Same.
1593         * testsuite/22_locale/time_get_members_char.cc (test08): Same.
1594         * testsuite/22_locale/time_put_members_wchar_t.cc (test04): Same.
1595         * testsuite/22_locale/time_put_members_char.cc (test04): Same.
1596         * testsuite/22_locale/num_put_members_wchar_t.cc (test04): Same.
1597         * testsuite/22_locale/num_put_members_char.cc (test04): Same.
1598         * testsuite/22_locale/numpunct_members_wchar_t.cc (test03): Same.
1599         * testsuite/22_locale/numpunct_members_char.cc (test03): Same.
1600         * testsuite/22_locale/num_get_members_wchar_t.cc: Same.
1601         * testsuite/22_locale/num_get_members_char.cc: Same.
1602         * testsuite/22_locale/money_put_members_wchar_t.cc (test07): Same.
1603         * testsuite/22_locale/money_put_members_char.cc (test07): Same.
1604         * testsuite/22_locale/moneypunct_members_wchar_t.cc (test03): Same.
1605         * testsuite/22_locale/moneypunct_members_char.cc (test03): Same.
1606         * testsuite/22_locale/money_get_members_wchar_t.cc (test08): Same.
1607         * testsuite/22_locale/money_get_members_char.cc (test08): Same.
1608         * testsuite/22_locale/messages_members_char.cc (test03): Same.
1609         * testsuite/22_locale/collate_members_wchar_t.cc (test04): Same.
1610         * testsuite/22_locale/collate_members_char.cc (test04): Same.
1611         * testsuite/26_numerics/fabs_inline.cc: Use std::printf.
1612         * testsuite/27_io/istream_seeks.cc (test02): Qualify abort.
1613         * testsuite/27_io/istream_extractor_arith.cc (test11): Qualify strtol.
1615 2002-06-20  Benjamin Kosnik  <bkoz@redhat.com>
1617         * libsupc++/Makefile.am (libsupc__convenience_la_SOURCES): Add
1618         c_sources.
1620 2002-06-20  Benjamin Kosnik  <bkoz@redhat.com>
1622         * src/ext-inst.cc (__gnu_cxx): Use instead of std:: for extensions.
1623         Use size_type instead of unsigned long.
1625 2002-06-20  Steve Ellcey  <sje@cup.hp.com>
1627         * src/ext-inst.cc (_S_fetch): Add explicit templates for char and
1628         wchar types.
1629         (_S_min_len): Ditto.
1631 2002-06-20  Benjamin Kosnik  <bkoz@redhat.com>
1633         * include/Makefile.am: Add rules.
1634         * include/Makefile.in: Regenerate.
1636         * acinclude.m4: Define GLIBCPP_C_HEADERS_COMPATIBILITY.
1637         * aclocal.m4: Regenerate.
1638         * configure: Regenerate.
1639         * configure.target (c_model, c_compatibility): Add.
1641         * libsupc++/Makefile.am (c_sources): New.
1642         (libsupc___la_SOURCES): Add c_sources.
1643         (LTCOMPILE): Remove INCLUDES.
1644         (GCC_INCLUDES): New.
1645         (C_COMPILE): New, like COMPILE but without INCLUDES.
1646         (cxa_demangle.o): Use C_COMPILE.
1647         (dyn-string.o): Use C_COMPILE.
1649         * include/c/std_cstdarg.h: Define __need___va_list.
1650         * include/c/std_cstddef.h: Define need_size_t, need_ptrdiff_t,
1651         need_NULL, need_offsetof.
1653 2002-06-19  Steve Ellcey  <sje@cup.hp.com>
1655         * configure.in (HAVE_FINITE*, HAVE_ISINF*, HAVE_ISNAN*):  Remove
1656         definitions in hpux11 cross-build because these functions do
1657         not exist on hpux11 (but some exist on hpux10); move defaults out
1658         into existing sections.
1659         * configure:  Regenerate.
1661 2002-06-18  Benjamin Kosnik  <bkoz@redhat.com>
1663         * include/c/std_cwchar.h: Guard. Add mbstate_t bits.
1664         * include/c/std_cwctype.h: Guard.
1666         * libsupc++/eh_alloc.cc: Tweak include order.
1667         * libsupc++/pure.cc: Use cstdio.
1668         * libsupc++/new_op.cc: Remove malloc forward declaration, as
1669         cstdlib brings it in. Use std::malloc.
1671         * src/Makefile.am (sources): Remove cmath.cc.
1672         * src/Makefile.in: Regenerate.
1673         * src/cmath.cc: Remove.
1675 2002-06-18  Phil Edwards  <pme@gcc.gnu.org>
1677         * configure.target:  Force mips to use the generic cpu routines.
1679 2002-06-18  Phil Edwards  <pme@gcc.gnu.org>
1681         * configure.host:  Delete file.
1682         * configure.target:  More documentation.  Factor out common parts of
1683         script into "intelligent" settings about defaults.  Remove redundancy.
1685         * acinclude.m4:  Update comments.  Do not call configure.host.
1686         (GLIBCPP_ENABLE_SYMVERS):  If disabled, do not bother checking for
1687         libgcc_s.
1688         * configure.in:  Slight reformatting, more comments.  Factor out
1689         "config/" from all the directories.
1690         * docs/html/17_intro/porting.texi:  Update and expand.
1691         * testsuite/Makefile.am (AM_RUNTESTFLAGS):  Move empty setting
1692         from configure.host.
1694         * aclocal.m4, configure, docs/html/17_intro/porting.html,
1695         testsuite/Makefile.in:  Regenerate.
1697 2002-06-16  Phil Edwards  <pme@gcc.gnu.org>
1699         * docs/doxygen/TODO:  Update.
1700         * docs/doxygen/tables.html:  Uncomment magical middle column.
1701         * docs/doxygen/user.cfg.in:  Kludge to ignore function-like macros.
1702         * include/bits/stl_queue.h:  Doxygenate and reformat.
1703         * include/bits/ios_base.h, include/std/std_streambuf.h:  Add comment
1704         for deprecated names required by the standard.
1706 2002-06-14  J.T. Conklin  <jtc@acorntoolworks.com>
1708         * configure.in (target_alias): Fix.
1709         * configure: Regenerate.
1710         * aclocal.m4: Regenerate.
1712 2002-06-12  Phil Edwards  <pme@gcc.gnu.org>
1714         * include/Makefile.am:  Add new files.
1715         * include/Makefile.in:  Regenerate.
1717         * include/bits/stl_deque.h, include/bits/stl_list.h,
1718         include/bits/stl_vector.h:  Clean up, reformat.  Move definitions...
1719         * include/bits/deque.tcc, include/bits/list.tcc,
1720         include/bits/vector.tcc:  ...to here.  New files.
1722         * include/ext/stl_hashtable.h:  Inclide correct full headers.
1723         * include/std/std_deque.h:  Include .tcc files for now.
1724         * include/std/std_list.h:  Likewise.
1725         * include/std/std_vector.h:  Likewise.
1727 2002-06-12  Daniel Jacobowitz  <drow@mvista.com>
1729         * Makefile.am: Add FLAGS_TO_PASS.
1730         * Makefile.in: Regenerated.
1732 2002-06-11  J.T. Conklin  <jtc@acorntoolworks.com>
1733             Benjamin Kosnik  <bkoz@redhat.com>
1735         * configure.target: Set os_include_dir to config/os/qnx/qnx6.1
1736         under *-qnx6.[12]*.
1737         * configure.in: Add support for *-qnx6.[12]*.
1738         * configure: Regenerate.
1740         * config/os/qnx, config/os/qnx/qnx6.1, config/os/qnx/qnx6.1/bits:
1741         New directories.
1742         * config/os/qnx/qnx6.1/bits/ctype_base.h, ctype_inline.h,
1743         ctype_noninline.h, os_defines.h: New files.
1745 2002-06-10  Loren J. Rittle <ljrittle@acm.org>
1747         * acinclude.m4 (GLIBCPP_CHECK_SETRLIMIT_ancilliary): Reorder and
1748         include all required headers for test against older POSIX standard.
1749         (GLIBCPP_CHECK_SETRLIMIT): Likewise.
1750         (ac_setrlimit): Likewise.
1751         * aclocal.m4: Regenerate.
1752         * configure: Regenerate.
1753         * testsuite/testsuite_hooks.cc: Reorder and include all
1754         required headers for use against older POSIX standard.
1756 2002-06-08  Paolo Carlini  <pcarlini@unitus.it>
1758         * testsuite/backwards/strstream_members.cc: New.
1760 2002-06-08  Benjamin Kosnik  <bkoz@redhat.com>
1762         * include/backwards/strstream: Format.
1763         * src/strstream.cc: Format.
1765 2002-06-08  Andreas Schwab  <schwab@suse.de>
1767         * src/strstream.cc (strstreambuf::overflow): Set _M_buf,
1768         _M_buf_size and _M_buf_size_opt to the new buffer and size.
1770 2002-06-08  Benjamin Kosnik  <bkoz@redhat.com>
1772         * config/os/generic/bits/ctype_noninline.h: Tweak format.
1774 2002-06-07  Steve Ellcey  <sje@cup.hp.com>
1776         * src/locale-inst.cc (__codecvt_abstract_base):
1777         Put inside _GLIBCPP_USE_WCHAR_T ifdef.
1778         * include/bits/istream.tcc (basic_istream): Ditto.
1779         (ws) Ditto.
1780         (operator>>) Ditto.
1781         * include/bits/ostream.tcc (basic_ostream): Ditto.
1782         (endl): Ditto.
1783         (ends): Ditto.
1784         (flush): Ditto.
1785         (operator<<): Ditto.
1787 2002-06-07  Phil Edwards  <pme@gcc.gnu.org>
1789         * mkcheck.in:  Link against local testsuite library.
1790         * testsuite/testsuite_hooks.h (__set_testsuite_memlimit):  Move null
1791         implementation out...
1792         * testsuite/testsuite_hooks.cc:  ...to here.
1794 2002-06-06  Loren J. Rittle <ljrittle@acm.org>
1796         * src/Makefile.am (AUTOMAKE_OPTIONS): Use cygnus-style generation.
1797         * include/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
1798         * testsuite/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
1799         * src/Makefile.in: Regenerate (explicitly with --cygnus option).
1800         * testsuite/Makefile.in: Likewise.
1802 2002-06-05  David Edelsohn  <edelsohn@gnu.org>
1804         * config/os/aix/bits/ctype_noninline.h (do_toupper,do_tolower):
1805         Call external symbol.
1807 2002-06-04  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1809         * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3_target_compile):
1810         Search correct multilib testsuite dir for libv3test.
1812 2002-06-04  Paolo Carlini  <pcarlini@unitus.it>
1813             Gaby Dos Reis  <gdr@codesourcery.com>
1815         * include/bits/basic_string.tcc
1816         (basic_string::_S_construct(forward_iterator_tag):
1817         Fix typo in null pointer check.
1818         * testsuite/21_strings/ctor_copy_dtor.cc: Add test04.
1820 2002-06-04  Paolo Carlini  <pcarlini@unitus.it>
1822         * testsuite/22_locale/money_get_members_char.cc
1823         (test02): Add decimal point to long double constants.
1824         * testsuite/22_locale/money_get_members_wchar_t.cc
1825         (test02): Likewise.
1826         * testsuite/22_locale/money_put_members_char.cc
1827         (test02, test03, test06): Likewise.
1828         * testsuite/22_locale/money_put_members_wchar_t.cc:
1829         (test02, test03, test06): Likewise.
1830         * testsuite/22_locale/num_get_members_char.cc:
1831         (test02, test01): Likewise; suffix long long constants with LL.
1832         * testsuite/22_locale/num_get_members_wchar_t.cc:
1833         (test02, test01): Likewise.
1834         * testsuite/22_locale/num_put_members_char.cc:
1835         (test02, test01): Likewise.
1836         * testsuite/22_locale/num_put_members_wchar_t.cc:
1837         (test02, test01): Likewise.
1839 2002-06-03  Marc Espie  <espie@openbsd.org>
1841         * config/cpu/m68k/bits/atomicity.h(__exchange_and_add): Fix inline
1842         assembly for old assemblers.
1844 2002-06-03  Phil Edwards  <pme@gcc.gnu.org>
1846         * include/bits/stl_bvector.h (swap(_Bit_reference,_Bit_reference)):
1847         Move/rename...
1848         (vector<bool>::swap(reference,reference)): ...to this.
1850 2002-06-03  Phil Edwards  <pme@gcc.gnu.org>
1852         * docs/doxygen/TODO:  Update.
1853         * docs/doxygen/user.cfg.in (SORT_MEMBER_DOCS):  Set to off, now that
1854         some class members are in 14882 order.
1855         * docs/html/ext/howto.html:  3.1 is in the past now, not the future.
1857         * include/std/std_bitset.h:  Update comment.
1858         * src/bitset.cc:  Update comments, clean up spacing.
1860         * src/Makefile.am (sources):  Alphabetize for convenience.
1861         * src/Makefile.in:  Regenerate.
1863 2002-06-03  Phil Edwards  <pme@gcc.gnu.org>
1865         * include/bits/stl_deque.h, include/bits/stl_list.h,
1866         include/bits/stl_vector.h:  Reformat to (mostly) match C++STYLE.
1867         Reorder to match 14882.  Doxygen blocks for all public members.
1869 2002-05-31  Marcus Meissner  <meissner@suse.de>
1871         PR libstdc++/6886
1872         * include/bits/stl_bvector.h:  Use UL suffix for unsigned longs.
1873         * testsuite/23_containers/vector_bool.cc (test02):  New test.
1875 2002-05-30  Marc Espie  <espie@openbsd.org>
1877         * configure.in: Always check for sys/types.h
1878         * configure: Regenerate.
1880 2002-05-28  Nick Clifton  <nickc@cambridge.redhat.com>
1882         * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init):
1883         Rebuild the wrapper file every time this proc is called.
1885 2002-05-28  Phil Edwards  <pme@gcc.gnu.org>
1887         * testsuite/Makefile.am (noinst_LIBRARIES):  New target.  Pull in
1888         CXX/INCLUDES.
1889         * testsuite/Makefile.in:  Regenerate.
1890         * testsuite/testsuite_hooks.h (gnu_copy_tracker):  Move from
1891         list_modifiers.cc and rename from 'T'.  Move code bodies...
1892         * testsuite/testsuite_hooks.cc:  ...to here.  New file.
1893         * testsuite/23_containers/list_modifiers.cc:  Move 'T' class out.
1894         * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3_target_compile):
1895         Add libv3test.a to link options.
1897 2002-05-27  Benjamin Kosnik  <bkoz@redhat.com>
1899         * src/misc-inst.cc: Define unnecessary algorithm
1900         instantiations. Break apart instantiations into groupings below.
1901         * src/fstream-inst.cc: New.
1902         * src/io-inst.cc: New.
1903         * src/istream-inst.cc: New.
1904         * src/ostream-inst.cc: New.
1905         * src/streambuf-inst.cc: New.
1906         * src/sstream-inst.cc: New.
1907         * src/Makefile.am (sources): Add files.
1908         * src/Makefile.in: Regenerate.
1910         * acinclude.m4: Work around automake 1.4-p5 bug, change
1911         AM_GNU_GETTEXT in comments to AM-GNU-GETTEXT.
1913 2002-05-27  Benjamin Kosnik  <bkoz@redhat.com>
1915         PR libstdc++/6795.
1916         * config/os/solaris/solaris2.6/bits/ctype_noninline.h
1917         (classic_table): Fix.
1918         * config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
1920 2002-05-27  Benjamin Kosnik  <bkoz@redhat.com>
1922         * testsuite/22_locale/ctype_is_wchar_t.cc: Guard with
1923         _GLIBCPP_USE_WCHAR_T.
1924         * testsuite/22_locale/ctype_narrow_wchar_t.cc: Same.
1925         * testsuite/22_locale/ctype_to_wchar_t.cc: Same.
1926         * testsuite/22_locale/ctype_widen_wchar_t.cc: Same.
1928 2002-05-26  Carlo Wood  <carlo@alinoe.com>
1929             Paolo Carlini  <pcarlini@unitus.it>
1931         PR libstdc++/6811
1932         * config/locale/ieee_1003.1-2001/codecvt_specializations.h
1933         (__enc_traits::operator=): add missing return statement.
1935 2002-05-24  Phil Edwards  <pme@gcc.gnu.org>
1937         PR libstdc++/6282
1938         * include/std/std_bitset.h (_Base_biteset<0>):  New specialization.
1939         (operator>>):  If nothing was extracted, don't fail in the
1940         zero-length case.
1941         * testsuite/23_containers/bitset_ctor.cc (test02):  New test.
1943 2002-05-24  Benjamin Kosnik  <bkoz@redhat.com>
1945         PR libstdc++/6701
1946         * testsuite/22_locale/ctype_narrow_char.cc: New.
1947         * testsuite/22_locale/ctype_narrow_wchar_t.cc: New.
1948         * testsuite/22_locale/ctype_widen_char.cc: New.
1949         * testsuite/22_locale/ctype_widen_wchar_t.cc: New.
1950         * testsuite/22_locale/ctype_members_char.cc: Move some bits into...
1951         * testsuite/22_locale/ctype_is_char.cc: ...this.
1952         * testsuite/22_locale/ctype_to_char.cc: ...and this.
1953         * testsuite/22_locale/ctype_members_wchar_t.cc: Move some bits into...
1954         * testsuite/22_locale/ctype_is_wchar_t.cc: ...this.
1955         * testsuite/22_locale/ctype_to_wchar_t.cc: ...and this.
1957         * testsuite/22_locale/ctype_scan_wchar_t.cc: Should pass.
1959 2002-05-24  Dale Peakall <dale@peakall.net>
1961         PR libstdc++/6701
1962         * config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_narrow): Fix.
1963         * config/locale/generic/ctype_members.cc: Same.
1965 2002-05-24  Benjamin Kosnik  <bkoz@redhat.com>
1967         PR libstdc++/6750
1968         * include/bits/ostream.tcc (ostream::operator<<(const char*)): Fix
1969         for empty string literal.
1970         (ostream::operator<<(const _CharT*)): Same.
1971         (ostream<char>::operator<<(const char*)): Same.
1972         (ostream<char>::operator<<(streambuf*)): Same.
1973         * testsuite/27_io/ostream_inserter_char.cc (test08): Add tests.
1974         * testsuite/27_io/ostream_inserter_other.cc (test02): Modify.
1976 2002-05-23  Benjamin Kosnik  <bkoz@redhat.com>
1978         * configure.in (release_VERSION): Update to 3.1.1.
1979         (libtool_VERSION): Update to 4:1:0.
1980         * configure: Regenerate.
1982 2002-05-21  Phil Edwards  <pme@gcc.gnu.org>
1984         * include/bits/stl_pair.h:  Tweak comment markup.
1986 2002-05-21  Phil Edwards  <pme@gcc.gnu.org>
1988         * include/ext/stdio_filebuf.h:  Add header guards.  Doxygenate.
1990 2002-05-21  Phil Edwards  <pme@gcc.gnu.org>
1992         * docs/doxygen/user.cfg.in (EXCLUDE):  Add 'CVS'.
1994 2002-05-21  Phil Edwards  <pme@gcc.gnu.org>
1996         * include/bits/stl_vector.h:  Reformat to follow C++STYLE.
1997         Doxygenate all public members.  Reorder to follow 14882.
1998         (vector::push_back(void)):  Remove previously-deprecated fn.
1999         (vector::insert(iterator), vector::_M_insert_aux(iterator)):
2000         Deprecate for removal in 3.3.
2002 2002-05-20  Phil Edwards  <pme@gcc.gnu.org>
2004         * docs/html/faq/index.html (5.4):  Recommend against -I options for
2005         finding the ext headers.
2006         * docs/html/faq/index.txt:  Regenerate.
2008 2002-05-19  Paolo Carlini  <pcarlini@unitus.it>
2010         * testsuite/23_containers/deque_operators.cc (test01):
2011         Fix minor typo in last commit.
2013 2002-05-18  Paolo Carlini  <pcarlini@unitus.it>
2015         PR libstdc++/6503
2016         * include/bits/stl_deque.h (_Deque_iterator::operator==,
2017         operator!=, operator<, operator>, operator>=, operator<=):
2018         Make non-member functions, to allow comparing const and
2019         non-const iterators in any order.
2020         * testsuite/23_containers/deque_operators.cc: New testfile.
2022 2002-05-16  Phil Edwards  <pme@gcc.gnu.org>
2024         * docs/html/faq/index.html:  Update not-a-bug list with basic_file.h.
2025         * docs/html/faq/index.txt:  Regenerate.
2027 2002-05-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2029         * Makefile.am: Allow for PWDCMD to override hardcoded pwd.
2030         * acinclude.m4: Likewise.
2031         * docs/html/Makefile: Likewise.
2032         * aclocal.m4: Regenerate.
2033         * configure: Regenerate.
2034         * Makefile.in: Regenerate.
2036 2002-05-15  Loren J. Rittle <ljrittle@acm.org>
2038         libstdc++/6641
2039         * include/bits/c++config (__USE_MALLOC): Report case where
2040         the user improperly defined it on the command line.
2042 2002-05-15  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2044         * testsuite/testsuite_hooks.h (__set_testsuite_memlimit):
2045         Retrieve current limits before setting.
2047 2002-05-15  Benjamin Kosnik  <bkoz@redhat.com>
2049         PR libstdc++/6518
2050         * include/bits/ostream.tcc (ostream::operator<<(const char*)): Fix
2051         for null case.
2052         (ostream::operator<<(const _CharT*)): Same.
2053         (ostream<char>::operator<<(const char*)): Same.
2054         * testsuite/27_io/ostream_inserter_char.cc (test07): Add test.
2056 2002-05-15  Benjamin Kosnik  <bkoz@redhat.com>
2058         PR libstdc++/6594
2059         * src/strstream.cc (strstreambuf): Fix leak.
2061 2002-05-15  Paolo Carlini  <pcarlini@unitus.it>
2063         PR libstdc++/6648
2064         * include/bits/istream.tcc (istream::getline, ignore):
2065         Upon __idelim (__delim) call sbumpc() not snextc().
2066         * testsuite/27_io/narrow_stream_objects.cc:
2067         Add test08 and test09.
2069 2002-05-13  Benjamin Kosnik  <bkoz@redhat.com>
2071         * testsuite/22_locale/ctype_scan_char.cc: Tweak.
2072         * testsuite/22_locale/ctype_scan_wchar_t.cc: New.
2074         * docs/html/install.html: Fix.
2076 2002-05-13  Benjamin Kosnik  <bkoz@redhat.com>
2078         * include/bits/fstream.tcc
2079         (basic_filebuf::_M_allocate_internal_buffer): Remove extraneous
2080         try/catch blocks.
2081         * src/localename.cc (locale::_Impl::_M_install_facet): Same.
2083         * docs/html/install.html: Tweak, add bits about required locales
2084         for the 22_locale tests when using the gnu model.
2086         * testsuite/27_io/istream_sentry.cc: Tweak.
2088 2002-05-13  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2090         * config/os/irix/irix5.2/bits/ctype_inline.h (scan_is, scan_not):
2091         Fix typo, use this->is() rather than manually (and perhaps
2092         incorrectly) inlining it.
2093         * config/os/irix/irix6.5/bits/ctype_inline.h (scan_is, scan_not):
2094         Likewise.
2095         * testsuite/22_locale/ctype_scan_char.cc: New file.
2097 2002-05-13  Paolo Carlini  <pcarlini@unitus.it>
2098             Jakub Jelinek  <jakub@redhat.com>
2100         * testsuite/22_locale/money_get_members_char.cc
2101         (test01, test02, test04): Use the de_DE@euro named locale
2102         instead of de_DE to allow for an uniform behaviour with
2103         both old and Euro-era localedata; tweak some tests.
2104         * testsuite/22_locale/money_get_members_wchar_t.cc
2105         (test01, test02, test04): Likewise.
2106         * testsuite/22_locale/money_put_members_char.cc
2107         (test01, test02, test04): Likewise.
2108         * testsuite/22_locale/money_put_members_wchar_t.cc
2109         (test01, test02, test04): Likewise.
2111 2002-05-13  Paolo Carlini  <pcarlini@unitus.it>
2113         * testsuite/22_locale/codecvt_members_char_char.cc
2114         (test03): Robustify wrt localedata.
2115         * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test03): Likewise.
2116         * testsuite/22_locale/collate_members_char.cc (test04): Likewise.
2117         * testsuite/22_locale/collate_members_wchar_t.cc (test04): Likewise.
2118         * testsuite/22_locale/ctype_members_char.cc (test05): Likewise.
2119         * testsuite/22_locale/ctype_members_wchar_t.cc (test04): Likewise.
2120         * testsuite/22_locale/messages_members_char.cc (test03): Likewise.
2121         * testsuite/22_locale/money_get_members_char.cc (test08): Likewise.
2122         * testsuite/22_locale/money_get_members_wchar_t.cc (test08): Likewise.
2123         * testsuite/22_locale/money_put_members_char.cc (test07): Likewise.
2124         * testsuite/22_locale/money_put_members_wchar_t.cc (test07): Likewise.
2125         * testsuite/22_locale/moneypunct_members_char.cc (test03): Likewise.
2126         * testsuite/22_locale/moneypunct_members_wchar_t.cc (test03): Likewise.
2127         * testsuite/22_locale/num_get_members_char.cc (test06): Likewise.
2128         * testsuite/22_locale/num_get_members_wchar_t.cc (test06): Likewise.
2129         * testsuite/22_locale/num_put_members_char.cc (test04): Add comment.
2130         * testsuite/22_locale/num_put_members_wchar_t.cc (test04): Likewise.
2131         * testsuite/22_locale/numpunct_members_char.cc (test03): Likewise.
2132         * testsuite/22_locale/numpunct_members_wchar_t.cc (test03): Likewise.
2133         * testsuite/22_locale/time_get_members_char.cc (test08): Likewise.
2134         * testsuite/22_locale/time_get_members_wchar_t.cc (test08): Likewise.
2135         * testsuite/22_locale/time_put_members_char.cc (test04): Likewise.
2136         * testsuite/22_locale/time_put_members_wchar_t.cc (test04): Likewise.
2138 2002-05-12  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2140         * config/os/irix/irix5.2/bits/os_defines.h: Revert 2002-05-06
2141         change.
2143 2002-05-11  John David Anglin  <dave@hiauly1.hia.nrc.ca>
2145         * config/os/gnu-linux/bits/os_defines.h (__glibcpp_long_bits): Define
2146         to 64 for hppa 64-bit port.
2147         (__glibcpp_long_double_bits): Define to 64 for all hppa ports.
2149 2002-05-10  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2151         * acinclude.m4 (enable_symvers): Quote $LD.
2152         * aclocal.m4: Regenerate.
2153         * configure: Likewise.
2155 2002-05-09  Jakub Jelinek  <jakub@redhat.com>
2157         * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Append all
2158         multilib dirs containing libgcc_s*.so.1 below gcc object dir to
2159         LD_LIBRARY_PATH.
2161 2002-05-08  Alexandre Oliva  <aoliva@redhat.com>
2163         * configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
2164         script entry, and set LD to it when configuring multilibs.
2165         * configure: Rebuilt.
2167 2002-05-07  Mark Mitchell  <mark@codesourcery.com>
2169         * configure.in: Add support for WindISS.
2170         * configure: Regenerated.
2171         * configure.target: Add support for WindISS.
2172         * config/os/windiss/bits/ctype_base.h: New file.
2173         * config/os/windiss/bits/ctype_inline.h: Likewise.
2174         * config/os/windiss/bits/ctype_noninline.h: Likewise.
2175         * config/os/windiss/bits/os_defines.h: Likewise.
2177 2002-05-06  Paolo Carlini  <pcarlini@unitus.it>
2179         Test all the facets for the temporary "C" locale switch issue.
2180         * testsuite/22_locale/codecvt_members_char_char.cc: Add test03.
2181         * testsuite/22_locale/codecvt_members_wchar_t_char.cc: Likewise.
2182         * testsuite/22_locale/collate_members_char.cc: Add test04.
2183         * testsuite/22_locale/collate_members_wchar_t.cc: Likewise.
2184         * testsuite/22_locale/ctype_members_char.cc: Add test05.
2185         * testsuite/22_locale/ctype_members_wchar_t.cc: Add test04.
2186         * testsuite/22_locale/messages_members_char.cc: Add test03.
2187         * testsuite/22_locale/money_get_members_char.cc: Add test08.
2188         * testsuite/22_locale/money_get_members_wchar_t.cc: Likewise.
2189         * testsuite/22_locale/money_put_members_char.cc: Add test07.
2190         * testsuite/22_locale/money_put_members_wchar_t.cc: Likewise.
2191         * testsuite/22_locale/moneypunct_members_char.cc: Add test03.
2192         * testsuite/22_locale/moneypunct_members_wchar_t.cc: Likewise.
2193         * testsuite/22_locale/num_get_members_char.cc: Add test06.
2194         * testsuite/22_locale/num_get_members_wchar_t.cc: Likewise.
2195         * testsuite/22_locale/numpunct_members_char.cc: Add test03.
2196         * testsuite/22_locale/numpunct_members_wchar_t.cc: Likewise.
2197         * testsuite/22_locale/time_get_members_char.cc: Add test08.
2198         * testsuite/22_locale/time_get_members_wchar_t.cc: Likewise.
2199         * testsuite/22_locale/time_put_members_char.cc: Add test04.
2200         * testsuite/22_locale/time_put_members_wchar_t.cc: Likewise.
2202         * testsuite/22_locale/num_put_members_char.cc (test04): Add comment.
2203         * testsuite/22_locale/num_put_members_wchar_t.cc (test04): Likewise.
2205 2002-05-06  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2207         * config/os/irix/irix5.2/bits/os_defines.h (_SGI_SOURCE,
2208         __EXTENSIONS__): Ensure they are always defined.
2210 2002-05-06  Phil Edwards  <pme@gcc.gnu.org>
2212         * docs/html/documentation.html:  Fix broken link.
2214 2002-05-04  Benjamin Kosnik  <bkoz@redhat.com>
2215             Paolo Carlini  <pcarlini@unitus.it>
2217         * testsuite/22_locale/num_put_members_char.cc: Add test04(),
2218         testing for the locale_facets.tcc entry of the previous commit.
2219         * testsuite/22_locale/num_put_members_wchar_t.cc: Likewise.
2221 2002-05-04  Takeshi Kobayakawa  <tskoba@mte.biglobe.ne.jp>
2223         * config/locale/generic/c_locale.cc
2224         (__convert_to_v(float, double, long double)):
2225         Fix the temporary switch to the "C" locale, saving and
2226         restoring in the proper way the current locale.
2227         * config/locale/generic/time_members.cc
2228         (__timepunct<char, wchar_t>::_M_put): Likewise.
2229         * config/locale/gnu/messages_members.cc
2230         (messages<char>::do_get): Likewise.
2231         * config/locale/gnu/messages_members.h
2232         (messages<_CharT>::do_get): Likewise.
2233         * config/locale/gnu/time_members.cc
2234         (__timepunct<char, wchar_t>::_M_put): Likewise.
2235         * include/bits/locale_facets.tcc (__convert_from_v): Likewise.
2237 2002-05-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2239         * configure.in (AC_CHECK_HEADERS): Check for string.h & stdlib.h.
2240         * libsupc++/Makefile.am (LTCOMPILE): Add $(DEFS).
2242         * Makefile.in, config.h.in, configure: Regenerate.
2244 2002-05-03  Benjamin Kosnik  <bkoz@redhat.com>
2246         PR libstdc++/6549.
2247         * include/bits/fstream.tcc (filebuf::_M_underflow_common): Revert.
2248         * testsuite/27_io/narrow_stream_objects.cc (test07): Add.
2250 2002-05-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2252         * config/os/irix/irix5.2/bits/ctype_noninline.h (classic_table):
2253         Return __ctype + 1.
2254         (ctype:_M_table): Initialize to classic_table(), not __ctype.
2256 2002-05-03  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2258         * configure.in: Update local install.html, configopts.html paths.
2259         * configure: Regenerate.
2261 2002-05-02  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2263         * config/os/irix/irix5.2/bits/os_defines.h
2264         (__glibcpp_long_double_bits, __glibcpp_long_bits): Define.
2266         * config/os/irix/irix5.2/bits/ctype_inline.h: Cast to unsigned
2267         char.
2269 2002-05-02  Phil Edwards  <pme@gcc.gnu.org>
2271         * docs/html/faq/index.html:  Update list in #4.1.
2272         * docs/html/faq/index.txt:  Regenerated.
2274 2002-05-02  Benjamin Kosnik  <bkoz@redhat.com>
2276         * docs/html/17_intro/RELEASE-NOTES (New): Update.
2278 2002-05-01  Phil Edwards  <pme@gcc.gnu.org>
2280         * include/std/std_bitset.h:  Fix doxygen comments.
2281         * docs/html/documentation.html:  Minor tweaks for 3.1.
2282         * docs/html/27_io/howto.html:  Likewise.
2283         * docs/html/ext/howto.html:  Likewise, mention stdio_filebuf.
2284         * docs/html/faq/index.html:  Likewise.
2285         * docs/html/faq/index.txt:  Regenerated.
2287 2002-05-01  Benjamin Kosnik  <bkoz@redhat.com>
2289         PR libstdc++/6533
2290         * include/bits/streambuf_iterator.h (istreambuf_iterator::_M_get): New.
2291         (istreambuf_iterator::equal): Use it.
2292         (istreambuf_iterator::operator*): Use it.
2294 2002-05-01  Paolo Carlini  <pcarlini@unitus.it>
2296         PR libstdc++/6513
2297         * include/bits/stl_uninitialized.h
2298         (uninitialized_copy(_InputIter, _InputIter, _ForwardIter)):
2299         Fix typo in 2001-07-17 commit: typedef _ValueType to
2300         iterator_traits<_ForwardIter> not <_InputIter>.
2301         * testsuite/23_containers/vector_ctor.cc: Add test04.
2303 2002-04-30  John David Anglin  <dave@hiauly1.hia.nrc.ca>
2305         PR libstdc++/6501
2306         * include/c_std/std_cctype.h: Include bits/c++config.h.
2307         * config/os/hpux/bits/os_defines.h (_SB_CTYPE_MACROS): Define.
2309 2002-04-30  Benjamin Kosnik  <bkoz@redhat.com>
2311         * include/ext/stdio_filebuf.h: New file.
2312         * include/ext/enc_filebuf.h: New file.
2313         * config/io/basic_file_stdio.h (__basic_file::sys_open): Add fd ctor.
2314         * config/io/basic_file_stdio.cc: Same.
2315         * include/bits/fstream.tcc (filebuf::_M_allocate_internal_buffer):
2316         Remove _M_unbuf hacks.
2317         (filebuf::_M_destroy_internal_buffer): Same.
2318         (filebuf::filebuf(cfile, openmode, int_type): Remove definition.
2319         (filebuf::fd): Remove.
2320         * include/std/std_fstream.h (filebuf::_M_unbuf): Remove.
2321         (filebuf::filebuf(__c_file*, openmode, int_type)): Remove.
2322         (filebuf::fd): Remove.
2323         * src/ios.cc (ios_base::_S_ios_create): Change to use specialized
2324         filebufs.
2325         (ios_base::_S_ios_destroy): Same.
2326         * src/misc-inst.cc (file_filebuf<char>): Add instantiation.
2327         * include/Makefile.am (ext_headers): Add ext_filebuf.h,
2328         stdio_filebuf.h.  * include/Makefile.in: Regenerate.
2330 2002-04-30  Benjamin Kosnik  <bkoz@redhat.com>
2332         PR libstdc++/6511
2333         * config/os/solaris/solaris2.7/bits/ctype_noninline.h: Fix typo.
2335 2002-04-29  Benjamin Kosnik  <bkoz@redhat.com>
2337         PR libstdc++/5820
2338         * include/bits/fstream.tcc (basic_filebuf::_M_underflow_common):
2339         Check for eof.
2340         * include/bits/streambuf_iterator.h: Match stream_iterator.h.
2341         (istreambuf_iterator::operator++): Invalidate on eof.
2342         (istreambuf_iterator::operator++(int)): Same.
2343         (istreambuf_iterator::operator*): Same.
2345 2002-04-29  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2347         * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Set all
2348         of LD_LIBRARY_PATH, SHLIB_PATH, LD_LIBRARYN32_PATH,
2349         LD_LIBRARY64_PATH.
2351 2002-04-28  Benjamin Kosnik  <bkoz@redhat.com>
2353         PR libstdc++/5820
2354         * config/io/basic_file_stdio.h (__basic_file::sys_getc): Return int.
2355         (__basic_file::sys_ungetc): Take int.
2356         * config/io/basic_file_stdio.cc (__basic_file::sys_ungetc): Same.
2357         * include/bits/fstream.tcc (basic_filebuf::_M_underflow_common):
2358         Use sys_getc for unbuffered input.
2359         * testsuite/27_io/narrow_stream_objects.cc (test06): New.
2361         * src/ios.cc (_M_grow_words): Adjust error checking.
2362         * testsuite/27_io/ios_base_storage.cc: Same.
2364 2002-04-28  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
2366         * include/ext/stl_hashtable.h: Import __iterator_category
2368 2002-04-28  Paolo Carlini  <pcarlini@unitus.it>
2369             Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
2371         * testsuite/ext/hash_set.cc: New testfile.
2373 2002-04-27  Benjamin Kosnik  <bkoz@redhat.com>
2375         * config/os/solaris/solaris2.5/bits/os_defines.h: Remove
2376         _G_USING_THUNKS.
2377         * config/os/solaris/solaris2.6/bits/os_defines.h: Same.
2378         * config/os/solaris/solaris2.7/bits/os_defines.h: Same.
2380 2002-04-26  Paolo Carlini  <pcarlini@unitus.it>
2382         * include/bits/basic_string.h (replace(__pos, __n1, __s, __n2):
2383         Fix and tighten __throw_length_error check.
2384         * testsuite/21_strings/replace.cc (test05): New.
2385         * testsuite/21_strings/replace.cc (test02, test03, test04): Tweak.
2387 2002-04-23  Loren J. Rittle <ljrittle@acm.org>
2389         * include/std/std_fstream.h (basic_filebuf::sync): Hoist
2390         unconditional flush on lower-layer handle to here...
2391         * include/bits/fstream.tcc (basic_filebuf::_M_really_overflow):
2392         ...from here.  Optimize remaining _M_file.sync() call pattern.
2393         * testsuite/27_io/narrow_stream_objects.cc (test04): New test.
2394         (test05): Likewise.
2396 2002-04-23  Jason Merrill  <jason@redhat.com>
2398         * include/bits/fstream.tcc (basic_filebuf::seekoff): Fix for
2399         output-only filebufs.
2400         * include/std/std_fstream.h (basic_filebuf::_M_set_indeterminate):
2401         Likewise.
2402         (basic_filebuf::_M_set_determinate): Likewise.
2404         PR libstdc++/6414
2405         * include/bits/fstream.tcc (basic_filebuf::seekoff): Adjust return
2406         value properly in the trivial case.
2407         * testsuite/27_io/istream_seeks.cc (test04): Make sure that
2408         tellg() returns the right value after a read.
2410 2002-04-23  Hans-Peter Nilsson  <hp@bitrange.com>
2412         * config/cpu/mmix/bits/cpu_limits.h: New file.
2413         * configure.target (CPULIMITSH): Use it.
2415 2002-04-22  Loren J. Rittle <ljrittle@acm.org>
2417         * docs/html/17_intro/porting.texi (_GLIBCPP_AVOID_FSEEK): Remove.
2418         * docs/html/17_intro/porting.html: Rebuilt.
2420 2002-04-20  Jason Merrill  <jason@redhat.com>
2422         PR libstdc++/4150
2423         * include/std/std_streambuf.h (basic_streambuf::_M_set_indeterminate):
2424         Move to filebuf.
2425         (basic_streambuf::_M_set_determinate): Likewise.
2426         (basic_streambuf::_M_is_indeterminate): Likewise.
2427         * include/bits/std_fstream.h (basic_filebuf::_M_filepos): New
2428         non-static data member.
2429         (basic_filebuf::_M_underflow_common): New non-static member function.
2430         (basic_filebuf::_M_underflow, _M_uflow): Call it.
2431         (basic_filebuf::sync): Avoid useless seeking.
2432         (basic_filebuf::_M_set_indeterminate): Move here from streambuf.
2433         Set _M_filepos.
2434         (basic_filebuf::_M_set_determinate): Likewise.
2435         (basic_filebuf::_M_is_indeterminate): Likewise.
2436         * include/bits/fstream.tcc (basic_filebuf::_M_really_overflow): Seek
2437         back to _M_out_beg if necessary.
2438         (basic_filebuf::seekoff): Likewise.
2439         (basic_filebuf::_M_underflow_common): Generalization of old
2440         underflow().  Don't seek back to _M_in_beg.
2441         * src/ios.cc: Lose _GLIBCPP_AVOID_FSEEK stuff.
2442         * config/os/solaris/solaris2.?/bits/os_defines.h: Likewise.
2443         * config/os/bsd/freebsd/bits/os_defines.h: Likewise.
2444         * config/os/mingw32/bits/os_defines.h: Likewise.
2445         * testsuite/27_io/filebuf_virtuals.cc (test05): Don't overspecify
2446         ungetc test.
2448 2002-04-22  Benjamin Kosnik  <bkoz@redhat.com>
2450         * include/bits/istream.tcc (istream::read): Fix.
2451         * testsuite/27_io/istream_unformatted.cc (main): Add.
2453 2002-04-20  Benjamin Kosnik  <bkoz@redhat.com>
2455         PR libstdc++/6360
2456         * include/bits/istream.tcc (istream::ignore): Streamline, use
2457         delimiter as is.
2458         * include/bits/streambuf.tcc: Use this->gptr.
2459         * testsuite/27_io/istream_unformatted.cc (test08): Add test.
2461 2002-04-18  Benjamin Kosnik  <bkoz@redhat.com>
2463         * include/bits/localefwd.h (locale::id::_M_id): Do this correctly,
2464         as type safety is important, especially on solaris.
2465         * include/bits/istream.tcc (istream::read): Clean.
2466         (istream::readsome): Same.
2467         * locale.cc: Wrap lines.
2469         * testsuite/21_strings/inserters_extractors.cc: Tweaks.
2470         * testsuite/27_io/instantiations.cc (test): Add bool variable...
2471         * testsuite/21_strings/capacity.cc: Clean.
2473 2002-04-17  Phil Edwards  <pme@gcc.gnu.org>
2475         * docs/doxygen/doxygroups.cc:  New group on binary searching.
2476         * include/bits/stl_algo.h:  Document binary searches and merges.
2477         * include/bits/stl_deque.h:  The 'map' member is not the 'map' class.
2479 2002-04-17  Phil Edwards  <pme@gcc.gnu.org>
2481         * docs/doxygen/mainpage.html:  Doxygen logo is now a PNG file.
2482         * docs/doxygen/run_doxygen:  Bump required version.
2483         * docs/doxygen/user.cfg.in:  Revert accidental change.
2484         * docs/html/faq/index.html:  Reindent a block of links.
2485         (4.4):  New note on using dlsym.
2486         * docs/html/faq/index.txt:  Regenerated.
2488 2002-04-17  Phil Edwards  <pme@gcc.gnu.org>
2490         * testsuite_flags.in (cxxflags):  Also pass @EXTRA_CXX_FLAGS@.
2492 2002-04-17  Benjamin Kosnik  <bkoz@redhat.com>
2494         * config/linker-map.gnu (__malloc_alloc_template): Add.
2495         (__default_alloc_template): Same.
2496         * include/bits/stl_alloc.h (__malloc_alloc_template): Add extern
2497         template.
2498         (__default_alloc_template): Same.
2500 2002-04-17  Benjamin Kosnik  <bkoz@redhat.com>
2502         * testsuite/27_io/filebuf_virtuals.cc: Add _S_pback_size instantiation.
2504 2002-04-16  Benjamin Kosnik  <bkoz@redhat.com>
2506         * src/concept-inst.cc (vector<locale::facet*>): Remove instantiations.
2507         * src/stl-inst.cc (vector::_M_insert_aux): Remove instantiation.
2508         (__malloc_alloc_template): Conditionalize.
2510         * include/bits/istream.tcc: Remove sputbackc calls.
2512         * testsuite/19_diagnostics/stdexceptions.cc: Fix comment.
2514 2002-04-16  Paolo Carlini <pcarlini@unitus.it>
2516         * testsuite/24_iterators/rel_ops.cc: New test.
2518 2002-04-16  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>
2520         * include/bits/type_traits.h (__normal_iterator): Declare in
2521         __gnu_cxx.  Adjust use at global namespace.
2522         * include/bits/stl_iterator.h (__normal_iterator): Move definition
2523         into __gnu_cxx::. Add more operator overloads.  Tidy existing ones.
2524         * include/bits/basic_string.h (basic_string): Adjust use of
2525         __normal_iterator.
2526         * include/bits/stl_vector.h (_Alloc>): Likewise.
2527         * src/concept-inst.cc (__gnu_cxx): __normal_iterator<> is now here.
2528         * src/string-inst.cc (operator==): Instantiate in __gnu_cxx.
2530 2002-04-15  Benjamin Kosnik  <bkoz@redhat.com>
2532         PR libstdc++/4164
2533         Valgrind fixes.
2534         * config/io/basic_file_stdio.cc (__basic_file::~__basic_file):
2535         Call close.
2536         (__basic_file::close): Call fflush. Correct return if fclose ok.
2537         (__basic_file::is_open): Make const.
2538         Change __c_file_type to __c_file.
2539         * config/io/basic_file_stdio.h: Change __c_file_type to __c_file.
2540         (__basic_file::is_open): Make const.
2541         * config/io/c_io_stdio.h: Change __c_file_type to __c_file.
2542         * include/std/std_fstream.h (filebuf::_M_allocate_file): Remove.
2543         (filebuf::_M_unbuf): Add.
2544         (filebuf::_M_file): Change to non-pointer.
2545         (filebuf::_M_allocate_pback_buffer): Remove.
2546         * include/bits/fstream.tcc (filebuf::_M_allocate_file): Remove.
2547         (filebuf::_M_allocate_internal_buffer): Use _M_unbuf.
2548         Change initialization list for _M_file change.
2549         (filebuf::_M_allocate_pback_buffer): Remove.
2550         Change _M_file usage to reflect non-pointer data member.
2552         * config/locale/generic/c_locale.cc
2553         (locale::facet::_S_create_c_locale): Add parameter.
2554         * config/locale/generic/collate_members.cc: Change
2555         _M_compare_helper to _M_compare.
2556         Change _M_transform_helper to _M_transform.
2557         * config/locale/generic/monetary_members.cc: Changeup data types.
2558         Add dtors.
2559         * config/locale/generic/numeric_members.cc: Add dtors.
2560         * config/locale/generic/time_members.cc: Add dtors.
2561         * config/locale/gnu/c_locale.cc: Add parameter.
2562         * config/locale/gnu/collate_members.cc:Change
2563         _M_compare_helper to _M_compare.
2564         Change _M_transform_helper to _M_transform.
2565         * config/locale/gnu/ctype_members.cc: Better error checking.
2566         * config/os/gnu-linux/bits/ctype_noninline.h: Better error checking.
2567         * config/locale/gnu/messages_members.cc: Tweak comment.
2568         * config/locale/gnu/monetary_members.cc: Change data types.
2569         Add dtors.
2570         * config/locale/gnu/numeric_members.cc: Add dtors, better error
2571         checking.
2572         * config/locale/gnu/time_members.cc: Same.
2573         * config/locale/ieee_1003.1-2001/c_locale.cc
2574         (locale::facet::_S_create_c_locale): Add parameter.
2575         * config/locale/ieee_1003.1-2001/c_locale.h: Correct typedef.
2576         * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Remove
2577         bogus ctor.
2579         * include/bits/locale_facets.h (moneypunct): Use string literals.
2580         Don't define dtor.
2581         (numpunct): Same.
2582         (__timepunct): Same.
2583         (locale::_Impl::_M_facets): Change from vector to array.
2584         (locale::_Impl::_M_names): Change from array of strings to array
2585         of string literals.
2586         (locale::facet::_S_create_c_locale): Add parameter.
2587         (locale::locale::_S_num_facets): Move to...
2588         (locale::_Impl::_M_facets_size): Here.
2589         * include/bits/locale_facets.tcc: Fixups for _M_facets, _M_name
2590         changes.
2591         * include/bits/localefwd.h: (locale::id::_M_id): Add member function.
2592         (locale::_Impl::_Impl(facet**, size_t, bool)): Add.
2593         (locale::_Impl::_Impl(string, size_t)): Change to
2594         (locale::_Impl::_Impl(const char*, size_t)): This.
2596         * include/bits/streambuf.tcc (streambuf::_S_pback_size): Define.
2597         * include/std/std_streambuf.h (streambuf::_M_pback_size): Change to
2598         (streambuf::_S_pback_size): This.
2600         * src/globals.cc: Add pre-allocations for "C" facets.
2601         * src/locale-inst.cc: Remove vector instantiations.
2602         * src/locale.cc: Remove vector include. Fixups for _M_names,
2603         _M_facets changes.
2604         * src/localename.cc: Same.
2606         * include/bits/stl_vector.h: Fix odd formatting.
2608         * include/bits/basic_string.tcc: Tweak comment.
2610         * libsupc++/new: Make sure parameters are uglified.
2611         * libsupc++/typeinfo: Same.
2613         * testsuite/22_locale/num_get_members_char.cc: Fixup.
2614         * testsuite/22_locale/num_get_members_wchar_t.cc: Same.
2615         * testsuite/27_io/filebuf_members.cc: Same.
2617 2002-04-12  Steve Ellcey  <sje@cup.hp.com>
2619         * gcc/libstdc++-v3/config/os/hpux/bits/os_defines.h
2620         (strtoll, strtoull): In 64 bit mode HP-UX (IA64 and HPPA)
2621         does not define strtoll or strtoull, but does define strtol
2622         and strtoul which are the same since in 64 bit mode
2623         sizeof(long) == sizeof(long long).
2625 2002-04-12  Phil Edwards  <pme@gcc.gnu.org>
2627         * include/std/std_bitset.h:  Doxygenate std::bitset<>.  Clean up
2628         trailing spaces, indentation, and macro names.  Make exception
2629         messages more informative.
2631 2002-04-11  Richard Henderson  <rth@redhat.com>
2633         * include/bits/fstream.tcc (basic_filebuf<>::open): Fix & ordering.
2634         * include/bits/ostream.tcc (basic_ostream<>::operator<<(long)): Same.
2635         (basic_ostream<>::operator<<(long long)): Same.
2637 2002-04-11  Richard Henderson  <rth@redhat.com>
2639         * config/linker-map.gnu: Add __gxx_personality_sj0.
2641 2002-04-09  Benjamin Kosnik  <bkoz@redhat.com>
2643         libstdc++/1072
2644         * include/bits/localefwd.h (locale::_Impl::_M_facets): Change from
2645         pointer to vector.
2646         Remove forward declaration of vector.
2647         Include vector.
2648         * include/bits/locale_facets.tcc: Remove vector include.
2649         (use_locale): Adjust.
2650         (has_locale): Adjust.
2651         * src/locale.cc: Adjust.
2652         * src/localename.cc: Same.
2654 2002-04-09  Benjamin Kosnik  <bkoz@redhat.com>
2655             Richard Henderson  <rth@redhat.com>
2657         * include/bits/sstream.tcc: Clean up bit ops.
2658         * include/bits/fstream.tcc: Same.
2660 2002-04-09  Jakub Jelinek  <jakub@redhat.com>
2662         * include/bits/locale_facets.h (__num_base::_S_scale_hex): Remove.
2663         (__num_base::_S_scale_oct): Remove.
2664         * src/locale.cc (__num_base::_S_scale_hex): Remove.
2665         (__num_base::_S_scale_oct): Remove.
2667 2002-04-09  Benjamin Kosnik  <bkoz@redhat.com>
2669         libstdc++/6124
2670         * testsuite/23_containers/bitset_members.cc: New test.
2671         * include/std/std_bitset.h (_Bit_count::_S_bit_count): Move..
2672         (_S_bit_count): Here.
2673         (_First_one::_S_first_one): Move...
2674         (_S_first_one): Here.
2675         Format.
2676         * src/bitset.cc: Adjust.
2677         * config/linker-map.gnu: Export.
2679 2002-04-08  Benjamin Kosnik  <bkoz@redhat.com>
2681         libstdc++/5180
2682         * include/bits/fstream.tcc (filebuf::seekpos): Fix.
2683         * include/std/std_fstream.h: Clean.
2684         * include/bits/ostream.tcc: Remove extraneous variables.
2685         * include/bits/sstream.tcc (stringbuf::seekoff): Be strict about
2686         open modes and which modes.
2687         (stringbuf::seekpos): Same.
2688         * testsuite/27_io/stringbuf_virtuals.cc: New tests.
2690 2002-04-05  Jonathan Wakely <jw@kayari.org>
2692         * include/bits/stl_algo.h (unique_copy, __gcd, rotate, rotate_copy,
2693         random_shuffle, partition, stable_partition, sort, stable_sort,
2694         partial_sort, partial_sort_copy, nth_element):  Doxygenate.
2696 2002-04-05  David S. Miller  <davem@redhat.com>
2698         * config/os/gnu-linux/bits/os_defines.h
2699         (__glibcpp_long_double_bits): Set to 64 on 32-bit Sparc.
2701 2002-04-04  Benjamin Kosnik  <bkoz@redhat.com>
2703         libstdc++/3457
2704         via gawrilow@math.tu-berlin.de
2705         * acinclude.m4 (version_specific_libs): Fix combo usage with
2706         --with-gxx-include-dir.
2707         * aclocal.m4: Regenerate.
2708         * configure: Same.
2710 2002-04-03  Benjamin Kosnik  <bkoz@redhat.com>
2712         As per DR 184, libstdc++/3139
2713         * include/std/std_limits.h (__glibcpp_bool_digits): Change to 1.
2714         (numeric_limits<bool>::is_iec559): False.
2715         (numeric_limits<bool>::is_modulo): False.
2717         * testsuite/27_io/ios_init.cc: Add instantiations.
2719 2002-04-02  Benjamin Kosnik  <bkoz@redhat.com>
2721         libstdc++/5268
2722         * src/ios.cc: (ios_base::Init::_S_ios_destroy): Remove flush calls.
2723         * testsuite/27_io/ios_init.cc (tests04): Add test.
2725         libstdc++/3983
2726         * include/bits/basic_ios.h (basic_ios::_M_get_fctype_ios): Remove.
2727         (basic_ios::_M_ios_fctype): Consistently name to _M_fctype.
2728         * include/bits/basic_ios.tcc: Same. Remove outdated comments.
2729         * include/bits/istream.tcc: Use _M_fctype, make consistent with
2730         ostream.
2731         * testsuite/27_io/ios_init.cc (tests03): Add test.
2733 2002-04-02  Phil Edwards  <pme@gcc.gnu.org>
2735         * include/Makefile.am (install-data-local):  Use mkinstalldirs.
2736         * include/Makefile.in:  Regenerate.
2738 2002-04-02  Paolo Carlini  <pcarlini@unitus.it>
2739             Nathan Myers  <ncm@cantrip.org>
2740             Philip Martin  <philip@codematters.co.uk>
2742         * include/bits/basic_string.h
2743         (replace(i1, i2, _CharT* k1, _CharT* k2),
2744         replace(i2, i2, const _CharT* k1, const _CharT* k2),
2745         replace(i1, i2, iterator k1, iterator k2,
2746         replace(i1, i2, const_iterator k1, const_iterator k2):
2747         New specializations to optimize for the common cases of
2748         pointers and iterators.
2749         (replace(pos, n1, s, n2)): Tweak.
2750         * include/bits/basic_string.tcc: Tweak comments.
2751         * testsuite/21_strings/replace.cc (test04): New tests.
2753 2002-04-01  Benjamin Kosnik  <bkoz@redhat.com>
2755         libstdc++/5542
2756         * acinclude: More extensive checks for msgfmt, --enable-nls.
2757         * aclocal.m4: Regenerate.
2758         * configure: Regenerate.
2760 2002-04-01  Phil Edwards  <pme@gcc.gnu.org>
2762         * libsupc++/exception (__verbose_terminate_handler):  Point to docs.
2763         * docs/doxygen/doxygroups.cc:  Doxygen hooks for abi::__cxa_demangle.
2764         * docs/html/18_support/howto.html:  Document the demangler.
2765         * docs/html/17_intro/howto.html:  And link to it.
2767         * docs/doxygen/mainpage.html:  Describe user-vs-maintainer docs.
2768         * docs/doxygen/run_doxygen:  Print user-vs-maintainer.
2770 2002-04-01  Phil Edwards  <pme@gcc.gnu.org>
2772         * config/linker-map.gnu:  Export __verbose_terminate_handler.
2773         * libsupc++/Makefile.am (sources):  Add cxa_demangle.c, dyn-string.c.
2774         Make new LTCOMPILE variable, use it in new special build rules.
2775         * libsupc++/Makefile.in:  Rebuild.
2776         * src/vterminate.cc (__verbose_terminate_handler):  Enable use of
2777         runtime __cxa_demangle.
2779         * docs/html/install.html:  Update prereqs and instructions.
2780         * docs/html/19_diagnostics/howto.html:  Bring naming for
2781         verbose_terminate_handler into line with reality.
2783 2002-04-01  Benjamin Kosnik  <bkoz@redhat.com>
2785         libstdc++/3129
2786         * include/bits/basic_ios.h (basic_ios::_M_exception): Move.
2787         (basic_ios::_M_streambuf_state): Move.
2788         * include/bits/ios_base (ios_base): To here.
2789         * include/bits/ios_base.h (ios_base::_S_local_words): To
2790         _S_local_word_size.
2791         (ios_base::_M_word_array): To _M_local_word.
2792         (ios_base::_M_words_limit): To _M_word_size.
2793         (ios_base::_M_words): To _M_word.
2794         Comment.
2795         * include/bits/basic_ios.tcc: Adjust.
2796         * src/ios.cc (ios_base::_M_grow_words): Tweak.
2797         * testsuite/27_io/ios_base_storage.cc: Add tests.
2799         libstdc++/5207
2800         Kenny Simpson <theonetruekenny@yahoo.com>
2801         * include/bits/ios_base.h: Fix.
2803         Richard Henderson  <rth@redhat.com>
2804         * include/bits/ostream.tcc (ostream::operator<<(_CharT)): Correct
2805         last change.
2807         * include/bits/basic_string.h: Tweak formatting.
2809 2002-04-01  Paolo Carlini  <pcarlini@unitus.it>
2811         * config/locale/ieee_1003.1-2001/codecvt_specializations.h
2812         (codecvt::do_out, codecvt::do_unshift, codecvt::do_in):
2813         By definition, sizeof(char) == 1.
2814         * include/bits/locale_facets.tcc (money_get::do_get,
2815         money_put::do_put): Ditto.
2816         * testsuite/21_strings/inserters_extractors.cc
2817         (test04): Ditto.
2819 2002-03-30  Richard Henderson  <rth@redhat.com>
2821         PR c++/3719
2822         * libsupc++/eh_personality.cc (__cxa_call_unexpected): Copy handler
2823         data out of the exception struct before calling unexpectedHandler.
2825 2002-03-28  Roger Sayle  <roger@eyesopen.com>
2827         * include/c_std/std_cmath.h:  To prevent problems overloading
2828         g++ builtins, use the double variants from the global namespace
2829         before defining float and long double variants in std::.
2831 2002-03-28  Loren J. Rittle <ljrittle@acm.org>
2833         * testsuite/18_support/numeric_limits.cc (test_extrema): Fix typo.
2835 2002-03-28  Paolo Carlini  <pcarlini@unitus.it>
2837         * testsuite/24_iterators/istream_iterator.cc
2838         (test02): New tests.
2840 2002-03-28  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
2841             Paolo Carlini  <pcarlini@unitus.it>
2843         * testsuite/22_locale/codecvt_members_unicode_wchar_t.cc
2844         (test01): Protect the test with _GLIBCPP_USE_WCHAR_T;
2845         fix i_lit_base e_lit_base arrays, making them independent
2846         from the endianness of the platform; tweak UCS4 to UCS-4BE.
2848 2002-03-27  Benjamin Kosnik  <bkoz@redhat.com>
2850         * include/bits/ostream.tcc (ostream::operator<<(_CharT)): Always
2851         allocate at least a byte.
2853         * testsuite/18_support/numeric_limits.cc (test_extrema): Make
2854         debugger-friendly.
2855         * testsuite/27_io/streambuf.cc (test07): Fix.
2856         (test06): Enable.
2858 2002-03-27  Phil Edwards  <pme@gcc.gnu.org>
2860         * docs/doxygen/Intro.3:  Date tweak.
2861         * docs/doxygen/TODO:  Update.
2862         * docs/doxygen/doxygroups.cc:  Point to tables.html.
2863         * docs/doxygen/mainpage.html:  Date tweak.
2864         * docs/doxygen/run_doxygen:  Version tweak.  Copy tables.html over.
2865         * docs/doxygen/tables.html:  Fill in the blanks.
2867         * docs/doxygen/user.cfg.in (ALIASES):  Remove maint and endmaint.
2868         * include/bits/stl_algo.h:  Likewise; use expanded form.
2869         * include/bits/stl_alloc.h:  Likewise.
2870         * include/bits/stl_construct.h:  Likewise.
2871         * include/bits/stl_deque.h:  Likewise.
2872         * include/bits/stl_iterator_base_types.h:  Likewise.
2873         * include/bits/stl_list.h:  Likewise.
2874         * include/bits/stl_relops.h:  Likewise.
2875         * include/bits/stl_tempbuf.h:  Likewise.
2876         * include/bits/stl_vector.h:  Likewise.
2877         * include/std/std_memory.h:  Likewise.
2879         * include/bits/stl_deque.h:  Point into tables.html and add @ingroup.
2880         * include/bits/stl_list.h:  Likewise.
2881         * include/bits/stl_vector.h:  Likewise.
2883 2002-03-26  Benjamin Kosnik  <bkoz@redhat.com>
2885         * include/c/: Guard with _CPP_.
2886         * include/c_std/: Same.
2887         * include/Makefile.am: Fixup install, link routines for null
2888         c_base_headers_extra scenarios.
2889         * include/Makefile.in: Regerate.
2891 2002-03-25  Paolo Carlini <pcarlini@unitus.it>
2892             Richard Henderson  <rth@redhat.com>
2894         * testsuite/22_locale/codecvt_members_unicode_char.cc
2895         (test01, test02): make sure that the i_lit_base array
2896         is sufficiently aligned.
2898 2002-03-25  Benjamin Kosnik  <bkoz@redhat.com>
2900         * config/os/newlib/bits/ctype_noninline.h (ctype::classic): Set to
2901         _ctype_.
2903 2002-03-25  Paolo Carlini  <pcarlini@unitus.it>
2905         * testsuite/22_locale/collate_byname.cc
2906         (test01): compare the result of collate::compare with
2907         that of collate::transform + string::compare, not with
2908         that of collate::transform + collate::compare; values
2909         returned by collate::compare are normalized, therefore
2910         test against +-1.
2912 2002-03-25  Benjamin Kosnik  <bkoz@redhat.com>
2913             Jakub Jelinek  <jakub@redhat.com>
2915         * config/locale/gnu/messages_members.h: Correct conditional.
2916         * config/locale/gnu/messages_members.cc: Same.
2917         * config/locale/gnu/time_members.cc: Same.
2919 2002-03-25  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
2920             Paolo Carlini  <pcarlini@unitus.it>
2922         * testsuite/22_locale/codecvt_members_unicode_char.cc
2923         (test01, test02): Fix i_lit_base arrays, making them
2924         independent from the endianness of the platform.
2926 2002-03-22  Benjamin Kosnik  <bkoz@redhat.com>
2928         * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_SUPP): Just test for
2929         signbit and __signbit directly.
2930         * aclocal.m4: Regenerate.
2931         * configure: Regenerate.
2932         * config.h.in: Regenerate.
2933         * libmath/Makefile.am: Simplify.
2934         * libmath/Makefile.in: Regenerate.
2935         * include/c_std/std_cmath.h: Update paths for include of cmath.tcc.
2937         * include/Makefile.am: Clean up handling of extra "C" header files.
2938         Add hooks for "C" compatibility headers.
2939         * include/Makefile.in: Regenerate.
2941         * include/c/*: Formatting tweaks, cleanups.
2942         * include/c_std/*: Same.
2944 2002-03-22  Benjamin Kosnik  <bkoz@redhat.com>
2946         * config/locale/gnu/messages_members.h: Add __uselocale bits.
2947         * config/locale/gnu/messages_members.cc: Same.
2948         * config/locale/gnu/time_members.cc: Same.
2950 2002-03-22  Benjamin Kosnik  <bkoz@redhat.com>
2952         * src/vterminate.cc: Format, -fno-exceptions cleanup.
2954 2002-03-21  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2956         * acinclude.m4 (GLIBCPP_CHECK_STDLIB_DECL_AND_LINKAGE_3): New.
2957         (GLIBCPP_CONFIGURE_TESTSUITE): Use it to check for setenv.
2958         * aclocal.m4: Regenerate.
2959         * configure: Likewise.
2961 2002-03-19  Paolo Carlini  <pcarlini@unitus.it>
2962             Ulrich Drepper  <drepper@redhat.com>
2964         * src/locale-inst.cc (__convert_from_v): Add an additional
2965         __size parameter in the declarations.
2966         * include/bits/locale_facets.tcc
2967         (__convert_from_v): When available (that is,
2968         _GLIBCPP_USE_C99 defined) use snprintf instead of sprintf.
2969         (num_put::_M_convert_float): Depending on _GLIBCPP_USE_C99
2970         being defined or not, call and use __convert_from_v in the
2971         appropriate way.
2972         (num_put::_M_convert_int): Same here.
2973         (money_put::do_put(long double)): Same here.
2975 2002-03-19  Phil Edwards  <pme@gcc.gnu.org>
2977         * docs/html/faq/index.html (#3.6):  Rewrap and close <a href> tags.
2978         * docs/html/faq/index.txt:  Regenerate.
2980 2002-03-19  Steve Ellcey  <sje@cup.hp.com>
2982         * acinclude.m4 (GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS): Define
2983         GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS to set LIBUNWIND_FLAG if
2984         --enable-libunwind-exceptions is set.
2985         * configure.in (GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS): Call new
2986         macro to check for libunwind.
2987         * configure: Regenerate.
2988         * src/Makefile.am (libstdc___la_LDFLAGS): Add
2989         LIBUNWIND_FLAG to libstdc link line.
2990         * src/Makefile.in: Regenerate.
2992 2002-03-19  Benjamin Kosnik  <bkoz@redhat.com>
2994         * docs/html/faq/index.html: Add OS X workaround.
2995         * docs/html/17_intro/TODO: Update.
2997 2002-03-18  Paolo Carlini  <pcarlini@unitus.it>
2999         * include/bits/locale_facets.tcc
3000         (money_put::do_put(long double)): Fix dimensioning of
3001         temporary buffers to avoid risk of overruns.
3002         (money_put::do_put(string)): Same for the buffer used to
3003         add the grouping chars.
3004         * testsuite/22_locale/money_put_members_char.cc: Add test06.
3005         * testsuite/22_locale/money_put_members_wchar_t.cc: Ditto.
3007         * include/bits/locale_facets.tcc
3008         (collate::do_transform): Simplify.
3010 2002-03-18  Phil Edwards  <pme@gcc.gnu.org>
3012         * acinclude.m4 (GLIBCPP_CONFIGURE):  Make indentation/spacing uniform.
3013         * configure.in:  Add comments pointing the way for autoconf 2.5x.
3014         * aclocal.m4, config.h.in, configure:  Regenerate.
3016 2002-03-18  Philipp Thomas  <pthomas@suse.de>
3018         * include/backward/hash_map.h: hash, hashtable, hash_map and
3019         hash_multimap are in namespace __gnu_cxx.
3020         include/backward/hash_set.h: hash, hashtable, hash_set and
3021         hash_multiset are in namespace __gnu_cxx.
3022         include/backward/hashtable.h: hash and hashtable are in
3023         namespace __gnu_cxx.
3024         include/backward/rope.h: char_producer, sequence_buffer,
3025         rope, crope and wrope are in namespace __gnu_cxx.
3026         include/backward/slist.h: slist is in namespace __gnu_cxx.
3027         * testsuite/backward/header_hash_map_h.cc
3028         testsuite/backward/header_hash_set_h.cc
3029         testsuite/backward/header_hashtable_h.cc
3030         testsuite/backward/header_rope_h.cc
3031         testsuite/backward/header_slist_h.cc
3032         testsuite/backward/header_tempbuf_h.cc: New tests for
3033         checking that we're using the correct namespace.
3035 2002-03-17  Jason Merrill  <jason@redhat.com>
3037         PR c++/4381
3038         * libsupc++/eh_personality.cc (get_adjusted_ptr): New static fn.
3039         (check_exception_spec): Call it.  Take the thrown pointer.
3040         (__cxa_call_unexpected): Pass it.
3041         (PERSONALITY_FUNCTION): Likewise.  Use get_adjusted_ptr.
3043 2002-03-15  Anthony Green  <green@redhat.com>
3045         * configure.in: Remove useless is_mingw32.
3046         * configure: Rebuilt.
3048 2002-03-15  Paolo Carlini  <pcarlini@unitus.it>
3050         * testsuite/22_locale/collate_members_char.cc
3051         (test01): compare the result of collate::compare with
3052         that of collate::transform + string::compare, not with
3053         that of collate::transform + collate::compare.
3054         (test01): values returned by collate::compare are
3055         normalized, therefore test against +-1.
3056         * testsuite/22_locale/collate_members_wchar_t.cc: Ditto.
3058 2002-03-12  Loren Rittle  <ljrittle@acm.org>
3060         reported by Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
3061         * testsuite/thread/pthread4.cc: Lower nominal iteration counter.
3063 2002-03-12  Benjamin Kosnik  <bkoz@redhat.com>
3064             Per Liboriussen  <liborius@stofanet.dk>
3066         * config/os/gnu-linux/bits/ctype_noninline.h: Cast to
3067         unsigned char.
3068         * config/os/gnu-linux/bits/ctype_inline.h: Same.
3070         * config/os/irix/irix6.5/bits/ctype_inline.h: Same.
3072         * config/os/solaris/solaris2.5/bits/ctype_inline.h: Same.
3073         * config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
3075         * config/os/solaris/solaris2.6/bits/ctype_inline.h: Same.
3076         * config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.
3078         * config/os/solaris/solaris2.7/bits/ctype_inline.h: Same.
3079         * config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.
3081         * testsuite/22_locale/ctype_members_char.cc (main): Add tests.
3083 2002-03-12  Benjamin Kosnik  <bkoz@redhat.com>
3085         * include/bits/basic_string.tcc (string::_S_construct(_InIter,
3086         _InIter, const _Alloc&, forward_iterator_tag): Check for null.
3087         (string::basic_string(const _CharT* __s, const _Alloc& __a)): Same.
3088         * testsuite/21_strings/ctor_copy_dtor.cc (test01): Re-enable, now
3089         that memory limits are in place.
3090         (test03): Add tests.
3092 2002-03-11  Benjamin Kosnik  <bkoz@redhat.com>
3094         * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Check for wctype.h.
3095         * aclocal.m4: Regenerate.
3096         * config.h.in: Regenerate.
3097         * configure: Regenerate.
3098         * include/c_std/std_cwctype.h: Guard.
3100 2002-03-11  Chris Demetriou  <cgd@broadcom.com>
3102         * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Enhance check for
3103         whether GLIBCPP_CHECK_LINKER_FEATURES has been used.
3104         * aclocal.m4: Regenerate.
3105         * configure: Regenerate.
3107 2002-03-11  Benjamin Kosnik  <bkoz@redhat.com>
3109         * include/bits/stl_bvector.h: Fix warning.
3111 2002-03-11  Richard Henderson  <rth@redhat.com>
3113         * include/bits/stl_bvector.h (_Bit_type): New.  Use throughout.
3115 2002-03-11  Phil Edwards  <pme@gcc.gnu.org>
3117         * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-list-sourcefiles):
3118         New function.  Build the list of tests to run in testsuite_files.
3119         * testsuite/libstdc++-v3.dg/dg.exp:  Use it.
3121 2002-03-11  Phil Edwards  <pme@gcc.gnu.org>
3123         * testsuite/21_strings/capacity.cc:  Only explicitly instantiate on
3124         platforms with no weak support.
3125         * testsuite/27_io/ios_init.cc:  Likewise.
3127 2002-03-10  Paolo Carlini  <pcarlini@unitus.it>
3129         * include/bits/locale_facets.tcc (time_put::do_put):
3130         Consider sizeof(char_type) in allocating the buffer.
3132         * include/bits/locale_facets.tcc (collate::do_tranform):
3133         Remove redundant variable.
3135 2002-03-10  Ulrich Drepper  <drepper@redhat.com>
3136             Paolo Carlini  <pcarlini@unitus.it>
3138         * config/locale/generic/collate_members.cc
3139         (collate<char,wchar_t>::_M_compare_helper): normalize
3140         values returned by strcoll and wcscoll.
3141         * config/locale/gnu/collate_members.cc
3142         (collate<char,wchar_t>::_M_compare_helper): ditto
3143         for __strcoll_l and __wcscoll_l.
3145 2002-03-10  Anthony Green  <green@redhat.com>
3147         * configure.in: Support cross builds to mingw32 target.
3148         * configure: Rebuilt.
3150 2002-03-09  Paolo Carlini  <pcarlini@unitus.it>
3152         * include/bits/locale_facets.tcc (collate::do_transform):
3153         Rewrite to fix problems with long transformed strings.
3155 2002-03-08  Benjamin Kosnik  <bkoz@redhat.com>
3157         * c_locale_generic.cc: Move to...
3158         * generic/c_locale.cc
3159         * c_locale_generic.h: Move to...
3160         * generic/c_locale.h
3161         * codecvt_specializations_generic.h: Move to...
3162         * generic/codecvt_specializations.h
3163         * collate_members_generic.cc: Move to...
3164         * generic/collate_members.cc
3165         * ctype_members_generic.cc: Move to...
3166         * generic/ctype_members.cc
3167         * messages_members_generic.cc: Move to...
3168         * generic/messages_members.cc
3169         * messages_members_generic.h: Move to...
3170         * generic/messages_members.h
3171         * moneypunct_members_generic.cc: Move to...
3172         * generic/monetary_members.cc
3173         * numpunct_members_generic.cc: Move to...
3174         * generic/numeric_members.cc
3175         * time_members_generic.cc: Move to...
3176         * generic/time_members.cc
3177         * c_locale_gnu.cc: Move to...
3178         * gnu/c_locale.cc
3179         * c_locale_gnu.h: Move to...
3180         * gnu/c_locale.h
3181         * collate_members_gnu.cc: Move to...
3182         * gnu/collate_members.cc
3183         * ctype_members_gnu.cc: Move to...
3184         * gnu/ctype_members.cc
3185         * messages_members_gnu.cc: Move to...
3186         * gnu/messages_members.cc
3187         * messages_members_gnu.h: Move to...
3188         * gnu/messages_members.h
3189         * moneypunct_members_gnu.cc: Move to...
3190         * gnu/monetary_members.cc
3191         * numpunct_members_gnu.cc: Move to...
3192         * gnu/numeric_members.cc
3193         * time_members_gnu.cc: Move to...
3194         * gnu/time_members.cc
3195         * c_locale_ieee_1003.1-200x.cc: Move to...
3196         * ieee_1003.1-2001/c_locale.cc
3197         * c_locale_ieee_1003.1-200x.h: Move to...
3198         * ieee_1003.1-2001/c_locale.h
3199         * codecvt_specializations_ieee_1003.1-200x.h: Move to...
3200         * ieee_1003.1-2001/codecvt_specializations.h
3201         * messages_members_ieee_1003.1-200x.cc: Move to...
3202         * ieee_1003.1-2001/messages_members.cc
3203         * messages_members_ieee_1003.1-200x.h: Move to...
3204         * ieee_1003.1-2001/messages_members.h
3206         * acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Make consistent.
3207         * aclocal.m4: Regenerate.
3208         * configure: Regenerate.
3209         * src/Makefile.am (sources): Change to monetary and numeric.
3210         * src/Makefile.in: Regenerate.
3211         * docs/html/configopts.html: Update to ieee_1003.1-2001.
3213 2002-03-08  scott snyder  <snyder@fnal.gov>
3215         libstdc++/5875
3216         * include/bits/locale_facets.tcc (num_put::_M_convert_float):
3217         Allow one more digit of precision.
3218         * testsuite/27_io/ostream_inserter_arith.cc: Test that we can
3219         write a double and read back in the same value.
3221 2002-03-08  Benjamin Kosnik  <bkoz@redhat.com>
3223         * include/std/std_limits.h: Move static const data members out of
3224         generic template, into base class __numeric_limits_base.
3225         * src/limits.cc: Add definitions.
3226         * config/linker-map.gnu: Add __numeric_limits_base.
3227         * testsuite/18_support/numeric_limits.cc: Declare test in scope.
3229 2002-03-07  Benjamin Kosnik  <bkoz@redhat.com>
3231         * include/bits/stl_alloc.h: Add extern implicit allocator
3232         instantiations.
3233         * include/bits/basic_string.tcc: Tweak.
3234         * include/bits/locale_facets.tcc: Remove default args. Add
3235         has_facet, use_facet extern instantiations.
3236         * src/stl-inst.cc: Add explicit instantiation.
3237         * src/locale-inst.cc: Clean. Remove locale member template
3238         instantiations.
3240         * testsuite/22_locale/operators.cc (test02): Enable.
3242 2002-03-06  Benjamin Kosnik  <bkoz@redhat.com>
3243             Stephen M. Webb  <stephen.webb@bregmasoft.com>
3245         * include/bits/stl_tree.h (_S_rb_tree_red): Make enum.
3246         (_S_rb_tree_black): Make enum.
3247         Clean. Format.
3248         * include/bits/stl_bvector.h (__WORD_BIT): To _M_word_bit, enum.
3249         * include/bits/stl_algo.h (__stl_chunk_size): _M_chunk_size, enum.
3250         (__stl_threshold): _M_threshold, enum.
3251         * src/stl-inst.cc: Same.
3252         * config/linker-map.gnu: Remove.
3254         * testsuite/23_containers/vector_bool.cc: New.
3256 2002-03-06  Phil Edwards  <pme@gcc.gnu.org>
3258         * docs/doxygen/user.cfg.in:  Also document deprecated entries.
3259         * docs/html/Makefile:  Example rule to rebuild porting-howto.html.
3260         * docs/html/17_intro/howto.html:  "gcc"->"GCC" changes, when
3261         referring to the collection as a whole.  New section on which macros
3262         can be redefined by the user.
3263         * docs/html/19_diagnostics/howto.html:  Update note for concepts.
3264         * docs/html/20_util/howto.html:  Update link to SGI.
3265         * docs/html/faq/index.html:  Update snapshot versions.  New entry
3266         on why g++ (but not gcc) must currently predefine certain macros.
3267         * docs/html/faq/index.txt:  Regenerated.
3269         * include/bits/basic_string.h (basic_string::_S_construct):  Fix
3270         names in declaration.
3271         (basic_string::compare):  These are no longer optional.
3272         * include/bits/ostream.tcc:  Tweak closing brace placement.
3273         * include/bits/stl_algo.h:  Lots of initial doxygen comment hooks.
3274         * include/std/std_sstream.h:  Fix typo in comment.
3275         * include/bits/locale_facets.tcc:  Remove unneeded header inclusion.
3276         * src/locale.cc:  Likewise.
3278 2002-03-06  Phil Edwards  <pme@gcc.gnu.org>
3280         PR libstdc++/5734
3281         * include/bits/stl_vector.h (vector::push_back()):  Guard with
3282         _GLIBCPP_DEPRECATED.
3284 2002-03-06  Phil Edwards  <pme@gcc.gnu.org>
3286         * include/bits/c++config:  Fix misplaced leading blanks on first line.
3288 2002-03-05  Benjamin Kosnik  <bkoz@redhat.com>
3290         * docs/html/17_intro/RELEASE-NOTES: Fix usage.
3291         * README (libmath): Make clear.
3293 2002-03-05  Jakub Jelinek  <jakub@redhat.com>
3295         * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Check for version
3296         script globbing in ld.
3297         * aclocal.m4: Rebuilt.
3298         * configure: Rebuilt.
3300 2002-03-05  Benjamin Kosnik  <bkoz@redhat.com>
3302         * docs/html/17_intro/RELEASE-NOTES: Update.
3303         * README: Format subdirectories.
3305 2002-03-05  Paolo Carlini  <pcarlini@unitus.it>
3307         libstdc++/5816
3308         * include/bits/locale_facets.tcc
3309         (num_get::_M_extract_float): Fix the parsing of __dec, since
3310         the standard prescribes that if no grouping characters are
3311         seen, no grouping check is applied.
3312         * testsuite/22_locale/num_get_members_char.cc: Add test05
3313         distilled from the PR.
3314         * testsuite/22_locale/num_get_members_wchar_t.cc: Ditto.
3316 2002-03-04  Craig Rodrigues  <rodrigc@gcc.gnu.org>
3318         * docs/html/17_intro/porting-howto.xml: Refer to
3319         http://www.oasis-open.org for docbookx.dtd.
3320         * docs/html/17_intro/porting-howto.html: Regenerated.
3322 2002-03-03  Phil Edwards  <pme@gcc.gnu.org>
3324         PR libstdc++/3955
3325         * include/std/std_sstream.h:  Remove trailing spaces.
3326         (basic_stringbuf::_M_stringbuf_init):  Also check for ios_base::app.
3327         * testsuite/27_io/stringbuf.cc (test05, test06):  New tests.
3329 2002-03-02  Paolo Carlini  <pcarlini@unitus.it>
3331         * testsuite/22_locale/num_get_members_char.cc (test04):
3332         Use a named locale expecting grouping (de_DE).
3333         * testsuite/22_locale/num_get_members_wchar_t.cc (test04):
3334         Ditto.
3335         * testsuite/27_io/ios_manip_basefield.cc (test01):
3336         Extend coverage, uniform treatment of hexs and octs.
3338 2002-02-28  Richard Henderson  <rth@redhat.com>
3340         * config/linker-map.gnu: Export operator new with unsigned long,
3341         and with std::nothrow_t.  Likewise operator delete.
3343 2002-02-28  Paolo Carlini  <pcarlini@unitus.it>
3345         * include/bits/locale_facets.tcc (num_get::_M_extract_int):
3346         Admit grouping for octals and hexadecimals too.
3347         * testsuite/22_locale/num_get_members_char.cc: Add test04.
3348         (test01): Tweak "." -> "," in void* test.
3349         * testsuite/22_locale/num_get_members_wchar_t.cc: Ditto.
3351         * testsuite/27_io/ios_manip_basefield.cc: Remove static keyword.
3352         * testsuite/27_io/ios_manip_fmtflags.cc: Remove two of them.
3354 2002-02-27  Paolo Carlini  <pcarlini@unitus.it>
3356         * testsuite/27_io/ios_manip_basefield.cc (test01):
3357         Fix for 64 bit machines.
3359 2002-02-26  Benjamin Kosnik  <bkoz@redhat.com>
3361         libstdc++/3983
3362         * include/bits/basic_ios.tcc (basic_ios::init): Set _M_fill to zero.
3363         Adjust comment.
3364         * include/bits/basic_ios.h (basic_ios::_M_fill): Make mutable.
3365         (basic_ios::_M_fill_init): New.
3366         (basic_ios::fill()): Delay dealing with _M_fill.
3367         Adjust comment.
3368         * ios.cc (ios_base::ios_base()): Initialize _M_callbacks, _M_words.
3369         (ios_base::_M_call_callbacks): Adjust.
3370         * testsuite/27_io/ios_init.cc (test02): Adjust testcase.
3372 2002-02-26  Loren Rittle  <ljrittle@acm.org>
3374         * include/Makefile.am (thread_target_headers): Unconditionally
3375         stage and install gthr-posix.h.
3376         (${target_builddir}/gthr-posix.h): New rule cloned off
3377         ${target_builddir}/gthr-default.h.
3378         (${target_builddir}/gthr-default.h): Support chained inclusion
3379         of gthr support headers.
3380         * include/Makefile.in: Rebuilt.
3382 2002-02-26  Paolo Carlini  <pcarlini@unitus.it>
3384         * include/bits/locale_facets.tcc (num_put::_M_widen_int):
3385         Group all the integral types, not only decs.
3386         * testsuite/27_io/ios_manip_basefield.cc (test01): Tweak existing
3387         tests, add a few more.
3389 2002-02-25  Benjamin Kosnik  <bkoz@redhat.com>
3391         * src/ios.cc (ios_base::~ios_base): Tweak.
3392         (ios_base::_M_call_callbacks): Deal with null __p.
3393         (ios_base::ios_base): Set _M_callbacks.
3394         * include/bits/basic_ios.tcc (basic_ios::init): Adjust comment.
3395         * testsuite/27_io/ios_init.cc (test02): Fix.
3397         * mkcheck.in (static_fail): Failed links go to output file.
3399 2002-02-25  Phil Edwards  <pme@gcc.gnu.org>
3401         * docs/html/faq/index.html:  Update.
3402         * docs/html/faq/index.txt:  Regenerate.
3404 2002-02-22  Phil Edwards  <pme@gcc.gnu.org>
3406         * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS):  Fix comment.
3407         * aclocal.m4:  Regenerate.
3408         * docs/html/configopts.html:  Document --enable-symvers.
3409         * config/linker-map.gnu:  Break libsupc++ symbols out to their own tag.
3411 2002-02-22  Philipp Thomas  <pthomas@suse.de>
3413         * include/backward/tempbuf.h: get_temporary_buffer and
3414         return_temporary_buffer are in namespace std, not in __gnu_cxx.
3416 2002-02-21  Benjamin Kosnik  <bkoz@redhat.com>
3418         * configure.in (target_alias): Default to yes.
3419         * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Add check for shared
3420         libgcc to default case.
3422 2002-02-20  Phil Edwards  <pme@gcc.gnu.org>
3424         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES):  Also check version.
3425         (GLIBCPP_ENABLE_SYMVERS):  Redo logic, use linker version.
3426         * configure.in (GLIBCPP_ENABLE_SYMVERS):  Move later in the script.
3427         * aclocal.m4:  Regenerate.
3428         * configure:  Regenerate.
3429         * config/linker-map.dummy:  New file.  Contains nothing useful.
3431 2002-02-20  Benjamin Kosnik  <bkoz@redhat.com>
3433         * testsuite/22_locale/money_put_members_char.cc: Fix.
3434         * testsuite/22_locale/money_put_members_wchar_t.cc: Fix.
3436         * testsuite/27_io/standard_manipulators.cc: New file.
3438         * testsuite/27_io/ios_manip_basefield.cc: Check results, now failing.
3439         * testsuite/27_io/ios_manip_fmtflags.cc: Use locale::classic().
3441 2002-02-20  Danny Smith  <dannysmith@users.sourceforge.net>
3443         * config/os/mingw32/bits/ctype_noninline.h
3444         (ctype<char>::ctype): Remove default args from parm list.
3445         * config/os/djgpp/bits/ctype_noninline.h: Same.
3447 2002-02-19  Benjamin Kosnik  <bkoz@redhat.com>
3449         * include/std/std_iomanip.h: Inline, tweaks.
3450         * config/linker-map.gnu: Remove hacks.
3452         * testsuite/21_strings/capacity.cc: Add explicit instantiations.
3453         * testsuite/27_io/ios_init.cc: Same.
3454         * testsuite/22_locale/money_get_members_char.cc (test07): Fix.
3455         * testsuite/22_locale/money_get_members_wchar_t.cc (test07): Same.
3457 2002-02-19  Benjamin Kosnik  <bkoz@redhat.com>
3459         * config/linker-map.gnu: Export global vtable, typeinfo, guard
3460         variable, and thunk info as per CXXABI docs.
3462 2002-02-19  Loren Rittle <ljrittle@acm.org>
3464         * include/Makefile.am: Use CONFIG_HEADER instead of ad hoc names.
3465         * include/Makefile.in: Rebuilt.
3467 2002-02-18  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
3469         * testsuite/22_locale/collate_byname.cc (test01): Replace size4
3470           with size3 for the string collations of str5.
3472 2002-02-18  Paolo Carlini  <pcarlini@unitus.it>
3474         libstdc++/5708
3475         * include/bits/locale_facets.tcc (money_put::do_put):
3476         For the space field use __fill instead of ' ', uniformly.
3477         * testsuite/22_locale/money_put_members_char.cc:
3478         Add test05 distilled from PR.
3479         (test01-02-03): Trim some '*' to ' '.
3480         * testsuite/22_locale/money_put_members_wchar_t.cc: Ditto.
3482 2002-02-18  Loren Rittle <ljrittle@acm.org>
3484         libstdc++/5697
3485         * include/Makefile.am (thread_builddir): Remove (map all
3486         existing uses to target_builddir).
3487         (thread_headers): Rename to...
3488         (thread_target_headers): ...this.
3489         (stamp-thread): Remove.
3490         (stamp-target): Correctly state the position as built.
3491         Update all dependencies to match the new reality.  Remove all
3492         dependency calculations on directories.
3493         * include/Makefile.in: Rebuilt.
3495 2002-02-16   Benjamin Kosnik  <bkoz@redhat.com>
3497         * include/bits/locale_facets.tcc: Add pragma GCC system_header.
3498         * include/bits/fstream.tcc: Same.
3499         * include/bits/sstream.tcc: Same.
3500         * include/bits/ostream.tcc: Same.
3501         * include/bits/istream.tcc: Same.
3502         * include/bits/streambuf.tcc: Same.
3503         * include/bits/basic_ios.tcc: Same.
3504         * include/bits/basic_string.tcc: Same.
3506 2002-02-15  Benjamin Kosnik  <bkoz@redhat.com>
3508         * include/std/std_iosfwd.h: Don't guard typedefs with
3509         _GLIBCPP_USE_WCHAR_T
3510         * include/bits/stringfwd.h: Same.
3512 2002-02-15  Benjamin Kosnik  <bkoz@redhat.com>
3514         * src/locale.cc (moneypunct_byname): Remove definitions.
3515         * include/std/std_streambuf.h (streambuf::operator=): Return.
3517 2002-02-15  Benjamin Kosnik  <bkoz@redhat.com>
3519         Tune for size.
3520         * src/string-inst.cc (string::_Rep::_S_terminal): Remove redundant
3521         explicit instantiation.
3522         (string::_Rep::_S_max_size): Same.
3523         * include/bits/basic_string.tcc: Add extern explicit
3524         instantiations for string, wstring.
3525         * include/bits/basic_ios.tcc: Add extern explicit instantiations
3526         for ios, wios.
3527         * include/bits/streambuf.tcc: Same, for streambuf, wstreambuf.
3528         * include/bits/istream.tcc: Same, for istream, wistream.
3529         * include/bits/ostream.tcc: Same for ostream, wostream, iostream,
3530         wiostream.
3531         * include/bits/sstream.tcc: Same, for stringbuf, wstringbuf,
3532         istringstream, wistringstream, ostringstream, wostringstream,
3533         stringstream, wstringstream.
3534         * include/bits/fstream.tcc: Same, for filebuf, wfilebuf, ifstream,
3535         wifstream, ofstream, wofstream, fstream, wfstream.
3536         * src/misc-inst.cc: Correct comments.
3537         Add iomanip instantiations for wide streams.
3538         * include/std/std_iomanip.h: Same.
3539         * include/bits/locale_facets.tcc: Same.
3541         * include/std/std_streambuf.h: Correct
3542         _GLIBCPP_FULLY_COMPLIANT_HEADERS guard.
3543         * include/std/std_sstream.h: Same.
3544         * include/std/std_ostream.h: Same.
3545         * include/std/std_istream.h: Same.
3546         * include/std/std_fstream.h: Same.
3548         * include/std/std_streambuf.h: Add definitions for private copy
3549         ctor and assignment operator.
3550         * include/std/std_istream.h: Remove declared but undefined copy
3551         ctor and assignment operator. This is taken care of in ios_base,
3552         so adding it in the derived class as well is superfluous.
3553         * include/std/std_ostream.h: Same.
3555         * include/bits/basic_ios.h (basic_ios::clear): Don't inline.
3556         * include/bits/basic_ios.tcc (basic_ios::clear): Move definition here.
3558 2002-02-14  Benjamin Kosnik  <bkoz@redhat.com>
3560         * config/linker-map.gnu: Change tag from GCC_3.1 to GLIBCPP_3.1.
3561         Add typeinfo bits. Smooth.
3562         * aclocal.m4: Regenerate.
3563         * configure: Same.
3564         * src/Makefile.in: Same.
3566 2001-02-14  Joel Sherrill  <joel@OARcorp.com>
3568         * config/cpu/m68k/bits/atomicity.h: Corrected for RTEMS targets
3569         which do not have a CAS instruction.
3571 2002-02-14  Phil Edwards  <pme@gcc.gnu.org>
3573         * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS):  New macro, initial revision.
3574         * configure.in:  Call it.
3575         * config/linker-map.gnu:  New file, initial incomplete revision.
3576         * src/Makefile.am:  Optionally pass version script to the linker.
3577         * aclocal.m4:  Regenerate.
3578         * configure:  Regenerate.
3579         * src/Makefile.in:  Regenerate.
3581 2002-02-13  Benjamin Kosnik  <bkoz@redhat.com>
3583         * src/localename.cc: Remove stdexcept include.
3584         * src/locale-inst.cc: Same.
3585         * src/locale.cc: Same.
3586         * src/functexcept.cc: Remove string includes.
3587         * include/std/std_bitset.h: Remove stdexcept include.
3588         * testsuite/23_containers/bitset_members.cc: Add stdexcept.
3589         * testsuite/23_containers/bitset_ctor.cc: Same.
3591 2002-02-11  Benjamin Kosnik  <bkoz@redhat.com>
3593         * include/bits/stl_algo (__stl_threshold): Declare external.
3594         (__stl_chunk_size): Same.
3595         * include/bits/stl_bvector.h (__WORD_BIT): Same.
3596         * include/bits/stl_tree.h (_S_rb_tree_red): Same.
3597         (_S_rb_tree_black): Same.
3598         * src/stl-inst.cc (__stl_threshold): Define.
3599         (__stl_chunk_size): Same.
3600         (__WORD_BIT): Same.
3601         (_S_rb_tree_red): Same.
3602         (_S_rb_tree_black): Same.
3604         * config/io/basic_file_libio.h (__basic_file): Add declarations.
3605         * include/bits/basic_file.h: Remove.
3606         * config/io/c_io_stdio.h: Remove _GLIBCPP_BASIC_FILE_ENCAPSULATION
3607         Declare generic types, specialization.
3608         * config/io/basic_file_stdio.cc: Definitions.
3609         * config/io/c_io_libio.h: Remove _GLIBCPP_BASIC_FILE_INHERITANCE.
3610         Declare generic types.
3611         * include/Makefile.am (bits_headers): Remove basic_file.h.
3612         (extra_target_headers): Change basic_file_model.h to basic_file.h.
3613         (stamp-target): Same.
3615         * include/bits/stl_alloc.h: Tweaks.
3616         * include/bits/localefwd.h: Same.
3618 2002-02-11  Aaron W LaFramboise  <AWLaFramboise@aol.com>
3620         * include/bits/locale_facets.tcc (collate::do_hash): Fix.
3621         * testsuite/22_locale/collate_members_char.cc (test03): New test.
3622         * testsuite/22_locale/collate_members_wchar_t.cc (test03): Same.
3624 2002-02-10  Phil Edwards  <pme@gcc.gnu.org>
3626         * include/bits/stl_algo.h (transform (both signatures), generate_n):
3627         Use __typeof__ in concept checks.
3629 2002-02-10  Jonathan Wakely  <cow@compsoc.man.ac.uk>
3631         * include/bits/stl_algo.h (__median, for_each, find, find_if,
3632         adjacent_find, count, count_if, search, search_n, swap_ranges,
3633         transform, replace, replace_if, replace_copy, replace_copy_if,
3634         generate, generate_n, remove_copy, remove_copy_if, remove, remove_if,
3635         unique, unique_copy, reverse, reverse_copy):  Doxygenate.
3637 2002-02-08  Benjamin Kosnik  <bkoz@redhat.com>
3639         * include/bits/locale_facets.h
3640         (numpunct<_CharT>::_M_initialize_numpunct): Remove definition.
3641         (__timepunct<_CharT>::_M_initialize_timepunct): Same.
3642         (__timepunct<_CharT>::_M_put_helper): Same.
3643         (moneypunct<_CharT, _Intl>::_M_initialize_moneypunct): Same.
3645         * include/bits/fstream.tcc (filebuf::underflow): Remove
3646         __codecvt_type typedef.
3647         (filebuf::_M_convert_to_external): Same.
3649 2002-02-08  Phil Edwards  <pme@gcc.gnu.org>
3651         * docs/doxygen/TODO:  Update.
3652         * docs/doxygen/doxygroups.cc:  Tweak __gnu_cxx description.
3653         * docs/doxygen/mainpage.html:  Add TODO list link.
3654         * docs/doxygen/user.cfg.in:  Add @doctodo hook.
3655         * docs/doxygen/tables.html:  New file, emoty structure only.
3657         * include/bits/stl_iterator.h:  Doxygenate just about everything.
3658         * include/bits/stl_iterator_base_funcs.h:  Ditto, clean up spaces.
3659         * include/bits/stl_iterator_base_types.h:  Add notes.
3661 2002-02-07  Stephan Buys  <sbproxy@icon.co.za>
3663         * include/bits/stl_map.h:  Tweak doxygen markup.
3664         * include/bits/stl_multimap.h:  Doxygenate and remove extra spaces.
3665         * include/bits/stl_vector.h:  Likewise.
3667 2002-02-07  Benjamin Kosnik  <bkoz@redhat.com>
3669         libstdc++/5286
3670         libstdc++/3860
3671         * include/std/std_fstream.h (filebuf::__file_type): Change to
3672         __basic_file<char>.
3673         (filebuf::_M_convert_to_external): Declare.
3674         * include/bits/fstream.tcc (filebuf::_M_convert_to_external): Define
3675         codecvt bits for wide streams.
3676         (filebuf::_M_really_overflow): Use it.
3677         (filebuf::underflow): Use codecvt.
3678         * config/locale/codecvt_specializations_ieee_1003.1-200x.h:
3679         (codecvt<__enc_traits>::do_out): Deal with partial.
3680         (codecvt<__enc_traits>::do_encoding): Return something useful.
3681         * src/codecvt.cc (codecvt<wchar_t>::do_encoding): Return sizeof
3682         wchar_t.
3683         * testsuite/22_locale/codecvt_members_unicode_char.cc (test01):
3684         Change expected encoding output.
3685         (test02): Same.
3686         * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test01): Same.
3687         (test02): Same.
3689 2002-02-07  Benjamin Kosnik  <bkoz@redhat.com>
3690             Wolfgang Bangerth  <wolfgang.bangerth@iwr.uni-heidelberg.de>
3692         * include/bits/basic_ios.tcc (basic_ios::narrow): Add default value.
3693         (basic_ios::widen): Same.
3695 2002-02-07  Paolo Carlini  <pcarlini@unitus.it>
3697         * testsuite/22_locale/money_get_members_char.cc:
3698         Add comment, tidy up.
3699         (test01): more "en_HK" tests (without showbase).
3700         * testsuite/22_locale/money_get_members_wchar_t.cc: Ditto.
3702 2002-02-06  Loren Rittle <ljrittle@acm.org>
3704         * config/locale/c_locale_generic.cc: Do not trust
3705         _GLIBCPP_HAVE_STRTOF or _GLIBCPP_HAVE_STRTOLD as
3706         set by configure.
3708 2002-02-06  Loren Rittle <ljrittle@acm.org>
3710         * acinclude.m4: Add C++ linkage check for strtof.
3711         * aclocal.m4: Rebuilt.
3712         * config.h.in: Rebuilt.
3713         * configure: Rebuilt.
3714         * config/locale/c_locale_generic.cc: Conditionally include
3715         <ieeefp.h>.  Improve handling and error checking of float
3716         and long double input for non-C99 configurations.
3718 2002-02-06  Paolo Carlini  <pcarlini@unitus.it>
3720         * include/bits/locale_facets.tcc (money_get::do_get(string)):
3721         In case money_base::symbol deal properly with multi-char sign
3722         for patterns {X,Y,Z,symbol} and {X,Y,symbol,none}.
3723         * testsuite/22_locale/money_get_members_char.cc: Add test07.
3724         * testsuite/22_locale/money_get_members_wchar_t.cc: Add test07.
3726 2002-02-05  Paolo Carlini  <pcarlini@unitus.it>
3728         * include/bits/locale_facets.tcc (money_get::do_get(string)):
3729         First construct a tentative returned string, then, only if the
3730         parsing succeeds, copy it into the string passed by reference.
3731         * testsuite/22_locale/money_get_members_char.cc: Add test06.
3732         * testsuite/22_locale/money_get_members_wchar_t.cc: Add test06.
3734 2002-02-04  Phil Edwards  <pme@gcc.gnu.org>
3736         * docs/doxygen/TODO:  Impl-defined behavior now documented...
3737         * docs/html/17_intro/howto.html:  ...here.
3738         * docs/doxygen/mainpage.doxy:  Remove, rename...
3739         * docs/doxygen/mainpage.html:  ...to this.  Tweak HTML, add license.
3740         * docs/doxygen/style.css:  Add small text.
3741         * docs/doxygen/run_doxygen:  Adjust for new mainpage.
3742         * docs/doxygen/user.cfg.in:  Likewise.
3744 2002-02-04  Stephan Buys  <sbproxy@icon.co.za>
3746         * include/bits/stl_map.h:  Initial doxygen markup.
3747         * include/std/std_fstream.h:  Initial doxygen markup.
3749 2002-02-04  Paolo Carlini  <pcarlini@unitus.it>
3751         libstdc++/5579
3752         * include/bits/locale_facets.tcc (money_get::do_get(string)):
3753         Deal correctly with !(__io.flags() & ios_base::showbase)
3754         for case money_base::symbol.
3755         * testsuite/22_locale/money_get_members_char.cc: Add test05.
3756         * testsuite/22_locale/money_get_members_wchar_t.cc: Add test05.
3758 2002-02-02  Paolo Carlini  <pcarlini@unitus.it>
3760         * testsuite/22_locale/operators.cc
3761         (gnu_collate::do_compare()): Add return statement to
3762         suppress "no return statement" warning.
3764 2002-02-01  Paolo Carlini  <pcarlini@unitus.it>
3766         * testsuite/27_io/ostream_manip.cc: Enable test02.
3768 2002-02-01  Phil Edwards  <pme@gcc.gnu.org>
3770         * docs/html/documentation.html:  Update for 3.0.96.
3771         * docs/html/faq/index.html:  Update for 3.0.96.
3772         * docs/html/faq/index.txt:  Regenerated.
3773         * docs/doxygen/TODO:  Update notes.
3774         * docs/html/17_intro/howto.html:  Initial impl-specific listing.
3776 2002-01-31  Benjamin Kosnik  <bkoz@redhat.com>
3778         * config/locale/codecvt_specializations_ieee_1003.1-200x.h:
3779         Initialize all data members in copy ctor. Make ctors explicit.
3780         (__enc_traits::__enc_traits()): Default ctor does nothing.
3781         (__enc_traits::_M_init): Guard against multiple iconv_opens.
3782         * include/std/std_sstream.h (basic_stringbuf): Make data members
3783         protected.
3784         * include/std/std_fstream.h (basic_filebuf): Same.
3785         * include/std/std_streambuf.h: Tweak.
3786         * include/bits/streambuf.tcc: Same.
3787         * include/bits/sstream.tcc: Same.
3788         * include/bits/fstream.tcc: Same.
3790 2002-01-31  Loren Rittle <ljrittle@acm.org>
3792         * testsuite/22_locale/codecvt_members_char_char.cc: Do not
3793         allow NULL argument to be passed to setenv().
3794         * testsuite/22_locale/codecvt_members_wchar_t_char.cc: Likewise.
3795         * testsuite/22_locale/collate_members_char.cc: Likewise.
3796         * testsuite/22_locale/collate_members_wchar_t.cc: Likewise.
3797         * testsuite/22_locale/ctype_members_char.cc: Likewise.
3798         * testsuite/22_locale/ctype_members_wchar_t.cc: Likewise.
3799         * testsuite/22_locale/messages_members_char.cc: Likewise.
3800         * testsuite/22_locale/money_get_members_char.cc: Likewise.
3801         * testsuite/22_locale/money_get_members_wchar_t.cc: Likewise.
3802         * testsuite/22_locale/money_put_members_char.cc: Likewise.
3803         * testsuite/22_locale/money_put_members_wchar_t.cc: Likewise.
3804         * testsuite/22_locale/moneypunct_members_char.cc: Likewise.
3805         * testsuite/22_locale/moneypunct_members_wchar_t.cc: Likewise.
3806         * testsuite/22_locale/num_get_members_char.cc: Likewise.
3807         * testsuite/22_locale/num_get_members_wchar_t.cc: Likewise.
3808         * testsuite/22_locale/num_put_members_char.cc: Likewise.
3809         * testsuite/22_locale/num_put_members_wchar_t.cc: Likewise.
3810         * testsuite/22_locale/numpunct_members_char.cc: Likewise.
3811         * testsuite/22_locale/numpunct_members_wchar_t.cc: Likewise.
3812         * testsuite/22_locale/time_get_members_char.cc: Likewise.
3813         * testsuite/22_locale/time_get_members_wchar_t.cc: Likewise.
3814         * testsuite/22_locale/time_put_members_char.cc: Likewise.
3815         * testsuite/22_locale/time_put_members_wchar_t.cc: Likewise.
3817 2002-01-30  Benjamin Kosnik  <bkoz@redhat.com>
3819         * config/locale/c_locale_gnu.cc: Same errno fixes as generic.
3821         * ChangeLog-2001: Fix spelling errors...
3822         * docs/html/17_intro/RELEASE-NOTES: Update.
3823         * docs/html/17_intro/TODO: Update.
3824         * README (file): Update.
3826 2002-01-30  Loren Rittle <ljrittle@acm.org>
3828         * config/locale/c_locale_generic.cc: Check errno for ERANGE
3829         instead of non-zero to aid portability.
3831 2002-01-30  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
3833         * docs/html/22_locale/messages.html: Fix example code.
3835 2002-01-30  Richard Henderson  <rth@redhat.com>
3837         * testsuite/27_io/ostream_inserter_arith.cc (test03_check): Break
3838         out from test03 and templatize.
3839         (test03): Use it.
3841 2002-01-30  Paolo Carlini  <pcarlini@unitus.it>
3843         * config/locale/numpunct_members_gnu.cc
3844         (numpunct<char, wchar_t>::_M_initialize_numpunct()):
3845         Fix initialization of _M_grouping for locales which have
3846         _M_thousands_sep == '\0'(L'\0', respectively).
3847         * testsuite/22_locale/numpunct_byname.cc (test02): Add test.
3849 2002-01-30  Paolo Carlini  <pcarlini@unitus.it>
3851         * testsuite/27_io/ostream_inserter_arith.cc (test03):
3852         Better fix for 32/64 bit architectures, avoiding the
3853         implicit assumption that CHAR_BIT == 8.
3855 2002-01-28  Phil Edwards  <pme@gcc.gnu.org>
3857         * Makefile.am (doxygen, doxygen-maint, doxygen-man):  Tweak targets.
3858         * Makefile.in:  Regenerate.
3860         * docs/doxygen/run_doxygen:  Update, mostly for man pages.
3861         * docs/doxygen/Intro.3:  Update.
3862         * docs/doxygen/TODO:  Update.
3863         * docs/doxygen/doxygroups.cc:  Add namespace hook for __gnu_cxx.
3864         * docs/doxygen/mainpage.doxy:  Update.
3865         * docs/doxygen/user.cfg.in:  Update for header rename.  Also
3866         regenerate comments and variables with 1.2.12.
3867         * docs/doxygen/maint.cfg.in:  Remove file.
3869         * include/bits/stl_relops.h:  Doxygenate.
3870         * include/bits/stl_tempbuf.h (std::_Temporary_buffer):  Likewise.
3872         * include/c_std/std_cassert.h, include/c_std/std_cctype.h,
3873         include/c_std/std_cerrno.h, include/c_std/std_cfloat.h,
3874         include/c_std/std_ciso646.h, include/c_std/std_climits.h,
3875         include/c_std/std_clocale.h, include/c_std/std_cmath.h,
3876         include/c_std/std_csetjmp.h, include/c_std/std_csignal.h,
3877         include/c_std/std_cstdarg.h, include/c_std/std_cstddef.h,
3878         include/c_std/std_cstdio.h, include/c_std/std_cstdlib.h,
3879         include/c_std/std_cstring.h, include/c_std/std_ctime.h,
3880         include/c_std/std_cwchar.h, include/c_std/std_cwctype.h,
3881         include/ext/algorithm, include/ext/functional, include/ext/hash_map,
3882         include/ext/hash_set, include/ext/iterator, include/ext/memory,
3883         include/ext/numeric, include/ext/rb_tree, include/ext/rope,
3884         include/ext/ropeimpl.h, include/ext/slist, include/ext/stl_hash_fun.h,
3885         include/ext/stl_hashtable.h, include/ext/stl_rope.h,
3886         include/std/std_algorithm.h, include/std/std_bitset.h,
3887         include/std/std_complex.h, include/std/std_deque.h,
3888         include/std/std_fstream.h, include/std/std_functional.h,
3889         include/std/std_iomanip.h, include/std/std_ios.h,
3890         include/std/std_iosfwd.h, include/std/std_iostream.h,
3891         include/std/std_istream.h, include/std/std_iterator.h,
3892         include/std/std_limits.h, include/std/std_list.h,
3893         include/std/std_locale.h, include/std/std_map.h,
3894         include/std/std_memory.h, include/std/std_numeric.h,
3895         include/std/std_ostream.h, include/std/std_queue.h,
3896         include/std/std_set.h, include/std/std_sstream.h,
3897         include/std/std_stack.h, include/std/std_stdexcept.h,
3898         include/std/std_streambuf.h, include/std/std_string.h,
3899         include/std/std_utility.h, include/std/std_valarray.h,
3900         include/std/std_vector.h:  Add/correct @file doxygen hook.
3902         * include/ext/memory:  Doxygenate most of rest of file.
3903         * libsupc++/exception:  Doxygen output formatting.
3904         * libsupc++/new:  Say which header it is.
3906         * testsuite/lib/libstdc++-v3-dg.exp:  Fix spacing.
3907         * docs/html/19_diagnostics/howto.html:  Describe concept-checks switch.
3908         * docs/html/23_containers/howto.html:  Describe O(n) list::size().
3909         * docs/html/27_io/howto.html:  Also link to Langer and Kreft text.
3911 2002-01-28  Paolo Carlini  <pcarlini@unitus.it>
3912             Charles Leggett <CGLeggett@lbl.gov>
3914         * testsuite/27_io/filebuf_members.cc (test_05): Add test.
3916 2002-01-28  Paolo Carlini  <pcarlini@unitus.it>
3918         * testsuite/27_io/ostream_inserter_arith.cc (test03):
3919         Fix to deal correctly with both 32 bit and 64 bit architectures
3921 2002-01-25  Loren Rittle <ljrittle@acm.org>
3923         * testsuite/thread/pthread1.cc: Use one condition variable
3924         per predicate instead of tricky use of one condition variable.
3926 2002-01-25  Benjamin Kosnik  <bkoz@redhat.com>
3928         * include/bits/fstream.tcc (filebuf::close()): Fix close for input
3929         streams.
3930         (filebuf::_M_really_overflow): Match indeterminate and sync calls.
3931         * testsuite/27_io/filebuf.cc: Compile only.
3932         * testsuite/27_io/filebuf_members.cc: Move tests to here.
3933         * testsuite/27_io/filebuf_virtuals.cc: And here.
3934         Revert sungetc, sync changes for expected values.
3935         * testsuite/27_io/filebuf-*: Move to...
3936         * testsuite/27_io/filebuf_virtuals-*: ...here.
3937         * testsuite/27_io/istream.cc: Compile only, activate.
3938         * testsuite/27_io/ostream.cc: Same.
3939         * testsuite/27_io/iostream.cc: New.
3940         * testsuite/27_io/iostream_members.cc: New.
3942 2002-01-25  David Billinghurst <David.Billinghurst@riotinto.com>
3944         * testsuite/thread/pthread1.cc: Enable on cygwin.
3945         * testsuite/thread/pthread2.cc: Likewise.
3946         * testsuite/thread/pthread3.cc: Likewise.
3947         * testsuite/thread/pthread4.cc: Likewise.
3948         * testsuite/thread/pthread5.cc: Likewise.
3949         * testsuite/thread/pthread6.cc: Likewise.
3951 2002-01-24  Benjamin Kosnik  <bkoz@redhat.com>
3953         * testsuite/27_io/ostream_inserter_char.cc (test07): New.
3955 2002-01-24  Benjamin Kosnik  <bkoz@redhat.com>
3957         * include/bits/basic_ios.h (basic_ios::_M_check_facet): Make
3958         const, tweak.
3959         (basic_ios::fill(char_type)): Use fill().
3960         * include/bits/basic_ios.tcc (basic_ios::widen): Use _M_check_facet.
3961         (basic_ios::narrow): Same.
3962         (basic_ios::_M_cache_facets): Explicitly set cached facets to zero
3963         if they are invalid.
3964         (basic_ios::init): Comment.
3965         * testsuite/27_io/ios_init.cc (test02): New.
3967 2002-01-24  Phil Edwards  <pme@gcc.gnu.org>
3969         * include/bits/stl_tempbuf.h (_Temporary_buffer):  Add doxygen hook.
3970         * include/bits/stl_algo.h:  Include stl_tempbuf.h.
3971         * include/ext/memory:  Do not include stl_tempbuf.h.
3972         (temporary_buffer):  Add doxygen hook.
3973         (__get_temporary_buffer, get_temporary_buffer,
3974         return_temporary_buffer):  Move back to std:: header...
3975         * include/std/std_memory.h:  ...here.  Do not include stl_tempbuf.h.
3976         * include/ext/rope:  Do not include stl_tempbuf.h.
3977         * include/ext/stl_hashtable.h:  Likewise.
3978         * include/std/std_algorithm.h:  Likewise.
3979         * testsuite/20_util/temporary_buffer.cc:  New file.
3981 2002-01-24  andrew@andypo.net
3982             (tweaks, test and commit by Loren J. Rittle  <ljrittle@acm.org>)
3984         libstdc++/5432
3985         * include/bits/ios_base.h: Use _Atomic_word for reference counts.
3986         * include/bits/localefwd.h: Likewise.
3987         Also use for std::locale::id::_S_highwater.
3988         * src/ios.cc (ios_base::xalloc): Use _Atomic_word.
3989         * src/locale.cc: Support new usage of _Atomic_word.
3990         (std::locale::classic): Guard entire function against reentry.
3991         * src/localename.cc: Support new usage of _Atomic_word.
3993 2002-01-24   Benjamin Kosnik  <bkoz@redhat.com>
3995         * testsuite/22_locale/num_put_members_wchar_t.cc (test03): Use
3996         _GLIBCPP_HAVE_SETENV.
3997         * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test02): Same.
3998         * testsuite/22_locale/collate_members_char.cc (test02): Same.
3999         * testsuite/22_locale/ctype_members_char.cc (test03): Same.
4000         * testsuite/22_locale/ctype_members_wchar_t.cc (test03): Same.
4001         * testsuite/22_locale/messages_members_char.cc (test02): Same.
4002         * testsuite/22_locale/moneypunct_members_char.cc (test02): Same.
4003         * testsuite/22_locale/moneypunct_members_wchar_t.cc (test02): Same.
4004         * testsuite/22_locale/money_put_members_char.cc (test04): Same.
4005         * testsuite/22_locale/money_put_members_wchar_t.cc (test04): Same.
4006         * testsuite/22_locale/num_get_members_char.cc (test03): Same.
4007         * testsuite/22_locale/num_get_members_wchar_t.cc (test03): Same.
4008         * testsuite/22_locale/numpunct_members_char.cc (test02): Same.
4009         * testsuite/22_locale/numpunct_members_wchar_t.cc (test02): Same.
4010         * testsuite/22_locale/time_get_members_char.cc (test07): Same.
4011         * testsuite/22_locale/time_get_members_wchar_t.cc (test07): Same.
4012         * testsuite/22_locale/time_put_members_char.cc (test03): Same.
4013         * testsuite/22_locale/time_put_members_wchar_t.cc (test03): Same.
4014         * testsuite/22_locale/num_put_members_char.cc (test03): Same.
4015         * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Check for setenv.
4016         * aclocal.m4: Regenerate.
4017         * configure: Regenerate.
4018         * config.h.in: Regenerate.
4020 2002-01-23  Loren Rittle <ljrittle@acm.org>
4022         * testsuite/thread/pthread1.cc: New test.
4023         * testsuite/thread/pthread2.cc: New test adapted from libstdc++/5347.
4024         * testsuite/thread/pthread3.cc: Likewise.
4025         * testsuite/thread/pthread4.cc: New test adapted from
4026         http://gcc.gnu.org/ml/gcc-bugs/2002-01/msg00679.html
4027         * testsuite/thread/pthread5.cc: New test adapted from libstdc++/5464.
4028         * testsuite/thread/pthread6.cc: New test adapted from libstdc++/5444.
4030 2002-01-23  Richard Henderson  <rth@redhat.com>
4032         PR libstdc++/5198
4033         * config/cpu/m68k/bits/atomicity.h (__exchange_and_add): Only use
4034         CAS on the cpu variants that support it.  Add versions that use
4035         TAS and that disable interrupts.
4036         (__atomic_add): Use __exchange_and_add to guarantee atomicity.
4038 2002-01-23  Matt Kraai  <kraai@alumni.cmu.edu>
4040         * include/bits/locale_facets.tcc: Remove old comments.
4042 2002-01-23  Andreas Tobler  <toa@pop.agri.ch>
4044         * include/bits/locale_facets.tcc (__convert_to_v): Change template
4045         parameter to _Tv.
4046         (__convert_from_v): Same.
4048 2002-01-23  Benjamin Kosnik  <bkoz@redhat.com>
4050         * include/bits/locale_facets.h (num_get::_M_extract_int): Change
4051         prototype.
4052         * include/bits/locale_facets.tcc (num_get::_M_extract_int): Remove
4053         __max_digits checks, adjust arguments.
4054         (num_get::do_get(*)): Changeup.
4056 2002-01-23  Loren Rittle <ljrittle@acm.org>
4058         * config/locale/c_locale_generic.cc: Fix typename usage.
4060 2002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
4062         * config/locale/c_locale_generic.cc: Fix.
4064 2002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
4066         * docs/html/22_locale/messages.html: Remove angle brackets.
4067         * docs/html/17_intro/TODO: Add.
4069 2002-01-22  Paolo Carlini  <pcarlini@unitus.it>
4071         * testsuite/27_io/ios_manip_basefield.cc: Enable test02.
4072         * testsuite/27_io/ostream_inserter_arith.cc: Enable test03.
4073         * testsuite/27_io/ostream_inserter_char.cc: Enable test01.
4074         * testsuite/27_io/ostream_inserter_other.cc: Enable test04.
4076 2002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
4078         Audit for LANG independence.
4079         * include/bits/localefwd.h: Tweaks.
4080         * include/bits/locale_facets.tcc (money_get::do_get(long double)):
4081         Use __convert_to_v.
4082         (time_get::do_get_year): Same.
4083         (__convert_from_v): Add.
4084         (num_put::_M_convert_float): Use.
4085         (num_put::_M_convert_int): Same.
4086         (money_put::do_put): Same.
4088         * src/locale-inst.cc: Add instantiations for __convert_from_v.
4089         * config/locale/time_members_gnu.cc: Cleanup setlocale usage.
4090         * config/locale/time_members_generic.cc:
4091         * config/locale/messages_members_gnu.cc: Same.
4092         * config/locale/messages_members_gnu.h: Same.
4094         * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test02): New.
4095         * testsuite/22_locale/codecvt_members_char_char.cc (test02): New.
4096         * testsuite/22_locale/collate_members_wchar_t.cc (test02): New.
4097         * testsuite/22_locale/collate_members_char.cc (test02): New.
4098         * testsuite/22_locale/ctype_members_wchar_t.cc (test03): New.
4099         * testsuite/22_locale/ctype_members_char.cc (test03): New.
4100         * testsuite/22_locale/messages_members_char.cc (test02): New.
4101         * testsuite/22_locale/moneypunct_members_wchar_t.cc (test02): New.
4102         * testsuite/22_locale/moneypunct_members_char.cc (test02): New.
4103         * testsuite/22_locale/money_get_members_wchar_t.cc (test04): New.
4104         * testsuite/22_locale/money_get_members_char.cc (test04): New.
4105         * testsuite/22_locale/money_put_members_wchar_t.cc (test04): New.
4106         * testsuite/22_locale/money_put_members_char.cc (test04): New.
4107         * testsuite/22_locale/numpunct_members_wchar_t.cc (test02): New.
4108         * testsuite/22_locale/numpunct_members_char.cc (test02): New.
4109         * testsuite/22_locale/time_put_members_wchar_t.cc (test03): New.
4110         * testsuite/22_locale/time_put_members_char.cc (test03): New.
4111         * testsuite/22_locale/time_get_members_wchar_t.cc (test07): New.
4112         * testsuite/22_locale/time_get_members_char.cc (test07): New.
4113         * testsuite/22_locale/num_get_members_wchar_t.cc (test03): New.
4114         * testsuite/22_locale/num_get_members_char.cc (test03): New.
4115         * testsuite/22_locale/num_put_members_wchar_t.cc (test03): New.
4116         * testsuite/22_locale/num_put_members_char.cc (test03): New.
4118         * testsuite/22_locale/time_get_members_char.cc: Fixups for global
4119         locale issues.
4120         * testsuite/22_locale/time_get_members_char.cc: Same.
4122 2002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
4124         libstdc++/5280
4125         * include/bits/localefwd.h: Tweak comments.
4126         * include/bits/locale_facets.h (__convert_to_v): Add.
4127         * include/bits/locale_facets.tcc (num_get::do_get(double)): Use it.
4128         (num_get::do_get(float)): Same.
4129         (num_get::do_get(long double)): Same.
4130         (num_get::do_get(bool)): Same.
4131         (num_get::do_get(long)): Same.
4132         (num_get::do_get(long long)): Same.
4133         (num_get::do_get(unsigned int)): Same.
4134         (num_get::do_get(unsigned short)): Same.
4135         (num_get::do_get(unsigned long)): Same.
4136         (num_get::do_get(unsigned long long)): Same.
4137         * config/locale/c_locale_gnu.cc (__convert_to_v): Specialize.
4138         * config/locale/c_locale_generic.cc: Same.
4140 2002-01-22  Loren Rittle <ljrittle@acm.org>
4142         * include/Makefile.am (c_base_builddir): Remove redundant slash.
4143         (std_builddir): Likewise.
4144         (std_headers_rename): Fix cut-n-paste typo.
4145         (install-data-local): Concat path per element instead of once to
4146         first element of list.
4147         * include/Makefile.in: Rebuilt.
4149 2002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
4151         * config/os/aix/bits/ctype_noninline.h: Fix formatting.
4152         * config/os/bsd/netbsd/bits/ctype_noninline.h: Fix typo.
4153         * config/os/bsd/freebsd/bits/ctype_noninline.h: Fix formatting.
4155 2002-01-20  Benjamin Kosnik  <bkoz@redhat.com>
4157         * include/bits/locale_facets.h (ctype<char>::classic_table):
4158         Remove definition.
4159         (ctype<char>::_S_ctable): Remove.
4160         * config/os/gnu-linux/bits/ctype_noninline.h
4161         (ctype<char>::_S_table): Remove definition.
4162         (ctype<char>::classic_table): Define.
4163         (ctype<char>::ctype): Replace _S_ctable with classic_table().
4164         * config/os/aix/bits/ctype_noninline.h: Same.
4165         * config/os/bsd/freebsd/bits/ctype_noninline.h: Same.
4166         * config/os/bsd/netbsd/bits/ctype_noninline.h: Same.
4167         * config/os/djgpp/bits/ctype_noninline.h: Same.
4168         * config/os/generic/bits/ctype_noninline.h: Same.
4169         * config/os/gnu-linux/bits/ctype_noninline.h: Same.
4170         * config/os/hpux/bits/ctype_noninline.h: Same.
4171         * config/os/irix/irix5.2/bits/ctype_noninline.h: Same.
4172         * config/os/irix/irix6.5/bits/ctype_noninline.h: Same.
4173         * config/os/mingw32/bits/ctype_noninline.h: Same.
4174         * config/os/newlib/bits/ctype_noninline.h: Same.
4175         * config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
4176         * config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.
4177         * config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.
4179 2002-01-20  Danny Smith  <dannysmith@users.sourceforge.net>
4181         * config/os/mingw32/bits/ctype_noninline.h: Declare _ctype instead
4182         of _pctype. Use to define _S_ctable.  Add definition for alternate
4183         ctor.  Initialise _M_ctable to _S_ctable in ctors.
4184         (do_toupper, do_tolower): Use inline code appropriate for C-locale
4185         rather than ::toupper, ::tolower.
4187 2002-01-18  Loren Rittle <ljrittle@acm.org>
4189         * testsuite/18_support/numeric_limits.cc (test_extrema<long double>):
4190         Add specialization for FreeBSD systems only to avoid losing test
4191         only due to extra precision unmentioned in system headers.
4193 2002-01-18  David Billinghurst <David.Billinghurst@riotinto.com>
4195         * config/os/irix/irix6.5/bits/ctype_noninline.h: Fix typo
4197 2002-01-17  Nick Clifton  <nickc@cambridge.redhat.com>
4199         * testsuite/testsuite_hooks.h: Fix comment typo.  Memory
4200         limiting is only attempted if _GLIBCPP_MEM_LIMIT is defined.
4202 2002-01-17  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
4204         * testsuite/22_locale/ctor_copy_dtor.cc: Remove check.
4206 2002-01-17  David Edelsohn  <edelsohn@gnu.org>
4208         * configure.target: Define OPT_LDFLAGS for AIX case.
4210 2002-01-17  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>
4212         * include/std/std_limits.h (__glibcpp_float_has_quiet_NaN,
4213         __glibcpp_double_has_quiet_NaN): Correct mispelling.
4215 2002-01-17  Andreas Tobler  <toa@pop.agri.ch>
4217         * config/os/solaris/solaris2.6/bits/ctype_noninline.h: Fix.
4219 2002-01-16  David Edelsohn  <dje@watson.ibm.com>
4221         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Do not clear
4222         SECTION_LDFLAGS and OPT_LDFLAGS.  Fix ac_sectionLDflags type.
4223         * aclocal.m4: Regenerate.
4224         * configure: Regenerate.
4226 2002-01-16  Benjamin Kosnik  <bkoz@redhat.com>
4228         * include/Makefile.am (c_base_headers_rename): New.
4229         (c_base_headers_extra): New.
4230         (stamp-c_base): Modify.
4231         (install-data-local): Use both.
4232         * include/Makefile.in: Regenerate.
4233         * include/c/[cctype ciso646 cmath cstdarg cstdlib cerrno climits
4234         csetjmp cstddef cstring cwchar cassert cfloat clocale csignal
4235         cstdio ctime cwctype]: Move to..
4236         * include/c/std_*: Here.
4237         * include/c_std/[cctype ciso646 cmath cstdarg cstdlib cerrno climits
4238         csetjmp cstddef cstring cwchar cassert cfloat clocale csignal
4239         cstdio ctime cwctype]: Move to..
4240         * include/c_std/std_*: Here.
4242         Alexandre Oliva  <aoliva@redhat.com>
4243         * include/Makefile.am (.PRECIOUS): Add rule.
4244         * include/Makefile.in: Regenerate.
4246 2002-01-16  Benjamin Kosnik  <bkoz@redhat.com>
4247             Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
4249         * include/bits/stl_iterator.h (reverse_iterator::_M_current):
4250         Deuglify, should be current.
4251         (back_insert_iterator::_M_container): Deuglify, should be container.
4252         (front_insert_iterator::_M_container): Same.
4253         (insert_iterator::_M_container): Same.
4254         * testsuite/24_iterators/reverse_iterator.cc: Add check.
4255         * testsuite/24_iterators/back_insert_iterator.cc: Add check.
4256         * testsuite/24_iterators/front_insert_iterator.cc: Same.
4257         * testsuite/24_iterators/insert_iterator.cc: Same.
4259 2002-01-16  Benjamin Kosnik  <bkoz@redhat.com>
4261         * include/bits/locale_facets.h (ctype<char>::classic_table): Make
4262         static.
4263         (ctype<char>::_M_ctable): Make static, change name to _S_ctable.
4264         * config/os/gnu-linux/bits/ctype_noninline.h: Define _S_ctable.
4265         * config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.
4266         * config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.
4267         * config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
4268         * config/os/newlib/bits/ctype_noninline.h: Same.
4269         * config/os/irix/irix6.5/bits/ctype_noninline.h: Same.
4270         * config/os/irix/irix5.2/bits/ctype_noninline.h: Same.
4271         * config/os/hpux/bits/ctype_noninline.h: Same.
4272         * config/os/djgpp/bits/ctype_noninline.h: Same.
4273         * config/os/bsd/netbsd/bits/ctype_noninline.h: Same.
4274         * config/os/bsd/freebsd/bits/ctype_noninline.h: Same.
4275         * config/os/aix/bits/ctype_noninline.h: Same.
4277         Testcase by Dietmar Kühl via Peter Schmid
4278         * testsuite/22_locale/ctype_members_char.cc (char>): Add test for
4279         classic_table().
4281 2002-01-16  Benjamin Kosnik  <bkoz@redhat.com>
4283         * libmath/signbitl.c: Copyright years as list, not range.
4284         * libmath/Makefile.am: Same.
4285         * libmath/Makefie.in: Regenerate.
4286         * libmath/signbit.c: Same.
4287         * libmath/nan.c: Same.
4288         * libmath/copysignf.c: Same.
4289         * libmath/signbitf.c: Same.
4290         * testsuite/22_locale/money_get_members_char.cc: Same.
4291         * testsuite/22_locale/money_get_members_wchar_t.cc: Same.
4292         * testsuite/22_locale/money_put_members_char.cc: Same.
4293         * testsuite/22_locale/money_put_members_wchar_t.cc: Same.
4294         * testsuite/22_locale/time_get_members_char.cc: Same.
4295         * testsuite/22_locale/time_get_members_wchar_t.cc: Same.
4296         * testsuite/22_locale/time_put_members_char.cc: Same.
4297         * testsuite/22_locale/time_put_members_wchar_t.cc: Same.
4298         * testsuite/21_strings/nonmember.cc: Same.
4299         * testsuite/21_strings/compare.cc: Same.
4300         * testsuite/27_io/stringstream.cc: Same.
4301         * testsuite/27_io/stringbuf.cc: Same.
4302         * testsuite/27_io/filebuf.cc: Same.
4303         * testsuite/27_io/ios_manip_basefield.cc: Same.
4304         * testsuite/27_io/ios_manip_fmtflags.cc: Same.
4305         * include/bits/cpp_type_traits.h: Same.
4306         * include/bits/generic_shadow.h: Same.
4307         * include/bits/gslice_array.h: Same.
4308         * include/bits/gslice.h: Same.
4309         * include/bits/indirect_array.h: Same.
4310         * include/bits/slice_array.h: Same.
4311         * include/bits/sstream.tcc: Same.
4312         * include/bits/streambuf_iterator.h: Same.
4313         * include/bits/valarray_array.tcc: Same.
4314         * include/bits/valarray_meta.h: Same.
4315         * include/bits/valarray_array.h: Same.
4316         * config/os/mingw32/bits/ctype_noninline.h: Same.
4317         * config/os/mingw32/bits/ctype_base.h: Same.
4318         * config/os/hpux/bits/ctype_noninline.h: Same.
4319         * config/os/hpux/bits/ctype_base.h: Same.
4320         * config/os/gnu-linux/bits/ctype_noninline.h: Same.
4321         * config/os/gnu-linux/bits/ctype_base.h: Same.
4322         * config/os/generic/bits/ctype_noninline.h: Same.
4323         * config/os/generic/bits/ctype_base.h: Same.
4325         * libsupc++/tinfo.h: Tweaks.
4327 2002-01-15  Benjamin Kosnik  <bkoz@redhat.com>
4329         * testsuite/22_locale/num_put_members_wchar_t.cc (test02): Same.
4330         * testsuite/22_locale/num_put_members_char.cc (test01): Tweak.
4331         * testsuite/22_locale/ctype_members_char.cc: Tweak.
4333 2002-01-15  Benjamin Kosnik  <bkoz@redhat.com>
4335         * include/bits/locale_facets.tcc (num_put::do_put(bool): Fix.
4336         (num_put::do_put(void*)): Fix.
4337         * testsuite/22_locale/num_put_members_char.cc (test02): Add.
4338         * testsuite/22_locale/num_put_members_wchar_t.cc (test02): Add.
4339         * testsuite/22_locale/num_get_members_char.cc (test02): Add
4340         long double, void, bool types.
4341         * testsuite/22_locale/num_get_members_wchar_t.cc (test02): Add.
4343 2002-01-15  Benjamin Kosnik  <bkoz@redhat.com>
4344             Alexandre Oliva  <aoliva@redhat.com>
4346         * libmath/Makefile.am (LINK): Add --tag CC.
4347         * libmath/Makefile.in: Regenerate.
4349 2002-01-15  John David Anglin  <dave@hiauly1.hia.nrc.ca>
4351         * config/os/hpux/bits/ctype_noninline.h: Use __SB_masks for address
4352         of character to attribute mapping table.
4354 2002-01-15  David Billinghurst <David.Billinghurst@riotinto.com>
4356         * testsuite/26_numerics/c99_classification_macros_c.cc
4357         Remove dg-error and dg-excess-errors comments.
4359 2002-01-14  Benjamin Kosnik  <bkoz@redhat.com>
4361         * include/bits/locale_facets.tcc (time_put::put): Correct output
4362         iterator positions.
4363         * testsuite/22_locale/time_put_members_char.cc (test02): Add.
4364         * testsuite/22_locale/time_put_members_wchar_t.cc (test02): Add.
4365         * testsuite/22_locale/time_get_members_wchar_t.cc (test06): Add.
4366         * testsuite/22_locale/time_get_members_char.cc (test06): Add.
4368 2002-01-14  Craig Rodrigues  <rodrigc@gcc.gnu.org>
4370         * docs/html/17_intro/porting-howto.xml: Update filebuf section.
4372 2002-01-14  Paolo Carlini  <pcarlini@unitus.it>
4373             Nathan Myers  <ncm@cantrip.org>
4375         * include/bits/basic_string.h
4376         (replace(__pos, __n1, __s, __n2)): Optimize by avoiding
4377         temporaries (i.e., call _M_replace_safe) when possible.
4378         (replace(__pos, __n, __str)): Call replace(__pos, __n1, __s, __n2).
4379         (replace(__pos, __n1, __s)): Call replace(__pos, __n1, __s , __n2).
4380         (replace(__i1, __i2, __str)): Call replace(__i1, __i2, __s, __n).
4381         (replace(__i1, __i2, __s)): Call replace(__i1, __i2, __s, __n).
4382         (replace(__i1, __i2, __s, __n)): Call replace(__pos1, __n1, __s, __n2).
4383         * include/bits/basic_string.tcc
4384         (replace(__pos1, __n1, __str, __pos2, __n2)): Call
4385         replace(__pos, __n1, __s, __n2).
4386         * testsuite/21_strings/replace.cc (test03): New testcases.
4388         * include/bits/basic_string.h (insert(__pos, __s, __n)):
4389         Adjust comparison wrt overflow.
4391 2002-01-12  Benjamin Kosnik  <bkoz@redhat.com>
4393         * include/Makefile.am (std_headers_rename): New variable.
4394         (install-data-local): Use it.
4395         * include/Makefile.in: Regenerate.
4397 2002-01-12  Benjamin Kosnik  <bkoz@redhat.com>
4399         * include/bits/locale_facets.tcc (money_put::do_put(string):
4400         Correct output iterator value.
4401         * testsuite/22_locale/money_put_members_char.cc (test03): Add.
4402         * testsuite/22_locale/money_put_members_wchar_t.cc: Same.
4404 2002-01-11  Phil Edwards  <pme@gcc.gnu.org>
4406         * include/Makefile.am, include/Makefile.in (stamp-std):  Fix typo from
4407         previous commit.
4409 2002-01-11  Phil Edwards  <pme@gcc.gnu.org>
4411         * include/Makefile.am (std_headers):  Update list with new names.
4412         (stamp-std):  Link to standardized name.
4413         * include/Makefile.in:  Regenerate.
4415         * include/std/algorithm, include/std/bitset, include/std/complex,
4416         include/std/deque, include/std/fstream, include/std/functional,
4417         include/std/iomanip, include/std/ios, include/std/iosfwd,
4418         include/std/iostream, include/std/istream, include/std/iterator,
4419         include/std/limits, include/std/list, include/std/locale,
4420         include/std/map, include/std/memory, include/std/numeric,
4421         include/std/ostream, include/std/queue, include/std/set,
4422         include/std/sstream, include/std/stack, include/std/stdexcept,
4423         include/std/streambuf, include/std/string, include/std/utility,
4424         include/std/valarray, include/std/vector:  Rename to...
4426         * include/std/std_algorithm.h, include/std/std_bitset.h,
4427         include/std/std_complex.h, include/std/std_deque.h,
4428         include/std/std_fstream.h, include/std/std_functional.h,
4429         include/std/std_iomanip.h, include/std/std_ios.h,
4430         include/std/std_iosfwd.h, include/std/std_iostream.h,
4431         include/std/std_istream.h, include/std/std_iterator.h,
4432         include/std/std_limits.h, include/std/std_list.h,
4433         include/std/std_locale.h, include/std/std_map.h,
4434         include/std/std_memory.h, include/std/std_numeric.h,
4435         include/std/std_ostream.h, include/std/std_queue.h,
4436         include/std/std_set.h, include/std/std_sstream.h,
4437         include/std/std_stack.h, include/std/std_stdexcept.h,
4438         include/std/std_streambuf.h, include/std/std_string.h,
4439         include/std/std_utility.h, include/std/std_valarray.h,
4440         include/std/std_vector.h:  ...this.
4442 2002-01-11  Loren Rittle <ljrittle@acm.org>
4444         * include/Makefile.am (extra_target_headers): New list of all
4445         target files built with ad hoc naming rules.
4446         (stamp-*): Handle LN_S failure in manner portable across make
4447         implementations.
4448         (install-data-local): Install header files from human-maintained
4449         file lists and directory components instead of non-robust find.
4450         * include/Makefile.in: Rebuilt.
4452 2002-01-11  Benjamin Kosnik  <bkoz@redhat.com>
4454         * include/bits/locale_facets.tcc (money_get::do_get(string)):
4455         Check for zero-length negative sign before adding it to output
4456         string.
4457         (money_get::do_get(long double)): Return beg.
4458         * testsuite/22_locale/money_get_members_char.cc (test02): Add
4459         iterator checks.
4460         * testsuite/22_locale/money_get_members_wchar_t.cc: Same.
4462 2002-01-10  David Seymour  <seymour_dj@yahoo.com>
4464         libstdc++/5331
4465         * include/bits/locale_facets.h (num_get<>): Return advanced iterator
4466         for _M_extract_float and _M_extract_int
4467         * include/bits/locale_facets.tcc (num_get<>::_M_extract_float)
4468         (num_get<>::_M_extract_int): Likewise, all callers changed
4469         * testsuite/22_locale/num_get_members_char.cc: Testcase
4471 2002-01-09  Paolo Carlini <pcarlini@unitus.it>
4473         * libsupc++/exception (bad_exception): Add comment.
4474         * libsupc++/new (bad_alloc): Same.
4475         * libsupc++/typeinfo (bad_cast, bad_typeid): Same.
4477 2002-01-09  Paolo Carlini <pcarlini@unitus.it>
4479         libstdc++/3150: revert 2001-11-30 commit. DR266 only means
4480         that the destructors should be removed from the descriptions
4481         in the standard: writing them explicitly allows the vtable
4482         heuristic to work. For additional information see:
4483         http://gcc.gnu.org/ml/libstdc++/2002-01/msg00090.html
4484         http://gcc.gnu.org/ml/libstdc++/2002-01/msg00110.html
4485         http://gcc.gnu.org/ml/libstdc++/2002-01/msg00155.html
4486         * libsupc++/exception (bad_exception::~bad_exception()):
4487         Reintroduce declaration.
4488         * libsupc++/new (bad_alloc::~bad_alloc()): Same.
4489         * libsupc++/typeinfo (bad_cast::~bad_cast()): Same.
4490         (bad_typeid::~bad_typeid()): Same.
4491         * libsupc++/eh_exception.cc (bad_exception::~bad_exception()):
4492         Reintroduce definition.
4493         * libsupc++/new_handler.cc (bad_alloc::~bad_alloc()): Same.
4494         * libsupc++/tinfo.cc (bad_cast::~bad_cast()): Same.
4495         (bad_typeid::~bad_typeid()): Same.
4497 2002-01-09  Benjamin Kosnik  <bkoz@redhat.com>
4499         * include/Makefile.am (c_base_srcdir): Remove duplicate '/'.
4500         * include/Makefile.in: Regenerate.
4502 2002-01-09  Bo Thorsen  <bo@suse.co.uk>
4504         * config/cpu/x86-64/bits/cpu_limits.h (__glibcpp_long_bits): Add
4505         definition.
4507 2002-01-08  Benjamin Kosnik  <bkoz@redhat.com>
4509         libstdc++/2913
4510         libstdc++/4879
4511         * include/bits/fstream.tcc (filebuf::_M_really_overflow): Test
4512         return value of _M_file->sync().
4513         (filebuf::showmanyc): Check for is_open.
4514         * include/std/fstream (filebuf::sync): Tweak.
4515         * testsuite/27_io/filebuf.cc: Tweak.
4517 2002-01-08  John Fardo  <jfardo@laurelnetworks.com>
4518             Brad Garcia  <garsh@attbi.com>
4520         * testsuite/27_io/filebuf_members.cc: Add test.
4522 2002-01-07  Benjamin Kosnik  <bkoz@redhat.com>
4523             Craig Rodrigues  <rodrigc@mediaone.net>
4525         libstdc++/5174
4526         * po/Makefile.am (mkinstalldirs): Add.
4527         * po/Makefile.in: Regenerate.
4529 2002-01-07  David Billinghurst  <David.Billinghurst@riotinto.com>
4531         * testsuite_flags.in: Add -fmessage-length=0 to CXXFLAGS *
4532         testsuite/lib/prune.exp: Delete lines ":In function ..."  from
4533         compiler output.
4534         * testsuite/23_containers/map_operators.cc: Remove
4535         dg-excess-errors comment.
4536         * testsuite/23_containers/set_operators.cc: Likewise.
4538 2002-01-06  Paolo Carlini  <pcarlini@unitus.it>
4540         * include/bits/stl_function.h:  Remove two lines of comments;
4541         adjust copyright years.
4543 2002-01-04  Benjamin  Kosnik  <bkoz@redhat.com>
4545         * include/Makefile.am (std_headers): Remove cXXX from list.
4546         (c_base_srcdir): No bits subdirectory.
4547         (c_base_builddir): Same.
4548         (c_base_headers): Adjust names, add ciso646.
4549         (bits_headers): Remove std_xxx.h headers.
4550         * include/Makefile.in: Regenerate.
4552         * include/ext/iterator: Adjust includes.
4553         * include/ext/ropeimpl.h: Same.
4554         * include/ext/stl_hash_fun.h: Same.
4555         * include/ext/algorithm: Same.
4557         * include/backward/bvector.h: Adjust includes.
4558         * include/backward/vector.h: Same.
4559         * include/backward/strstream: Same.
4560         * include/backward/streambuf.h: Same.
4561         * include/backward/stack.h: Same.
4562         * include/backward/set.h: Same.
4563         * include/backward/queue.h: Same.
4564         * include/backward/multiset.h: Same.
4565         * include/backward/multimap.h: Same.
4566         * include/backward/map.h: Same.
4567         * include/backward/list.h: Same.
4568         * include/backward/iterator.h: Same.
4569         * include/backward/iostream.h: Same.
4570         * include/backward/iomanip.h: Same.
4571         * include/backward/fstream.h: Same.
4572         * include/backward/deque.h: Same.
4573         * include/backward/complex.h: Same.
4575         * include/bits/std_algorithm.h: Move to...
4576         * include/std/algorithm: ...here.
4577         * include/bits/std_iosfwd.h, std_locale.h, std_stack.h,
4578         std_bitset.h, std_ios.h, std_map.h, std_stdexcept.h,
4579         std_complex.h, std_iostream.h, std_memory.h, std_streambuf.h,
4580         std_deque.h, std_istream.h, std_numeric.h, std_string.h,
4581         std_fstream.h, std_ostream.h, std_utility.h, std_iterator.h,
4582         std_queue.h, std_valarray.h, std_functional.h, std_limits.h,
4583         std_set.h, std_vector.h, std_iomanip.h, std_list.h, std_sstream.h:
4584         Same.
4586         * include/c_std/bits/std_cassert.h: Move to...
4587         * include/c_std/cassert: Here.
4588         * include/c_std/std_cctype.h, std_cerrno.h, std_cfloat.h,
4589         std_climits.h, std_clocale.h, std_cmath.h, std_csetjmp.h,
4590         std_csignal.h, std_cstdarg.h, std_cstddef.h, std_cstdio.h,
4591         std_cstdlib.h, std_cstring.h, std_ctime.h, std_cwchar.h,
4592         std_cwctype.h: Same.
4593         * include/c_std/cmath: Adjust cmath.tcc include.
4594         * include/c_std/cstdlib: Adjust includes.
4595         * include/c_std/cwchar: Same.
4596         * include/c_std/ctime: Same.
4597         * include/c_std/cstring: Same.
4598         * include/c_std/cstdio: Same.
4599         * include/c_std/bits: Remove directory.
4601         * include/c/bits/std_cassert.h: Move to...
4602         * include/c/cassert: Here.
4603         * include/c/std_cctype.h, std_cerrno.h, std_cfloat.h,
4604         std_climits.h, std_clocale.h, std_cmath.h, std_csetjmp.h,
4605         std_csignal.h, std_cstdarg.h, std_cstddef.h, std_cstdio.h,
4606         std_cstdlib.h, std_cstring.h, std_ctime.h, std_cwchar.h,
4607         std_cwctype.h: Same.
4608         * include/c/bits: Remove directory.
4610         * include/std/cwctype: Remove.
4611         * include/std/cwchar: Remove.
4612         * include/std/ctime: Remove.
4613         * include/std/cstring: Remove.
4614         * include/std/cstdlib: Remove.
4615         * include/std/cstdio: Remove.
4616         * include/std/cstddef: Remove.
4617         * include/std/cstdarg: Remove.
4618         * include/std/csignal: Remove.
4619         * include/std/csetjmp: Remove.
4620         * include/std/cmath: Remove.
4621         * include/std/clocale: Remove.
4622         * include/std/climits: Remove.
4623         * include/std/ciso646: Remove.
4624         * include/std/cfloat: Remove.
4625         * include/std/cerrno: Remove.
4626         * include/std/cctype: Remove.
4627         * include/std/cassert: Remove.
4629         * include/bits/fpos.h: Adjust includes, removing <bits/std_xxx.h>
4630         files and subsituting <xxx>.
4631         * include/bits/valarray_array.h: Same.
4632         * include/bits/stl_uninitialized.h: Same.
4633         * include/bits/stl_alloc.h: Same.
4634         * include/bits/stl_algobase.h: Same.
4635         * include/bits/sstream.tcc: Same.
4636         * include/bits/pthread_allocimpl.h: Same.
4637         * include/bits/ostream.tcc: Same.
4638         * include/bits/localefwd.h: Same.
4639         * include/bits/locale_facets.tcc: Same.
4640         * include/bits/locale_facets.h: Same.
4641         * include/bits/istream.tcc: Same.
4642         * include/bits/char_traits.h: Same.
4643         * include/bits/boost_concept_check.h: Same.
4644         * include/bits/basic_file.h: Same.
4645         * include/std/bitset: Same.
4646         * include/std/complex: Same.
4647         * include/std/fstream: Same.
4648         * include/std/functional: Same.
4649         * include/std/ios: Same.
4650         * include/std/iostream: Same.
4651         * include/std/ostream: Same.
4652         * include/std/sstream: Same.
4653         * include/std/streambuf: Same.
4654         * include/std/string: Same.
4655         * include/std/iterator: Same.
4656         * include/std/valarray: Same.
4658         * src/ios.cc: Adjust includes.
4659         * src/valarray-inst.cc: Same.
4660         * src/string-inst.cc: Same.
4661         * src/stl-inst.cc: Same.
4662         * src/stdexcept.cc: Same.
4663         * src/misc-inst.cc: Same.
4664         * src/localename.cc: Same.
4665         * src/locale-inst.cc: Same.
4666         * src/locale.cc: Same.
4667         * src/limits.cc: Same.
4668         * src/concept-inst.cc: Same.
4669         * src/complex_io.cc: Same.
4670         * src/codecvt.cc: Same.
4671         * src/bitset.cc: Same.
4672         * src/cmath.cc: Same.
4674 2002-01-04  Paolo Carlini  <pcarlini@unitus.it>
4676         * include/bits/stl_tree.h (rb_tree):  Move to...
4677         * include/ext/rb_tree:  ...here, new file.
4678         * include/Makefile.am (ext_headers):  Add new file.
4679         * include/Makefile.in:  Regenerate.
4680         * include/bits/stl_tempbuf.h (get_temporary_buffer + helper,
4681         return_temporary_buffer, struct temporary_buffer):  Move to...
4682         * include/ext/memory:  ...here.
4683         * testsuite/ext/headers.cc:  Include <ext/rb_tree>.
4684         * include/backward/tempbuf.h:  Include <ext/memory>, tweak.
4685         * include/backward/tree.h:  Include <ext/rb_tree), tweak.
4687 2002-01-03  Paolo Carlini  <pcarlini@unitus.it>
4689         * include/bits/stl_numeric.h (power + helpers, iota):  Move to...
4690         * include/ext/numeric:  ...here, new file.
4691         * include/bits/stl_function.h (identity_element, unary_compose,
4692         binary_compose, compose1, compose2, identity, select1st,
4693         select2nd, project1st + helper, project2nd + helper,
4694         constant_void_fun + helper, constant_unary_fun + helper,
4695         costant_binary_fun + helper, constant0, constant1, constant2,
4696         subtractive_rng, mem_fun1, mem_fun1_ref):  Move to...
4697         * include/ext/functional:  ...here, new file.
4698         * include/Makefile.am (ext_headers):  Add new files.
4699         * include/Makefile.in:  Regenerate.
4700         * testsuite/ext/headers.cc:  Include <ext/numeric> and
4701         <ext/functional>.
4702         * include/backward/algo.h:  Include <ext/numeric>, tweak.
4703         * include/backward/function.h:  Include <ext/functional>, tweak.
4704         * include/ext/ropeimpl.h:  Include <ext/numeric>.
4706 2002-01-03  Jeffrey A Law  <law@redhat.com>
4708         * config/os/hpux/bits/os_defines.h: Prefix __strtoll and
4709         __strtoull declarations with __extension__.
4711 2002-01-03  David Billinghurst <David.Billinghurst@riotinto.com>
4713         * testsuite/lib/prune.exp: Correct regular expression for
4714         -ffunction-sections
4716 2002-01-02  Phil Edwards  <pme@gcc.gnu.org>
4718         * include/bits/stl_algo.h (upper_bound, equal_range, binary_search):
4719         Change concept checks, as with lower_bound and PR 2054.
4720         * testsuite/ext/concept_checks.cc:  Expand test to include those.
4722 2002-01-02  Phil Edwards  <pme@gcc.gnu.org>
4724         * include/bits/boost_concept_check.h:  Import some changes from
4725         upsteam (Boost) version.
4727 2002-01-02  Paolo Carlini  <pcarlini@unitus.it>
4729         * include/bits/stl_algobase.h (copy_n + helpers,
4730         lexicographical_compare_3way + helpers):  Move to...
4731         * include/ext/algorithm:  ...here.
4732         * include/bits/stl_uninitialized.h (uninitialized_copy_n +
4733         helpers):  Move to...
4734         * include/ext/memory:  ...here, new file.
4735         * include/Makefile.am (ext_headers):  Add new file.
4736         * include/Makefile.in:  Regenerate.
4737         * testsuite/ext/headers.cc:  Include <ext/memory>.
4738         * include/backward/algobase.h:  Include <ext/memory> and
4739         <ext/algorithm>, tweak.
4740         * include/ext/ropeimpl.h:  Include <ext/memory>, tweak.
4741         * include/ext/stl_rope.h:  Include <ext/memory>, tweak.
4743 2002-01-01  Roger Sayle <roger@eyesopen.com>
4745         * libmath/stubs.c (sinf,cosf): Implement stubs to enable the
4746         equivalent ___builtin__ versions.
4748         * include/c_shadow/bits/std_cmath.h: All __builtin math functions
4749         are available in libstdc++ as the necessary stub implementations
4750         are provided by libmath/stubs.c.
4752 2002-01-01  Jason Thorpe  <thorpej@wasabisystems.com>
4754         * configure.in: Add support for NetBSD cross compiles.
4755         * configure: Regenerate.