* opts-common.c (opt_enum_arg_to_value): New.
[official-gcc.git] / libstdc++-v3 / ChangeLog
blob9b99d8b43f55d9bee89c0356bff72c40c0f58e75
1 2011-05-16  Paolo Carlini  <paolo.carlini@oracle.com>
3         * include/std/utility: Simplify the last commit, the whole
4         std::get code is C++0x only.
6 2011-05-16  Paolo Carlini  <paolo.carlini@oracle.com>
8         * include/std/utility (get(std::pair<>&&)): Add.
9         * include/bits/stl_pair.h (pair::swap(pair&),
10         swap(pair<>&, pair<>&)): Use noexcept.
11         * include/bits/random.h (discard_block_engine<>::base,
12         independent_bits_engine<>::base, shuffle_order_engine<>::base,
13         random_device::entropy): Use noexcept.
14         * include/std/array: Use noexcept where appropriate.
15         (get(array<>&&)): Add.
16         * testsuite/23_containers/array/requirements/get.cc: New.
17         * testsuite/20_util/pair/get.cc: Likewise.
18         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-error
19         line number.
21 2011-05-15  Paolo Carlini  <paolo.carlini@oracle.com>
23         * include/bits/c++config (_GLIBCXX_NOEXCEPT, _GLIBCXX_USE_NOEXCEPT):
24         Add.
25         * include/std/limits: Use the latter everywhere.
26         (numeric_limits<char16_t>, numeric_limits<char32_t>): Simplify
27         macro usages, the specializations exist only in C++0x mode.
28         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
29         line number.
31 2011-05-11  Paolo Carlini  <paolo.carlini@oracle.com>
33         * testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: Use
34         dg-require-cmath.
35         * testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise.
37 2011-05-11  François Dumont  <francois.cppdevs@free.fr>
39         * include/ext/pb_ds/detail/resize_policy/
40         hash_load_check_resize_trigger_imp.hpp (assert_valid): Replace
41         _GLIBCXX_DEBUG_ASSERT calls with PB_DS_DEBUG_VERIFY.
42         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
43         find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
44         constructors_destructor_fn_imps.hpp, split_join_fn_imps.hpp
45         (PB_DS_ASSERT_VALID): Rename in PB_DS_ASSERT_VALID_COND.
46         * include/ext/pb_ds/detail/debug_map_base.hpp,
47         splay_tree_/splay_tree_.hpp, ov_tree_map_/ov_tree_map_.hpp,
48         cc_hash_table_map_/cc_ht_map_.hpp, pat_trie_/pat_trie_.hpp,
49         leaf.hpp, internal_node.hpp, gp_hash_table_map_/gp_ht_map_.hpp,
50         bin_search_tree_/bin_search_tree_.hpp, list_update_map_/lu_map_.hpp,
51         rb_tree_map_/rb_tree_.hpp (PB_DS_ASSERT_VALID, PB_DS_DEBUG_VERIFY,
52         PB_DS_CHECK_KEY_EXISTS, PB_DS_CHECK_KEY_DOES_NOT_EXIST): Duplicate
53         macro definitions move...
54         * include/ext/pb_ds/detail/container_base_dispatch.hpp: ... here...
55         * include/ext/pb_ds/detail/basic_tree_policy/traits.hpp: ... and here.
56         * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp,
57         resize_policy.hpp, pairing_heap_/pairing_heap_.hpp,
58         left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp,
59         binomial_heap_/binomial_heap_.hpp, thin_heap_/thin_heap_.hpp,
60         rc_binomial_heap_/rc_binomial_heap_.hpp, rc.hpp (PB_DS_ASSERT_VALID,
61         PB_DS_DEBUG_VERIFY): Duplicate macro definitions move...
62         * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp:
63         ...here.
65 2011-05-09  Paolo Carlini  <paolo.carlini@oracle.com>
67         PR libstdc++/48933
68         * include/c_global/cmath (acosh, asinh, atanh, cbrt, copysign,
69         erf, erfc, exp2, expm1, fdim, fma, fmax, hypot, ilogb, lgamma,
70         llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
71         nextafter, nexttoward, remainder, remquo, rint, round, scalbln,
72         scalbn, tgamma, trunc): Use __enable_if on the return type.
73         * include/tr1/cmath: Likewise.
74         * testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: New.
75         * testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise.
77 2011-05-07  François Dumont  <francois.cppdevs@free.fr>
79         * include/debug/macro.h (_GLIBCXX_DEBUG_VERIFY_AT): New.
80         (_GLICXX_DEBUG_VERIFY): Use latter.
81         * include/ext/pb_ds/detail/resize_policy/
82         hash_load_check_resize_trigger_imp.hpp: Emit assertion on the line
83         containing the original assert call.
84         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
85         find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
86         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
87         split_join_fn_imps.hpp: Likewise.
88         * include/ext/pb_ds/detail/cc_hash_table_map_/
89         erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
90         find_fn_imps.hpp, insert_store_hash_fn_imps.hpp, debug_fn_imps.hpp,
91         debug_no_store_hash_fn_imps.hpp, cc_ht_map_.hpp, resize_fn_imps.hpp,
92         constructor_destructor_fn_imps.hpp, debug_store_hash_fn_imps.hpp,
93         erase_no_store_hash_fn_imps.hpp: Likewise.
94         * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp,
95         insert_join_fn_imps.hpp, pat_trie_/head.hpp, debug_fn_imps.hpp,
96         constructors_destructor_fn_imps.hpp, pat_trie_.hpp, split_fn_imps.hpp,
97         leaf.hpp, erase_fn_imps.hpp, node_base.hpp, internal_node.hpp:
98         Likewise.
99         * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp,
100         r_erase_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
101         debug_fn_imps.hpp, rotate_fn_imps.hpp, erase_fn_imps.hpp,
102         bin_search_tree_.hpp, insert_fn_imps.hpp, split_join_fn_imps.hpp:
103         Likewise.
104         * include/ext/pb_ds/detail/gp_hash_table_map_/
105         erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
106         find_fn_imps.hpp, gp_ht_map_.hpp, insert_store_hash_fn_imps.hpp,
107         debug_fn_imps.hpp, erase_fn_imps.hpp, debug_no_store_hash_fn_imps.hpp,
108         resize_fn_imps.hpp, constructor_destructor_fn_imps.hpp,
109         debug_store_hash_fn_imps.hpp, erase_no_store_hash_fn_imps.hpp:
110         Likewise.
111         * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp,
112         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
113         erase_fn_imps.hpp, insert_fn_imps.hpp, binary_heap_.hpp,
114         resize_policy.hpp, split_join_fn_imps.hpp: Likewise.
115         * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp,
116         find_fn_imps.hpp, insert_fn_imps.hpp,
117         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
118         pairing_heap_.hpp, split_join_fn_imps.hpp: Likewise.
119         * include/ext/pb_ds/detail/binomial_heap_/
120         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
121         binomial_heap_.hpp: Likewise.
122         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
123         erase_fn_imps.hpp, left_child_next_sibling_heap_.hpp,
124         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
125         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp,
126         find_fn_imps.hpp, thin_heap_.hpp, insert_fn_imps.hpp,
127         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
128         split_join_fn_imps.hpp: Likewise.
129         * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp,
130         ov_tree_map_.hpp, constructors_destructor_fn_imps.hpp,
131         debug_fn_imps.hpp, split_join_fn_imps.hpp, info_fn_imps.hpp: Likewise.
132         * include/ext/pb_ds/detail/debug_map_base.hpp: Likewise.
133         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp,
134         find_fn_imps.hpp, insert_fn_imps.hpp,
135         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
136         splay_fn_imps.hpp, split_join_fn_imps.hpp, splay_tree_.hpp: Likewise.
137         * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp,
138         find_fn_imps.hpp, lu_map_.hpp, constructor_destructor_fn_imps.hpp,
139         insert_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
140         * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp,
141         rc_binomial_heap_.hpp, insert_fn_imps.hpp,
142         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp, rc.hpp,
143         split_join_fn_imps.hpp: Likewise.
144         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp,
145         insert_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
146         debug_fn_imps.hpp, rb_tree_.hpp, split_join_fn_imps.hpp: Likewise.
147         * include/ext/pb_ds/hash_policy.hpp: Likewise.
149 2011-05-06  Paolo Carlini  <paolo.carlini@oracle.com>
151         * testsuite/22_locale/messages_byname/named_equivalence.cc: Fix.
153 2011-05-04  Marc Glisse  <marc.glisse@normalesup.org>
155         PR libstdc++/47913 (again)
156         * include/std/ratio (ratio_add, ratio_less): Rewrite.
157         * testsuite/20_util/ratio/operations/47913.cc: Extend.
158         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust dg-error
159         line numbers.
160         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
162 2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>
164         PR libstdc++/48848
165         * include/std/valarray (valarray<>::valarray(valarray&&),
166         valarray<>::operator=(valarray&&), valarray<>::swap): Add.
167         * doc/xml/manual/status_cxx200x.xml: Update.
168         * testsuite/26_numerics/valarray/moveable.cc: New.
169         * testsuite/26_numerics/valarray/swap.cc: Likewise.
171 2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>
173         PR libstdc++/48750
174         * include/parallel/multiway_merge.h: Run _ValueType destructors.
175         * include/parallel/multiway_mergesort.h: Likewise.
176         * include/parallel/quicksort.h: Likewise.
177         * include/parallel/random_shuffle.h: Likewise.
178         * include/parallel/partial_sum.h: Likewise.
179         * include/parallel/losertree.h: Run destructors; minor tweaks.
180         * include/parallel/par_loop.h: Run destructors, fix memory
181         allocations and deallocations.
182         * testsuite/26_numerics/accumulate/48750.cc: New.
184         * testsuite/ext/profile/mutex_extensions_neg.cc: Do not run in
185         parallel-mode to avoid spurious multiple errors.
187 2011-05-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
189         * include/std/functional (bind): Remove from overload set when first
190         argument type might be a socket file descriptor.
191         * testsuite/20_util/bind/socket.cc: New.
193 2011-05-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
195         PR libstdc++/48848
196         * doc/xml/manual/status_cxx200x.xml: Update valarray status.
197         * doc/html/*: Regenerate.
199 2011-05-02  Ollie Wild  <aaw@google.com>
201         * include/ext/sso_string_base.h (__sso_string_base<>::_M_construct):
202         Fix unqualified lookup.
203         (__sso_string_base<>::_M_assign): Likewise.
204         (__sso_string_base<>::_M_reserve): Likewise.
205         (__sso_string_base<>::_M_mutate): Likewise.
206         (__sso_string_base<>::_M_erase): Likewise.
207         * include/ext/vstring.h (__versa_string<>::replace): Likewise.
208         (__versa_string<>::compare): Likewise.
209         * include/ext/vstring.tcc (__versa_string<>::compare): Likewise.
211 2011-05-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
213         * doc/xml/manual/status_cxx200x.xml: Update to reflect current status
214         and FDIS content.
215         * doc/xml/manual/documentation_hacking.xml: Fix typo.
216         * doc/html/*: Regenerate.
218 2011-04-30  Daniel Krugler  <daniel.kruegler@googlemail.com>
220         * include/std/type_traits (__is_default_constructible_atom,
221         __is_default_constructible_safe<, true>,
222         __is_direct_constructible_new_safe,
223         __is_base_to_derived_ref<,, true>, __is_lvalue_to_rvalue_ref<,, true>,
224         __is_direct_constructible_ref_cast, __is_direct_constructible,
225         __is_nary_constructible): Simplify; add comments throughout.
227 2011-04-30  Paolo Carlini  <paolo.carlini@oracle.com>
229         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
230         Adjust dg-error line numbers.
231         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
232         Likewise.
233         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
235 2011-04-30  Doug Kwan  <dougkwan@google.com>
237         * include/Makefile.am (install-freestanding-headers): Also install
238         cxxabi_tweaks.h.
239         * include/Makefile.in: Regenerate.
241 2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
243         PR libstdc++/48760
244         * include/std/complex (complex<float>::complex(float, float),
245         complex<double>::complex(double, double),
246         complex<long double>::complex(long double, long double)): Use
247         list-initialization in C++0x mode, initialize in the body in
248         C++03 mode.
249         * testsuite/26_numerics/complex/cons/48760.cc: New.
250         * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
252 2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
254         * include/std/bitset (_Base_bitset(unsigned long long)): Minor
255         tweak, remove redundant round braces.
257 2011-04-27  Paolo Carlini  <paolo.carlini@oracle.com>
259         * include/bits/move.h (move_if_noexcept): Add.
260         * testsuite/20_util/move_if_noexcept/requirements/
261         explicit_instantiation.cc: New.
262         * testsuite/20_util/move_if_noexcept/1.cc: Likewise.
264 2011-04-25  Paolo Carlini  <paolo.carlini@oracle.com>
266         * include/std/type_traits (struct underlying_type): Add.
267         * testsuite/20_util/underlying_type/requirements/typedefs-1.cc: New.
268         * testsuite/20_util/underlying_type/requirements/typedefs-2.cc:
269         Likewise.
270         * testsuite/20_util/underlying_type/requirements/
271         explicit_instantiation.cc: Likewise.
272         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
273         line number.
275 2011-04-24  Paolo Carlini  <paolo.carlini@oracle.com>
277         * include/parallel/multiway_merge.h: Uglify equally_split
278         and equally_split_point throughout.
279         * include/parallel/par_loop.h: Likewise.
280         * include/parallel/equally_split.h: Likewise.
281         * include/parallel/set_operations.h: Likewise.
282         * include/parallel/unique_copy.h: Likewise.
283         * include/parallel/multiway_mergesort.h: Likewise.
284         * include/parallel/search.h: Likewise.
285         * include/parallel/partial_sum.h: Likewise.
286         * include/parallel/find.h: Likewise.
288 2011-04-24  Gerald Pfeifer  <gerald@pfeifer.com>
290         * doc/xml/manual/parallel_mode.xml: Fix link to libgomp online
291         documentation.  Expand link text.
293 2011-04-24  Gerald Pfeifer  <gerald@pfeifer.com>
295         * libsupc++/cxxabi.h: Adjust link to FAQ entry.
297 2011-04-22  François Dumont  <francois.cppdevs@free.fr>
299         * testsuite/lib/libstdc++.exp (check_v3_target_time): Discard
300         unused compilation result thanks to /dev/null.
301         * testsuite/lib/libstdc++.exp (check_v3_target_debug_mode,
302         check_v3_target_profile_mode, check_v3_target_normal_mode,
303         check_v3_target_cstdint, check_v3_target_cmath,
304         check_v3_target_atomic_builtins, check_v3_target_gthreads,
305         check_v3_target_nanosleep, check_v3_target_sched_yield,
306         check_v3_target_string_conversions, check_v3_target_swprintf,
307         check_v3_target_binary_io): Use simple preprocessing rather than
308         compilation. Discard unused preprocessing result thanks to /dev/null.
310 2011-04-20  Jim Meyering  <meyering@redhat.com>
312         * libsupc++/del_opnt.cc (operator delete): Remove useless
313         if-before-free.
315 2011-04-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
317         PR libstdc++/48521
318         * include/std/type_traits (result_of): Handle pointer to member.
319         * include/std/functional (__invoke): Likewise.
320         (_Function_to_function_pointer): Remove.
321         (_Reference_wrapper_base): Provide nested types independent of
322         unary_function and binary_function.
323         (reference_wrapper::operator()): DR 2017.
324         (ref(const A&&), cref(const A&&): Define as deleted.
325         * include/std/future (async): Simplify SFINAE and use result_of to
326         support pointer to member.
327         * testsuite/20_util/reference_wrapper/invoke.cc: Test pointer to
328         member.
329         * testsuite/20_util/reference_wrapper/24803.cc: Likewise.
330         * testsuite/20_util/reference_wrapper/typedefs.cc: Test for types
331         instead of derivation from unary_function and binary_function.
332         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
333         * testsuite/20_util/reference_wrapper/invoke-2.cc: New.
334         * testsuite/20_util/reference_wrapper/ref_neg.c: New.
335         * testsuite/20_util/reference_wrapper/typedefs-3.c: New.
337 2011-04-19  Hans-Peter Nilsson  <hp@axis.com>
339         PR testsuite/48675
340         * testsuite/20_util/hash/chi2_quality.cc (test_document_words): Stub
341         this part if SAMPLES < 100000.
343 2011-04-18  Paolo Carlini  <paolo.carlini@oracle.com>
345         * include/std/type_traits (is_nothrow_default_constructible,
346         is_nothrow_copy_constructible, is_nothrow_move_constructible,
347         is_copy_constructible, is_move_constructible): Add.
348         (has_nothrow_default_constructor, has_nothrow_copy_constructor):
349         Remove.
350         (is_nothrow_constructible): Adjust.
352         * testsuite/util/testsuite_tr1.h (ThrowDefaultClass,
353         ThrowCopyConsClass, ThrowMoveConsClass, NoexceptDefaultClass,
354         ExceptDefaultClass, NoexceptCopyConsClass, ExceptCopyConsClass,
355         NoexceptMoveConsClass, ExceptMoveConsClass): Add in C++0x mode.
357         * testsuite/20_util/has_nothrow_default_constructor: Remove.
358         * testsuite/20_util/has_nothrow_copy_constructor: Likewise.
360         * testsuite/20_util/is_nothrow_move_constructible/value.cc: Likewise.
361         * testsuite/20_util/is_nothrow_move_constructible/requirements/
362         typedefs.cc: Likewise.
363         * testsuite/20_util/is_nothrow_move_constructible/requirements/
364         explicit_instantiation.cc: Likewise.
365         * testsuite/20_util/is_nothrow_copy_constructible/value.cc: Likewise.
366         * testsuite/20_util/is_nothrow_copy_constructible/requirements/
367         typedefs.cc: Likewise.
368         * testsuite/20_util/is_nothrow_copy_constructible/requirements/
369         explicit_instantiation.cc: Likewise.
370         * testsuite/20_util/is_nothrow_default_constructible/value.cc:
371         Likewise.
372         * testsuite/20_util/is_nothrow_default_constructible/requirements/
373         typedefs.cc: Likewise.
374         * testsuite/20_util/is_nothrow_default_constructible/requirements/
375         explicit_instantiation.cc: Likewise.
376         * testsuite/20_util/is_move_constructible/value.cc: Likewise.
377         * testsuite/20_util/is_move_constructible/requirements/typedefs.cc:
378         Likewise.
379         * testsuite/20_util/is_move_constructible/requirements/
380         explicit_instantiation.cc: Likewise.
381         * testsuite/20_util/is_copy_constructible/value.cc: Likewise.
382         * testsuite/20_util/is_copy_constructible/requirements/typedefs.cc:
383         Likewise.
384         * testsuite/20_util/is_copy_constructible/requirements/
385         explicit_instantiation.cc: Likewise.
387         * testsuite/20_util/is_default_constructible/value.cc: Add tests.
388         * testsuite/20_util/is_nothrow_constructible/value.cc: Likewise.
390         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
391         Adjust dg-error line numbers.
392         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
393         Likewise.
394         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
396 2011-04-17  Paolo Carlini  <paolo.carlini@oracle.com>
398         * testsuite/25_algorithms/partition/moveable.cc: Actually run
399         it in parallel-mode for check-parallel.
401 2011-04-17  Daniel Krugler  <daniel.kruegler@googlemail.com>
402             Paolo Carlini  <paolo.carlini@oracle.com>
404         PR libstdc++/48635 (again)
405         * include/bits/unique_ptr.h (unique_ptr<>::unique_ptr(unique_ptr<>&&),
406         unique_ptr<_Tp[]>::unique_ptr(unique_ptr<>&&),
407         unique_ptr<>::operator=(unique_ptr<>&&),
408         unique_ptr<_Tp[]>::operator=(unique_ptr<>&&)): Use forward<_Ep>, not
409         forward<_Dp>, to forward the deleter.
410         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: New.
412 2011-04-15  Daniel Krugler  <daniel.kruegler@googlemail.com>
413             Paolo Carlini  <paolo.carlini@oracle.com>
415         PR libstdc++/48631
416         * include/bits/unique_ptr.h (default_delete<_Tp[]>): Add deleted
417         function call operator.
418         * testsuite/20_util/default_delete/48631_neg.cc: New.
419         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
420         line numbers.
422 2011-04-15  Daniel Krugler  <daniel.kruegler@googlemail.com>
423             Paolo Carlini  <paolo.carlini@oracle.com>
425         PR libstdc++/48635
426         * include/bits/unique_ptr.h (unique_ptr<>::operator=(unique_ptr&&),
427         unique_ptr<>::operator=(unique_ptr<>&&),
428         unique_ptr<_Tp[],>::operator=(unique_ptr&&),
429         unique_ptr<_Tp[],>::operator=(unique_ptr<>&&)): Forward the deleter
430         instead of moving it.
431         * testsuite/20_util/unique_ptr/assign/48635.cc: New.
433 2011-04-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
435         * scripts/extract_symvers.pl: Handle NOTY.
437 2011-04-15  Paolo Carlini  <paolo.carlini@oracle.com>
439         * include/std/istream: Fix comments in the light of DR60 + N3168.
441 2011-04-13  Daniel Krugler  <daniel.kruegler@googlemail.com>
442             Paolo Carlini  <paolo.carlini@oracle.com>
444         PR libstdc++/48526
445         * include/std/type_traits (struct is_constructible): Re-implement,
446         according to n3290.
447         (struct is_default_constructible): Add.
448         (struct is_destructible): Likewise.
449         (struct __and_, __or_, __not_): Add and use throughout; reorder some
450         facilities, other minor tweaks.
451         * testsuite/util/testsuite_tr1.h: Add test types.
452         * testsuite/20_util/is_constructible/value-2.cc: New.
453         * testsuite/20_util/is_default_constructible/value.cc: Likewise.
454         * testsuite/20_util/is_default_constructible/requirements/typedefs.cc:
455         Likewise.
456         * testsuite/20_util/is_default_constructible/requirements/
457         explicit_instantiation.cc: Likewise.
458         * testsuite/20_util/is_destructible/value.cc: Likewise.
459         * testsuite/20_util/is_destructible/requirements/typedefs.cc:
460         Likewise.
461         * testsuite/20_util/is_destructible/requirements/
462         explicit_instantiation.cc: Likewise.
463         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
464         dg-error line numbers.
465         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
466         Likewise.
467         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
468         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
470 2011-04-13  Paolo Carlini  <paolo.carlini@oracle.com>
472         * testsuite/20_util/is_function/value.cc: Add, adapted from the tr
473         testsuite.
474         * testsuite/20_util/is_function/requirements/typedefs.cc: Likewise.
475         * testsuite/20_util/is_function/requirements/
476         explicit_instantiation.cc: Likewise.
477         * testsuite/20_util/is_function/24808.cc: Likewise.
478         * testsuite/20_util/is_function/35637.cc: Likewise.
479         * testsuite/20_util/is_object/value.cc: Likewise.
480         * testsuite/20_util/is_object/requirements/typedefs.cc: Likewise.
481         * testsuite/20_util/is_object/requirements/explicit_instantiation.cc:
482         : Likewise.
483         * testsuite/20_util/is_object/24808.cc: Likewise.
484         * testsuite/20_util/is_compound/value.cc: Likewise.
485         * testsuite/20_util/is_compound/requirements/typedefs.cc: Likewise.
486         * testsuite/20_util/is_compound/requirements/
487         explicit_instantiation.cc: Likewise.
488         * testsuite/20_util/is_member_object_pointer/value.cc: Likewise.
489         * testsuite/20_util/is_member_object_pointer/requirements/
490         typedefs.cc: Likewise.
491         * testsuite/20_util/is_member_object_pointer/requirements/
492         explicit_instantiation.cc: Likewise.
493         * testsuite/20_util/is_fundamental/value.cc: Likewise.
494         * testsuite/20_util/is_fundamental/requirements/typedefs.cc: Likewise.
495         * testsuite/20_util/is_fundamental/requirements/
496         explicit_instantiation.cc: Likewise.
497         * testsuite/20_util/is_member_pointer/value.cc: Likewise.
498         * testsuite/20_util/is_member_pointer/requirements/typedefs.cc:
499         Likewise.
500         * testsuite/20_util/is_member_pointer/requirements/
501         explicit_instantiation.cc: Likewise.
502         * testsuite/20_util/is_member_function_pointer/value.cc: Likewise.
503         * testsuite/20_util/is_member_function_pointer/
504         requirements/typedefs.cc: Likewise.
505         * testsuite/20_util/is_member_function_pointer/requirements/
506         explicit_instantiation.cc: Likewise.
508         * testsuite/20_util/is_convertible/value.cc: Minor tweak, adjust
509         Copyright years.
511 2011-04-12  Takaya Saito  <gintensubaru@gmail.com>
513         PR libstdc++/48476
514         * include/std/tuple (_Tuple_impl<>::_Tuple_impl(_Tuple_impl<>&&),
515         _Tuple_impl<>::operator=(_Tuple_impl&&), _Tuple_impl<>::operator=
516         (_Tuple_impl<>&&), tuple_cat): Use std::forward where appropriate.
517         * testsuite/20_util/tuple/cons/48476.cc: New.
518         * testsuite/20_util/tuple/48476.cc: Likewise.
519         * testsuite/20_util/tuple/creation_functions/48476.cc: Likewise.
521 2011-04-12  Allan McRae  <allan@archlinux.org>
523         PR libstdc++/48566
524         * testsuite/tr1/6_containers/unordered_map/requirements/
525         iterator_null_neg.cc: Include <cstddef>.
526         * testsuite/tr1/6_containers/unordered_set/requirements/
527         iterator_null_neg.cc: Likewise.
528         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc: Include
529         <cstring>.
530         * testsuite/util/testsuite_common_types.h: Include <limits>.
531         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc:
532         Adjust dg-error line numbers.
533         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
534         * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
535         Likewise.
536         * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
537         Likewise.
538         * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc:
539         Likewise.
540         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Likewise.
541         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
543 2011-04-11  Jason Merrill  <jason@redhat.com>
545         * testsuite/20_util/is_convertible/value.cc: Adjust.
547 2011-04-11  Paolo Carlini  <paolo.carlini@oracle.com>
549         * testsuite/25_algorithms/inplace_merge/moveable.cc: Actually run
550         it in parallel-mode for check-parallel.
551         * testsuite/25_algorithms/rotate/moveable.cc: Likewise.
552         * testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
553         * testsuite/25_algorithms/remove/moveable.cc: Likewise.
554         * testsuite/25_algorithms/sort_heap/check_compare_by_value.cc:
555         Likewise.
556         * testsuite/25_algorithms/unique/moveable.cc: Likewise.
557         * testsuite/25_algorithms/remove_if/moveable.cc: Likewise.
558         * testsuite/25_algorithms/heap/moveable.cc: Likewise.
560         * testsuite/25_algorithms/next_permutation/moveable.cc: Only skip
561         the tests based on std::lexicographical_compare for check-parallel.
562         * testsuite/25_algorithms/prev_permutation/moveable.cc: Likewise.
564 2011-04-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
566         PR libstdc++/48541
567         * include/std/functional (_Base_manager::_M_get_pointer): Use
568         addressof.
569         * testsuite/20_util/function/48541.cc: New.
571 2011-04-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
573         PR libstdc++/48465
574         * configure.ac (libtool_VERSION): Bump library version to 6:16:0.
575         * configure: Regenerate.
576         * config/abi/pre/gnu.ver (GLIBCXX_3.4.16): Export missing symbols.
577         * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.16.
579 2011-04-06  Jeffrey Yasskin  <jyasskin@google.com>
581         * include/ext/algorithm (is_sorted): In C++0x mode import from
582         namespace std.
583         * include/ext/numeric (iota): In C++0x mode import from
584         namespace std.
585         * testsuite/ext/is_sorted/cxx0x.cc: New.
586         * testsuite/ext/iota/cxx0x.cc: New.
588 2011-04-02  Jonathan Wakely  <redi@gcc.gnu.org>
590         PR libstdc++/48398
591         * include/bits/unique_ptr.h (__tuple_type): Store pointer type.
592         * testsuite/20_util/unique_ptr/modifiers/48398.cc: New.
593         * testsuite/20_util/unique_ptr/requirements/pointer_type.cc: Remove
594         unused parameter name.
596 2011-03-31  Jeffrey Yasskin  <jyasskin@google.com>
598         * libsupc++/exception_ptr.h: Forward-declare std::type_info.
599         * libsupc++/nested_exception.h (__throw_with_nested): Remove a
600         redundant default argument from std::__throw_with_nested.
602 2011-03-31  Paolo Carlini  <paolo.carlini@oracle.com>
604         PR libstdc++/48382
605         * src/ctype.cc: Do not include <bits/ctype_noninline.h>.
606         * src/Makefile.am: Add ctype_configure_char.cc to host_sources.
607         * src/Makefile.in: Regenerate.
608         * include/Makefile.am: Remove ctype_noninline.h from host_headers.
609         * include/Makefile.in: Regenerate.
610         * doc/xml/manual/internals.xml: Update.
611         * config/os/newlib/ctype_noninline.h: Fixup and rename to...
612         * config/os/newlib/ctype_configure_char.cc: ... this.
613         * config/os/aix/ctype_noninline.h: Likewise.
614         * config/os/aix/ctype_configure_char.cc: Likewise.
615         * config/os/vxworks/ctype_noninline.h: Likewise.
616         * config/os/vxworks/ctype_configure_char.cc
617         * config/os/hpux/ctype_noninline.h: Likewise.
618         * config/os/hpux/ctype_configure_char.cc: Likewise.
619         * config/os/gnu-linux/ctype_noninline.h: Likewise.
620         * config/os/gnu-linux/ctype_configure_char.cc: Likewise.
621         * config/os/mingw32/ctype_noninline.h: Likewise.
622         * config/os/mingw32/ctype_configure_char.cc: Likewise.
623         * config/os/tpf/ctype_noninline.h: Likewise.
624         * config/os/tpf/ctype_configure_char.cc: Likewise.
625         * config/os/uclibc/ctype_noninline.h: Likewise.
626         * config/os/uclibc/ctype_configure_char.cc: Likewise.
627         * config/os/bionic/ctype_noninline.h: Likewise.
628         * config/os/bionic/ctype_configure_char.cc: Likewise.
629         * config/os/djgpp/ctype_noninline.h: Likewise.
630         * config/os/djgpp/ctype_configure_char.cc: Likewise.
631         * config/os/qnx/qnx6.1/ctype_noninline.h: Likewise.
632         * config/os/qnx/qnx6.1/ctype_configure_char.cc: Likewise.
633         * config/os/bsd/netbsd/ctype_noninline.h: Likewise.
634         * config/os/bsd/netbsd/ctype_configure_char.cc: Likewise.
635         * config/os/bsd/darwin/ctype_noninline.h: Likewise.
636         * config/os/bsd/darwin/ctype_configure_char.cc: Likewise.
637         * config/os/bsd/freebsd/ctype_noninline.h: Likewise.
638         * config/os/bsd/freebsd/ctype_configure_char.cc: Likewise.
639         * config/os/irix/irix6.5/ctype_noninline.h: Likewise.
640         * config/os/irix/irix6.5/ctype_configure_char.cc: Likewise.
641         * config/os/generic/ctype_noninline.h: Likewise.
642         * config/os/generic/ctype_configure_char.cc: Likewise.
643         * config/os/solaris/solaris2.7/ctype_noninline.h: Likewise.
644         * config/os/solaris/solaris2.7/ctype_configure_char.cc: Likewise.
646 2011-03-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
648         * include/std/future (future::share): Add.
649         (packaged_task::result_type): Remove as per LWG 2030.
650         (packaged_task::packaged_task): Remove redundant constructors, as per
651         LWG 1514.
652         * testsuite/30_threads/future/members/share.cc: New.
653         * testsuite/30_threads/packaged_task/requirements/typedefs.cc: Remove.
655 2011-03-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
657         * testsuite/28_regex/match_results/ctors/char/default.cc: Do not call
658         members which require a fully established result state.
659         * testsuite/28_regex/match_results/ctors/wchar_t/default.cc: Likewise.
661 2011-03-25  Paolo Carlini  <paolo.carlini@oracle.com>
663         * include/bits/random.h (negative_binomial_distribution<>::
664         negative_binomial_distribution(_IntType, double),
665         negative_binomial_distribution<>::
666         negative_binomial_distribution(const param_type&)): Tweak
667         construction of _M_gd.
668         * include/bits/random.tcc (negative_binomial_distribution<>::
669         operator()): Adjust.
671 2011-03-24  Paolo Carlini  <paolo.carlini@oracle.com>
673         * include/bits/random.h (negative_binomial_distribution<>::
674         negative_binomial_distribution(_IntType, double),
675         negative_binomial_distribution<>::
676         negative_binomial_distribution(const param_type&)): Fix
677         construction of _M_gd.
678         * include/bits/random.tcc (negative_binomial_distribution<>::
679         operator()): Fix computation, per Leger's algorithm.
680         * testsuite/util/testsuite_random.h (discrete_pdf,
681         negative_binomial_pdf, poisson_pdf, uniform_int_pdf): New.
682         (binomial_pdf): Swap last two parameters.
683         * testsuite/26_numerics/random/discrete_distribution/
684         operators/values.cc: New.
685         * testsuite/26_numerics/random/negative_binomial_distribution/
686         operators/values.cc: Likewise.
687         * testsuite/26_numerics/random/poisson_distribution/
688         operators/values.cc: Likewise.
689         * testsuite/26_numerics/random/uniform_int_distribution/
690         operators/values.cc: Likewise.
691         * testsuite/26_numerics/random/binomial_distribution/
692         operators/values.cc: Adjust.
694 2011-03-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
696         * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate.
697         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
698         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
699         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
700         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
702 2011-03-23  Matthias Klose  <doko@ubuntu.com>
704         * config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Regenerated.
706 2011-03-23  Uros Bizjak  <ubizjak@gmail.com>
708         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Regenerated.
710 2011-03-22  Joseph Myers  <joseph@codesourcery.com>
712         * configure.ac: Don't handle powerpc*-*-gnu*.
713         * configure: Regenerate.
715 2011-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
717         * testsuite/21_strings/basic_string/cons/char/moveable2.cc: Tweak
718         Copyright years.
719         * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc:
720         Likewise.
722 2011-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
724         * include/bits/shared_ptr.h (operator>, operator<=, operator>=): Add,
725         per DR 1401.
726         (operator==, operator!=, operator<): Fix per the letter of DR 1401.
727         * include/bits/shared_ptr_base.h: Likewise for __shared_ptr.
728         * include/bits/unique_ptr.h (operator==, operator!=, operator<,
729         operator<=, operator>, operator>=): Fix per the letter of DR 1401.
730         * testsuite/20_util/shared_ptr/comparison/dr1401.cc: New.
731         * testsuite/20_util/unique_ptr/comparison/dr1401.cc: Likewise.
732         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust.
734 2011-03-22  Jakub Jelinek  <jakub@redhat.com>
736         * config/abi/pre/gnu.ver (GLIBCXX_3.4.15): Export _ZNSsC2EOSs
737         and _ZNSbIwSt11char_traitsIwESaIwEEC2EOS2_.
738         * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerated.
739         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
740         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
741         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
742         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
743         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
744         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
745         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
746         Likewise.
747         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
748         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
749         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
750         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
751         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
752         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
753         * testsuite/21_strings/basic_string/cons/char/moveable2.cc: New test.
754         * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc: New
755         test.
757 2011-03-21  Jack Howarth  <howarth@bromo.med.uc.edu>
759         * testsuite/lib/prune.exp (libstdc++-dg-prune): Prune "could not
760         create compact unwind for" warnings.
762 2011-03-21  Jakub Jelinek  <jakub@redhat.com>
764         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
765         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
766         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
767         Likewise.
768         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
769         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
770         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
771         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
772         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
773         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
774         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
775         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
776         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
778         * testsuite/util/testsuite_abi.cc (check_version): Set incompatible
779         even when adding symbols to CXXABI_1.3, GLIBCXX_LDBL_3.4 and
780         CXXABI_LDBL_1.3 versions.
782 2011-03-21  Benjamin Kosnik  <bkoz@redhat.com>
784         * config/abi/pre/gnu.ver: Remove typeinfo name exports for C++0x types.
786 2011-03-21  Jakub Jelinek  <jakub@redhat.com>
788         * config/abi/pre/gnu.ver (CXXABI_1.3): Don't export _ZT[IS][PK]*[no].
789         (CXXABI_1.3.5): Export _ZTI[PK]*[no].
791 2011-03-21  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
793         * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on
794         sparc*-sun-solaris2.10 && lp64.
796 2011-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
798         * testsuite/lib/libstdc++.exp (check_v3_target_c99_math): Rename
799         to check_v3_target_cmath.
800         * testsuite/lib/dg-options.exp (dg-require-c99_math): Rename
801         to dg-require-cmath.
802         * testsuite/26_numerics/random/binomial_distribution/
803         operators/values.cc: Adjust.
805 2011-03-18  Diego Novillo  <dnovillo@google.com>
807         * testsuite/decimal/mixed-mode-arith_neg.cc: Rename from
808         mixed-mode_neg.cc
809         * testsuite/decimal/mixed-mode-cmp_neg.cc: Factor out of
810         mixed-mode-arith_neg.cc
812 2011-03-18  Paolo Carlini  <paolo.carlini@oracle.com>
814         * testsuite/util/testsuite_random.h: New.
815         * testsuite/lib/libstdc++.exp (check_v3_target_c99_math): Add.
816         * testsuite/lib/dg-options.exp (dg-require-c99_math): Likewise.
817         * testsuite/26_numerics/random/bernoulli_distribution/
818         operators/values.cc: New.
819         * testsuite/26_numerics/random/binomial_distribution/
820         operators/values.cc: Likewise.
821         * testsuite/26_numerics/random/geometric_distribution/
822         operators/values.cc: Likewise.
824 2011-03-16  Benjamin Kosnik  <bkoz@redhat.com>
826         * config/abi/pre/gnu.ver: Add base destructors for stdexcept classes.
827         * testsuite/19_diagnostics/stdexcept.cc: New.
829 2011-03-15  Benjamin Kosnik  <bkoz@redhat.com>
831         * include/std/thread: Revert.
832         * src/thread.cc: Same.
833         * config/abi/pre/gnu.ver: Same.
835 2011-03-15  Doug Kwan  <dougkwan@google.com>
837         PR libstdc++/48123
838         * include/Makefile.am (install-freestanding-headers): Install
839         cpu_defines.h
840         * include/Makefile.in: Regenerate.
842 2011-03-15  Benjamin Kosnik  <bkoz@redhat.com>
844         * config/abi/pre/gnu.ver: Make nested_exception exports super clear.
845         Move bad_function_call exports from CXXABI_1.3.5 to GLIBCXX_3.4.15.
847 2011-03-14  Benjamin Kosnik  <bkoz@redhat.com>
849         PR libstdc++/48130
850         * src/future.cc: Guard definitions.
851         * libsupc++/nested_exception.cc: Same.
853 2011-03-14  Benjamin Kosnik  <bkoz@redhat.com>
855         * src/Makefile.am: Add functional.cc, shared_ptr.cc.
856         * src/Makefile.in: Regenerate.
857         * libsupc++/Makefile.am: Add nested_exception.cc.
858         * libsupc++/Makefile.in: Regenerate.
859         * src/system_error.cc: Add ctor and dtor definitions for error_category.
860         * src/functional.cc: New. Add dtor definition for bad_function_call.
861         * src/stdexcept.cc: Add dtor definitions for domain_error,
862         invalid_argument, length_error, out_of_range, range_error,
863         overflow_error, underflow_error.
864         * src/future.cc: Add dtor definition for __future_base::_Result_base.
865         * src/shared_ptr.cc: New. Add dtor definition for bad_weak_ptr.
866         * src/thread.cc: Add dtor for thread::_Impl_base.
867         * include/std/system_error: Adjust.
868         * include/std/stdexcept: Same.
869         * include/std/future: Same.
870         * include/std/functional: Same.
871         * include/std/thread: Same.
872         * include/bits/shared_ptr_base.h: Same.
873         * libsupc++/nested_exception.cc: New. Add dtor for nested_exception.
874         * libsupc++/nested_exception.h: Adjust.
875         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
876         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same.
877         * config/abi/pre/gnu.ver: Add new exports.
879 2011-03-14  Benjamin Kosnik  <bkoz@redhat.com>
881         * include/bits/regex_compiler.h: Nest namespace versioning.
882         * include/bits/regex_grep_matcher.tcc: Same.
883         * include/bits/regex_grep_matcher.h: Same.
884         * include/bits/regex_cursor.h: Same.
885         * include/bits/regex_nfa.h: Same.
886         * include/bits/regex_nfa.tcc: Same.
888         * include/bits/regex_grep_matcher.h: Version forward declarations.
889         * include/bits/c++config: Add namespace association for __regex.
890         * include/bits/regex.h: Make sub_match consistent.
892 2011-03-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
894         * doc/xml/manual/abi.xml: Replace docs.sun.com URLs by their OTN
895         equivalents.
896         * doc/html/manual/abi.html: Regenerate.
898 2011-03-14  Tom Tromey  <tromey@redhat.com>
900         * python/libstdcxx/v6/printers.py (_use_gdb_pp): New global.
901         Try to import `gdb.printing' module.
902         (UniquePointerPrinter.__init__): Add 'typename' argument.
903         (StdSlistPrinter.__init__): Likewise.
904         (StdSlistIteratorPrinter.__init__): Likewise.
905         (StdVectorIteratorPrinter.__init__): Likewise.
906         (StdRbtreeIteratorPrinter.__init__): Likewise.
907         (StdDebugIteratorPrinter.__init__): Likewise.
908         (StdDequeIteratorPrinter.__init__): Likewise.
909         (StdStringPrinter.__init__): Likewise.
910         (RxPrinter, Printer): New class.
911         (libstdcxx_printer): New global.
912         (register_libstdcxx_printers): Rewrite.
913         (build_libstdcxx_dictionary): Rewrite.
914         (pretty_printers_dict): Remove.
916 2011-03-14  Andrey Zholos  <aaz@althenia.net>
918         PR libstdc++/48114
919         * include/bits/random.h (geometric_distribution): Correct formula
920         in comment, per C++0x.
921         (geometric_distribution<>::param_type::param_type(double)): Fix check.
922         (geometric_distribution<>::param_type::_M_initialize):
923         Store log(1 - p).
924         * include/bits/random.tcc (geometric_distribution<>::operator()):
925         Fix computation.
926         (binomial_distribution<>::operator()): Likewise.
928 2011-03-09  Paolo Carlini  <paolo.carlini@oracle.com>
930         * testsuite/util/testsuite_rvalref.h: Minor tweaks.
932 2011-03-09  Jonathan Wakely  <redi@gcc.gnu.org>
933             Chris Jefferson  <chris@bubblescope.net>
934             Paolo Carlini  <paolo.carlini@oracle.com>
936         * testsuite/util/testsuite_rvalref.h (rvalstruct_compare_by_value):
937         New.
938         * testsuite/25_algorithms/sort_heap/check_compare_by_value.cc:
939         Likewise.
940         * testsuite/25_algorithms/partial_sort/check_compare_by_value:
941         Likewise.
942         * testsuite/25_algorithms/stable_sort/check_compare_by_value.cc:
943         Likewise.
944         * testsuite/25_algorithms/sort/check_compare_by_value: Likewise.
946 2011-03-09  Chris Jefferson  <chris@bubblescope.net>
948         PR libstdc++/48038
949         * include/bits/stl_algo.h (__merge_backward): Rename to
950         __move_merge_backward and change to always move rather than copy.
951         (__move_merge): New function similar to std::merge except values
952         are moved instead of copied.
953         (__merge_adaptive, __merge_sort_loop): Change from using std::merge
954         and __merge_backward to __move_merge and __move_merge_backward.
956 2011-03-07  Jason Merrill  <jason@redhat.com>
958         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust
959         expected errors.
961 2011-03-07  Benjamin Kosnik  <bkoz@redhat.com>
962             Matthias Klose  <doko@ubuntu.com>
963             Jonathan Wakely  <redi@gcc.gnu.org>
965         PR libstdc++/47145
966         * acinclude.m4 (GLIBCXX_CONFIGURE_DOCBOOK): Define.
967         * configure.ac: Use it.
968         * doc/Makefile.am (XSL_STYLE_DIR): Set at configure time.
969         * configure: Regenerate.
970         * doc/Makefile.in: Regenerate.
972 2011-03-04  Benjamin Kosnik  <bkoz@chula>
974         * src/Makefile.am (inst_sources): Make source instantion files
975         conditional.
976         (XTEMPLATE_FLAGS): Make -fno-implicit-templates conditional.
977         * src/Makefile.in: Regenerate.
978         * src/valarray-inst.cc: Move to..
979         * src/valarray.cc: ...this.
980         * acinclude.m4 (GLIBCXX_ENABLE_EXTERN_TEMPLATE]): Define.
981         * configure.ac (GLIBCXX_ENABLE_EXTERN_TEMPLATE): Use it.
982         * configure: Regenerate.
983         * include/Makefile.am (stamp-extern-template): Add.
984         * include/Makefile.in: Regenerate.
986         * doc/xml/manual/configure.xml: Document --enable-extern-template.
988         * include/bits/locale_classes.tcc: Adjust comment.
989         * include/bits/locale_facets.tcc: Same.
990         * include/bits/basic_ios.tcc: Same.
991         * include/bits/istream.tcc: Same.
992         * include/bits/codecvt.h: Same.
993         * include/bits/ostream.tcc: Same.
994         * include/bits/sstream.tcc: Same.
995         * include/bits/c++config: Same.
996         * include/bits/basic_string.tcc: Same.
997         * include/bits/ostream_insert.h: Same.
998         * include/bits/locale_facets_nonio.tcc: Same.
999         * include/bits/streambuf.tcc: Same.
1000         * include/bits/allocator.h: Same.
1001         * include/bits/fstream.tcc: Same.
1003         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
1005 2011-03-02  Benjamin Kosnik  <bkoz@redhat.com>
1007         * testsuite/Makefile.am: Make clean fixups.
1008         * testsuite/Makefile.in: Regenerate.
1010 2011-03-02  Marc Glisse  <marc.glisse@normalesup.org>
1012         * include/std/ratio (ratio_less): Add comments.
1014 2011-03-02  Marc Glisse  <marc.glisse@normalesup.org>
1016         PR libstdc++/47913
1017         * include/std/ratio (ratio_add): Avoid denominator overflow.
1018         * testsuite/20_util/ratio/operations/47913.cc: New.
1020 2011-02-28  Benjamin Kosnik  <bkoz@redhat.com>
1022         * testsuite/20_util/hash/chi2_quality.cc: Use C++0x mode on simulators.
1023         * testsuite/20_util/hash/quality.cc: Same.
1025 2011-02-28  Paolo Carlini  <paolo.carlini@oracle.com>
1027         PR libstdc++/47921
1028         * include/std/streambuf (basic_streambuf<>::__safe_gbump,
1029         __safe_pbump): Add.
1030         * include/bits/streambuf.tcc (basic_streambuf<>::xgetn,
1031         xputn): Use the latter.
1032         * include/bits/streambuf_iterator.h: Likewise.
1033         * src/strstream.cc: Likewise.
1034         * src/streambuf.cc: Likewise.
1035         * src/compatibility.cc: Likewise.
1036         * src/istream.cc: Likewise.
1037         * include/bits/fstream.tcc (basic_filebuf<>::xsgetn): Use setg
1038         instead of gbump.
1039         * include/std/sstream (basic_stringbuf<>::_M_pbump): Add.
1040         * include/bits/sstream.tcc (basic_stringbuf<>::seekoff,
1041         seekpos, _M_sync): Use setg, setp, and _M_pbump.
1042         * config/abi/pre/gnu.ver: Tweak.
1044 2011-02-28  Paolo Carlini  <paolo.carlini@oracle.com>
1046         * testsuite/20_util/ratio/comparisons/comp3.cc: New.
1048 2011-02-28  Marc Glisse  <marc.glisse@normalesup.org>
1050         PR libstdc++/42622
1051         * include/std/ratio (ratio_less): Reimplement to never overflow.
1052         * testsuite/20_util/ratio/comparisons/comp2.cc: Extend.
1054 2011-02-24  Benjamin Kosnik  <bkoz@redhat.com>
1056         * testsuite/18_support/type_info/fundamental.cc: New.
1058         * testsuite/Makefile.am: Make clean fixups.
1059         * testsuite/Makefile.in: Regenerate.
1061 2011-02-19  François Dumont  <francois.cppdevs@free.fr>
1063         * include/debug/string (basic_string::insert): Add iterator check and
1064         pass normal iterator to normal insert.
1065         * include/debug/macros.h (__glibcxx_check_heap,
1066         __glibcxx_check_heap_pred): Remove __glibcxx_check_valid_range,
1067         already done.
1069 2011-02-17  Paolo Carlini  <paolo.carlini@oracle.com>
1071         PR libstdc++/47776
1072         * testsuite/ext/vstring/hash/char/1.cc: Fix.
1073         * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
1075 2011-02-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
1077         * include/bits/regex.h (basic_regex::traits_type): Add typedef.
1078         (basic_regex::basic_regex(basic_regex&&)): Add noexcept.
1079         (basic_regex::operator=(basic_regex&&)): Likewise.
1080         (basic_regex::assign(basic_regex&&)): Likewise.
1081         (operator==(sub_match,...)): Implement DR 1181.
1082         (match_results::match_results(match_results&&)): Define.
1083         (match_results::operator=(const match_results&)): Fix parameter type.
1084         (match_results::operator=(match_results&&)): Define.
1086 2011-02-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
1088         PR libstdc++/47724
1089         * include/bits/regex_compiler.h (_Scanner::_M_advance): Do not treat
1090         line anchors as metacharacters.
1091         * testsuite/28_regex/basic_regex/ctors/47724.cc: New.
1093 2011-02-16  Paolo Carlini  <paolo.carlini@oracle.com>
1095         PR libstdc++/47773
1096         * include/ext/vstring.h (hash<__gnu_cxx::__vstring>,
1097         hash<__gnu_cxx::__wvstring>, hash<__gnu_cxx::__u16vstring>,
1098         hash<__gnu_cxx::__u32vstring>): Add.
1099         * testsuite/ext/vstring/hash/char/1.cc: New.
1100         * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
1102 2011-02-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
1104         * include/bits/regex.h (match_results::format): Use char_traits.
1106 2011-02-16  Benjamin Kosnik  <bkoz@redhat.com>
1108         * include/std/atomic: Remove atomic_address, uplift to N3225.
1109         * include/bits/atomic_0.h: Same.
1110         * include/bits/atomic_2.h: Same.
1111         * include/bits/atomic_base.h: Same.
1112         * testsuite/29_atomics/atomic_address/*: Delete.
1114 2011-02-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
1116         * include/bits/regex.h (sub_match::sub_match): Add.
1117         (match_results::ready): Add.
1118         (match_results::empty): Adjust.
1119         (match_results::length): Add missing dereference.
1120         (match_results::operator[],prefix,suffix): Add debug mode checks.
1121         (match_results::cend): Re-use end().
1122         (match_results::format): Adjust signatures.
1123         (operator==(match_results,match_results)): Implement.
1124         * include/bits/regex_compiler.h (_Scanner_base): Use constexpr.
1125         * include/bits/regex_constants.h (syntax_option_type): Likewise.
1126         * include/bits/regex_grep_matcher.h: Fix comment typo.
1127         (_SpecializedResults::_SpecializedResults): Simplify.
1128         * include/bits/regex_cursor.h: Fix comment typo.
1129         * include/bits/regex_nfa.h: Likewise.
1130         * testsuite/28_regex/basic_regex/ctors/basic/string_range_01_02_03.cc:
1131         Fix error code, remove xfail.
1132         * testsuite/28_regex/basic_regex/ctors/extended/
1133         string_range_01_02_03.cc: Likewise.
1135 2011-02-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
1137         * include/bits/regex_compiler.h: Remove unnecessary bind() calls.
1138         * include/bits/regex_nfa.h: Remove unnecessary base classes.
1140 2011-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1142         * configure: Regenerate.
1144 2011-02-12  Paolo Carlini  <paolo.carlini@oracle.com>
1146         PR libstdc++/47709
1147         * include/ext/algorithm (is_heap): In C++0x mode import from
1148         namespace std.
1149         * testsuite/ext/is_heap/47709.cc: New.
1151 2011-02-12  Jakub Jelinek  <jakub@redhat.com>
1152             Jonathan Wakely  <jwakely.gcc@gmail.com>
1154         PR libstdc++/47662
1155         * testsuite/17_intro/headers/c++200x/operator_names.cc: New.
1156         * testsuite/17_intro/headers/c++1998/operator_names.cc: Add comment.
1158 2011-02-12  Paolo Carlini  <paolo.carlini@oracle.com>
1160         * include/tr1/cmath (fabs): Define.
1161         * include/tr1/complex (acos, asin, atan): Avoid duplicate definitions
1162         in C++0x mode.
1164 2011-02-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
1166         * testsuite/tr1/headers/c++200x/complex.cc: New.
1168 2011-02-11  Johannes Singler  <singler@kit.edu>
1170         PR libstdc++/47433
1171         * include/parallel/losertree.h
1172         (_LoserTreeUnguarded<>::__delete_min_insert):
1173         Add missing "using std::swap;", as for other variants.
1175 2011-02-10  Benjamin Kosnik  <bkoz@redhat.com>
1177         * src/Makefile.am (sources): Add regex.cc.
1178         * src/Makefile.in: Regenerate.
1179         * src/regex.cc: New.
1180         * include/bits/regex_error.h (error_type): Use constexpr.
1181         (regex_error): Move ctor and dtor out of line.
1183         * testsuite/28_regex/03_requirements: To...
1184         * testsuite/28_regex/requirements: ... this.
1185         * testsuite/28_regex/04_header: To...
1186         * testsuite/28_regex/headers: ... this.
1187         * testsuite/28_regex/05_constants: To...
1188         * testsuite/28_regex/constants: ... this.
1189         * testsuite/28_regex/06_exception_type: To...
1190         * testsuite/28_regex/regex_error: ... this.
1191         * testsuite/28_regex/07_traits: To...
1192         * testsuite/28_regex/traits: ... this.
1193         * testsuite/28_regex/08_basic_regex: To...
1194         * testsuite/28_regex/basic_regex: ... this.
1195         * testsuite/28_regex/09_sub_match: To...
1196         * testsuite/28_regex/sub_match: ... this.
1197         * testsuite/28_regex/10_match_results: To...
1198         * testsuite/28_regex/match_results: ... this.
1199         * testsuite/28_regex/11_algorithms: To...
1200         * testsuite/28_regex/algorithms: ... this.
1201         * testsuite/28_regex/12_iterators: To...
1202         * testsuite/28_regex/iterators: ... this.
1204 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
1206         PR libstdc++/47662
1207         * include/bits/c++config: Do not use alternative token.
1208         * testsuite/17_intro/headers/c++1998/operator_names.cc: New.
1210 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
1212         * src/future.cc (future_error_category::message): Handle no_state.
1214 2011-02-10  Paolo Carlini  <paolo.carlini@oracle.com>
1216         * testsuite/23_containers/multimap/modifiers/erase/47628.cc: Do
1217         not test in C++0x mode.
1218         * testsuite/23_containers/map/modifiers/erase/47628.cc: Likewise.
1219         * testsuite/20_util/headers/utility/synopsis.cc: Tweak to work
1220         in C++0x mode too.
1222 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
1224         * doc/xml/manual/status_cxx200x.xml: Update.
1225         * doc/html/*: Regenerate.
1227 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
1229         * doc/xml/manual/debug.xml: Improve data race docs.
1231 2011-02-09  Paolo Carlini  <paolo.carlini@oracle.com>
1233         PR libstdc++/47668
1234         * include/debug/map.h (map): Remove unnecessary using-declaration.
1235         * include/debug/multimap.h (multimap): Likewise.
1236         * include/profile/map.h (map): Likewise.
1237         * include/profile/multimap.h (multimap): Likewise.
1239 2011-02-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1241         PR libstdc++/43863
1242         * libsupc++/guard.cc (recursive_init_error::~recursive_init_error):
1243         Move to ...
1244         * libsupc++/guard_error.cc: ... new file.
1245         * libsupc++/Makefile.am: Update.
1246         * libsupc++/Makefile.in: Regenerate.
1248 2011-02-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1250         * include/std/future (packaged_task::operator bool): Rename to...
1251         (packaged_task::valid): ...this.
1252         * testsuite/30_threads/packaged_task/cons/1.cc: Adjust.
1253         * testsuite/30_threads/packaged_task/cons/2.cc: Adjust.
1254         * testsuite/30_threads/packaged_task/cons/move.cc: Adjust.
1255         * testsuite/30_threads/packaged_task/cons/move_assign.cc: Adjust.
1256         * testsuite/30_threads/packaged_task/cons/alloc.cc: Adjust.
1257         * testsuite/30_threads/packaged_task/members/invoke.cc: Adjust.
1258         * testsuite/30_threads/packaged_task/members/reset.cc: Adjust.
1259         * testsuite/30_threads/packaged_task/members/reset2.cc: Adjust.
1260         * testsuite/30_threads/packaged_task/members/swap.cc: Adjust.
1261         * testsuite/30_threads/packaged_task/members/boolconv.cc: Remove.
1262         * testsuite/30_threads/packaged_task/members/valid.cc: Add.
1264 2011-02-09  Paolo Carlini  <paolo.carlini@oracle.com>
1266         * doc/xml/manual/io.xml: Fix typo.
1267         * doc/html/manual/streambufs.html: Likewise.
1269 2011-02-09  Paolo Carlini  <paolo.carlini@oracle.com>
1271         * config/abi/pre/gnu.ver: Fix.
1273 2011-02-08  Benjamin Kosnik  <bkoz@redhat.com>
1275         * doc/xml/manual/appendix_porting.xml: Add doc section.
1276         * doc/xml/manual/appendix_contributing.xml: Split out doc bits to...
1277         * doc/xml/manual/documentation_hacking.xml: ...here.
1279         * doc/xml/manual/debug_mode.xml: Adjust.
1280         * doc/xml/manual/prerequisites.xml: Adjust.
1281         * doc/Makefile.am (xml_sources): Add dot files,
1282         documentation_hacking.xml.
1283         * doc/Makefile.in: Regenerate.
1285         * doc/xml/manual/build_hacking.xml: Use absolute paths for images.
1286         * doc/xml/images/confdeps.pdf: Add.
1288         * doc/html/*: Regenerate.
1290 2011-02-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
1292         * doc/xml/gnu/fdl-1.2.xml: Remove.
1293         * doc/xml/gnu/gpl-2.0.xml: Remove.
1294         * doc/Makefile.am: Update.
1295         * doc/Makefile.in: Regenerate.
1297 2011-02-07  Paolo Carlini  <paolo.carlini@oracle.com>
1299         PR libstdc++/47628
1300         * include/bits/stl_tree.h (_Rb_tree::erase(iterator), erase(iterator,
1301         iterator)): Add back in C++03 mode.
1302         * testsuite/23_containers/map/modifiers/erase/47628.cc: New.
1303         * testsuite/23_containers/multimap/modifiers/erase/47628.cc: Likewise.
1305 2011-02-07  Benjamin Kosnik  <bkoz@redhat.com>
1307         PR libstdc++/47560 try two
1308         * config/os/hpux/os_defines.h: Guard for C++.
1310 2011-02-07  Gerald Pfeifer  <gerald@pfeifer.com>
1312         * doc/xml/faq.xml: Adjust link to bug database.
1313         Remove old item on broken header files.
1315 2011-02-04  Benjamin Kosnik  <bkoz@redhat.com>
1317         * include/bits/regex_error.h (__throw_regex_error): Not inline.
1318         * src/functexcept.cc: Add definition.
1319         * config/abi/pre/gnu.ver: Export.
1321 2011-02-04  Ralf Corsépius <ralf.corsepius@rtems.org>
1323         * crossconfig.m4 (GLIBCXX_CROSSCONFIG): Add *-rtems*.
1324         * configure: Regenerate.
1326 2011-02-01  Paolo Carlini  <paolo.carlini@oracle.com>
1328         PR libstdc++/46914
1329         * include/bits/atomic_0.h (_ATOMIC_STORE_, _ATOMIC_MODIFY_,
1330         _ATOMIC_CMPEXCHNG_): Rename __v -> __w, and __m -> __n, to
1331         avoid name conflicts.
1333 2011-02-01  Benjamin Kosnik  <bkoz@redhat.com>
1335         PR libstdc++/47560
1336         * config/os/hpux/os_defines.h: Remove use of macros on namespace.
1338 2011-02-01  Benjamin Kosnik  <bkoz@redhat.com>
1340         * scripts/run_doxygen: Allow doxygen 1.7.0 again.
1341         * doc/doxygen/user.cfg.in (PDF_HYPERLINKS): Re-enable.
1342         (COMPACT_LATEX): Enable.
1344         * include/profile/impl/profiler_container_size.h: Adjust doxygen markup.
1345         * include/profile/impl/profiler_hash_func.h: Same.
1346         * include/bits/hashtable.h: Same.
1347         * include/backward/auto_ptr.h: Same.
1348         * include/backward/strstream: Same.
1349         * include/backward/backward_warning.h: Same.
1350         * include/backward/binders.h: Same.
1352 2011-02-01  Gerald Pfeifer  <gerald@pfeifer.com>
1354         * doc/xml/manual/debug.xml: Use GDB instead of gdb.
1355         Adjust link to GDB manual.
1357 2011-01-31  Benjamin Kosnik  <bkoz@redhat.com>
1359         * include/bits/c++config (_GLIBCXX_DEPRECATED): To
1360         _GLIBCXX_USE_DEPRECATED.
1361         (_GLIBCXX_DEPRECATED_ATTR): To _GLIBCXX_DEPRECATED.
1362         * doc/xml/manual/using.xml: Same.
1363         * include/std/memory: Same.
1364         * include/std/streambuf: Same.
1365         * include/bits/shared_ptr.h: Same.
1366         * include/bits/unique_ptr.h: Same.
1367         * include/bits/shared_ptr_base.h: Same.
1368         * include/bits/stl_function.h: Same.
1369         * include/tr1/shared_ptr.h: Same.
1370         * include/backward/auto_ptr.h: Same.
1371         * include/backward/binders.h: Same.
1373 2011-01-31  Paolo Carlini  <paolo.carlini@oracle.com>
1375         * doc/html/ext/lwg-active.html: Update to Revision D73.
1376         * doc/html/ext/lwg-closed.html: Likewise.
1377         * doc/html/ext/lwg-defects.html: Likewise.
1378         * doc/xml/manual/intro.xml: Update status of issues 408, 539, 865.
1380 2011-01-30  Benjamin Kosnik  <bkoz@redhat.com>
1382         PR libstdc++/36104 part four
1383         * include/bits/c++config (_GLIBCXX_STD): Remove.
1384         (_GLIBCXX_STD_D, _GLIBCXX_PR): Now _GLIBCXX_STD_C.
1385         (_GLIBCXX_P): Now _GLIBCXX_STD_A.
1386         (_GLIBCXX_NAMESPACE_DEBUG, _GLIBCXX_NAMESPACE_PARALLEL,
1387          _GLIBCXX_NAMESPACE_PROFILE, _GLIBCXX_NAMESPACE_VERSION): Remove.
1388         (_GLIBCXX_INLINE_DEBUG, _GLIBCXX_INLINE_PARALLEL,
1389          _GLIBCXX_INLINE_PROFILE): Remove.
1390         (_GLIBCXX_BEGIN_NAMESPACE(X)): Remove.
1391         (_GLIBCXX_END_NAMESPACE): Remove.
1392         (_GLIBCXX_BEGIN_NESTED_NAMESPACE(X, Y)): Remove.
1393         (_GLIBCXX_END_NESTED_NAMESPACE): Remove.
1394         (_GLIBCXX_BEGIN_NAMESPACE_ALGO): Add.
1395         (_GLIBCXX_END_NAMESPACE_ALGO): Add.
1396         (_GLIBCXX_BEGIN_NAMESPACE_CONTAINER): Add.
1397         (_GLIBCXX_END_NAMESPACE_CONTAINER): Add.
1398         (_GLIBCXX_BEGIN_NAMESPACE_VERSION): Add.
1399         (_GLIBCXX_END_NAMESPACE_VERSION): Add.
1400         (_GLIBCXX_BEGIN_LDBL_NAMESPACE): To _GLIBCXX_BEGIN_NAMESPACE_LDBL.
1401         (_GLIBCXX_END_LDBL_NAMESPACE): To _GLIBCXX_END_NAMESPACE_LDBL.
1402         (_GLIBCXX_VISIBILITY_ATTR): Revert to _GLIBCXX_VISIBILITY.
1403         * include/*: Use new macros for namespace scope.
1404         * config/*: Same.
1405         * src/*: Same.
1407         * src/Makefile.am (sources): Remove debug_list.cc, add
1408         compatibility-debug_list-2.cc.
1409         (parallel_sources): Remove parallel_list.cc, add
1410         compatibility-parallel_list-2.cc.
1411         (compatibility-parallel_list-2.[o,lo]): New rule.
1412         * src/Makefile.in: Regenerate.
1413         * src/debug_list.cc: Remove.
1414         * src/parallel_list.cc: Remove.
1415         * src/compatibility-list-2.cc: New.
1416         * src/compatibility-debug_list-2.cc: New.
1417         * src/compatibility-parallel_list-2.cc: New.
1419         * doc/doxygen/user.cfg.in: Adjust macros.
1421         * testsuite/20_util/auto_ptr/assign_neg.cc: Adjust line numbers, macros.
1422         * testsuite/20_util/declval/requirements/1_neg.cc: Same.
1423         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Same.
1424         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same.
1425         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same.
1426         * testsuite/20_util/forward/c_neg.cc: Same.
1427         * testsuite/20_util/forward/f_neg.cc: Same.
1428         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same.
1429         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
1430         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Same.
1431         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Same.
1432         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Same.
1433         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same.
1434         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Same.
1435         * testsuite/23_containers/deque/requirements/dr438/
1436         constructor_1_neg.cc: Same.
1437         * testsuite/23_containers/deque/requirements/dr438/
1438         constructor_2_neg.cc: Same.
1439         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
1440         * testsuite/23_containers/forward_list/capacity/1.cc: Same.
1441         * testsuite/23_containers/forward_list/requirements/dr438/
1442         assign_neg.cc: Same.
1443         * testsuite/23_containers/forward_list/requirements/dr438/
1444         constructor_1_neg.cc: Same.
1445         * testsuite/23_containers/forward_list/requirements/dr438/
1446         constructor_2_neg.cc: Same.
1447         * testsuite/23_containers/forward_list/requirements/dr438/
1448         insert_neg.cc: Same.
1449         * testsuite/23_containers/list/capacity/29134.cc: Same.
1450         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Same.
1451         * testsuite/23_containers/list/requirements/dr438/
1452         constructor_1_neg.cc: Same.
1453         * testsuite/23_containers/list/requirements/dr438/
1454         constructor_2_neg.cc: Same.
1455         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
1456         * testsuite/23_containers/vector/bool/capacity/29134.cc: Same.
1457         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: Same.
1458         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Same.
1459         * testsuite/23_containers/vector/requirements/dr438/
1460         constructor_1_neg.cc: Same.
1461         * testsuite/23_containers/vector/requirements/dr438/
1462         constructor_2_neg.cc: Same.
1463         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same.
1464         * testsuite/25_algorithms/sort/35588.cc: Same.
1465         * testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
1466         * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
1467         * testsuite/ext/profile/mutex_extensions_neg.cc: Same.
1468         * testsuite/ext/profile/profiler_algos.cc: Same.
1469         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Same.
1470         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Same.
1471         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Same.
1472         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Same.
1473         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
1475 2011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
1477         * doc/xml/manual/abi.xml: Adjust link to C++ ABI specification.
1478         Improve description of one such reference.
1480 2011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
1482         * doc/xml/manual/codecvt.xml: Fix link to The Austin Common
1483         Standards Revision Group.
1484         * doc/xml/manual/locale.xml: Ditto.
1485         * doc/xml/manual/messages.xml: Ditto.
1486         * doc/xml/manual/using_exceptions.xml: Ditto.
1488 2011-01-28  Paolo Carlini  <paolo.carlini@oracle.com>
1490         * include/bits/atomic_base.h: Do not include <stddef.h>.
1491         (kill_dependency): Uglify ret.
1493 2011-01-26  Johannes Singler  <singler@kit.edu>
1495         * include/parallel/numeric (inner_product, partial_sum):
1496         Qualify subsequent call with __gnu_parallel instead of
1497         _GLIBCXX_STD_P to reenable parallel execution without ambiguity.
1498         * include/parallel/algobase.h (equal): Likewise.
1499         * include/parallel/algo.h (find_first_of, search_n, merge,
1500         nth_element, partial_sort, max_element, min_element): Likewise.
1501         * testsuite/25_algorithms/headers/algorithm/
1502         parallel_algorithm_mixed1.cc (main): Add respective test cases.
1503         * testsuite/25_algorithms/headers/algorithm/
1504         parallel_algorithm_mixed2.cc (main): Likewise.
1505         * testsuite/26_numerics/headers/numeric/
1506         parallel_numeric_mixed1.cc (main): Likewise.
1507         * testsuite/26_numerics/headers/numeric/
1508         parallel_numeric_mixed2.cc (main): Likewise.
1510 2011-01-24  Graham Reed  <greed@pobox.com>
1512         PR libstdc++/47387
1513         * config/os/aix/ctype_inline.h (ctype<char>::is): Use _M_table if
1514         provided.
1516 2011-01-24  Johannes Singler  <singler@kit.edu>
1518         PR libstdc++/47433
1519         * include/parallel/losertree.h
1520         (_LoserTree<>::__delete_min_insert):
1521         Do not qualify swap with std:: for value type,
1522         but include a using directive instead.
1523         (_LoserTreeUnguarded<>::__delete_min_insert): Likewise.
1524         * include/parallel/balanced_quicksort.h (__qsb_divide):
1525         Use std::iter_swap instead of std::swap.
1526         (__qsb_local_sort_with_helping): Likewise.
1527         * include/parallel/partition.h (__parallel_partition):
1528         Likewise. (__parallel_nth_element): Likewise.
1530 2011-01-24  Johannes Singler  <singler@kit.edu>
1532         PR libstdc++/47437
1533         * include/parallel/multiway_merge.h (_UnguardedIterator):
1534         Remove useless "mutable" from reference declaration.
1536 2011-01-21  Benjamin Kosnik  <bkoz@redhat.com>
1538         * include/bits/c++config (_GLIBCXX_EXPORT_TEMPLATE): Remove.
1539         * include/debug/safe_sequence.h: Same.
1540         * include/debug/safe_iterator.h: Same.
1541         * include/std/forward_list: Same.
1542         * include/std/deque: Same.
1543         * include/std/list: Same.
1544         * include/std/random: Same.
1545         * include/std/streambuf: Same.
1546         * include/std/fstream: Same.
1547         * include/std/istream: Same.
1548         * include/std/string: Same.
1549         * include/std/ostream: Same.
1550         * include/std/sstream: Same.
1551         * include/ext/vstring.h: Same.
1552         * include/bits/basic_ios.h: Same.
1553         * include/bits/locale_classes.h: Same.
1554         * include/bits/locale_facets.h: Same.
1555         * include/bits/valarray_array.h: Same.
1556         * include/bits/locale_facets_nonio.h: Same.
1557         * include/tr1/random: Same.
1559 2011-01-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
1561         * doc/xml/manual/diagnostics.xml: Replace note about C++0x concepts.
1563 2011-01-20  Benjamin Kosnik  <bkoz@redhat.com>
1565         PR libstdc++/36104 part three
1566         * src/hashtable_c++0x.cc: Adjust namespace macros.
1567         * testsuite/util/testsuite_rvalref.h: Don't forward declare hash.
1568         * config/abi/pre/gnu-versioned-namespace.ver: Update.
1570 2011-01-20  Benjamin Kosnik  <bkoz@redhat.com>
1572         * include/ext/pb_ds/detail/resize_policy/
1573         hash_load_check_resize_trigger_imp.hpp: Adjust assert condition.
1574         * include/ext/pb_ds/detail/pat_trie_/
1575         constructors_destructor_fn_imps.hpp: Same.
1576         * include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Format.
1577         * include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
1578         * include/ext/pb_ds/detail/debug_map_base.hpp: Use never_adjustor.
1580         * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Adjust
1581         iterations downward when testing in debug mode.
1582         * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Same.
1583         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Same.
1584         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Same.
1585         * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Same.
1586         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Same.
1587         * testsuite/ext/pb_ds/example/hash_illegal_resize.cc: Use SIZE,
1588         reduce in debug mode.
1590 2011-01-19  Benjamin Kosnik  <bkoz@redhat.com>
1592         PR libstdc++/36104 part two
1593         * include/bits/hashtable.h: Revert to non-nested macro usage.
1594         * include/bits/hashtable_policy.h: Same.
1596 2011-01-19  Graham Reed  <greed@pobox.com>
1598         PR libstdc++/47354
1599         * src/bitmap_allocator.cc (free_list::_M_get): Lock mutex.
1601 2011-01-18  Benjamin Kosnik  <bkoz@redhat.com>
1603         * doc/xml/images/confdeps.png: Regenerate.
1605         * include/std/chrono (duration): Mark copy constructor constexpr.
1606         * testsuite/20_util/duration/cons/constexpr.cc: Add test.
1608 2011-01-18  Paolo Carlini  <paolo.carlini@oracle.com>
1610         * include/bits/unique_ptr.h (default_delete<>::default_delete()):
1611         Declare defaulted per DR 1517.
1612         * testsuite/util/testsuite_common_types.h
1613         (constexpr_defaulted_default_constructible): Add.
1614         * testsuite/20_util/default_delete/cons/constexpr.cc: Use it.
1616 2011-01-17  Paolo Carlini  <paolo.carlini@oracle.com>
1618         * include/bits/stl_queue.h (queue<>::swap, priority_queue<>::swap):
1619         Implement DR 1198.
1620         * include/bits/stl_stack.h (stack<>::swap): Likewise.
1622 2011-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
1624         PR libstdc++/47323
1625         * testsuite/28_regex/08_basic_regex/requirements/constexpr_data.cc:
1626         Only test wregex when _GLIBCXX_USE_WCHAR_T is defined.
1628 2011-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
1630         PR libstdc++/47320
1631         * testsuite/18_support/numeric_limits/lowest.cc:
1632         Only test wchar_t when _GLIBCXX_USE_WCHAR_T is defined.
1634 2011-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
1636         PR libstdc++/47321
1637         * testsuite/21_strings/basic_string/requirements/typedefs.cc:
1638         Only test std::wstring when _GLIBCXX_USE_WCHAR_T is defined.
1640 2011-01-16  François Dumont  <francois.cppdevs@free.fr>
1642         * testsuite/23_containers/forward_list/debug/erase_after1_neg.cc: Move
1643         to this. Use _neg suffix.
1644         * testsuite/23_containers/forward_list/debug/erase_after1.cc: ...from
1645         this.
1646         * testsuite/23_containers/forward_list/debug/erase_after2_neg.cc:
1647         Same.
1648         * testsuite/23_containers/forward_list/debug/erase_after2.cc: Same.
1649         * testsuite/23_containers/forward_list/debug/erase_after3_neg.cc:
1650         Same.
1651         * testsuite/23_containers/forward_list/debug/erase_after3.cc: Same.
1652         * testsuite/23_containers/forward_list/debug/erase_after4_neg.cc:
1653         Same.
1654         * testsuite/23_containers/forward_list/debug/erase_after4.cc: Same.
1655         * testsuite/23_containers/forward_list/debug/erase_after5_neg.cc:
1656         Same.
1657         * testsuite/23_containers/forward_list/debug/erase_after5.cc: Same.
1658         * testsuite/23_containers/forward_list/debug/erase_after6_neg.cc:
1659         Same.
1660         * testsuite/23_containers/forward_list/debug/erase_after6.cc: Same.
1661         * testsuite/23_containers/forward_list/debug/erase_after7_neg.cc:
1662         Same.
1663         * testsuite/23_containers/forward_list/debug/erase_after7.cc: Same.
1664         * testsuite/23_containers/forward_list/debug/erase_after8_neg.cc:
1665         Same.
1666         * testsuite/23_containers/forward_list/debug/erase_after8.cc: Same.
1667         * testsuite/23_containers/forward_list/debug/erase_after9_neg.cc:
1668         Same.
1669         * testsuite/23_containers/forward_list/debug/erase_after9.cc: Same.
1670         * testsuite/23_containers/forward_list/debug/insert_after1_neg.cc:
1671         Same.
1672         * testsuite/23_containers/forward_list/debug/insert_after1.cc: Same.
1673         * testsuite/23_containers/forward_list/debug/insert_after2_neg.cc:
1674         Same.
1675         * testsuite/23_containers/forward_list/debug/insert_after2.cc: Same.
1676         * testsuite/23_containers/forward_list/debug/insert_after3_neg.cc:
1677         Same.
1678         * testsuite/23_containers/forward_list/debug/insert_after3.cc: Same.
1679         * testsuite/23_containers/forward_list/debug/splice_after1_neg.cc:
1680         Same.
1681         * testsuite/23_containers/forward_list/debug/splice_after1.cc: Same.
1682         * testsuite/23_containers/forward_list/debug/splice_after2_neg.cc:
1683         Same.
1684         * testsuite/23_containers/forward_list/debug/splice_after2.cc: Same.
1685         * testsuite/23_containers/forward_list/debug/splice_after3_neg.cc:
1686         Same.
1687         * testsuite/23_containers/forward_list/debug/splice_after3.cc: Same.
1688         * testsuite/23_containers/forward_list/debug/splice_after4_neg.cc:
1689         Same.
1690         * testsuite/23_containers/forward_list/debug/splice_after4.cc: Same.
1692 2011-01-14  Benjamin Kosnik  <bkoz@redhat.com>
1694         PR libstdc++/36104
1695         * include/Makefile.am (bits_sup_headers, stamp-bits-sup): New.
1696         * include/Makefile.in: Regenerate.
1697         * libsupc++/Makefile.am (std_HEADERS, bits_HEADERS): New.
1698         (install-stdHEADERS, install-bitsHEADERS): New.
1699         * libsupc++/Makefile.in: Regenerate.
1701         * include/bits/c++config: Update for inline namespaces.
1702         * libsupc++/cxxabi-forced.h: To...
1703         * libsupc++/cxxabi_forced.h: ...this.
1704         * libsupc++/hash_bytes.h: Separate file.
1705         * libsupc++/typeinfo: Use it.
1706         * libsupc++/exception: Adjust for bits subdirectory.
1707         * libsupc++/eh_aux_runtime.cc: Same.
1708         * libsupc++/eh_ptr.cc: Same.
1709         * libsupc++/new_op.cc: Same.
1710         * libsupc++/exception_defines.h: Same.
1711         * libsupc++/nested_exception.h: Same.
1712         * libsupc++/eh_terminate.cc: Same.
1713         * libsupc++/vec.cc: Same.
1714         * libsupc++/vterminate.cc: Same.
1715         * libsupc++/exception_ptr.h: Same.
1716         * libsupc++/eh_personality.cc: Same.
1717         * libsupc++/eh_call.cc: Same.
1718         * libsupc++/new_opnt.cc: Same.
1719         * libsupc++/hash_bytes.cc: Same.
1720         * config/cpu/arm/cxxabi_tweaks.h: Same.
1721         * config/cpu/generic/cxxabi_tweaks.h: Same.
1722         * libsupc++/cxxabi.h: Same. Consolidate _GLIBCXX_NOTHROW defines.
1723         * include/std/bitset: Same.
1724         * include/ext/vstring.tcc: Same.
1725         * include/bits/hashtable.h: Same.
1726         * include/bits/functional_hash.h: Same.
1727         * include/bits/hashtable_policy.h: Same.
1728         * include/bits/basic_string.h: Same.
1729         * include/bits/istream.tcc: Same.
1730         * include/bits/ostream.tcc: Same.
1731         * include/bits/algorithmfwd.h: Same.
1732         * include/bits/basic_string.tcc: Same.
1733         * include/bits/ostream_insert.h: Same.
1734         * include/bits/fstream.tcc: Same.
1735         * include/bits/functexcept.h: Same.
1737         * doc/doxygen/user.cfg.in: Adjust names.
1739         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
1741 2011-01-14  Paolo Carlini  <paolo.carlini@oracle.com>
1743         * testsuite/25_algorithms/is_permutation/check_type.cc: Minor
1744         tweaks.
1745         * testsuite/25_algorithms/is_permutation/1.cc: Cosmetic changes.
1747 2011-01-13  Paolo Carlini  <paolo.carlini@oracle.com>
1749         * testsuite/25_algorithms/is_permutation/check_type.cc: New.
1750         * testsuite/25_algorithms/is_permutation/requirements/
1751         explicit_instantiation/2.cc: Likewise.
1752         * testsuite/25_algorithms/is_permutation/requirements/
1753         explicit_instantiation/pod.cc: Likewise.
1754         * testsuite/25_algorithms/is_permutation/1.cc: Likewise.
1756 2011-01-13  John Lakos  <jlakos@bloomberg.net>
1757             Pablo Halpern  <phalpern@halpernwightsoftware.com>
1758             Paolo Carlini  <paolo.carlini@oracle.com>
1760         * include/bits/stl_algo.h (is_permutation): Add, per N3068.
1761         * include/bits/algorithmfwd.h: Add.
1763 2011-01-13  Jonathan Wakely  <jwakely.gcc@gmail.com>
1765         PR libstdc++/47045
1766         * config/os/bsd/netbsd/ctype_base.h: Use new macros based on version.
1768 2011-01-11  Paolo Carlini  <paolo.carlini@oracle.com>
1770         * aclocal.m4: Regenerate.
1772 2011-01-06  Paolo Carlini  <paolo.carlini@oracle.com>
1774         PR libstdc++/47185
1775         * src/placeholders.cc: New.
1776         * src/Makefile.am: Adjust.
1777         * src/Makefile.in: Regenerate.
1778         * include/std/functional (placeholders::_1, _2, ..., _29): Declare
1779         extern.
1780         * config/abi/pre/gnu.ver: Export.
1782 2011-01-05  François Dumont  <francois.cppdevs@free.fr>
1784         * include/debug/safe_base.h (_Safe_iterator_base::_M_unlink): New.
1785         * include/src/debug.cc: Use latter
1786         * include/debug/forward_list (forward_list<>::_M_swap):  Fix to
1787         correctly handle before_begin iterators.
1788         * testsuite/23_containers/forward_list/debug/swap.cc: Remove now
1789         useless _GLIBCXX_DEBUG checks.
1791 2011-01-04  Kai Tietz  <kai.tietz@onevision.com>
1793         PR libstdc++/47145
1794         * configure.ac (AC_CHECK_FILE): Replaced by test -f.
1795         * configure: Regenerated.
1797 2011-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
1799         PR libstdc++/46922
1800         * config/abi/pre/gnu.ver: Export std::bad_function_call symbols.
1803 Copyright (C) 2011 Free Software Foundation, Inc.
1805 Copying and distribution of this file, with or without modification,
1806 are permitted in any medium without royalty provided the copyright
1807 notice and this notice are preserved.