1 2005-02-28 Hans-Peter Nilsson <hp@axis.com>
4 * config/cpu/cris/atomicity.h (__exchange_and_add): In asm, use
5 'Q' constraint, not 'm'.
7 2005-02-26 Earl Chew <earl_chew@agilent.com>
8 Christopher Jefferson <chris@bubblescope.net>
10 * include/bits/stl_tree.h (_Rb_tree<>::_M_insert): Don't leak
11 memory if _M_key_compare throws.
13 2005-02-25 Paolo Carlini <pcarlini@suse.de>
15 * include/tr1/type_traits: Add the trivial is_union and is_class;
16 add the __is_union_or_class extension.
17 (is_enum, is_empty): Use the latter.
18 * include/tr1/type_traits_fwd.h: Add __is_union_or_class.
19 * testsuite/testsuite_tr1.h: Add UnionType; trivial formatting
21 * testsuite/tr1/4_metaprogramming/composite_type_traits/
22 is_union_or_class/is_union_or_class.cc: New.
23 * testsuite/tr1/4_metaprogramming/composite_type_traits/
24 is_union_or_class/typedefs.cc: Likewise.
26 2005-02-24 Benjamin Kosnik <bkoz@redhat.com>
28 * testsuite/tr1/6_containers/unordered/instantiate/hash.cc: Guard
29 wchar_t use with _GLIBCXX_USE_WCHAR_T.
31 2005-02-24 Benjamin Kosnik <bkoz@redhat.com>
33 * include/std/std_complex.h: _GLIBCXX_USE_C99_COMPLEX_MATH to
34 _GLIBCXX_USE_C99_COMPLEX.
37 * configure: Regenerate.
40 2005-02-24 Paolo Carlini <pcarlini@suse.de>
42 * include/tr1/functional (mem_fn): Avoid _T, badname on
45 2005-02-23 Douglas Gregor <doug.gregor@gmail.com>
47 * include/tr1/functional (function): New class template.
48 (mem_fn): New function template.
49 Implementations of TR1 function and mem_fn facilities.
50 * include/tr1/functional_iterate.h: Implementations of TR1
51 function and mem_fn facilities.
52 * testsuite/tr1/3_function_objects/function/1.cc: New
53 test of std::tr1::function.
54 * testsuite/tr1/3_function_objects/function/2.cc: New
55 test of std::tr1::function.
56 * testsuite/tr1/3_function_objects/function/3.cc: New
57 test of std::tr1::function.
58 * testsuite/tr1/3_function_objects/function/4.cc: New
59 test of std::tr1::function.
60 * testsuite/tr1/3_function_objects/function/5.cc: New
61 test of std::tr1::function.
62 * testsuite/tr1/3_function_objects/function/6.cc: New
63 test of std::tr1::function.
64 * testsuite/tr1/3_function_objects/function/7.cc: New
65 test of std::tr1::function.
66 * testsuite/tr1/3_function_objects/function/8.cc: New
67 test of std::tr1::function.
68 * testsuite/tr1/3_function_objects/function/9.cc: New
69 test of std::tr1::function.
70 * testsuite/tr1/3_function_objects/mem_fn.cc: New test of
73 2005-02-23 Paolo Carlini <pcarlini@suse.de>
75 * include/tr1/type_traits: Implement is_convertible.
76 * testsuite/tr1/4_metaprogramming/relationships_between_types/
77 is_convertible/is_convertible.cc: New.
78 * testsuite/tr1/4_metaprogramming/relationships_between_types/
79 is_convertible/typedefs.cc: Likewise.
80 * testsuite/testsuite_tr1.h: Add class DerivedType.
82 * include/tr1/type_traits (is_function): Don't mistake references
83 to function types for function types.
84 * testsuite/tr1/4_metaprogramming/primary_type_categories/
85 is_function/is_function.cc: Add testcase.
87 2005-02-22 Benjamin Kosnik <bkoz@redhat.com>
89 * scripts/check_performance: Tweaks.
91 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/2.cc: Name
92 output file with extension that clean rules can find.
94 2005-02-22 Richard Henderson <rth@redhat.com>
97 * libsupc++/eh_catch.cc (__cxa_begin_catch): Don't special case
98 decrement of uncaughtExceptions for rethrow.
100 2005-02-22 Paolo Carlini <pcarlini@suse.de>
102 * include/tr1/functional: Fix License to GPL with exception.
103 * include/tr1/hashtable: Likewise.
104 * include/tr1/tuple: Likewise.
105 * include/tr1/type_traits: Likewise.
106 * include/tr1/type_traits_fwd.h: Likewise.
107 * include/tr1/unordered_map: Likewise.
108 * include/tr1/unordered_set: Likewise.
109 * include/tr1/utility: Likewise.
111 2005-02-22 Paolo Carlini <pcarlini@suse.de>
113 * testsuite/tr1/2_general_utilities/memory/shared_ptr/assign/
114 auto_ptr_neg.cc: Add missing dg-do compile directive.
115 * testsuite/tr1/2_general_utilities/memory/shared_ptr/assign/
116 auto_ptr_rvalue_neg.cc: Likewise.
117 * testsuite/tr1/2_general_utilities/memory/shared_ptr/assign/
118 shared_ptr_neg.cc: Likewise.
119 * testsuite/tr1/2_general_utilities/memory/shared_ptr/cons/
120 auto_ptr_neg.cc: Likewise.
121 * testsuite/tr1/2_general_utilities/memory/shared_ptr/modifiers/
122 reset_neg.cc: Likewise.
123 * testsuite/tr1/2_general_utilities/memory/shared_ptr/modifiers/
124 swap_neg.cc: Likewise.
126 2005-02-22 Jonathan Wakely <redi@gcc.gnu.org>
128 * include/Makefile.am, include/Makefile.in: Fix accidental extra
129 change from previous commit.
131 2005-02-21 Jonathan Wakely <redi@gcc.gnu.org>
133 * include/tr1/memory: New file.
134 * include/Makefile.am, include/Makefile.in: Add new TR1 header.
135 * testsuite/tr1/2_general_utilities/memory/
136 enable_shared_from_this/not_shared.cc: New test.
137 * testsuite/tr1/2_general_utilities/memory/
138 enable_shared_from_this/not_shared2.cc: New test.
139 * testsuite/tr1/2_general_utilities/memory/
140 enable_shared_from_this/not_shared3.cc: New test.
141 * testsuite/tr1/2_general_utilities/memory/
142 enable_shared_from_this/shared.cc: New test.
143 * testsuite/tr1/2_general_utilities/memory/
144 enable_shared_from_this/still_shared.cc: New test.
145 * testsuite/tr1/2_general_utilities/memory/
146 shared_ptr/assign/assign.cc: New test.
147 * testsuite/tr1/2_general_utilities/memory/
148 shared_ptr/assign/auto_ptr.cc: New test.
149 * testsuite/tr1/2_general_utilities/memory/
150 shared_ptr/assign/auto_ptr_neg.cc: New test.
151 * testsuite/tr1/2_general_utilities/memory/
152 shared_ptr/assign/auto_ptr_rvalue_neg.cc: New test.
153 * testsuite/tr1/2_general_utilities/memory/
154 shared_ptr/assign/shared_ptr.cc: New test.
155 * testsuite/tr1/2_general_utilities/memory/
156 shared_ptr/assign/shared_ptr_neg.cc: New test.
157 * testsuite/tr1/2_general_utilities/memory/
158 shared_ptr/comparison/cmp.cc: New test.
159 * testsuite/tr1/2_general_utilities/memory/
160 shared_ptr/cons/auto_ptr.cc: New test.
161 * testsuite/tr1/2_general_utilities/memory/
162 shared_ptr/cons/auto_ptr_neg.cc: New test.
163 * testsuite/tr1/2_general_utilities/memory/
164 shared_ptr/cons/copy.cc: New test.
165 * testsuite/tr1/2_general_utilities/memory/
166 shared_ptr/cons/default.cc: New test.
167 * testsuite/tr1/2_general_utilities/memory/
168 shared_ptr/cons/pointer.cc: New test.
169 * testsuite/tr1/2_general_utilities/memory/
170 shared_ptr/cons/weak_ptr.cc: New test.
171 * testsuite/tr1/2_general_utilities/memory/
172 shared_ptr/cons/weak_ptr_expired.cc: New test.
173 * testsuite/tr1/2_general_utilities/memory/
174 shared_ptr/dest/dest.cc: New test.
175 * testsuite/tr1/2_general_utilities/memory/
176 shared_ptr/misc/io.cc: New test.
177 * testsuite/tr1/2_general_utilities/memory/
178 shared_ptr/misc/swap.cc: New test.
179 * testsuite/tr1/2_general_utilities/memory/
180 shared_ptr/modifiers/reset.cc: New test.
181 * testsuite/tr1/2_general_utilities/memory/
182 shared_ptr/modifiers/reset_neg.cc: New test.
183 * testsuite/tr1/2_general_utilities/memory/
184 shared_ptr/modifiers/swap.cc: New test.
185 * testsuite/tr1/2_general_utilities/memory/
186 shared_ptr/modifiers/swap_neg.cc: New test.
187 * testsuite/tr1/2_general_utilities/memory/
188 shared_ptr/observers/bool_conv.cc: New test.
189 * testsuite/tr1/2_general_utilities/memory/
190 shared_ptr/observers/get.cc: New test.
191 * testsuite/tr1/2_general_utilities/memory/
192 shared_ptr/observers/unique.cc: New test.
193 * testsuite/tr1/2_general_utilities/memory/
194 shared_ptr/observers/use_count.cc: New test.
196 2005-02-21 Paolo Carlini <pcarlini@suse.de>
198 * include/tr1/type_traits (is_member_function_pointer):
199 Remove ugly workaround for c++/19076.
201 2005-02-21 Paolo Carlini <pcarlini@suse.de>
203 * include/bits/basic_string.tcc (_Rep::_M_destroy): Don't
204 check for this == &_S_empty_rep, it's always false, here.
206 2005-02-19 Matt Austern <austern@gmail.com>
208 * include/tr1/functional (tr1_hashtable_define_trivial_hash): Make
209 hash<T>::operator() a const member function for T a fundamental type
210 * include/tr1/hashtable (extract1st::operator()): Declare const.
211 (hash_code_base): Declare all member functions const
212 (hashtable::find): fix call to this->bucket_count()
213 (hashtable::count): Likewise.
214 (hashtable::equal_range): m_incr_bucket applies to iterator, not node.
215 * testsuite/tr1/6_containers/unordered/find/set1.cc: New test.
216 * testsuite/tr1/6_containers/unordered/find/map1.cc: New test.
217 * testsuite/tr1/6_containers/unordered/find/multimap1.cc: New test.
218 * testsuite/tr1/6_containers/unordered/find/multiset1.cc: New test.
220 2005-02-19 Hans-Peter Nilsson <hp@axis.com>
223 * include/tr1/functional (hash<std::wstring>): Wrap in #ifdef
224 _GLIBCXX_USE_WCHAR_T.
226 2005-02-18 Richard Henderson <rth@redhat.com>
229 * config/linker-map.gnu (CXXABI_1.3.1): Add __cxa_get_exception_ptr.
230 * libsupc++/eh_alloc.cc (__cxa_allocate_exception): Increment
231 uncaughtExceptions here instead of ...
232 * libsupc++/eh_throw.cc (__cxa_throw) ... here.
233 (__cxa_rethrow): Increment uncaughtExceptions here instead of ...
234 * libsupc++/eh_catch.cc (__cxa_end_catch): ... here.
235 (__cxa_get_exception_ptr): New.
236 * libsupc++/unwind-cxx.h (__cxa_get_exception_ptr): Declare.
238 2005-02-18 Matt Austern <austern@apple.com>
240 * testsuite/tr1/6_containers/unordered/insert/array_syntax.cc: Fix
241 test case to use assignment instead of ==
242 * testsuite/tr1/6_containers/unordered/insert/map_range.cc: New test.
243 * testsuite/tr1/6_containers/unordered/insert/multimap_range.cc: New test.
244 * testsuite/tr1/6_containers/unordered/insert/multiset_range.cc: New test.
245 * testsuite/tr1/6_containers/unordered/insert/set_range.cc: New test.
247 2005-02-18 Eric Botcazou <ebotcazou@libertysurf.fr>
249 * testsuite/thread/pthread1.cc: Do not invoke pthread_setconcurrency
250 on Solaris 2.6 and below.
251 * testsuite/thread/pthread2.cc: Likewise.
252 * testsuite/thread/pthread3.cc: Likewise.
253 * testsuite/thread/pthread4.cc: Likewise.
254 * testsuite/thread/pthread5.cc: Likewise.
255 * testsuite/thread/pthread6.cc: Likewise.
256 * testsuite/thread/pthread7-rope.cc: Likewise.
258 2005-02-17 Matt Austern <austern@apple.com>
260 * include/tr1/functional (hash): New function object.
261 * include/tr1/hashtable: New file.
262 * include/tr1/unordered_set: New file.
263 * include/tr1/unordered_map: New file.
264 * include/Makefile.am: Add three new TR1 headers.
265 * include/Makefile.in: Likewise.
266 * testsuite/tr1/6_containers/unordered/insert/array_syntax.cc: New test.
267 * testsuite/tr1/6_containers/unordered/insert/map_single.cc: New test.
268 * testsuite/tr1/6_containers/unordered/insert/multimap_single.cc: New test.
269 * testsuite/tr1/6_containers/unordered/insert/multiset_single.cc: New test.
270 * testsuite/tr1/6_containers/unordered/insert/set_single.cc: New test.
271 * testsuite/tr1/6_containers/unordered/instantiate/hash.cc: New test.
272 * testsuite/tr1/6_containers/unordered/instantiate/map.cc: New test.
273 * testsuite/tr1/6_containers/unordered/instantiate/multimap.cc: New test.
274 * testsuite/tr1/6_containers/unordered/instantiate/multiset.cc: New test.
275 * testsuite/tr1/6_containers/unordered/instantiate/set.cc: New test.
277 2005-02-16 Paolo Carlini <pcarlini@suse.de>
279 * testsuite/23_containers/set/modifiers/16728.cc:
280 Remove redundant include <testsuite_performance.h>.
282 2005-02-16 Paolo Carlini <pcarlini@suse.de>
285 * testsuite/21_strings/basic_string/find/char/3.cc: Fix the test
286 at line #66 to not access str_lit01 beyond its end.
287 * testsuite/21_strings/basic_string/find/wchar_t/3.cc: Likewise.
289 2005-02-15 Paolo Carlini <pcarlini@suse.de>
290 Jon Grimm <jgrimm2@us.ibm.com>
293 * include/bits/locale_facets.h (ctype<char>::_M_narrow_init()):
294 Fix the logic setting _M_narrow_ok: first check whether the
295 transformation is trivial with a dflt == 0, then deal with the
296 special case of zero.
297 * testsuite/22_locale/ctype/narrow/char/19955.cc: New.
299 * include/bits/locale_facets.h (ctype<char>::_M_widen_init()):
300 Tweak consistently to use memcmp; minor formatting fixes.
302 2005-02-15 Jakub Jelinek <jakub@redhat.com>
305 * testsuite/demangle/abi_examples/01.cc (main): Adjust for 2005-02-13
307 * testsuite/demangle/abi_examples/02.cc (main): Likewise.
309 2005-02-13 Richard Guenther <rguenth@gcc.gnu.org>
310 Paolo Carlini <pcarlini@suse.de>
313 * include/c_std/std_cmath.h (pow): Use __builtin_powi[lf]
314 for integer overloads.
316 * testsuite/26_numerics/cmath/powi.cc: New.
318 2005-02-11 Janis Johnson <janis187@us.ibm.com>
320 * testsuite/26_numerics/complex/13450.cc: Fix XFAIL selector.
321 * testsuite/26_numerics/complex/complex_value.cc: Ditto.
322 * testsuite/26_numerics/complex/pow.cc: Ditto.
324 * testsuite/lib/libstdc++.exp: Load target-supports-dg.exp.
325 * testsuite/26_numerics/complex/13450.cc: XFAIL for broken_cplxf_arg.
326 * testsuite/26_numerics/complex/complex_value.cc: Ditto.
327 * testsuite/26_numerics/complex/pow.cc: Ditto.
329 2005-02-09 Mike Stump <mrs@apple.com>
331 * libsupc++/del_op.cc: Don't include cstdlib when !_GLIBCXX_HOSTED.
333 2005-02-09 Janis Johnson <janis187@us.ibm.com>
335 * testsuite/ext/array_allocator/2.cc: XFAIL for powerpc*-*-linux*.
337 2005-02-08 Mark Mitchell <mark@codesourcery.com>
339 * config/linker-map.gnu (GLIBCXX_3.4): Add _ZNSdC* and _ZNSdD*.
341 2005-02-07 Loren J. Rittle <ljrittle@acm.org>
343 * testsuite/27_io/basic_istream/getline/wchar_t/5.cc: Make buf static.
344 * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/4.cc: Make ref and
347 2005-02-02 Brad Spencer <spencer@infointeractive.com>
349 * debug.html: Fix broken tags.
350 * documentation.html: Same.
352 2005-02-02 Andreas Jaeger <aj@suse.de>
354 * testsuite/lib/libstdc++.exp: Revert Geoffrey Keating's patch
356 * testsuite/Makefile.am: Likewise.
357 * testsuite/Makefile.in: Likewise.
359 2005-02-01 Paolo Carlini <pcarlini@suse.de>
361 * include/bits/cpp_type_traits.h: Rename _M_type fields to
362 __value, except for __enable_if, _M_type -> __type, consistently
363 with the other traits.
364 * include/bits/stl_algobase.h: Tweak consistently.
365 * include/bits/stl_tree.h: Likewise.
366 * include/bits/valarray_array.h: Likewise.
367 * include/c_std/std_cmath.h: Likewise.
368 * include/debug/safe_iterator.h: Likewise.
369 * include/std/std_complex.h: Likewise.
371 2005-01-31 Brad Spencer <spencer@infointeractive.com>
373 * crossconfig.m4: Repair Solaris cross bits for strtold and strtof.
374 * configure: Regenerated.
376 2005-01-31 Mark Mitchell <mark@codesourcery.com>
378 * include/std/std_limits.h (numeric_limits<float>::has_denorm):
380 (numeric_limits<double>::has_denorm): Likewise.
381 (numeric_limits<long double>::has_denorm): Likewise.
383 2005-01-31 Paolo Carlini <pcarlini@suse.de>
384 Gabriel Dos Reis <gdr@integrable-solutions.net>
386 * include/bits/cpp_type_traits.h: Add types to the structs thus
387 making type_traits.h redundant; exploit new __truth_type and
389 * include/bits/type_traits.h: Remove.
390 * include/Makefile.am: Update.
391 * include/Makefile.in: Regenerate.
392 * include/backward/tempbuf.h: Include cpp_type_traits.h instead.
393 * include/bits/basic_string.h (replace(iterator, iterator,
394 _InputIterator, _InputIterator), _S_construct(_InIterator,
395 _InIterator, const _Alloc&)): Use __is_integer instead.
396 * include/bits/stl_bvector.h (vector(_InputIterator,
397 _InputIterator, const allocator_type&), assign(_InputIterator,
398 _InputIterator), insert(iterator, _InputIterator, _InputIterator)):
400 * include/bits/stl_construct.h (_Destroy(_ForwardIterator,
401 _ForwardIterator)): Use __is_scalar.
402 * include/bits/stl_deque.h (deque(_InputIterator, _InputIterator,
403 const allocator_type&), assign(_InputIterator, _InputIterator),
404 insert(iterator, _InputIterator, _InputIterator)): Use __is_integer.
405 * include/bits/stl_list.h (assign(_InputIterator, _InputIterator),
406 insert(iterator, _InputIterator, _InputIterator)): Likewise.
407 * include/bits/stl_tempbuf.h (_Temporary_buffer(_ForwardIterator,
408 _ForwardIterator)): Use __is_scalar.
409 * include/bits/stl_uninitialized.h (uninitialized_copy(_InputIterator,
410 _InputIterator, _ForwardIterator), uninitialized_fill(_ForwardIterator,
411 _ForwardIterator, const _Tp&), uninitialized_fill_n(_ForwardIterator,
412 _Size, const _Tp&)): Likewise.
413 * include/bits/stl_vector.h (vector(_InputIterator, _InputIterator,
414 const allocator_type&), assign(_InputIterator, _InputIterator),
415 insert(iterator, _InputIterator, _InputIterator)): Use __is_integer.
416 * include/debug/debug.h (__valid_range(const _InputIterator&,
417 const _InputIterator&)): Use __is_integer.
418 * include/ext/slist (assign(_InputIterator, _InputIterator)): Likewise.
419 * include/std/std_string.h: Include cpp_type_traits.h instead.
421 2005-01-30 Paolo Carlini <pcarlini@suse.de>
424 * config/locale/generic/c_locale.h (__convert_from_v): Switch only
425 LC_NUMERIC, and only when actually != "C".
427 2005-01-28 Paolo Carlini <pcarlini@suse.de>
429 * include/tr1/type_traits (is_function): Minor consistency tweaks.
431 2005-01-28 Geoffrey Keating <geoffk@apple.com>
433 * testsuite/lib/libstdc++.exp (libstdc++_init): Search the path
434 for the compiler. Don't set cxxflags.
435 (v3_target_compile): Search for libv3test.a relative to $objdir.
436 (lsearch_all_inline): New.
437 (lsearch_all_inline_not): New.
438 (v3-list-tests): Rewrite to not need generated files.
439 * testsuite/Makefile.am (IGNORE_WCHAR_T): New.
440 (IGNORE_THREAD): New.
441 (TESTS_TO_IGNORE): New.
442 (site.exp): Set tests_to_ignore, cxxflags.
443 * aclocal.m4: Regenerate.
444 * Makefile.in: Regenerate.
445 * libmath/Makefile.in: Likewise.
446 * libsupc++/Makefile.in: Likewise.
447 * po/Makefile.in: Likewise.
448 * src/Makefile.in: Likewise.
449 * testsuite/Makefile.in: Likewise.
451 2005-01-28 Paolo Carlini <pcarlini@suse.de>
453 * include/tr1/type_traits: Implement is_empty.
454 * testsuite/tr1/4_metaprogramming/type_properties/is_empty/
456 * testsuite/tr1/4_metaprogramming/type_properties/is_empty/
457 typedefs.cc: Likewise.
459 * include/tr1/type_traits (__is_abstract_helper): Simplify a bit.
461 2005-01-28 Paolo Carlini <pcarlini@suse.de>
463 * include/tr1/type_traits: Implement is_abstract, by exploiting the
464 resolution of DR core/337.
465 * testsuite/testsuite_tr1.h: Add AbstractClass.
466 * testsuite/tr1/4_metaprogramming/type_properties/is_abstract/
468 * testsuite/tr1/4_metaprogramming/type_properties/is_abstract/
469 typedefs.cc: Likewise.
471 * include/tr1/type_traits (is_function): Rewrite, use the conversion
472 F& -> F* instead, thus avoiding problems with abstract classes.
473 * testsuite/tr1/4_metaprogramming/primary_type_categories/
474 is_function/is_function.cc: Add a test for tricky AbstractClass.
476 2005-01-26 Paolo Carlini <pcarlini@suse.de>
478 * include/ext/mt_allocator.h
479 (struct __per_type_pool_policy<,, false>::_S_get_pool,
480 struct __per_type_pool_policy<,, true>::_S_get_pool): Scale
481 _M_chunk_size too with sizeof(_Tp), otherwise the allocator
482 breaks down as soon as sizeof(_Tp) >~ _S_chunk_size / 128;
483 reduce to 64 the multiplier for _M_max_bytes (safer wrt
484 _Binmap_type being a short); trivial reformattings.
485 * testsuite/ext/mt_allocator/check_allocate_big_per_type.cc: New.
487 2005-01-26 Paolo Carlini <pcarlini@suse.de>
489 * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Add ac_c99_complex
490 to the final test for enable_c99, thus robustifying it; remove
491 duplicate final test on ac_99_math.
492 * configure: Regenerate.
494 * include/std/std_complex.h: Remove usages of the dead
495 _GLIBCXX_BUGGY_COMPLEX macro.
497 * testsuite/26_numerics/cmath/19322.cc: Protect with
498 _GLIBCXX_USE_C99_MATH instead of the stronger _GLIBCXX_USE_C99,
499 since only C99 math facilities are involved.
500 * testsuite/26_numerics/cmath/c99_classification_macros_c++.cc:
503 2005-01-25 Loren J. Rittle <ljrittle@acm.org>
505 * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Map FreeBSD to darwin
506 instead of generic. Change autoconf report to "darwin or freebsd".
507 * configure: Regenerate.
508 * config/os/bsd/freebsd/ctype_inline.h (ctype<wchar_t>::do_is): Add.
509 (ctype<wchar_t>::do_scan_is): Likewise.
510 (ctype<wchar_t>::do_scan_not): Likewise.
512 2005-01-25 Benjamin Kosnik <bkoz@redhat.com>
514 * acinclude.m4 (GLIBCXX_ENABLE_C99): Test for complex math
515 functions, and enable _GLIBCXX_USE_C99_COMPLEX_MATH if they exist.
516 * acconfig.h: Add _GLIBCXX_USE_C99_COMPLEX_MATH.
517 * config.h.in: Regenerate.
518 * configure: Regenerate.
519 * include/std/std_complex.h: Protect complex builtins with
520 _GLIBCXX_USE_C99_COMPLEX_MATH.
522 2005-01-24 Paolo Carlini <pcarlini@suse.de>
524 * include/tr1/type_traits: Implement is_signed and is_unsigned.
525 * testsuite/tr1/4_metaprogramming/type_properties/
526 is_signed/is_signed.cc: New.
527 * testsuite/tr1/4_metaprogramming/type_properties/
528 is_signed/typedefs.cc: Likewise.
529 * testsuite/tr1/4_metaprogramming/type_properties/
530 is_unsigned/is_unsigned.cc: Likewise.
531 * testsuite/tr1/4_metaprogramming/type_properties/
532 is_unsigned/typedefs.cc: Likewise.
534 2005-01-23 Paolo Carlini <pcarlini@suse.de>
536 * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 34.
538 2005-01-23 Paolo Carlini <pcarlini@suse.de>
540 * testsuite/27_io/basic_ostream/cons/wchar_t/9827.cc: New.
541 * testsuite/27_io/basic_ostream/endl/wchar_t/1.cc: Likewise.
542 * testsuite/27_io/basic_ostream/ends/wchar_t/1.cc: Likewise.
543 * testsuite/27_io/basic_ostream/ends/wchar_t/2.cc: Likewise.
544 * testsuite/27_io/basic_ostream/exceptions/wchar_t/9561.cc: Likewise.
545 * testsuite/27_io/basic_ostream/flush/wchar_t/1.cc: Likewise.
546 * testsuite/27_io/basic_ostream/flush/wchar_t/2.cc: Likewise.
547 * testsuite/27_io/basic_ostream/flush/wchar_t/
548 exceptions_badbit_throw.cc: Likewise.
549 * testsuite/27_io/basic_ostream/inserters_arithmetic/
550 wchar_t/2.cc: Likewise.
551 * testsuite/27_io/basic_ostream/inserters_arithmetic/
552 wchar_t/3.cc: Likewise.
553 * testsuite/27_io/basic_ostream/inserters_arithmetic/
554 wchar_t/4.cc: Likewise.
555 * testsuite/27_io/basic_ostream/inserters_arithmetic/
556 wchar_t/4402.cc: Likewise.
557 * testsuite/27_io/basic_ostream/inserters_arithmetic/
558 wchar_t/5.cc: Likewise.
559 * testsuite/27_io/basic_ostream/inserters_arithmetic/
560 wchar_t/6.cc: Likewise.
561 * testsuite/27_io/basic_ostream/inserters_arithmetic/
562 wchar_t/9555-oa.cc: Likewise.
563 * testsuite/27_io/basic_ostream/inserters_arithmetic/
564 wchar_t/exceptions_badbit_throw.cc: Likewise.
565 * testsuite/27_io/basic_ostream/inserters_arithmetic/
566 wchar_t/exceptions_failbit_throw.cc: Likewise.
567 * testsuite/27_io/basic_ostream/inserters_character/
568 wchar_t/1.cc: Likewise.
569 * testsuite/27_io/basic_ostream/inserters_character/
570 wchar_t/2.cc: Likewise.
571 * testsuite/27_io/basic_ostream/inserters_character/
572 wchar_t/3.cc: Likewise.
573 * testsuite/27_io/basic_ostream/inserters_character/
574 wchar_t/4.cc: Likewise.
575 * testsuite/27_io/basic_ostream/inserters_character/
576 wchar_t/5.cc: Likewise.
577 * testsuite/27_io/basic_ostream/inserters_character/
578 wchar_t/6.cc: Likewise.
579 * testsuite/27_io/basic_ostream/inserters_character/
580 wchar_t/9555-oc.cc: Likewise.
581 * testsuite/27_io/basic_ostream/inserters_other/
582 wchar_t/1.cc: Likewise.
583 * testsuite/27_io/basic_ostream/inserters_other/
584 wchar_t/2.cc: Likewise.
585 * testsuite/27_io/basic_ostream/inserters_other/
586 wchar_t/3.cc: Likewise.
587 * testsuite/27_io/basic_ostream/inserters_other/
588 wchar_t/4.cc: Likewise.
589 * testsuite/27_io/basic_ostream/inserters_other/
590 wchar_t/5.cc: Likewise.
591 * testsuite/27_io/basic_ostream/inserters_other/
592 wchar_t/9318-out.cc: Likewise.
593 * testsuite/27_io/basic_ostream/inserters_other/
594 wchar_t/9424-out.cc: Likewise.
595 * testsuite/27_io/basic_ostream/inserters_other/
596 wchar_t/9555-oo.cc: Likewise.
597 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
598 error_failbit.cc: Likewise.
599 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
600 exceptions_badbit_throw.cc: Likewise.
601 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
602 exceptions_failbit_throw.cc: Likewise.
603 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
604 exceptions_null.cc: Likewise.
605 * testsuite/27_io/basic_ostream/put/char/1.cc: Likewise.
606 * testsuite/27_io/basic_ostream/put/wchar_t/1.cc: Likewise.
607 * testsuite/27_io/basic_ostream/seekp/char/
608 exceptions_badbit_throw.cc: Likewise.
609 * testsuite/27_io/basic_ostream/seekp/wchar_t/
610 2346-fstream.cc: Likewise.
611 * testsuite/27_io/basic_ostream/seekp/wchar_t/
612 2346-sstream.cc: Likewise.
613 * testsuite/27_io/basic_ostream/seekp/wchar_t/
614 exceptions_badbit_throw.cc: Likewise.
615 * testsuite/27_io/basic_ostream/sentry/wchar_t/1.cc: Likewise.
616 * testsuite/27_io/basic_ostream/sentry/wchar_t/2.cc: Likewise.
617 * testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
618 * testsuite/27_io/basic_ostream/tellp/wchar_t/2.cc: Likewise.
619 * testsuite/27_io/basic_ostream/tellp/wchar_t/
620 exceptions_badbit_throw.cc: Likewise.
621 * testsuite/27_io/basic_ostream/write/wchar_t/1.cc: Likewise.
623 * testsuite/data/wostream_inserter_char-1.tst: Likewise.
624 * testsuite/data/wostream_inserter_char-1.txt: Likewise.
625 * testsuite/data/wostream_inserter_other-1.tst: Likewise.
626 * testsuite/data/wostream_inserter_other-2.tst: Likewise.
627 * testsuite/data/wostream_seeks-1.tst: Likewise.
629 * testsuite/27_io/basic_ostream/endl/char/1.cc: Minor tweaks.
630 * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise.
631 * testsuite/27_io/basic_ostream/exceptions/char/9561.cc: Likewise.
632 * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
633 * testsuite/27_io/basic_ostream/flush/char/2.cc: Likewise.
634 * testsuite/27_io/basic_ostream/flush/char/
635 exceptions_badbit_throw.cc: Likewise.
636 * testsuite/27_io/basic_ostream/inserters_arithmetic/
638 * testsuite/27_io/basic_ostream/inserters_arithmetic/
640 * testsuite/27_io/basic_ostream/inserters_arithmetic/
642 * testsuite/27_io/basic_ostream/inserters_arithmetic/
643 char/4402.cc: Likewise.
644 * testsuite/27_io/basic_ostream/inserters_arithmetic/
646 * testsuite/27_io/basic_ostream/inserters_arithmetic/
648 * testsuite/27_io/basic_ostream/inserters_character/
650 * testsuite/27_io/basic_ostream/inserters_other/char/
652 * testsuite/27_io/basic_ostream/inserters_other/char/
654 * testsuite/27_io/basic_ostream/inserters_other/char/
655 error_failbit.cc: Likewise.
656 * testsuite/27_io/basic_ostream/inserters_other/char/
657 exceptions_badbit_throw.cc: Likewise.
658 * testsuite/27_io/basic_ostream/inserters_other/char/
659 exceptions_failbit_throw.cc: Likewise.
660 * testsuite/27_io/basic_ostream/inserters_other/char/
661 exceptions_null.cc: Likewise.
662 * testsuite/27_io/basic_ostream/put/char/1.cc: Likewise.
663 * testsuite/27_io/basic_ostream/seekp/char/
664 exceptions_badbit_throw.cc: Likewise.
665 * testsuite/27_io/basic_ostream/sentry/char/2.cc: Likewise.
666 * testsuite/27_io/basic_ostream/write/char/1.cc: Likewise.
668 2005-01-23 Paolo Carlini <pcarlini@suse.de>
670 * include/tr1/type_traits (aligned_storage): Use __aligned__ instead
673 2005-01-23 Paolo Carlini <pcarlini@suse.de>
674 Andreas Jaeger <aj@suse.de>
677 * include/bits/functexcept.h: Mark the helpers as 'noreturn'.
679 2005-01-21 Loren J. Rittle <ljrittle@acm.org>
681 * testsuite/27_io/basic_filebuf/open/char/9507.cc: Allow
682 lseek on fifo to succeed. Thus, check for consistent report.
684 2005-01-21 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
687 * include/bits/stl_list.h (_List_iterator): Initialize _M_node
689 (_List_const_iterator): Likewise.
690 * include/bits/stl_tree.h (_Rb_tree_iterator): Likewise.
691 (_Rb_tree_const_iterator): Likewise.
693 * testsuite/23_containers/map/operators/1_neg.cc: Adjust line numbers.
694 * testsuite/23_containers/set/operators/1_neg.cc: Likewise.
696 2005-01-20 Benjamin Kosnik <bkoz@redhat.com>
698 * testsuite/Makefile.am (check-compile): New.
699 * testsuite/Makefile.in: Regenerate.
700 * scripts/check_compile_time: New.
701 * scripts/check_performance: Tweaks.
703 2005-01-19 Paolo Carlini <pcarlini@suse.de>
706 * include/tr1/utility (struct __pair_get<1>::__get, __const_get):
707 Fix typo in the return type.
708 * testsuite/tr1/6_containers/utility/19535.cc: New.
710 2005-01-19 Loren J. Rittle <ljrittle@acm.org>
712 * include/ext/array_allocator.h (array_allocator<>::allocate):
713 Avoid __used. Use __array_used instead.
714 * docs/html/17_intro/BADNAMES: Add list for FreeBSD.
716 2005-01-18 David Edelsohn <edelsohn@gnu.org>
718 * config/os/aix/os_defines.h (_XOPEN_SOURCE): Delete.
719 (_XOPEN_SOURCE_EXTENDED): Delete.
721 2005-01-18 Benjamin Kosnik <bkoz@redhat.com>
723 * testsuite/testsuite_performance.h (time_counter::start):
725 (clear_counters): Inline.
726 (start_counters): Inline.
727 (stop_counters): Inline.
728 * testsuite/performance/20_util/allocator/map_thread.cc: Return.
729 * testsuite/performance/20_util/allocator/insert.cc: Remove bogus
731 * testsuite/performance/20_util/allocator/map_thread.cc: Same.
733 2005-01-17 Paolo Carlini <pcarlini@suse.de>
736 * include/bits/stl_tree.h (_Rb_tree<>::insert_unique(iterator,
737 const _Val&), _Rb_tree<>::insert_equal(iterator, const _Val&)):
738 Obtain amortized constant complexity if t is inserted right after
739 p - not before p - as per Table 69.
740 * testsuite/performance/23_containers/set_insert_from_sorted.cc: New.
742 * testsuite/23_containers/multiset/insert/2.cc: New.
743 * testsuite/23_containers/set/insert/1.cc: Likewise.
745 * testsuite/performance/23_containers/set_create_from_sorted.cc:
748 * include/bits/stl_tree.h: Add a few missing std:: qualifications.
750 2005-01-16 Jonathan Wakely <redi@gcc.gnu.org>
752 * include/ext/rope: Qualify calls to std::copy() by sequence_buffer.
753 * testsuite/ext/rope/4.cc: Add.
755 2005-01-16 Lorenz Minder <lminder@gmx.net>
756 Paolo Carlini <pcarlini@suse.de>
759 * include/c_std/std_cmath.h: Define the C99 classification facilities
760 directly inside namespace std:.
761 * testsuite/26_numerics/cmath/19322.cc: New.
763 2005-01-15 David Edelsohn <edelsohn@gnu.org>
765 * config/os/aix/os_defines.h (_G_USING_THUNKS): Delete.
767 2005-01-14 Paolo Carlini <pcarlini@suse.de>
770 * include/bits/stl_tree.h (_Rb_tree<>::insert_equal(_II, _II),
771 _Rb_tree<>::insert_unique(_II, _II)): Use insert_equal (insert_unique,
772 respectively) with hint (end()).
773 * testsuite/performance/23_containers/set_create_from_sorted.cc: New.
775 2005-01-13 Geoffrey Keating <geoffk@apple.com>
777 * configure.host (darwin): On darwin8 or later, no need to build
778 libstdc++ with -flat_namespace.
780 2005-01-13 Jonathan Wakely <redi@gcc.gnu.org>
782 * docs/doxygen/user.cfg.in: Set HAVE_DOT back to YES.
784 2005-01-13 Paolo Carlini <pcarlini@suse.de>
786 * testsuite/26_numerics/cmath/c99_classification_macros_c++.cc:
787 Re-enable commented-out test for double type.
789 2005-01-11 Paolo Carlini <pcarlini@suse.de>
790 Benjamin Kosnik <bkoz@redhat.com>
792 * src/istream.cc (basic_istream<char>::ignore(streamsize),
793 basic_istream<char>::ignore(streamsize, int_type),
794 basic_istream<wchar_t>::ignore(streamsize),
795 basic_istream<wchar_t>::ignore(streamsize, int_type)): In case
796 more than numeric_limits<streamsize>::max() chars are skipped,
797 set _M_gcount = max().
798 * include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
799 int_type)): Likewise; keep simple, don't forward.
801 2005-01-11 Paolo Carlini <pcarlini@suse.de>
803 * src/istream.cc (basic_istream<char>::ignore(streamsize),
804 basic_istream<char>::ignore(streamsize, int_type),
805 basic_istream<wchar_t>::ignore(streamsize),
806 basic_istream<wchar_t>::ignore(streamsize, int_type)): Revert
807 2005-01-05 change: actually, the previous behavior is conforming
808 and consistent with that of get(char_type*, streamsize, char_type),
809 albeit slightly different from that of 3.3/3.4 in a corner case
810 due to the use of snextc.
811 * include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
812 int_type)): Likewise.
813 * testsuite/27_io/basic_istream/ignore/char/4.cc: Remove.
814 * testsuite/27_io/basic_istream/ignore/wchar_t/4.cc: Likewise.
816 2005-01-11 Paolo Carlini <pcarlini@suse.de>
818 * include/tr1/type_traits: Implement alignment_of and aligned_storage.
819 * testsuite/tr1/4_metaprogramming/other_transformations/
820 aligned_storage/aligned_storage.cc: New.
821 * testsuite/tr1/4_metaprogramming/other_transformations/
822 aligned_storage/typedefs.cc: Likewise.
823 * testsuite/tr1/4_metaprogramming/type_properties/
824 alignment_of/alignment_of.cc: Likewise.
825 * testsuite/tr1/4_metaprogramming/type_properties/
826 alignment_of/typedefs.cc: Likewise.
828 2005-01-10 Paolo Carlini <pcarlini@suse.de>
830 * Makefile.in: Regenerate.
831 * libmath/Makefile.in: Likewise.
832 * libsupc++/Makefile.in: Likewise.
833 * po/Makefile.in: Likewise.
834 * src/Makefile.in: Likewise.
835 * testsuite/Makefile.in: Likewise.
837 2005-01-10 Paolo Carlini <pcarlini@suse.de>
839 * include/bits/stl_algobase.h (lexicographical_compare):
842 2005-01-07 Benjamin Kosnik <bkoz@redhat.com>
844 * acinclude.m4: Remove CCODECVT_H.
845 * configure: Regenerate.
846 * include/Makefile.am (host_headers_extra): Move to...
847 (ext_headers): ...here.
848 * include/Makefile.in: Regenerate.
849 * include/ext/enc_filebuf: Remove enc_filebuf, consolidate
851 * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Move...
852 * include/ext/codecvt_specializations.h: ...here. Remove
853 _GLIBCXX_USE___ENC_TRAITS.
854 (__enc_traits): To __encoding_state, put in __gnu_cxx namespace.
855 (enc_char_traits): To __encoding_char_traits, put in __gnu_cxx
857 * config/locale/generic/codecvt_specializations.h: Remove.
858 * include/bits/codecvt.h: Remove codecvt_specializations.h include.
859 * src/codecvt.cc: Remove __enc_traits::_S_max_size.
861 2005-01-06 Benjamin Kosnik <bkoz@redhat.com>
863 * include/bits/fstream.tcc: Remove unnecessary qualifications for
864 uglified data members of basic_filebuf, including _M_buf,
865 _M_buf_size, _M_mode, _M_pback_init.
866 * include/std/std_fstream.h: Same.
868 2005-01-05 Benjamin Kosnik <bkoz@redhat.com>
870 * testsuite/testsuite_hooks.h:
871 (copy_constructor::mark_call): Use __throw_runtime_error.
872 (assignment_operator::mark_call): Same.
873 * testsuite/testsuite_hooks.cc (verify_demangle): Same.
874 (locale_data): Remove, just use runtime_error directly.
875 (environment_variable): Same.
877 (run_tests_wrapped_locale): Use __throw_runtime_error.
878 (run_tests_wrapped_env): Same.
879 (semaphore::semaphore): Same.
880 (semaphore::signal): Same.
881 (semaphore::wait): Same.
882 * testsuite/testsuite_abi.h (symbol_error): Remove, use logic_error.
883 * testsuite/testsuite_abi.cc (get_symbol): Use __throw_logic_error.
884 (create_symbols): Use __throw_runtime_error.
885 * src/bitmap_allocator.cc: Use __throw_bad_alloc.
887 2005-01-05 Mark Mitchell <mark@codesourcery.com>
889 * testsuite/27_io/basic_filebuf/open/char/9507.cc: Remove child
892 2005-01-05 Paolo Carlini <pcarlini@suse.de>
894 * src/istream.cc (basic_istream<char>::ignore(streamsize),
895 basic_istream<char>::ignore(streamsize, int_type),
896 basic_istream<wchar_t>::ignore(streamsize),
897 basic_istream<wchar_t>::ignore(streamsize, int_type)): At the end,
898 first check _M_gcount vs __n.
899 * include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
900 int_type)): Likewise.
901 * testsuite/27_io/basic_istream/ignore/char/4.cc: New.
902 * testsuite/27_io/basic_istream/ignore/wchar_t/4.cc: Likewise.
904 2005-01-03 Mark Mitchell <mark@codesourcery.com>
906 * testsuite/testsuite_hooks.cc: Use __throw_exception_again
907 instead of just throw.
909 * testsuite/testsuite_hooks.cc: Update coypright and follow style
911 * testsuite/testsuite_hooks.h: Likewise.
912 * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use
913 semaphores, not sleep.
914 * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
915 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
916 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
917 * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc:
919 * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
920 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
921 * testsuite/27_io/objects/char/7.cc: Likewise.
922 * testsuite/27_io/objects/char/9661-1.cc: Likewise.
923 * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
924 * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
926 * configure.ac: Check for sys/ipc.h and sys/sem.h.
927 * config.h.in: Regenerated.
928 * configure: Likewise.
929 * testsuite/testsuite_hooks.cc (_GLIBCXX_SYSV_SEM): Conditionally
931 (sys/types.h): Include.
932 (sys/ipc.h): Likewise.
933 (sys/sem.h): Likewise.
934 (__gnu_test::semun): New type.
935 (__gnu_test::semaphore::sempaphore): New function.
936 (__gnu_test::semaphore::~semaphore): Likewise.
937 (__gnu_test::semaphore::wait): Likewise.
938 (__gnu_test::semaphore::signal): Likewise.
939 * testsuite/testsuite_hooks.h (__gnu_test::semaphore): New class.
940 * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use
941 semaphores, not sleep.
942 * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
943 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
944 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
945 * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc:
947 * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
948 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
949 * testsuite/27_io/objects/char/7.cc: Likewise.
950 * testsuite/27_io/objects/char/9661-1.cc: Likewise.
951 * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
952 * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
954 2005-01-03 Paolo Carlini <pcarlini@suse.de>
956 * include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
957 int_type)): Reset _M_gcount to numeric_limits<streamsize>::min().
958 * src/istream.cc (basic_istream<char>::ignore(streamsize, int_type),
959 basic_istream<wchar_t>::ignore(streamsize, int_type)): Likewise.
960 * src/istream.cc (basic_istream<char>::ignore(streamsize),
961 basic_istream<wchar_t>::ignore(streamsize)): Likewise; fix a typo.
963 2005-01-02 Paolo Carlini <pcarlini@suse.de>
965 * src/istream.cc (basic_istream<char>::ignore(streamsize),
966 basic_istream<char>::ignore(streamsize, int_type),
967 basic_istream<wchar_t>::ignore(streamsize),
968 basic_istream<wchar_t>::ignore(streamsize, int_type)): Avoid
970 * include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
971 int_type)): Likewise; use snextc in the main loop, consistently
972 with the specializations above.
974 2005-01-02 Chris Jefferson <chris@bubblescope.net>
976 * include/bits/stl_algobase.h (mismatch): Correct concept check.
978 2005-01-01 Paolo Carlini <pcarlini@suse.de>
980 * testsuite/ext/enc_filebuf/char/13189.cc: Fix, first include
981 testsuite_hooks.h, to know whether including ext/enc_filebuf.h.
982 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise.
984 2005-01-01 Paolo Carlini <pcarlini@suse.de>
986 * testsuite/27_io/basic_istream/extractors_character/char/1.cc: Fix,
987 null-terminate array1 at the outset.
988 * testsuite/27_io/basic_istream/extractors_character/wchar_t/1.cc: