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