OSDN Git Service

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