OSDN Git Service

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