OSDN Git Service

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