OSDN Git Service

* configure: Regenerate.
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2005-05-09  Mike Stump  <mrs@apple.com>
2
3         * configure: Regenerate.
4
5 2005-05-09  Jonathan Wakely  <redi@gcc.gnu.org>
6
7         DR 434. bitset::to_string() hard to use [Ready]
8         * include/debug/bitset (to_string): Add three overloads, taking
9         fewer template arguments.
10
11 2005-05-06  Mark Mitchell  <mark@codesourcery.com>
12
13         * testsuite/testsuite_hooks.cc (try_mkfifo): Remove.
14         * testsuite/testsuite_hooks.h (try_mkfifo): Likewise.
15         * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use
16         dg-require-fork and dg-require-mkfifo.  Replace try_mkfifo with
17         mkfifo.
18         * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
19         * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
20         * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
21         * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc:
22         Likewise.
23         * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc:
24         Likewise.
25         * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
26         * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc:
27         Likewise.
28         * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
29         * testsuite/27_io/objects/char/7.cc: Likewise.
30         * testsuite/27_io/objects/char/9661-1.cc: Likewise.
31         * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
32         * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
33
34 2005-05-04  Benjamin Kosnik  <bkoz@redhat.com>
35
36         * acinclude.m4: Remove testsuite_wchar_t and testsuite_thread.
37         * testsuite/Makefile.am: Same.
38         * scripts/create_testsuite_files: Same. 
39         * Makefile.in: Regenerate.
40         * configure: Same.
41         * include/Makefile.in: Same.
42         * libmath/Makefile.in: Same.
43         * libsupc++/Makefile.in: Same.
44         * po/Makefile.in: Same.
45         * src/Makefile.in: Same.
46
47 2005-05-04  Mark Mitchell  <mark@codesourcery.com>
48
49         * testsuite/lib/libstdc++.exp (v3-build_support): Look for
50         __GTHREADS, rather than _GLIBCXX_HAVE_GTHR_DEFAULT, to determine
51         whether or not thread support is available.
52
53         * docs/html/test.html: Explain how to run the testsuite on an
54         installed directory. 
55
56 2005-05-01  Paolo Carlini  <pcarlini@suse.de>
57
58         * config/os/aix/os_defines.h: Remove obsolete __off_t,
59         __off64_t, __ssize_t defines.
60         * config/os/djgpp/os_defines.h: Likewise.
61         * config/os/hpux/os_defines.h: Likewise.
62         * config/os/irix/irix5.2/os_defines.h: Likewise.
63         * config/os/irix/irix6.5/os_defines.h: Likewise.
64         * config/os/solaris/solaris2.5/os_defines.h: Likewise.
65         * config/os/solaris/solaris2.6/os_defines.h: Likewise.
66         * config/os/solaris/solaris2.7/os_defines.h: Likewise.
67         * docs/html/17_intro/porting.html: Don't discuss the defines.
68         * docs/html/17_intro/porting.texi: Likewise.
69
70 2005-04-29  Paolo Carlini  <pcarlini@suse.de>
71             Nathan Myers  <ncm@cantrip.org>
72
73         PR libstdc++/21286
74         * include/bits/fstream.tcc (basic_filebuf<>::xsgetn):
75         Loop on short reads; remove the work-around for
76         libstdc++/20806, not needed anymore.
77
78 2005-04-29  Paolo Carlini  <pcarlini@suse.de>
79
80         PR libstdc++/21238
81         * include/bits/locale_facets.tcc (num_get::_M_extract_float,
82         num_get::_M_extract_int, num_get::do_get(bool&),
83         num_put::_M_insert_int, num_put::_M_insert_float,
84         num_put::do_put(bool), money_get::_M_extract,
85         money_put::_M_insert): Adjust the __cache_type typedef not to
86         forward to a numpunct/moneypunct typedef.
87         * testsuite/testsuite_character.h: Add pod_uint and its numpunct
88         and moneypunct specializations.
89         * testsuite/testsuite_character.cc: Add numpunct<pod_uint>::id
90         and moneypunct<pod_uint>::id.
91         * testsuite/22_locale/num_get/3.cc: New.
92         * testsuite/22_locale/num_put/3.cc: Likewise.
93         * testsuite/22_locale/money_get/3.cc: Likewise.
94         * testsuite/22_locale/money_put/3.cc: Likewise.
95
96         * include/bits/locale_facets.tcc (money_put::_M_insert,
97         time_get::_M_extract_name): Prefer operator== to operator!=
98         on char_types.
99
100 2005-04-29  Paolo Carlini  <pcarlini@suse.de>
101
102         * include/tr1/type_traits (is_convertible): Adjust according
103         to the resolution of TR1 issue 3.20.
104         * testsuite/tr1/4_metaprogramming/relationships_between_types/
105         is_convertible/is_convertible.cc: Add tests.
106
107 2005-04-28  Paolo Carlini  <pcarlini@suse.de>
108             Gabriel Dos Reis  <gdr@integrable-solutions.net>
109
110         PR libstdc++/21244 (cont)
111         * include/bits/cpp_type_traits.h (struct __traitor): Convert
112         to bool the values.
113         * include/bits/stl_algo.h: Convert _S_threshold to int.
114         * include/bits/stl_bvector.h: Revert previous change, convert
115         _S_word_bit to int.
116         * include/debug/formatter.h: Convert __max_parameters to
117         size_t.
118         * include/ext/mt_allocator.h: Likewise for _S_chunk_size.
119         * include/ext/pool_allocator.h: Likewise for _S_max_bytes and
120         _S_align.
121         * include/ext/rope: Likewise for _S_alloc_granularity; convert
122         _S_max_rope_depth to int.
123         * include/ext/ropeimpl.h: Convert _S_path_cache_len to int;
124         _S_max_rope_depth to int; _S_copy_max to size_t.
125
126 2005-04-27  Benjamin Kosnik  <bkoz@redhat.com>
127
128         * docs/doxygen/user.cfg.in: Update to doxygen-1.4.2.
129         * docs/doxygen/doxygroups.cc: Update namespace comments.
130
131 2005-04-27  Dominik Strasser  <dominik.strasser@infineon.com>
132             Paolo Carlini  <pcarlini@suse.de>
133
134         PR libstdc++/21244
135         * include/bits/stl_bvector.h: Change the anonymous enum
136         at namespace scope to _S_word_bit_enum.
137         * testsuite/23_containers/vector/bool/21244.cc: New.
138
139 2005-04-27  Paolo Carlini  <pcarlini@suse.de>
140
141         * include/tr1/type_traits (has_trivial_copy, has_trivial_assign,
142         has_nothrow_copy, has_nothrow_assign): Adjust according to the
143         resolution of TR1 issue 3.21.
144         * testsuite/testsuite_tr1.h (test_copy_property,
145         test_assign_property): Remove.
146         * testsuite/tr1/4_metaprogramming/type_properties/
147         has_nothrow_assign/has_nothrow_assign.cc: Adjust.
148         * testsuite/tr1/4_metaprogramming/type_properties/
149         has_nothrow_copy/has_nothrow_copy.cc: Likewise.
150         * testsuite/tr1/4_metaprogramming/type_properties/
151         has_trivial_assign/has_trivial_assign.cc: Likewise.
152         * testsuite/tr1/4_metaprogramming/type_properties/
153         has_trivial_copy/has_trivial_copy.cc: Likewise.
154
155 2005-04-26  Jones Desougi  <jones@ingate.com>
156
157         PR libstdc++/21131
158         * linkage.m4: Fix comments.
159
160 2005-04-26  Paolo Carlini  <pcarlini@suse.de>
161
162         PR libstdc++/21209
163         * include/bits/locale_facets.tcc (_M_extract_int): Avoid signed
164         integer overflow, always use a suited unsigned type in the main
165         parsing loop.
166         (struct __to_unsigned_type): New.
167         * testsuite/22_locale/num_get/get/char/16.cc: New.
168         * testsuite/22_locale/num_get/get/wchar_t/16.cc: Likewise.
169
170 2005-04-25  Paolo Carlini  <pcarlini@suse.de>
171
172         PR libstdc++/21035
173         * include/bits/basic_string.h (compare): Adjust the documentation
174         to match the implementation and the standard.
175
176 2005-04-24  Paolo Carlini  <pcarlini@suse.de>
177
178         * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 35.
179
180 2005-04-20  Mark Mitchell  <mark@codesourcery.com>
181
182         * testsuite/ext/bitmap_allocator/check_allocate_max_size.cpp: Add
183         explicit instantiations for systems without weak symbols.
184         * testsuite/ext/bitmap_allocator/check_deallocate_null.cc:
185         Likewise. 
186
187 2005-04-18  Jonathan Wakely  <redi@gcc.gnu.org>
188
189         * include/bits/stl_algo.h (rotate_copy): Add missing std qualification.
190
191 2005-04-17  Paolo Carlini  <pcarlini@suse.de>
192
193         PR libstdc++/20914
194         * include/bits/locale_facets.tcc (__int_to_char(_CharT*, _ValueT,
195         const _CharT*, ios_base::fmtflags, bool)): Don't deal with numeric
196         base or sign here, instead...
197         (_M_insert_int(_OutIter, ios_base&, _CharT, _ValueT)): ... here,
198         after adding the grouping. This fixes the bug and also allows to
199         clean-up the code dealing with integer types.
200         (_M_group_int(const char*, size_t, _CharT, ios_base&, _CharT*,
201         _CharT*, int&)): Simplify, remove bits dealing with numeric base.
202         (__int_to_char(_CharT*, unsigned long, const _CharT*,
203         ios_base::fmtflags), __int_to_char(_CharT*, unsigned long long,
204         const _CharT*, ios_base::fmtflags)): Remove hackish fix for
205         libstdc++/15565.
206         (__int_to_char(_CharT*, long, const _CharT*, ios_base::fmtflags),
207         __int_to_char(_CharT*, long long, const _CharT*, ios_base::fmtflags)):
208         Simplify, don't pass the sign.
209         (_M_insert_float(_OutIter, ios_base&, _CharT, char, _ValueT)):
210         Deal with a sign at the beginning of __cs; robustify the grouping
211         check.
212         * testsuite/22_locale/num_put/put/char/20914.cc: New.
213         * testsuite/22_locale/num_put/put/wchar_t/20914.cc: Likewise.
214
215 2005-04-14  Benjamin Kosnik  <bkoz@redhat.com>
216
217         * include/ext/bitmap_allocator.h
218         (__gnu_cxx::free_list::_M_get_mutex): New.
219         (__gnu_cxx::free_list::_M_get_free_list): New.
220         (__gnu_cxx::free_list::_S_bfl_mutex): Remove.
221         (__gnu_cxx::free_list::_S_free_list): Remove.
222         * src/bitmap_allocator.cc: Same.
223         * config/linker-map.gnu: Remove free_list and mutex export.
224
225 2005-04-14  Benjamin Kosnik  <bkoz@redhat.com>
226
227         *  include/ext/pod_char_traits.h (__gnu_cxx::character): Add char_type.
228         (character::to): New.
229         (character::from): New.
230         (operator==): Add state parameter.
231         (operator<): Same.
232         (char_traits::copy): Use std::copy.
233         (char_traits::assign): Use std::fill_n.
234         (char_traits::to_char_type): Use character::from.
235         (char_traits::to_int_type): Use character::to.
236         *  testsuite/testsuite_character.h (__gnu_test::character): Remove.
237         (__gnu_test::conversion_state): Remove.
238         (__gnu_test::pod_char): Remove.
239         (pod_char): New typedef.
240         (pod_uchar): New typedef.
241         (pod_ushort): New typedef.
242         *  testsuite/testsuite_character.cc: Fixups.
243         *  testsuite/21_strings/basic_string/inserters_extractors/pod/
244         10081-in.cc: Same.
245         *  testsuite/21_strings/basic_string/inserters_extractors/pod/
246         10081-out.cc: Same.
247         *  testsuite/22_locale/numpunct/members/pod/1.cc: Same.
248         *  testsuite/22_locale/numpunct/members/pod/2.cc: Same.
249         *  testsuite/27_io/basic_filebuf/close/12790-1.cc: Same.
250         *  testsuite/27_io/basic_filebuf/open/12790-1.cc: Same.
251         *  testsuite/27_io/basic_filebuf/seekoff/12790-1.cc: Same.
252         *  testsuite/27_io/basic_filebuf/seekoff/12790-2.cc: Same.
253         *  testsuite/27_io/basic_filebuf/seekoff/12790-3.cc: Same.
254         *  testsuite/27_io/basic_filebuf/seekoff/12790-4.cc: Same.
255         *  testsuite/27_io/basic_filebuf/seekpos/12790-1.cc: Same.
256         *  testsuite/27_io/basic_filebuf/seekpos/12790-2.cc: Same.
257         *  testsuite/27_io/basic_filebuf/seekpos/12790-3.cc: Same.
258         *  testsuite/27_io/basic_ios/imbue/14072.cc: Same.
259         *  testsuite/27_io/basic_istream/extractors_arithmetic/pod/
260         3983-1.cc: Same.
261         *  testsuite/27_io/basic_istream/extractors_character/pod/
262         3983-2.cc: Same.
263         *  testsuite/27_io/basic_istream/extractors_other/pod/3983-3.cc: Same.
264         *  testsuite/27_io/basic_istream/sentry/pod/1.cc: Same.
265         *  testsuite/27_io/basic_ostream/sentry/pod/1.cc: Same.
266
267 2005-04-12  Mike Stump  <mrs@apple.com>
268
269         * configure: Regenerate.
270
271 2005-04-08  Benjamin Kosnik  <bkoz@redhat.com>
272
273         * testsuite/Makefile.am: Remove libv3test.a.
274         * testsuite/Makefile.in: Regenerate.
275         * testsuite/lib/libstdc++.exp (v3_target_compile): Fix comments.
276         
277 2005-04-08  Paolo Carlini  <pcarlini@suse.de>
278
279         PR libstdc++/20909
280         * include/bits/locale_facets.tcc (num_put<>::_M_insert_float):
281         Don't even try to group numbers like 2e20, i.e., no decimal
282         point, scientific notation.
283         * testsuite/22_locale/num_put/put/char/20909.cc: New.
284         * testsuite/22_locale/num_put/put/wchar_t/20909.cc: Likewise.
285
286 2005-04-08  Kelley Cook  <kcook@gcc.gnu.org>
287
288         * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Define _GLIBCXX_ASM_SYMVER.
289         * acconfig.h: Delete file.
290         * Makefile.in, acinclude.m4, configure: Regenerate.
291
292 2005-04-08  Kelley Cook  <kcook@gcc.gnu.org>
293
294         * linkage.m4 (GLIBCXX_MAYBE_UNDERSCORED_FUNCS): New macro.
295         (GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_1,
296         GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_2,
297         GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_3,
298         GLIBCXX_CHECK_MATH_DECLS_AND_LINKAGES_1,
299         GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE_2): Use it.
300         (GLIBCXX_CHECK_MATH_SUPPORT): Delete obsolete comment.
301         * acconfig.h: Delete redundant macros.
302         * config.h.in, configure: Regenerate.
303
304 2005-04-08  Kelley Cook  <kcook@gcc.gnu.org>
305
306         * linkage.m4 (GLIBCXX_CHECK_MATH_DECLS_AND_LINKAGES_1): Eliminate
307         a subshell and if test fails, test for same functions with 
308         leading underscore.
309         (GLIBCXX_CHECK_MATH_SUPPORT): Eliminate seperate checks for _funcs.
310         * configure: Regenerate.
311
312 2005-04-08  Danny Smith  <dannysmith@users.sourceforge.net>
313             Paolo Carlini  <pcarlini@suse.de>
314                         
315         PR libstdc++/20806
316         * config/os/mingw32/os_defines.h: Define
317         _GLIBCXX_HAVE_DOS_BASED_FILESYSTEM.
318         * config/os/newlib/os_defines.h: Likewise, for __CYGWIN__.
319         * include/bits/fstream.tcc (basic_filebuf<>::showmanyc()):
320         Use it.
321         (basic_filebuf<>::xsgetn(_CharT*, streamsize)): Likewise.
322
323 2005-04-08  Kelley Cook  <kcook@gcc.gnu.org>
324
325         * acconfig.h: Sort the bottom section.
326         * config.h.in: Regenerate.
327
328 2005-04-08  Kelley Cook  <kcook@gcc.gnu.org>
329
330         * acconfig.h: Remove redundant HAVE_FLOAT_H.
331         * config.h.in: Regenerate.
332
333 2005-04-08  Kelley Cook  <kcook@gcc.gnu.org>
334
335         * configure.ac: Create template for PACKAGE and VERSION.
336         Update comment on how to regenerate file.  Update minimum
337         automake version to 1.9.3.
338         * acconfig.h: Remove PACKAGE and VERSION.
339         * aclocal.m4, configure, Makefile.in, po/Makefile.in, 
340         src/Makefile.in, include/Makefile.in, libmath/Makefile.in, 
341         testsuite/Makefile.in, config.h.in: Regenerate.
342
343 2005-04-06  Benjamin Kosnik  <bkoz@redhat.com>
344
345         * docs/html/test.html: Update.
346         * testsuite/printnow.c: Remove.
347         * scripts/check_survey.in: Remove.
348
349         * testsuite/abi_check.cc: To...
350         * testuite/testsuite_abi_check.cc: ...here.
351         * testsuite/libstdc++-abi/abi.exp: Change abi_check.cc to
352         testsuite_abi_check.cc.
353
354         * testsuite/testsuite_hooks.h: Move character related bits to...
355         * testsuite/testsuite_character.h: ...here.
356         * testsuite/testsuite_character.cc: ... and here.
357         * testsuite/21_strings/basic_string/inserters_extractors/pod/
358         10081-in.cc: Use testsuite_character.h.
359         * testsuite/21_strings/basic_string/inserters_extractors/pod/
360         10081-out.cc: Same.
361         * testsuite/22_locale/numpunct/members/pod/1.cc: Same.
362         * testsuite/22_locale/numpunct/members/pod/2.cc: Same.
363         * testsuite/27_io/basic_filebuf/2.cc: Same.
364         * testsuite/27_io/basic_fstream/2.cc: Same.
365         * testsuite/27_io/basic_istream/2.cc: Same.
366         * testsuite/27_io/basic_istream/extractors_arithmetic/pod/
367         3983-1.cc: Same.
368         * testsuite/27_io/basic_istream/extractors_character/char/
369         9826.cc: Same.
370         * testsuite/27_io/basic_istream/extractors_character/pod/
371         3983-2.cc: Same.
372         * testsuite/27_io/basic_istream/extractors_other/pod/3983-3.cc: Same.
373         * testsuite/27_io/basic_istream/sentry/pod/1.cc: Same.
374         * testsuite/27_io/basic_ostream/2.cc: Same.
375         * testsuite/27_io/basic_ostream/sentry/pod/1.cc: Same.
376         * testsuite/27_io/basic_streambuf/2.cc: Same.
377         * testsuite/27_io/basic_stringbuf/2.cc: Same.
378         * testsuite/27_io/basic_stringbuf/4.cc: Same.
379         * testsuite/27_io/basic_stringstream/2.cc: Same.
380         * testsuite/27_io/fpos/1.cc: Same.
381         * testsuite/ext/mt_allocator/tune-1.cc: Same.
382         * testsuite/ext/mt_allocator/tune-2.cc: Same.
383         * testsuite/ext/stdio_filebuf/char/1.cc: Same.  
384         * testsuite/lib/libstdc++.exp (v3-build_support): Add
385         testsuite_character.cc.
386         * testsuite/Makefile.am (libv3test_a_SOURCES): Add
387         testsuite_character.cc.
388         * testsuite/Makefile.in: Regenerate.
389                 
390         * configure.ac: Remove use of check_survey.
391         * configure: Regenerate.
392         * testsuite/Makefile.am: Remove check-script and
393         check-script-install rules.
394         * testsuite/Makefile.in: Regenerate.
395
396 2005-04-06  Ulrich Weigand  <uweigand@de.ibm.com>
397
398         * config/cpu/s390/atomicity.h (__exchange_and_add): Add "memory"
399         clobber to inline assembly statement.
400
401 2005-04-06  Kelley Cook  <kcook@gcc.gnu.org>
402
403         * acinclude.m4 (_GLIBCXX_USE_LONG_LONG,
404         _GLIBCXX_USE_WCHAR_T, _GLIBCXX_USE_C99, _GLIBCXX_USE_C99_MATH,
405         _GLIBCXX_USE_C99_COMPLEX, _GLIBCXX_RES_LIMITS, _GLIBCXX_CONCEPT_CHECKS,
406         _GLIBCXX_SYMVER, _GLIBCXX_USE_LFS, _GLIBCXX_FULLY_DYNAMIC_STRING,
407         _GLIBCXX_USE_NLS, HAVE_GTHR_DEFAULT, HAVE_MBSTATE_T, HAVE_POLL,
408         HAVE_S_ISREG, HAVE_S_IFREG, HAVE_WRITEV, HAVE_INT64_T,
409         HAVE_LC_MESSAGES): Use long form of AC_DEFINE ...
410         * acconfig.h: ... to eliminate them from here.
411         (_GLIBCXX_ASM_SYMVER): Move definition below @BOTTOM@.
412         * config.h.in, configure: Regenerate.
413         
414 2005-04-05  Kelley Cook  <kcook@gcc.gnu.org>
415
416         * Makefile.am (ACLOCAL_AMFLAGS): Define.
417         * crossconfig.m4: Wrap file into new GLIBCXX_CROSSCONFIG macro.
418         * configure.ac: Use it.
419         * acinclude.m4: Delete explicit m4_includes and sincludes.
420         * aclocal.m4, configure, Makefile.in, po/Makefile.in, 
421         src/Makefile.in, include/Makefile.in, libmath/Makefile.in, 
422         testsuite/Makefile.in: Regenerate.
423
424 2005-04-05  Jonathan Wakely  <redi@gcc.gnu.org>
425
426         * include/tr1/memory, include/tr1/boost_shared_ptr.h: Use mutex
427         to make _Sp_counted_base::add_ref_lock() thread-safe. Check whether
428         to destroy resources by testing for equality, not inequality. Add
429         empty critical sections to solve memory visibility issues.
430         * testsuite/tr1/2_general_utilities/memory/
431         shared_ptr/cons/auto_ptr_neg.cc: Use dg-excess-errors instead of
432         explicitly listing line numbers which need to be kept in sync.
433         * testsuite/tr1/2_general_utilities/memory/
434         shared_ptr/assign/auto_ptr_neg.cc: Same.
435         * testsuite/tr1/2_general_utilities/memory/
436         shared_ptr/assign/auto_ptr_rvalue_neg.cc: Same.
437         * testsuite/tr1/2_general_utilities/memory/
438         shared_ptr/cons/weak_ptr_expired.cc: Make XFAIL for consistency when
439         -fno-exceptions.
440         * testsuite/tr1/2_general_utilities/memory/
441         enable_shared_from_this/not_shared.cc: Add explanatory comments.
442         * testsuite/tr1/2_general_utilities/memory/
443         enable_shared_from_this/not_shared2.cc: Same.
444         * testsuite/tr1/2_general_utilities/memory/
445         enable_shared_from_this/not_shared3.cc: Same.
446
447 2005-04-05  Kelley Cook  <kcook@gcc.gnu.org>
448
449         * acconfig.h: Delete macros already AC_DEFINED.
450         * config.h.in: Regenerate.
451
452 2005-04-05  Kelley Cook  <kcook@gcc.gnu.org>
453
454         * acconfig.h (HAVE_MODF): Remove.
455         * linkage.m4: Check for modf.
456         * config.h.in, configure: Regenerate.
457
458 2005-04-05  Kelley Cook  <kcook@gcc.gnu.org>
459
460         * acconfig.h (ENABLE_NLS, HAVE_CATGETS): Remove.
461         (HAVE_GETTEXT, HAVE_STPCPY): Likewise.
462         * config.h.in: Regenerate.
463         
464 2005-04-05  Kelley Cook  <kcook@gcc.gnu.org>
465
466         * linkage.m4 (GLIBCXX_CHECK_BUILTIN_MATH_DEC): Use m4 translit macro 
467         to convert to uppercase instead of shelling out to tr.
468         * acconfig.h: Remove now redundant HAVE__BUILTINS_*.
469         * configure, config.h.in: Regenerate.
470
471 2005-04-05  Kelley Cook  <kcook@gcc.gnu.org>
472
473         * acconfig.h (HAVE_TANL): Correct cut-and-paste typo.
474         * config.h.in: Regenerate.
475
476 2005-04-04  Mark Mitchell  <mark@codesourcery.com>
477
478         * testsuite/Makefile.am (check-local): Remove.
479         (curent_symbols.txt): Likewise.
480         (check-abi): Do not depend on current_symbols.txt.
481         * testsuite/Makefile.in: Regenerated.
482         * testsuite/libstdc++-abi/abi.exp: Build current_symbols.txt.
483
484 2005-04-02  Douglas Gregor  <doug.gregor@gmail.com>
485         
486         * include/tr1/tuple_iterate.h (tuple_element): Use new macro
487         _GLIBCXX_T_NUM_ARGS_PLUS_1 because _T is a macro on Darwin.
488         * include/tr1/repeat.h (_GLIBCXX_T_NUM_ARGS_PLUS_1): Define for
489         each iteration.
490         * scripts/gen_includers.h: Define _GLIBCXX_T_NUM_ARGS_PLUS_1 for
491         each iteration.
492         
493 2005-04-01  Douglas Gregor  <doug.gregor@gmail.com>
494
495         * include/tr1/functional (_Maybe_wrap_member_pointer): Wrap up
496         member pointers in _Mem_fn but let other function objects pass
497         through unchanged.
498         * include/tr1/functional_iterator (bind): Reduce number of bind()
499         overloads to two to eliminate ambiguities. Use
500         _Maybe_wrap_member_pointer to handle member pointers gracefully.
501         
502 2005-04-01  Mark Mitchell  <mark@codesourcery.com>
503
504         * testsuite/Makefile.am (noinst_PROGRAMS): Remove.
505         (site.exp): Write out the path to the baseline file.
506         (check-abi): Use DejaGNU.
507         (check-abi-verbose): Remove.
508         * testsuite/Makefile.in: Regenerated.
509         * testsuite/abi_check.cc (main): Check the return value from
510         compare_symbols.
511         * testsuite/testsuite_abi.cc (compare_symbols): Return a value.
512         * testsuite/testsuite_abi.h (compare_symbols): Adjust prototype.
513         * testsuite/libstdc++-abi/abi.exp: New file.
514
515 2005-03-31  Chris Jefferson  <chris@bubblescope.net>
516
517         * include/tr1/tuple: Support iteration via tuple_iterate.h.
518         * include/tr1/tuple_iterate.h: Iteration file for tuple.
519
520 2005-03-31  Douglas Gregor  <doug.gregor@gmail.com>
521
522         * include/Makefile.am (tr1_headers): Add bind and mu repetition
523         headers and reference_wrapper<> forwarding header.
524         * include/Makefile.in: Regenerate.
525         * include/tr1/bind_iterate.h: Implementation of function call
526         operators for the function object returned from tr1::bind().
527         * include/tr1/bind_repeat.h: Bind-specific repetition header,
528         akin to include/tr1/repeat.h.
529         * include/tr1/functional (_Mem_fn): Bug fix: declare result member
530         template for use with result_of.
531         (is_bind_expression): New.
532         (is_placeholder): New.
533         (_Placeholder): New. Placeholder type for bind.
534         (_Mu): New. Implementation detail of bind.
535         (_Bind, _Bind_result): New. Function objects returned by bind.
536         (_GLIBCXX_JOIN): New. Required to create bind placeholders.
537         * include/tr1/functional_iterate.h (_Bind, _Bind_result, bind):
538         New. Implementation of tr1::bind.
539         * include/tr1/mu_iterate.h (_Mu): result template and operator()
540         for the _Mu helper to bind.
541         * include/tr1/ref_fwd.h (reference_wrapper): Forward declaration
542         used by tuple header.
543         (ref): Ditto.
544         (cref): Ditto.
545         * include/tr1/repeat.h: Add bind-specific repetition macros.
546         * include/tr1/tuple: Use reference_wrapper forwarding header for
547         initial definitions, then include <tr1/functional> at the end, to
548         make the circular dependencies work.
549         (tie): Support zero-argument tie() function.
550         * testsuite/tr1/3_function_objects/bind/all_bound.cc: New test of
551         bind() functionality with parameters bound.
552         * testsuite/tr1/3_function_objects/bind/nested.cc: New test of
553         nested bind() expressions.
554         * testsuite/tr1/3_function_objects/bind/placeholders.cc: New test
555         of bind() placeholders.
556         * testsuite/tr1/3_function_objects/bind/ref.cc: New test of bind()
557         with arguments bound via reference_wrapper<>.
558         * scripts/gen_includers.pl: Generate the repetitive part of
559         include/tr1/repeat.h.
560         * scripts/gen_bind_includers.pl: Generate the repetitive part of
561         include/tr1/bind_repeat.h. 
562         
563 2005-03-30  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>
564
565         * testsuite/Makefile.am (CXX): Use ${SHELL}.
566         (GLIBCXX_INCLUDES): Same.
567         (AM_CXXFLAGS): Same.
568         * testsuite/Makefile.in: Regenerate.
569
570 2005-03-25  Mark Mitchell  <mark@codesourcery.com>
571
572         * testsuite/lib/libstdc++.exp (libstdc++_init): Define LOCALEDIR
573         when testing an installed compiler.
574         
575         * testsuite/lib/libstdc++.exp (v3-build_support): Pass -w when
576         compiling support objects.
577
578 2005-03-24  Benjamin Kosnik  <bkoz@redhat.com>
579
580         * include/tr1/memory: Forward to...
581         * include/tr1/boost_shared_ptr.h: ...here. Add Boost Software License.
582         * include/Makefile.am (tr1_headers): Add boost_shared_ptr.h.
583         * include/Makefile.in: Regenerate.
584         * testsuite/tr1/2_general_utilities/memory/shared_ptr/cons/
585         auto_ptr_neg.cc: Adjust line numbers.
586
587 2005-03-23  Mark Mitchell  <mark@codesourcery.com>
588
589         * testsuite/Makefile.am (all-local): Do not build testsuite_files.
590         * testsuite/Makefile.in: Regenerated. 
591
592 2005-03-23  Benjamin Kosnik  <bkoz@redhat.com>
593
594         * acinclude.m4: Adjust so that _GLIBCXX_USE_C99 implies
595         using _GLIBCXX_USE_C99_COMPLEX, _GLIBCXX_USE_C99_MATH, and
596         _GLIBCXX_USE_C99_WCHAR.
597         Remove GLIBCXX_ENABLE_C_MBCHAR, consolidate in GLIBCXX_ENABLE_C99
598         and GLIBCXX_ENABLE_WCHAR_T.
599         Take C99 bits from GLIBCXX_CHECK_WCHAR_T_SUPPORT and put in 
600         GLIBCXX_ENABLE_C99.
601         Change remaining parts of GLIBCXX_CHECK_WCHAR_T_SUPPORT to
602         GLIBCXX_CHECK_ICONV_SUPPORT.
603         * configure.ac: Remove GLIBCXX_ENABLE_C_MBCHAR, use
604         GLIBCXX_CHECK_ICONV_SUPPORT and GLIBCXX_ENABLE_WCHAR_T.
605         * crossconfig.m4: Same.
606         * acconfig.h: Same, adjust comments.
607         * config.h.in: Regenerate.
608         * configure: Regenerate.
609         * docs/html/configopts.html: Change --enable-c-mbchar to
610         --enable-wchar_t.
611
612         * config/locale/gnu/c++locale_internal.h: Guard wide functions
613         with _GLIBCXX_USE_WCHAR_T.
614         * include/c_std/std_cwctype.h: Alphabetize, remove duplicates.
615         * include/c_std/std_cstdio.h: Spacing.
616
617         * config/locale/gnu/c_locale.h: Tweaks for unused warnings.
618         * src/debug.cc: Same.
619
620 2005-03-23  Mark Mitchell  <mark@codesourcery.com>
621
622         * testsuite/libstdc++-dg/normal.exp: Read testsuite_files, if it
623         exists.
624
625         * testsuite/lib/libstdc++.exp (libstdc++_wchar_t): Rename to ...
626         (v3-wchar_t): ... this.
627         (libstdc++_threads): Rename to ...
628         (v3-threads): ... this.
629         (libstdc++_test_objs): Rename to ...
630         (v3-test_objs): ... this.
631         (libstdc++_build_support): Rename to ...
632         (v3-build_support): ... this.
633         * testsuite/libstdc++-dg/normal.exp: Adjust to use new names.
634
635         * testsuite/lib/libstdc++.exp (libstdc++_init): Improve handling
636         of compilers not in the build directory.
637         (libstdc++_wchar_t): New variable.
638         (libstdc++_threads): Likewise.
639         (libstdc++_test_objs): Likewise.
640         (v3_target_compile): Use libstdc++_test_objs.
641         (v3-list-tests): Remove.
642         (listdc++_build_support): New function.
643         * testsuite/libstdc++-dg/normal.exp: Rework to dynamically
644         generate list of tests.
645
646 2005-03-21  Chris Jefferson  <chris@bubblescope.net>
647
648         PR libstdc++/20577
649         * include/bits/stl_algobase.h (iter_swap): Only delegate iter_swap
650         to swap when the iterator's reference_type is a reference to its
651         value_type.
652         * testsuite/25_algorithms/iter_swap/20577.cc: New.
653
654 2005-03-21  Zack Weinberg  <zack@codesourcery.com>
655
656         * acinclude.m4 (GLIBCXX_CONFIGURE): Delete gcc_version logic.
657         (GLIBCXX_EXPORT_INSTALL_INFO): Adjust quotation so ${gcc_version}
658         is expanded by the Makefiles, not by configure.
659         * fragment.am: Set gcc_version.
660         * libmath/Makefile.am: Likewise.
661         * configure, Makefile.in, include/Makefile.in, libmath/Makefile.in
662         * libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in
663         * testsuite/Makefile.in: Regenerate.
664
665 2005-03-16  Paolo Carlini  <pcarlini@suse.de>
666
667         * testsuite/20_util/functional/binders.cc: Remove explicit
668         instantiations for non-weak systems.
669         * testsuite/20_util/memory/allocator/1.cc: Likewise.
670         * testsuite/20_util/memory/allocator/10378.cc: Likewise.
671         * testsuite/20_util/memory/allocator/10416.cc: Likewise.
672         * testsuite/20_util/memory/allocator/8230.cc: Likewise.
673         * testsuite/20_util/utility/rel_ops.cc: Likewise.
674         * testsuite/22_locale/ctype/is/char/2.cc: Likewise.
675         * testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
676         * testsuite/23_containers/deque/cons/1.cc: Likewise.
677         * testsuite/23_containers/deque/cons/2.cc: Likewise.
678         * testsuite/23_containers/deque/invalidation/1.cc: Likewise.
679         * testsuite/23_containers/deque/invalidation/2.cc: Likewise.
680         * testsuite/23_containers/deque/invalidation/3.cc: Likewise.
681         * testsuite/23_containers/deque/invalidation/4.cc: Likewise.
682         * testsuite/23_containers/deque/modifiers/swap.cc: Likewise.
683         * testsuite/23_containers/deque/operators/1.cc: Likewise.
684         * testsuite/23_containers/list/capacity/1.cc: Likewise.
685         * testsuite/23_containers/list/cons/1.cc: Likewise.
686         * testsuite/23_containers/list/cons/2.cc: Likewise.
687         * testsuite/23_containers/list/cons/3.cc: Likewise.
688         * testsuite/23_containers/list/cons/4.cc: Likewise.
689         * testsuite/23_containers/list/cons/5.cc: Likewise.
690         * testsuite/23_containers/list/cons/6.cc: Likewise.
691         * testsuite/23_containers/list/cons/7.cc: Likewise.
692         * testsuite/23_containers/list/cons/8.cc: Likewise.
693         * testsuite/23_containers/list/cons/9.cc: Likewise.
694         * testsuite/23_containers/list/invalidation/1.cc: Likewise.
695         * testsuite/23_containers/list/invalidation/2.cc: Likewise.
696         * testsuite/23_containers/list/invalidation/3.cc: Likewise.
697         * testsuite/23_containers/list/invalidation/4.cc: Likewise.
698         * testsuite/23_containers/list/modifiers/1.cc: Likewise.
699         * testsuite/23_containers/list/modifiers/2.cc: Likewise.
700         * testsuite/23_containers/list/modifiers/3.cc: Likewise.
701         * testsuite/23_containers/list/operators/1.cc: Likewise.
702         * testsuite/23_containers/list/operators/2.cc: Likewise.
703         * testsuite/23_containers/list/operators/3.cc: Likewise.
704         * testsuite/23_containers/list/operators/4.cc: Likewise.
705         * testsuite/23_containers/map/insert/1.cc: Likewise.
706         * testsuite/23_containers/map/invalidation/1.cc: Likewise.
707         * testsuite/23_containers/map/invalidation/2.cc: Likewise.
708         * testsuite/23_containers/map/modifiers/swap.cc: Likewise.
709         * testsuite/23_containers/map/operators/1.cc: Likewise.
710         * testsuite/23_containers/multimap/invalidation/1.cc: Likewise.
711         * testsuite/23_containers/multimap/invalidation/2.cc: Likewise.
712         * testsuite/23_containers/multimap/modifiers/swap.cc: Likewise.
713         * testsuite/23_containers/multiset/insert/1.cc: Likewise.
714         * testsuite/23_containers/multiset/insert/2.cc: Likewise.
715         * testsuite/23_containers/multiset/invalidation/1.cc: Likewise.
716         * testsuite/23_containers/multiset/invalidation/2.cc: Likewise.
717         * testsuite/23_containers/multiset/modifiers/swap.cc: Likewise.
718         * testsuite/23_containers/priority_queue/members/7161.cc: Likewise.
719         * testsuite/23_containers/queue/members/7157.cc: Likewise.
720         * testsuite/23_containers/set/insert/1.cc: Likewise.
721         * testsuite/23_containers/set/invalidation/1.cc: Likewise.
722         * testsuite/23_containers/set/invalidation/2.cc: Likewise.
723         * testsuite/23_containers/set/modifiers/swap.cc: Likewise.
724         * testsuite/23_containers/stack/members/7158.cc: Likewise.
725         * testsuite/23_containers/vector/bool/6886.cc: Likewise.
726         * testsuite/23_containers/vector/capacity/1.cc: Likewise.
727         * testsuite/23_containers/vector/capacity/8230.cc: Likewise.
728         * testsuite/23_containers/vector/cons/1.cc: Likewise.
729         * testsuite/23_containers/vector/cons/2.cc: Likewise.
730         * testsuite/23_containers/vector/cons/3.cc: Likewise.
731         * testsuite/23_containers/vector/cons/6513.cc: Likewise.
732         * testsuite/23_containers/vector/element_access/1.cc: Likewise.
733         * testsuite/23_containers/vector/invalidation/1.cc: Likewise.
734         * testsuite/23_containers/vector/invalidation/2.cc: Likewise.
735         * testsuite/23_containers/vector/invalidation/3.cc: Likewise.
736         * testsuite/23_containers/vector/invalidation/4.cc: Likewise.
737         * testsuite/23_containers/vector/modifiers/1.cc: Likewise.
738         * testsuite/23_containers/vector/modifiers/2.cc: Likewise.
739         * testsuite/23_containers/vector/modifiers/swap.cc: Likewise.
740         * testsuite/23_containers/vector/resize/1.cc: Likewise.
741         * testsuite/24_iterators/back_insert_iterator.cc: Likewise.
742         * testsuite/24_iterators/front_insert_iterator.cc: Likewise.
743         * testsuite/24_iterators/insert_iterator.cc: Likewise.
744         * testsuite/24_iterators/iterator.cc: Likewise.
745         * testsuite/25_algorithms/copy/1.cc: Likewise.
746         * testsuite/25_algorithms/copy/2.cc: Likewise.
747         * testsuite/25_algorithms/copy/3.cc: Likewise.
748         * testsuite/25_algorithms/copy/4.cc: Likewise.
749         * testsuite/25_algorithms/equal.cc: Likewise.
750         * testsuite/25_algorithms/fill/1.cc: Likewise.
751         * testsuite/25_algorithms/fill/2.cc: Likewise.
752         * testsuite/25_algorithms/min_max.cc: Likewise.
753         * testsuite/25_algorithms/rotate.cc: Likewise.
754         * testsuite/25_algorithms/unique/1.cc: Likewise.
755         * testsuite/25_algorithms/unique/2.cc: Likewise.
756         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Likewise.
757         * testsuite/ext/concept_checks.cc: Likewise.
758         * testsuite/ext/hash_map/1.cc: Likewise.
759         * testsuite/ext/hash_set/1.cc: Likewise.
760         * testsuite/ext/rope/1.cc: Likewise.
761         * testsuite/ext/rope/2.cc: Likewise.
762         * testsuite/ext/rope/3.cc: Likewise.
763         * testsuite/thread/pthread1.cc: Likewise.
764         * testsuite/thread/pthread4.cc: Likewise.
765         * testsuite/thread/pthread5.cc: Likewise.
766         * testsuite/thread/pthread6.cc: Likewise.
767         * testsuite/thread/pthread7-rope.cc: Likewise.
768
769 2005-03-15  Zack Weinberg  <zack@codesourcery.com>
770
771         * include/Makefile.am (c++config.h): Depend on DATESTAMP from gcc
772         subdirectory.  Generate #define of __GLIBCXX__ from contents of
773         that file.
774         * include/Makefile.in: Regenerate.
775         * include/bits/c++config: Do not define __GLIBCXX__.
776
777 2005-03-15  Paolo Carlini  <pcarlini@suse.de>
778
779         PR libstdc++/20352
780         * include/std/std_complex.h (pow(const complex<_Tp>&,
781         const _Tp&)): On non-c99 platforms, don't try to compute
782         log of complex zero.
783
784 2005-03-10  Ben Elliston  <bje@au.ibm.com>
785
786         * testsuite/22_locale/locale/cons/12658_thread-1.cc: Don't XFAIL
787         on GNU/Linux.
788
789 2005-03-07  Paolo Carlini  <pcarlini@suse.de>
790
791         * include/tr1/type_traits (is_polymorphic): Don't forget
792         the virtual destructor, thus avoiding warnings.
793         * testsuite/testsuite_tr1.h (class AbstractClass,
794         class PolymorphicClass): Likewise.
795
796 2005-03-07  Paolo Carlini  <pcarlini@suse.de>
797
798         * include/std/std_complex.h (pow(const complex<_Tp>&,
799         const complex<_Tp>&)): Dispatch to either __complex_pow(__x.__rep(),
800         __y.__rep()) or __complex_pow(__x, __y) depending on the macro
801         _GLIBCXX_USE_C99_COMPLEX.
802
803 2005-03-07  Paolo Carlini  <pcarlini@suse.de>
804
805         * include/std/std_fstream.h (basic_fstream<>::open,
806         basic_ifstream<>::open, basic_ofstream<>::open): Implement the
807         resolution of DR 409 [Ready], call clear() on success.
808         * docs/html/ext/howto.html: Add an entry for DR 409.
809         * docs/html/faq/index.html (4_4): Clarify the new behavior.
810         * testsuite/27_io/basic_ifstream/open/char/1.cc: Adjust.
811         * testsuite/27_io/basic_ofstream/open/char/1.cc: Likewise.
812
813 2005-03-05  Joseph S. Myers  <joseph@codesourcery.com>
814
815         * testsuite/22_locale/collate/compare/wchar_t/2.cc,
816         testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc,
817         testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc,
818         testsuite/22_locale/collate/hash/wchar_t/2.cc,
819         testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc,
820         testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc,
821         testsuite/22_locale/collate/transform/wchar_t/2.cc,
822         testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc,
823         testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
824         XFAIL on *-*-hpux11.23.
825
826 2005-03-04  Paolo Carlini  <pcarlini@suse.de>
827
828         * include/tr1/type_traits: Add is_base_of.
829         * testsuite/tr1/4_metaprogramming/relationships_between_types/
830         is_base_of/is_base_of.cc: New.
831         * testsuite/tr1/4_metaprogramming/relationships_between_types/
832         is_base_of/typedefs.cc: Likewise.
833
834 2005-03-03  Benjamin Kosnik  <bkoz@redhat.com>
835
836         * include/tr1/functional: Convert relative path.
837
838         * docs/doxygen/user.cfg.in: Add tr1 includes.
839
840 2005-03-03  Paolo Carlini  <pcarlini@suse.de>
841
842         * include/tr1/type_traits: Implemenet is_polymorphic.
843         (is_empty): Minor tweaks.
844         * testsuite/testsuite_tr1.h: Add test types.
845         * testsuite/tr1/4_metaprogramming/type_properties/
846         is_polymorphic/is_polymorphic.cc: New.
847         * testsuite/tr1/4_metaprogramming/type_properties/
848         is_polymorphic/typedefs.cc: Likewise.
849         * testsuite/tr1/4_metaprogramming/composite_type_traits/
850         is_union_or_class/is_union_or_class.cc: Add tests.
851
852 2005-03-02  Douglas Gregor  <doug.gregor@gmail.com>
853
854         * include/tr1/functional (_Has_result_type): Cleanup.
855         (_Result_of_impl): Handle member data pointers correctly.
856         (reference_wrapper): Support invocation.
857         Move repetition code into new file include/tr1/repeat.h.
858         * include/tr1/functional_iterate.h (reference_wrapper): Support
859         invocation.  Cleanup long lines.
860         * include/tr1/ref_wrap_iterate.h (reference_wrapper): Declare
861         invocation operators.
862         * include/tr1/repeat.h: Code repetition header.
863         * include/Makefile.am: Add ref_wrap_iterate.h, repeat.h.
864         * include/Makefile.in: Add ref_wrap_iterate.h, repeat.h.
865         * testsuite/tr1/3_function_objects/reference_wrapper/invoke.cc:
866         New test of reference_wrapper invocation.
867         * testsuite/tr1/3_function_objects/reference_wrapper/typedefs.cc:
868         New test of reference_wrapper typedefs and base classes.
869         * testsuite/tr1/3_function_objects/result_of.cc: Trivial cleanup
870         (e-mail address).
871
872 2005-03-02  Douglas Gregor  <doug.gregor@gmail.com>
873
874         * include/tr1/function (result_of): New class template.
875         * include/tr1/functional/iterator.h: Implementation of TR1
876         result_of.
877         * testsuite/tr1/3_function_objects/result_of.cc: New test
878
879 2005-03-01  Vladimir Merzliakov  <wanderer@rsu.ru>
880
881         * testsuite/26_numerics/cmath/c99_classification_macros_c.cc: Tweak.
882
883 2005-02-28  Benjamin Kosnik  <bkoz@redhat.com>
884
885         * testsuite/tr1/2_general_utilities/memory/shared_ptr/
886         cons/auto_ptr_neg.cc: Correct line numbers.
887
888         * testsuite/testsuite_abi.cc: Add CXXABI_1.3.1.
889
890 2005-02-28  Jonathan Wakely  <redi@gcc.gnu.org>
891
892         * include/tr1/memory: Replace checked_deleter with (unchecked)
893         _Sp_deleter as GCC warns about delete on incomplete types anyway.
894
895 2005-02-28  Jonathan Wakely  <redi@gcc.gnu.org>
896
897         * include/tr1/memory: Add missing "inline" to __throw_bad_weak_ptr.
898
899 2005-02-28  Hans-Peter Nilsson  <hp@axis.com>
900
901         PR target/19065
902         * config/cpu/cris/atomicity.h (__exchange_and_add): In asm, use
903         'Q' constraint, not 'm'.
904
905 2005-02-26  Earl Chew  <earl_chew@agilent.com>
906             Christopher Jefferson  <chris@bubblescope.net>
907
908         * include/bits/stl_tree.h (_Rb_tree<>::_M_insert): Don't leak
909         memory if _M_key_compare throws.
910
911 2005-02-25  Paolo Carlini  <pcarlini@suse.de>
912
913         * include/tr1/type_traits: Add the trivial is_union and is_class;
914         add the __is_union_or_class extension.
915         (is_enum, is_empty): Use the latter.
916         * include/tr1/type_traits_fwd.h: Add __is_union_or_class.
917         * testsuite/testsuite_tr1.h: Add UnionType; trivial formatting
918         fixes.
919         * testsuite/tr1/4_metaprogramming/composite_type_traits/
920         is_union_or_class/is_union_or_class.cc: New.
921         * testsuite/tr1/4_metaprogramming/composite_type_traits/
922         is_union_or_class/typedefs.cc: Likewise.
923
924 2005-02-24  Benjamin Kosnik  <bkoz@redhat.com>
925
926         * testsuite/tr1/6_containers/unordered/instantiate/hash.cc: Guard
927         wchar_t use with _GLIBCXX_USE_WCHAR_T.
928
929 2005-02-24  Benjamin Kosnik  <bkoz@redhat.com>
930
931         * include/std/std_complex.h: _GLIBCXX_USE_C99_COMPLEX_MATH to
932         _GLIBCXX_USE_C99_COMPLEX.
933         * acinclude.m4: Same.
934         * acconfig.h: Same.
935         * configure: Regenerate.
936         * config.h.in: Same.
937
938 2005-02-24  Paolo Carlini  <pcarlini@suse.de>
939
940         * include/tr1/functional (mem_fn): Avoid _T, badname on
941         Darwin.
942
943 2005-02-23  Douglas Gregor  <doug.gregor@gmail.com>
944
945         * include/tr1/functional (function): New class template.
946         (mem_fn): New function template.
947         Implementations of TR1 function and mem_fn facilities.
948         * include/tr1/functional_iterate.h: Implementations of TR1
949         function and mem_fn facilities.
950         * testsuite/tr1/3_function_objects/function/1.cc: New
951         test of std::tr1::function.
952         * testsuite/tr1/3_function_objects/function/2.cc: New
953         test of std::tr1::function.
954         * testsuite/tr1/3_function_objects/function/3.cc: New
955         test of std::tr1::function.
956         * testsuite/tr1/3_function_objects/function/4.cc: New
957         test of std::tr1::function.
958         * testsuite/tr1/3_function_objects/function/5.cc: New
959         test of std::tr1::function.
960         * testsuite/tr1/3_function_objects/function/6.cc: New
961         test of std::tr1::function.
962         * testsuite/tr1/3_function_objects/function/7.cc: New
963         test of std::tr1::function.
964         * testsuite/tr1/3_function_objects/function/8.cc: New
965         test of std::tr1::function.
966         * testsuite/tr1/3_function_objects/function/9.cc: New
967         test of std::tr1::function.
968         * testsuite/tr1/3_function_objects/mem_fn.cc: New test of
969         std::tr1::mem_fn.
970
971 2005-02-23  Paolo Carlini  <pcarlini@suse.de>
972
973         * include/tr1/type_traits: Implement is_convertible.
974         * testsuite/tr1/4_metaprogramming/relationships_between_types/
975         is_convertible/is_convertible.cc: New.
976         * testsuite/tr1/4_metaprogramming/relationships_between_types/
977         is_convertible/typedefs.cc: Likewise.
978         * testsuite/testsuite_tr1.h: Add class DerivedType.
979
980         * include/tr1/type_traits (is_function): Don't mistake references
981         to function types for function types.
982         * testsuite/tr1/4_metaprogramming/primary_type_categories/
983         is_function/is_function.cc: Add testcase.
984
985 2005-02-22  Benjamin Kosnik  <bkoz@redhat.com>
986
987         * scripts/check_performance: Tweaks.
988
989         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/2.cc: Name
990         output file with extension that clean rules can find.
991
992 2005-02-22  Richard Henderson  <rth@redhat.com>
993
994         PR libstdc++/20091
995         * libsupc++/eh_catch.cc (__cxa_begin_catch): Don't special case
996         decrement of uncaughtExceptions for rethrow.
997
998 2005-02-22  Paolo Carlini  <pcarlini@suse.de>
999
1000         * include/tr1/functional: Fix License to GPL with exception.
1001         * include/tr1/hashtable: Likewise.
1002         * include/tr1/tuple: Likewise.
1003         * include/tr1/type_traits: Likewise.
1004         * include/tr1/type_traits_fwd.h: Likewise.
1005         * include/tr1/unordered_map: Likewise.
1006         * include/tr1/unordered_set: Likewise.
1007         * include/tr1/utility: Likewise.
1008
1009 2005-02-22  Paolo Carlini  <pcarlini@suse.de>
1010
1011         * testsuite/tr1/2_general_utilities/memory/shared_ptr/assign/
1012         auto_ptr_neg.cc: Add missing dg-do compile directive.
1013         * testsuite/tr1/2_general_utilities/memory/shared_ptr/assign/
1014         auto_ptr_rvalue_neg.cc: Likewise.
1015         * testsuite/tr1/2_general_utilities/memory/shared_ptr/assign/
1016         shared_ptr_neg.cc: Likewise.
1017         * testsuite/tr1/2_general_utilities/memory/shared_ptr/cons/
1018         auto_ptr_neg.cc: Likewise.
1019         * testsuite/tr1/2_general_utilities/memory/shared_ptr/modifiers/
1020         reset_neg.cc: Likewise.
1021         * testsuite/tr1/2_general_utilities/memory/shared_ptr/modifiers/
1022         swap_neg.cc: Likewise.
1023
1024 2005-02-22  Jonathan Wakely  <redi@gcc.gnu.org>
1025
1026         * include/Makefile.am, include/Makefile.in: Fix accidental extra
1027         change from previous commit.
1028
1029 2005-02-21  Jonathan Wakely  <redi@gcc.gnu.org>
1030
1031         * include/tr1/memory: New file.
1032         * include/Makefile.am, include/Makefile.in: Add new TR1 header.
1033         * testsuite/tr1/2_general_utilities/memory/
1034         enable_shared_from_this/not_shared.cc: New test.
1035         * testsuite/tr1/2_general_utilities/memory/
1036         enable_shared_from_this/not_shared2.cc: New test.
1037         * testsuite/tr1/2_general_utilities/memory/
1038         enable_shared_from_this/not_shared3.cc: New test.
1039         * testsuite/tr1/2_general_utilities/memory/
1040         enable_shared_from_this/shared.cc: New test.
1041         * testsuite/tr1/2_general_utilities/memory/
1042         enable_shared_from_this/still_shared.cc: New test.
1043         * testsuite/tr1/2_general_utilities/memory/
1044         shared_ptr/assign/assign.cc: New test.
1045         * testsuite/tr1/2_general_utilities/memory/
1046         shared_ptr/assign/auto_ptr.cc: New test.
1047         * testsuite/tr1/2_general_utilities/memory/
1048         shared_ptr/assign/auto_ptr_neg.cc: New test.
1049         * testsuite/tr1/2_general_utilities/memory/
1050         shared_ptr/assign/auto_ptr_rvalue_neg.cc: New test.
1051         * testsuite/tr1/2_general_utilities/memory/
1052         shared_ptr/assign/shared_ptr.cc: New test.
1053         * testsuite/tr1/2_general_utilities/memory/
1054         shared_ptr/assign/shared_ptr_neg.cc: New test.
1055         * testsuite/tr1/2_general_utilities/memory/
1056         shared_ptr/comparison/cmp.cc: New test.
1057         * testsuite/tr1/2_general_utilities/memory/
1058         shared_ptr/cons/auto_ptr.cc: New test.
1059         * testsuite/tr1/2_general_utilities/memory/
1060         shared_ptr/cons/auto_ptr_neg.cc: New test.
1061         * testsuite/tr1/2_general_utilities/memory/
1062         shared_ptr/cons/copy.cc: New test.
1063         * testsuite/tr1/2_general_utilities/memory/
1064         shared_ptr/cons/default.cc: New test.
1065         * testsuite/tr1/2_general_utilities/memory/
1066         shared_ptr/cons/pointer.cc: New test.
1067         * testsuite/tr1/2_general_utilities/memory/
1068         shared_ptr/cons/weak_ptr.cc: New test.
1069         * testsuite/tr1/2_general_utilities/memory/
1070         shared_ptr/cons/weak_ptr_expired.cc: New test.
1071         * testsuite/tr1/2_general_utilities/memory/
1072         shared_ptr/dest/dest.cc: New test.
1073         * testsuite/tr1/2_general_utilities/memory/
1074         shared_ptr/misc/io.cc: New test.
1075         * testsuite/tr1/2_general_utilities/memory/
1076         shared_ptr/misc/swap.cc: New test.
1077         * testsuite/tr1/2_general_utilities/memory/
1078         shared_ptr/modifiers/reset.cc: New test.
1079         * testsuite/tr1/2_general_utilities/memory/
1080         shared_ptr/modifiers/reset_neg.cc: New test.
1081         * testsuite/tr1/2_general_utilities/memory/
1082         shared_ptr/modifiers/swap.cc: New test.
1083         * testsuite/tr1/2_general_utilities/memory/
1084         shared_ptr/modifiers/swap_neg.cc: New test.
1085         * testsuite/tr1/2_general_utilities/memory/
1086         shared_ptr/observers/bool_conv.cc: New test.
1087         * testsuite/tr1/2_general_utilities/memory/
1088         shared_ptr/observers/get.cc: New test.
1089         * testsuite/tr1/2_general_utilities/memory/
1090         shared_ptr/observers/unique.cc: New test.
1091         * testsuite/tr1/2_general_utilities/memory/
1092         shared_ptr/observers/use_count.cc: New test.
1093
1094 2005-02-21  Paolo Carlini  <pcarlini@suse.de>
1095
1096         * include/tr1/type_traits (is_member_function_pointer):
1097         Remove ugly workaround for c++/19076.
1098
1099 2005-02-21  Paolo Carlini  <pcarlini@suse.de>
1100
1101         * include/bits/basic_string.tcc (_Rep::_M_destroy): Don't
1102         check for this == &_S_empty_rep, it's always false, here.
1103
1104 2005-02-19  Matt Austern  <austern@gmail.com>
1105
1106         * include/tr1/functional (tr1_hashtable_define_trivial_hash): Make
1107         hash<T>::operator() a const member function for T a fundamental type
1108         * include/tr1/hashtable (extract1st::operator()): Declare const.
1109         (hash_code_base): Declare all member functions const
1110         (hashtable::find): fix call to this->bucket_count()
1111         (hashtable::count): Likewise.
1112         (hashtable::equal_range): m_incr_bucket applies to iterator, not node.
1113         * testsuite/tr1/6_containers/unordered/find/set1.cc: New test.
1114         * testsuite/tr1/6_containers/unordered/find/map1.cc: New test.
1115         * testsuite/tr1/6_containers/unordered/find/multimap1.cc: New test.
1116         * testsuite/tr1/6_containers/unordered/find/multiset1.cc: New test.
1117
1118 2005-02-19  Hans-Peter Nilsson  <hp@axis.com>
1119
1120         PR libstdc++/20071
1121         * include/tr1/functional (hash<std::wstring>): Wrap in #ifdef
1122         _GLIBCXX_USE_WCHAR_T.
1123
1124 2005-02-18  Richard Henderson  <rth@redhat.com>
1125
1126         PR libstdc++/10606
1127         * config/linker-map.gnu (CXXABI_1.3.1): Add __cxa_get_exception_ptr.
1128         * libsupc++/eh_alloc.cc (__cxa_allocate_exception): Increment
1129         uncaughtExceptions here instead of ...
1130         * libsupc++/eh_throw.cc (__cxa_throw) ... here.
1131         (__cxa_rethrow): Increment uncaughtExceptions here instead of ...
1132         * libsupc++/eh_catch.cc (__cxa_end_catch): ... here.
1133         (__cxa_get_exception_ptr): New.
1134         * libsupc++/unwind-cxx.h (__cxa_get_exception_ptr): Declare.
1135
1136 2005-02-18  Matt Austern  <austern@apple.com>
1137
1138         * testsuite/tr1/6_containers/unordered/insert/array_syntax.cc: Fix
1139         test case to use assignment instead of ==
1140         * testsuite/tr1/6_containers/unordered/insert/map_range.cc: New test.
1141         * testsuite/tr1/6_containers/unordered/insert/multimap_range.cc: New test.
1142         * testsuite/tr1/6_containers/unordered/insert/multiset_range.cc: New test.
1143         * testsuite/tr1/6_containers/unordered/insert/set_range.cc: New test.
1144
1145 2005-02-18  Eric Botcazou  <ebotcazou@libertysurf.fr>
1146
1147         * testsuite/thread/pthread1.cc: Do not invoke pthread_setconcurrency
1148         on Solaris 2.6 and below.
1149         * testsuite/thread/pthread2.cc: Likewise.
1150         * testsuite/thread/pthread3.cc: Likewise.
1151         * testsuite/thread/pthread4.cc: Likewise.
1152         * testsuite/thread/pthread5.cc: Likewise.
1153         * testsuite/thread/pthread6.cc: Likewise.
1154         * testsuite/thread/pthread7-rope.cc: Likewise.
1155
1156 2005-02-17  Matt Austern  <austern@apple.com>
1157
1158         * include/tr1/functional (hash): New function object.
1159         * include/tr1/hashtable: New file.
1160         * include/tr1/unordered_set: New file.
1161         * include/tr1/unordered_map: New file.
1162         * include/Makefile.am: Add three new TR1 headers.
1163         * include/Makefile.in: Likewise.
1164         * testsuite/tr1/6_containers/unordered/insert/array_syntax.cc: New test.
1165         * testsuite/tr1/6_containers/unordered/insert/map_single.cc: New test.
1166         * testsuite/tr1/6_containers/unordered/insert/multimap_single.cc: New test.
1167         * testsuite/tr1/6_containers/unordered/insert/multiset_single.cc: New test.
1168         * testsuite/tr1/6_containers/unordered/insert/set_single.cc: New test.
1169         * testsuite/tr1/6_containers/unordered/instantiate/hash.cc: New test.
1170         * testsuite/tr1/6_containers/unordered/instantiate/map.cc: New test.
1171         * testsuite/tr1/6_containers/unordered/instantiate/multimap.cc: New test.
1172         * testsuite/tr1/6_containers/unordered/instantiate/multiset.cc: New test.
1173         * testsuite/tr1/6_containers/unordered/instantiate/set.cc: New test.
1174
1175 2005-02-16  Paolo Carlini  <pcarlini@suse.de>
1176
1177         * testsuite/23_containers/set/modifiers/16728.cc:
1178         Remove redundant include <testsuite_performance.h>.
1179
1180 2005-02-16  Paolo Carlini  <pcarlini@suse.de>
1181
1182         PR libstdc++/19829
1183         * testsuite/21_strings/basic_string/find/char/3.cc: Fix the test
1184         at line #66 to not access str_lit01 beyond its end.
1185         * testsuite/21_strings/basic_string/find/wchar_t/3.cc: Likewise.
1186
1187 2005-02-15  Paolo Carlini  <pcarlini@suse.de>
1188             Jon Grimm  <jgrimm2@us.ibm.com>
1189
1190         PR libstdc++/19955
1191         * include/bits/locale_facets.h (ctype<char>::_M_narrow_init()):
1192         Fix the logic setting _M_narrow_ok: first check whether the
1193         transformation is trivial with a dflt == 0, then deal with the
1194         special case of zero.
1195         * testsuite/22_locale/ctype/narrow/char/19955.cc: New.
1196
1197         * include/bits/locale_facets.h (ctype<char>::_M_widen_init()):
1198         Tweak consistently to use memcmp; minor formatting fixes.
1199
1200 2005-02-15  Jakub Jelinek  <jakub@redhat.com>
1201
1202         PR libstdc++/19946
1203         * testsuite/demangle/abi_examples/01.cc (main): Adjust for 2005-02-13
1204         demangler change.
1205         * testsuite/demangle/abi_examples/02.cc (main): Likewise.
1206
1207 2005-02-13  Richard Guenther  <rguenth@gcc.gnu.org>
1208             Paolo Carlini  <pcarlini@suse.de>
1209
1210         PR libstdc++/11706
1211         * include/c_std/std_cmath.h (pow): Use __builtin_powi[lf]
1212         for integer overloads.
1213
1214         * testsuite/26_numerics/cmath/powi.cc: New.
1215
1216 2005-02-11  Janis Johnson  <janis187@us.ibm.com>
1217
1218         * testsuite/26_numerics/complex/13450.cc: Fix XFAIL selector.
1219         * testsuite/26_numerics/complex/complex_value.cc: Ditto.
1220         * testsuite/26_numerics/complex/pow.cc: Ditto.
1221
1222         * testsuite/lib/libstdc++.exp: Load target-supports-dg.exp.
1223         * testsuite/26_numerics/complex/13450.cc: XFAIL for broken_cplxf_arg.
1224         * testsuite/26_numerics/complex/complex_value.cc: Ditto.
1225         * testsuite/26_numerics/complex/pow.cc: Ditto.
1226
1227 2005-02-09  Mike Stump  <mrs@apple.com>
1228
1229         * libsupc++/del_op.cc: Don't include cstdlib when !_GLIBCXX_HOSTED.
1230
1231 2005-02-09  Janis Johnson  <janis187@us.ibm.com>
1232
1233         * testsuite/ext/array_allocator/2.cc: XFAIL for powerpc*-*-linux*.
1234
1235 2005-02-08  Mark Mitchell  <mark@codesourcery.com>
1236
1237         * config/linker-map.gnu (GLIBCXX_3.4): Add _ZNSdC* and _ZNSdD*.
1238
1239 2005-02-07  Loren J. Rittle  <ljrittle@acm.org>
1240
1241         * testsuite/27_io/basic_istream/getline/wchar_t/5.cc: Make buf static.
1242         * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/4.cc: Make ref and
1243         src static.
1244
1245 2005-02-02  Brad Spencer  <spencer@infointeractive.com>
1246
1247         * debug.html: Fix broken tags.
1248         * documentation.html: Same.
1249
1250 2005-02-02  Andreas Jaeger  <aj@suse.de>
1251
1252         * testsuite/lib/libstdc++.exp: Revert Geoffrey Keating's patch
1253         from 2005-01-28.
1254         * testsuite/Makefile.am: Likewise.
1255         * testsuite/Makefile.in: Likewise.
1256
1257 2005-02-01  Paolo Carlini  <pcarlini@suse.de>
1258
1259         * include/bits/cpp_type_traits.h: Rename _M_type fields to
1260         __value, except for __enable_if, _M_type -> __type, consistently
1261         with the other traits.
1262         * include/bits/stl_algobase.h: Tweak consistently.
1263         * include/bits/stl_tree.h: Likewise.
1264         * include/bits/valarray_array.h: Likewise.
1265         * include/c_std/std_cmath.h: Likewise.
1266         * include/debug/safe_iterator.h: Likewise.
1267         * include/std/std_complex.h: Likewise.
1268
1269 2005-01-31  Brad Spencer  <spencer@infointeractive.com>
1270
1271         * crossconfig.m4: Repair Solaris cross bits for strtold and strtof.
1272         * configure: Regenerated.
1273
1274 2005-01-31  Mark Mitchell  <mark@codesourcery.com>
1275
1276         * include/std/std_limits.h (numeric_limits<float>::has_denorm):
1277         Add required cast.
1278         (numeric_limits<double>::has_denorm): Likewise.
1279         (numeric_limits<long double>::has_denorm): Likewise.
1280
1281 2005-01-31  Paolo Carlini  <pcarlini@suse.de>
1282             Gabriel Dos Reis  <gdr@integrable-solutions.net>
1283
1284         * include/bits/cpp_type_traits.h: Add types to the structs thus
1285         making type_traits.h redundant; exploit new __truth_type and
1286         __traitor helpers.
1287         * include/bits/type_traits.h: Remove.
1288         * include/Makefile.am: Update.
1289         * include/Makefile.in: Regenerate.
1290         * include/backward/tempbuf.h: Include cpp_type_traits.h instead.
1291         * include/bits/basic_string.h (replace(iterator, iterator,
1292         _InputIterator, _InputIterator), _S_construct(_InIterator,
1293         _InIterator, const _Alloc&)): Use __is_integer instead.
1294         * include/bits/stl_bvector.h (vector(_InputIterator,
1295         _InputIterator, const allocator_type&), assign(_InputIterator,
1296         _InputIterator), insert(iterator, _InputIterator, _InputIterator)):
1297         Likewise.
1298         * include/bits/stl_construct.h (_Destroy(_ForwardIterator,
1299         _ForwardIterator)): Use __is_scalar.
1300         * include/bits/stl_deque.h (deque(_InputIterator, _InputIterator,
1301         const allocator_type&), assign(_InputIterator, _InputIterator),
1302         insert(iterator, _InputIterator, _InputIterator)): Use __is_integer.
1303         * include/bits/stl_list.h (assign(_InputIterator, _InputIterator),
1304         insert(iterator, _InputIterator, _InputIterator)): Likewise.
1305         * include/bits/stl_tempbuf.h (_Temporary_buffer(_ForwardIterator,
1306         _ForwardIterator)): Use __is_scalar.
1307         * include/bits/stl_uninitialized.h (uninitialized_copy(_InputIterator,
1308         _InputIterator, _ForwardIterator), uninitialized_fill(_ForwardIterator,
1309         _ForwardIterator, const _Tp&), uninitialized_fill_n(_ForwardIterator,
1310         _Size, const _Tp&)): Likewise.
1311         * include/bits/stl_vector.h (vector(_InputIterator, _InputIterator,
1312         const allocator_type&), assign(_InputIterator, _InputIterator),
1313         insert(iterator, _InputIterator, _InputIterator)): Use __is_integer.
1314         * include/debug/debug.h (__valid_range(const _InputIterator&,
1315         const _InputIterator&)): Use __is_integer.
1316         * include/ext/slist (assign(_InputIterator, _InputIterator)): Likewise.
1317         * include/std/std_string.h: Include cpp_type_traits.h instead.
1318
1319 2005-01-30  Paolo Carlini  <pcarlini@suse.de>
1320
1321         PR libstdc++/19642
1322         * config/locale/generic/c_locale.h (__convert_from_v): Switch only
1323         LC_NUMERIC, and only when actually != "C".
1324
1325 2005-01-28  Paolo Carlini  <pcarlini@suse.de>
1326
1327         * include/tr1/type_traits (is_function): Minor consistency tweaks.
1328
1329 2005-01-28  Geoffrey Keating  <geoffk@apple.com>
1330
1331         * testsuite/lib/libstdc++.exp (libstdc++_init): Search the path
1332         for the compiler.  Don't set cxxflags.
1333         (v3_target_compile): Search for libv3test.a relative to $objdir.
1334         (lsearch_all_inline): New.
1335         (lsearch_all_inline_not): New.
1336         (v3-list-tests): Rewrite to not need generated files.
1337         * testsuite/Makefile.am (IGNORE_WCHAR_T): New.
1338         (IGNORE_THREAD): New.
1339         (TESTS_TO_IGNORE): New.
1340         (site.exp): Set tests_to_ignore, cxxflags.
1341         * aclocal.m4: Regenerate.
1342         * Makefile.in: Regenerate.
1343         * libmath/Makefile.in: Likewise.
1344         * libsupc++/Makefile.in: Likewise.
1345         * po/Makefile.in: Likewise.
1346         * src/Makefile.in: Likewise.
1347         * testsuite/Makefile.in: Likewise.
1348
1349 2005-01-28  Paolo Carlini  <pcarlini@suse.de>
1350
1351         * include/tr1/type_traits: Implement is_empty.
1352         * testsuite/tr1/4_metaprogramming/type_properties/is_empty/
1353         is_empty.cc: New.
1354         * testsuite/tr1/4_metaprogramming/type_properties/is_empty/
1355         typedefs.cc: Likewise.
1356
1357         * include/tr1/type_traits (__is_abstract_helper): Simplify a bit.
1358
1359 2005-01-28  Paolo Carlini  <pcarlini@suse.de>
1360
1361         * include/tr1/type_traits: Implement is_abstract, by exploiting the
1362         resolution of DR core/337.
1363         * testsuite/testsuite_tr1.h: Add AbstractClass.
1364         * testsuite/tr1/4_metaprogramming/type_properties/is_abstract/
1365         is_abstract.cc: New.
1366         * testsuite/tr1/4_metaprogramming/type_properties/is_abstract/
1367         typedefs.cc: Likewise.
1368
1369         * include/tr1/type_traits (is_function): Rewrite, use the conversion
1370         F& -> F* instead, thus avoiding problems with abstract classes.
1371         * testsuite/tr1/4_metaprogramming/primary_type_categories/
1372         is_function/is_function.cc: Add a test for tricky AbstractClass.
1373
1374 2005-01-26  Paolo Carlini  <pcarlini@suse.de>
1375
1376         * include/ext/mt_allocator.h
1377         (struct __per_type_pool_policy<,, false>::_S_get_pool,
1378         struct __per_type_pool_policy<,, true>::_S_get_pool): Scale
1379         _M_chunk_size too with sizeof(_Tp), otherwise the allocator
1380         breaks down as soon as sizeof(_Tp) >~ _S_chunk_size / 128;
1381         reduce to 64 the multiplier for _M_max_bytes (safer wrt
1382         _Binmap_type being a short); trivial reformattings.
1383         * testsuite/ext/mt_allocator/check_allocate_big_per_type.cc: New.
1384
1385 2005-01-26  Paolo Carlini  <pcarlini@suse.de>
1386
1387         * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Add ac_c99_complex
1388         to the final test for enable_c99, thus robustifying it; remove
1389         duplicate final test on ac_99_math.
1390         * configure: Regenerate.
1391
1392         * include/std/std_complex.h: Remove usages of the dead
1393         _GLIBCXX_BUGGY_COMPLEX macro.
1394
1395         * testsuite/26_numerics/cmath/19322.cc: Protect with
1396         _GLIBCXX_USE_C99_MATH instead of the stronger _GLIBCXX_USE_C99,
1397         since only C99 math facilities are involved.
1398         * testsuite/26_numerics/cmath/c99_classification_macros_c++.cc:
1399         Likewise.
1400
1401 2005-01-25  Loren J. Rittle  <ljrittle@acm.org>
1402
1403         * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Map FreeBSD to darwin
1404         instead of generic.  Change autoconf report to "darwin or freebsd".
1405         * configure: Regenerate.
1406         * config/os/bsd/freebsd/ctype_inline.h (ctype<wchar_t>::do_is): Add.
1407         (ctype<wchar_t>::do_scan_is): Likewise.
1408         (ctype<wchar_t>::do_scan_not): Likewise.
1409
1410 2005-01-25  Benjamin Kosnik  <bkoz@redhat.com>
1411
1412         * acinclude.m4 (GLIBCXX_ENABLE_C99): Test for complex math
1413         functions, and enable _GLIBCXX_USE_C99_COMPLEX_MATH if they exist.
1414         * acconfig.h: Add _GLIBCXX_USE_C99_COMPLEX_MATH.
1415         * config.h.in: Regenerate.
1416         * configure: Regenerate.
1417         * include/std/std_complex.h: Protect complex builtins with
1418         _GLIBCXX_USE_C99_COMPLEX_MATH.
1419
1420 2005-01-24  Paolo Carlini  <pcarlini@suse.de>
1421
1422         * include/tr1/type_traits: Implement is_signed and is_unsigned.
1423         * testsuite/tr1/4_metaprogramming/type_properties/
1424         is_signed/is_signed.cc: New.
1425         * testsuite/tr1/4_metaprogramming/type_properties/
1426         is_signed/typedefs.cc: Likewise.
1427         * testsuite/tr1/4_metaprogramming/type_properties/
1428         is_unsigned/is_unsigned.cc: Likewise.
1429         * testsuite/tr1/4_metaprogramming/type_properties/
1430         is_unsigned/typedefs.cc: Likewise.
1431
1432 2005-01-23  Paolo Carlini  <pcarlini@suse.de>
1433
1434         * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 34.
1435
1436 2005-01-23  Paolo Carlini  <pcarlini@suse.de>
1437
1438         * testsuite/27_io/basic_ostream/cons/wchar_t/9827.cc: New.
1439         * testsuite/27_io/basic_ostream/endl/wchar_t/1.cc: Likewise.
1440         * testsuite/27_io/basic_ostream/ends/wchar_t/1.cc: Likewise.
1441         * testsuite/27_io/basic_ostream/ends/wchar_t/2.cc: Likewise.
1442         * testsuite/27_io/basic_ostream/exceptions/wchar_t/9561.cc: Likewise.
1443         * testsuite/27_io/basic_ostream/flush/wchar_t/1.cc: Likewise.
1444         * testsuite/27_io/basic_ostream/flush/wchar_t/2.cc: Likewise.
1445         * testsuite/27_io/basic_ostream/flush/wchar_t/
1446         exceptions_badbit_throw.cc: Likewise.
1447         * testsuite/27_io/basic_ostream/inserters_arithmetic/
1448         wchar_t/2.cc: Likewise.
1449         * testsuite/27_io/basic_ostream/inserters_arithmetic/
1450         wchar_t/3.cc: Likewise.
1451         * testsuite/27_io/basic_ostream/inserters_arithmetic/
1452         wchar_t/4.cc: Likewise.
1453         * testsuite/27_io/basic_ostream/inserters_arithmetic/
1454         wchar_t/4402.cc: Likewise.
1455         * testsuite/27_io/basic_ostream/inserters_arithmetic/
1456         wchar_t/5.cc: Likewise.
1457         * testsuite/27_io/basic_ostream/inserters_arithmetic/
1458         wchar_t/6.cc: Likewise.
1459         * testsuite/27_io/basic_ostream/inserters_arithmetic/
1460         wchar_t/9555-oa.cc: Likewise.
1461         * testsuite/27_io/basic_ostream/inserters_arithmetic/
1462         wchar_t/exceptions_badbit_throw.cc: Likewise.
1463         * testsuite/27_io/basic_ostream/inserters_arithmetic/
1464         wchar_t/exceptions_failbit_throw.cc: Likewise.
1465         * testsuite/27_io/basic_ostream/inserters_character/
1466         wchar_t/1.cc: Likewise.
1467         * testsuite/27_io/basic_ostream/inserters_character/
1468         wchar_t/2.cc: Likewise.
1469         * testsuite/27_io/basic_ostream/inserters_character/
1470         wchar_t/3.cc: Likewise.
1471         * testsuite/27_io/basic_ostream/inserters_character/
1472         wchar_t/4.cc: Likewise.
1473         * testsuite/27_io/basic_ostream/inserters_character/
1474         wchar_t/5.cc: Likewise.
1475         * testsuite/27_io/basic_ostream/inserters_character/
1476         wchar_t/6.cc: Likewise.
1477         * testsuite/27_io/basic_ostream/inserters_character/
1478         wchar_t/9555-oc.cc: Likewise.
1479         * testsuite/27_io/basic_ostream/inserters_other/
1480         wchar_t/1.cc: Likewise.
1481         * testsuite/27_io/basic_ostream/inserters_other/
1482         wchar_t/2.cc: Likewise.
1483         * testsuite/27_io/basic_ostream/inserters_other/
1484         wchar_t/3.cc: Likewise.
1485         * testsuite/27_io/basic_ostream/inserters_other/
1486         wchar_t/4.cc: Likewise.
1487         * testsuite/27_io/basic_ostream/inserters_other/
1488         wchar_t/5.cc: Likewise.
1489         * testsuite/27_io/basic_ostream/inserters_other/
1490         wchar_t/9318-out.cc: Likewise.
1491         * testsuite/27_io/basic_ostream/inserters_other/
1492         wchar_t/9424-out.cc: Likewise.
1493         * testsuite/27_io/basic_ostream/inserters_other/
1494         wchar_t/9555-oo.cc: Likewise.
1495         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1496         error_failbit.cc: Likewise.
1497         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1498         exceptions_badbit_throw.cc: Likewise.
1499         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1500         exceptions_failbit_throw.cc: Likewise.
1501         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1502         exceptions_null.cc: Likewise.
1503         * testsuite/27_io/basic_ostream/put/char/1.cc: Likewise.
1504         * testsuite/27_io/basic_ostream/put/wchar_t/1.cc: Likewise.
1505         * testsuite/27_io/basic_ostream/seekp/char/
1506         exceptions_badbit_throw.cc: Likewise.
1507         * testsuite/27_io/basic_ostream/seekp/wchar_t/
1508         2346-fstream.cc: Likewise.
1509         * testsuite/27_io/basic_ostream/seekp/wchar_t/
1510         2346-sstream.cc: Likewise.
1511         * testsuite/27_io/basic_ostream/seekp/wchar_t/
1512         exceptions_badbit_throw.cc: Likewise.
1513         * testsuite/27_io/basic_ostream/sentry/wchar_t/1.cc: Likewise.
1514         * testsuite/27_io/basic_ostream/sentry/wchar_t/2.cc: Likewise.
1515         * testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
1516         * testsuite/27_io/basic_ostream/tellp/wchar_t/2.cc: Likewise.
1517         * testsuite/27_io/basic_ostream/tellp/wchar_t/
1518         exceptions_badbit_throw.cc: Likewise.
1519         * testsuite/27_io/basic_ostream/write/wchar_t/1.cc: Likewise.
1520
1521         * testsuite/data/wostream_inserter_char-1.tst: Likewise.
1522         * testsuite/data/wostream_inserter_char-1.txt: Likewise.
1523         * testsuite/data/wostream_inserter_other-1.tst: Likewise.
1524         * testsuite/data/wostream_inserter_other-2.tst: Likewise.
1525         * testsuite/data/wostream_seeks-1.tst: Likewise.
1526
1527         * testsuite/27_io/basic_ostream/endl/char/1.cc: Minor tweaks.
1528         * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise.
1529         * testsuite/27_io/basic_ostream/exceptions/char/9561.cc: Likewise.
1530         * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
1531         * testsuite/27_io/basic_ostream/flush/char/2.cc: Likewise.
1532         * testsuite/27_io/basic_ostream/flush/char/
1533         exceptions_badbit_throw.cc: Likewise.
1534         * testsuite/27_io/basic_ostream/inserters_arithmetic/
1535         char/2.cc: Likewise.
1536         * testsuite/27_io/basic_ostream/inserters_arithmetic/
1537         char/3.cc: Likewise.
1538         * testsuite/27_io/basic_ostream/inserters_arithmetic/
1539         char/4.cc: Likewise.
1540         * testsuite/27_io/basic_ostream/inserters_arithmetic/
1541         char/4402.cc: Likewise.
1542         * testsuite/27_io/basic_ostream/inserters_arithmetic/
1543         char/5.cc: Likewise.
1544         * testsuite/27_io/basic_ostream/inserters_arithmetic/
1545         char/6.cc: Likewise.
1546         * testsuite/27_io/basic_ostream/inserters_character/
1547         char/4.cc: Likewise.
1548         * testsuite/27_io/basic_ostream/inserters_other/char/
1549         2.cc: Likewise.
1550         * testsuite/27_io/basic_ostream/inserters_other/char/
1551         5.cc: Likewise.
1552         * testsuite/27_io/basic_ostream/inserters_other/char/
1553         error_failbit.cc: Likewise.
1554         * testsuite/27_io/basic_ostream/inserters_other/char/
1555         exceptions_badbit_throw.cc: Likewise.
1556         * testsuite/27_io/basic_ostream/inserters_other/char/
1557         exceptions_failbit_throw.cc: Likewise.
1558         * testsuite/27_io/basic_ostream/inserters_other/char/
1559         exceptions_null.cc: Likewise.
1560         * testsuite/27_io/basic_ostream/put/char/1.cc: Likewise.
1561         * testsuite/27_io/basic_ostream/seekp/char/
1562         exceptions_badbit_throw.cc: Likewise.
1563         * testsuite/27_io/basic_ostream/sentry/char/2.cc: Likewise.
1564         * testsuite/27_io/basic_ostream/write/char/1.cc: Likewise.
1565
1566 2005-01-23  Paolo Carlini  <pcarlini@suse.de>
1567
1568         * include/tr1/type_traits (aligned_storage): Use __aligned__ instead
1569         of aligned.
1570
1571 2005-01-23  Paolo Carlini  <pcarlini@suse.de>
1572             Andreas Jaeger  <aj@suse.de>
1573
1574         PR libstdc++/19343
1575         * include/bits/functexcept.h: Mark the helpers as 'noreturn'.
1576
1577 2005-01-21  Loren J. Rittle  <ljrittle@acm.org>
1578
1579         * testsuite/27_io/basic_filebuf/open/char/9507.cc: Allow
1580         lseek on fifo to succeed.  Thus, check for consistent report.
1581
1582 2005-01-21  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
1583
1584         PR libstdc++/19510
1585         * include/bits/stl_list.h (_List_iterator): Initialize _M_node
1586         in constructor.
1587         (_List_const_iterator): Likewise.
1588         * include/bits/stl_tree.h (_Rb_tree_iterator): Likewise.
1589         (_Rb_tree_const_iterator): Likewise.
1590
1591         * testsuite/23_containers/map/operators/1_neg.cc: Adjust line numbers.
1592         * testsuite/23_containers/set/operators/1_neg.cc: Likewise.
1593
1594 2005-01-20  Benjamin Kosnik  <bkoz@redhat.com>
1595
1596         * testsuite/Makefile.am (check-compile): New.
1597         * testsuite/Makefile.in: Regenerate.
1598         * scripts/check_compile_time: New.
1599         * scripts/check_performance: Tweaks.
1600
1601 2005-01-19  Paolo Carlini  <pcarlini@suse.de>
1602
1603         PR libstdc++/19535
1604         * include/tr1/utility (struct __pair_get<1>::__get, __const_get):
1605         Fix typo in the return type.
1606         * testsuite/tr1/6_containers/utility/19535.cc: New.
1607
1608 2005-01-19  Loren J. Rittle  <ljrittle@acm.org>
1609
1610         * include/ext/array_allocator.h (array_allocator<>::allocate):
1611         Avoid __used.  Use __array_used instead.
1612         * docs/html/17_intro/BADNAMES: Add list for FreeBSD.
1613
1614 2005-01-18  David Edelsohn  <edelsohn@gnu.org>
1615
1616         * config/os/aix/os_defines.h (_XOPEN_SOURCE): Delete.
1617         (_XOPEN_SOURCE_EXTENDED): Delete.
1618
1619 2005-01-18  Benjamin Kosnik  <bkoz@redhat.com>
1620
1621         * testsuite/testsuite_performance.h (time_counter::start):
1622         Clear. Tweaks.
1623         (clear_counters): Inline.
1624         (start_counters): Inline.
1625         (stop_counters): Inline.
1626         * testsuite/performance/20_util/allocator/map_thread.cc: Return.
1627         * testsuite/performance/20_util/allocator/insert.cc: Remove bogus
1628         return, add return.
1629         * testsuite/performance/20_util/allocator/map_thread.cc: Same.
1630
1631 2005-01-17  Paolo Carlini  <pcarlini@suse.de>
1632
1633         PR libstdc++/19433
1634         * include/bits/stl_tree.h (_Rb_tree<>::insert_unique(iterator,
1635         const _Val&), _Rb_tree<>::insert_equal(iterator, const _Val&)):
1636         Obtain amortized constant complexity if t is inserted right after
1637         p - not before p - as per Table 69.
1638         * testsuite/performance/23_containers/set_insert_from_sorted.cc: New.
1639
1640         * testsuite/23_containers/multiset/insert/2.cc: New.
1641         * testsuite/23_containers/set/insert/1.cc: Likewise.
1642
1643         * testsuite/performance/23_containers/set_create_from_sorted.cc:
1644         Simplify.
1645
1646         * include/bits/stl_tree.h: Add a few missing std:: qualifications.
1647
1648 2005-01-16  Jonathan Wakely  <redi@gcc.gnu.org>
1649
1650         * include/ext/rope: Qualify calls to std::copy() by sequence_buffer.
1651         * testsuite/ext/rope/4.cc: Add.
1652
1653 2005-01-16  Lorenz Minder  <lminder@gmx.net>
1654             Paolo Carlini  <pcarlini@suse.de>
1655
1656         PR libstdc++/19322
1657         * include/c_std/std_cmath.h: Define the C99 classification facilities
1658         directly inside namespace std:.
1659         * testsuite/26_numerics/cmath/19322.cc: New.
1660
1661 2005-01-15  David Edelsohn  <edelsohn@gnu.org>
1662
1663         * config/os/aix/os_defines.h (_G_USING_THUNKS): Delete.
1664
1665 2005-01-14  Paolo Carlini  <pcarlini@suse.de>
1666
1667         PR libstdc++/19422
1668         * include/bits/stl_tree.h (_Rb_tree<>::insert_equal(_II, _II),
1669         _Rb_tree<>::insert_unique(_II, _II)): Use insert_equal (insert_unique,
1670         respectively) with hint (end()).
1671         * testsuite/performance/23_containers/set_create_from_sorted.cc: New.
1672
1673 2005-01-13  Geoffrey Keating  <geoffk@apple.com>
1674
1675         * configure.host (darwin): On darwin8 or later, no need to build
1676         libstdc++ with -flat_namespace.
1677
1678 2005-01-13  Jonathan Wakely  <redi@gcc.gnu.org>
1679
1680         * docs/doxygen/user.cfg.in: Set HAVE_DOT back to YES.
1681
1682 2005-01-13  Paolo Carlini  <pcarlini@suse.de>
1683
1684         * testsuite/26_numerics/cmath/c99_classification_macros_c++.cc:
1685         Re-enable commented-out test for double type.
1686
1687 2005-01-11  Paolo Carlini  <pcarlini@suse.de>
1688             Benjamin Kosnik  <bkoz@redhat.com>
1689
1690         * src/istream.cc (basic_istream<char>::ignore(streamsize),
1691         basic_istream<char>::ignore(streamsize, int_type),
1692         basic_istream<wchar_t>::ignore(streamsize),
1693         basic_istream<wchar_t>::ignore(streamsize, int_type)): In case
1694         more than numeric_limits<streamsize>::max() chars are skipped,
1695         set _M_gcount = max().
1696         * include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
1697         int_type)): Likewise; keep simple, don't forward.
1698
1699 2005-01-11  Paolo Carlini  <pcarlini@suse.de>
1700
1701         * src/istream.cc (basic_istream<char>::ignore(streamsize),
1702         basic_istream<char>::ignore(streamsize, int_type),
1703         basic_istream<wchar_t>::ignore(streamsize),
1704         basic_istream<wchar_t>::ignore(streamsize, int_type)): Revert
1705         2005-01-05 change: actually, the previous behavior is conforming
1706         and consistent with that of get(char_type*, streamsize, char_type),
1707         albeit slightly different from that of 3.3/3.4 in a corner case
1708         due to the use of snextc.
1709         * include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
1710         int_type)): Likewise.
1711         * testsuite/27_io/basic_istream/ignore/char/4.cc: Remove.
1712         * testsuite/27_io/basic_istream/ignore/wchar_t/4.cc: Likewise.
1713
1714 2005-01-11  Paolo Carlini  <pcarlini@suse.de>
1715
1716         * include/tr1/type_traits: Implement alignment_of and aligned_storage.
1717         * testsuite/tr1/4_metaprogramming/other_transformations/
1718         aligned_storage/aligned_storage.cc: New.
1719         * testsuite/tr1/4_metaprogramming/other_transformations/
1720         aligned_storage/typedefs.cc: Likewise.
1721         * testsuite/tr1/4_metaprogramming/type_properties/
1722         alignment_of/alignment_of.cc: Likewise.
1723         * testsuite/tr1/4_metaprogramming/type_properties/
1724         alignment_of/typedefs.cc: Likewise.
1725
1726 2005-01-10  Paolo Carlini  <pcarlini@suse.de>
1727
1728         * Makefile.in: Regenerate.
1729         * libmath/Makefile.in: Likewise.
1730         * libsupc++/Makefile.in: Likewise.
1731         * po/Makefile.in: Likewise.
1732         * src/Makefile.in: Likewise.
1733         * testsuite/Makefile.in: Likewise.
1734
1735 2005-01-10  Paolo Carlini  <pcarlini@suse.de>
1736
1737         * include/bits/stl_algobase.h (lexicographical_compare):
1738         Fix concept check.
1739
1740 2005-01-07  Benjamin Kosnik  <bkoz@redhat.com>
1741
1742         * acinclude.m4: Remove CCODECVT_H.
1743         * configure: Regenerate.
1744         * include/Makefile.am (host_headers_extra): Move to...
1745         (ext_headers): ...here.
1746         * include/Makefile.in: Regenerate.
1747         * include/ext/enc_filebuf: Remove enc_filebuf, consolidate
1748         enc_traits to...
1749         * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Move...
1750         * include/ext/codecvt_specializations.h: ...here. Remove
1751         _GLIBCXX_USE___ENC_TRAITS.
1752         (__enc_traits): To __encoding_state, put in __gnu_cxx namespace.
1753         (enc_char_traits): To __encoding_char_traits, put in __gnu_cxx
1754         namespace.
1755         * config/locale/generic/codecvt_specializations.h: Remove.
1756         * include/bits/codecvt.h: Remove codecvt_specializations.h include.
1757         * src/codecvt.cc: Remove __enc_traits::_S_max_size.
1758
1759 2005-01-06  Benjamin Kosnik  <bkoz@redhat.com>
1760
1761         * include/bits/fstream.tcc: Remove unnecessary qualifications for
1762         uglified data members of basic_filebuf, including _M_buf,
1763         _M_buf_size, _M_mode, _M_pback_init.
1764         * include/std/std_fstream.h: Same.
1765
1766 2005-01-05  Benjamin Kosnik  <bkoz@redhat.com>
1767
1768         * testsuite/testsuite_hooks.h:
1769         (copy_constructor::mark_call):  Use __throw_runtime_error.
1770         (assignment_operator::mark_call): Same.
1771         * testsuite/testsuite_hooks.cc (verify_demangle): Same.
1772         (locale_data): Remove, just use runtime_error directly.
1773         (environment_variable): Same.
1774         (not_found): Same.
1775         (run_tests_wrapped_locale): Use __throw_runtime_error.
1776         (run_tests_wrapped_env): Same.
1777         (semaphore::semaphore): Same.
1778         (semaphore::signal): Same.
1779         (semaphore::wait): Same.
1780         * testsuite/testsuite_abi.h (symbol_error): Remove, use logic_error.
1781         * testsuite/testsuite_abi.cc (get_symbol): Use __throw_logic_error.
1782         (create_symbols): Use __throw_runtime_error.
1783         * src/bitmap_allocator.cc: Use __throw_bad_alloc.
1784
1785 2005-01-05  Mark Mitchell  <mark@codesourcery.com>
1786
1787         * testsuite/27_io/basic_filebuf/open/char/9507.cc: Remove child
1788         process.
1789
1790 2005-01-05  Paolo Carlini  <pcarlini@suse.de>
1791
1792         * src/istream.cc (basic_istream<char>::ignore(streamsize),
1793         basic_istream<char>::ignore(streamsize, int_type),
1794         basic_istream<wchar_t>::ignore(streamsize),
1795         basic_istream<wchar_t>::ignore(streamsize, int_type)): At the end,
1796         first check _M_gcount vs __n.
1797         * include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
1798         int_type)): Likewise.
1799         * testsuite/27_io/basic_istream/ignore/char/4.cc: New.
1800         * testsuite/27_io/basic_istream/ignore/wchar_t/4.cc: Likewise.
1801
1802 2005-01-03  Mark Mitchell  <mark@codesourcery.com>
1803
1804         * testsuite/testsuite_hooks.cc: Use __throw_exception_again
1805         instead of just throw.
1806
1807         * testsuite/testsuite_hooks.cc: Update coypright and follow style
1808         guidelines.
1809         * testsuite/testsuite_hooks.h: Likewise.
1810         * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use
1811         semaphores, not sleep.
1812         * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
1813         * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
1814         * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
1815         * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc:
1816         Likewise.
1817         * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
1818         * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
1819         * testsuite/27_io/objects/char/7.cc: Likewise.
1820         * testsuite/27_io/objects/char/9661-1.cc: Likewise.
1821         * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
1822         * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
1823
1824         * configure.ac: Check for sys/ipc.h and sys/sem.h.
1825         * config.h.in: Regenerated.
1826         * configure: Likewise.
1827         * testsuite/testsuite_hooks.cc (_GLIBCXX_SYSV_SEM): Conditionally
1828         define.
1829         (sys/types.h): Include.
1830         (sys/ipc.h): Likewise.
1831         (sys/sem.h): Likewise.
1832         (__gnu_test::semun): New type.
1833         (__gnu_test::semaphore::sempaphore): New function.
1834         (__gnu_test::semaphore::~semaphore): Likewise.
1835         (__gnu_test::semaphore::wait): Likewise.
1836         (__gnu_test::semaphore::signal): Likewise.
1837         * testsuite/testsuite_hooks.h (__gnu_test::semaphore): New class.
1838         * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use
1839         semaphores, not sleep.
1840         * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
1841         * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
1842         * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
1843         * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc:
1844         Likewise.
1845         * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
1846         * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
1847         * testsuite/27_io/objects/char/7.cc: Likewise.
1848         * testsuite/27_io/objects/char/9661-1.cc: Likewise.
1849         * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
1850         * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
1851
1852 2005-01-03  Paolo Carlini  <pcarlini@suse.de>
1853
1854         * include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
1855         int_type)): Reset _M_gcount to numeric_limits<streamsize>::min().
1856         * src/istream.cc (basic_istream<char>::ignore(streamsize, int_type),
1857         basic_istream<wchar_t>::ignore(streamsize, int_type)): Likewise.
1858         * src/istream.cc (basic_istream<char>::ignore(streamsize),
1859         basic_istream<wchar_t>::ignore(streamsize)): Likewise; fix a typo.
1860
1861 2005-01-02  Paolo Carlini  <pcarlini@suse.de>
1862
1863         * src/istream.cc (basic_istream<char>::ignore(streamsize),
1864         basic_istream<char>::ignore(streamsize, int_type),
1865         basic_istream<wchar_t>::ignore(streamsize),
1866         basic_istream<wchar_t>::ignore(streamsize, int_type)): Avoid
1867         _M_gcount overflows.
1868         * include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
1869         int_type)): Likewise; use snextc in the main loop, consistently
1870         with the specializations above.
1871
1872 2005-01-02  Chris Jefferson  <chris@bubblescope.net>
1873
1874         * include/bits/stl_algobase.h (mismatch): Correct concept check.
1875
1876 2005-01-01  Paolo Carlini  <pcarlini@suse.de>
1877
1878         * testsuite/ext/enc_filebuf/char/13189.cc: Fix, first include
1879         testsuite_hooks.h, to know whether including ext/enc_filebuf.h.
1880         * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise.
1881
1882 2005-01-01  Paolo Carlini  <pcarlini@suse.de>
1883
1884         * testsuite/27_io/basic_istream/extractors_character/char/1.cc: Fix,
1885         null-terminate array1 at the outset.
1886         * testsuite/27_io/basic_istream/extractors_character/wchar_t/1.cc:
1887         Likewise.