OSDN Git Service

0aba8f3b186c8b82f5fa099596380e601958da85
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2011-10-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
2
3         PR libstdc++/50834
4         * doc/xml/manual/using.xml: Update thread safety docs w.r.t. C++11.
5
6 2011-10-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
7
8         PR libstdc++/50196
9         * acinclude.m4 (GLIBCXX_HAS_GTHREADS): Don't depend on _POSIX_TIMEOUTS.
10         * configure: Regenerate.
11         * include/std/mutex (timed_mutex, recursive_timed_mutex): Define
12         conditionally on GTHREADS_HAS_MUTEX_TIMEDLOCK.
13         * testsuite/lib/libstdc++.exp (check_v3_target_gthreads_timed): Define.
14         * testsuite/lib/dg-options.exp (dg-require-gthreads-timed): Define.
15         * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
16         Use dg-require-gthreads-timed instead of dg-require-gthreads.
17         * testsuite/30_threads/recursive_timed_mutex/native_handle/
18         typesizes.cc: Likewise.
19         * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
20         Likewise.
21         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
22         Likewise.
23         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
24         Likewise.
25         * testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc:
26         Likewise.
27         * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
28         * testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc:
29         Likewise.
30         * testsuite/30_threads/recursive_timed_mutex/requirements/typedefs.cc:
31         Likewise.
32         * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
33         * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
34         * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
35         * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
36         * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
37         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
38         Likewise.
39         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
40         Likewise.
41         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
42         Likewise.
43         * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
44         * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc:
45         Likewise.
46         * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
47         * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
48         * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
49         * testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
50         * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
51         * testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Likewise.
52         * testsuite/30_threads/timed_mutex/requirements/standard_layout.cc:
53         Likewise.
54         * testsuite/30_threads/timed_mutex/requirements/typedefs.cc: Likewise.
55         * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
56         * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
57         * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
58         * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
59         * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
60         * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
61         * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
62         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
63         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
64         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
65         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
66
67 2011-10-19  Ed Smith-Rowland  <3dw4rd@verizon.net>
68
69         * include/tr2/bool_set (bool_set): New.
70         * include/tr2/bool_set.tcc: New.
71         * include/tr2/dynamic_bitset (dynamic_bitset): New.
72         * include/tr2/ratio (kibi, mebi, gibi, tebi, pebi, exbi): New.
73         * include/Makefile.am: Add files.
74         * include/Makefile.in: Regenerate.
75
76 2011-10-19  Benjamin Kosnik  <bkoz@redhat.com>
77
78         * doc/doxygen/user.cfg.in: Add tr2 files.
79         * testsuite/tr2/headers/all.cc: New.
80         * testsuite/tr2/headers/using_namespace_std_tr2.cc: New.
81
82         * include/tr2/type_traits: Tweak.
83
84 2011-10-18  Jason Merrill  <jason@redhat.com>
85
86         PR c++/50500
87         * include/bits/shared_ptr.h: Default copy ctor and assignment.
88         * testsuite/util/testsuite_allocator.h: Define copy assignment.
89         * testsuite/util/testsuite_rvalref.h: Default copy assignment.
90         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Remove note tags.
91
92 2011-10-17  Michael Spertus  <mike_spertus@symantec.com>
93
94         * include/tr2/type_traits (bases, direct_bases, typelist): New.
95
96 2011-10-17  Benjamin Kosnik  <bkoz@redhat.com>
97
98         * libstdc++-v3/include/Makefile.am: Add tr2 directory and includes.
99         * libstdc++-v3/include/Makefile.in: Regenerate.
100
101         * scripts/create_testsuite_files: Search tr2 directory.
102         * testsuite/libstdc++-dg/conformance.exp: Same.
103
104         * testsuite/tr2/bases/requirements/explicit_instantiation.cc: New.
105         * testsuite/tr2/bases/requirements/typedefs.cc: New.
106         * testsuite/tr2/bases/value.cc: New.
107         * testsuite/tr2/direct_bases/requirements/
108         explicit_instantiation.cc: New.
109         * testsuite/tr2/direct_bases/requirements/typedefs.cc: New.
110         * testsuite/tr2/direct_bases/value.cc: New.
111
112 2011-10-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
113
114         PR bootstrap/50715
115         * config/abi/pre/gnu.ver (CXXABI_1.3.6): Remove duplicate
116         __cxa_get_exception_ptr.
117
118 2011-10-14  François Dumont  <francois.cppdevs@free.fr>
119
120         * testsuite/performance/23_containers/insert_erase/41975.cc: New.
121
122 2011-10-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
123
124         * testsuite/22_locale/codecvt_byname/50714.cc: Fix mychar.
125
126 2011-10-14  Jonathan Yong  <jon_y@users.sourceforge.net>
127
128         * configure.host: Use config/os/mingw32-w64 instead of
129         config/os/mingw32 if vendor key is "w64".
130         * config/os/mingw32-w64: Duplicate from config/os/mingw32.
131         * config/os/mingw32-w64/os_defines.h: Enable
132         _GLIBCXX_FULLY_DYNAMIC_STRING if undefined.
133         * acinclude.m4: Set fully-dynamic-string to 1 when enabled,
134         0 when disabled or undefined if unset by user.
135         * include/bits/basic_string.h: Check if
136         _GLIBCXX_FULLY_DYNAMIC_STRING is set to 0 instead of undefined.
137         include/bits/basic_string.tcc: Likewise.
138         * configure: Regenerated.
139         * config.h.in: Likewise.
140
141 2011-10-13  Paolo Carlini  <paolo.carlini@oracle.com>
142
143         PR libstdc++/50714
144         * include/bits/codecvt.h (codecvt<>::codecvt(size_t)): Initialize
145         _M_c_locale_codecvt member.
146         * testsuite/22_locale/codecvt_byname/50714.cc: New.
147
148 2011-10-12  Paolo Carlini  <paolo.carlini@oracle.com>
149
150         PR c++/50594
151         * libsupc++/new (operator new, operator delete): Decorate with
152         __attribute__((__externally_visible__)).
153         * include/bits/c++config: Add _GLIBCXX_THROW.
154         * libsupc++/del_op.cc: Adjust.
155         * libsupc++/del_opv.cc: Likewise.
156         * libsupc++/del_opnt.cc: Likewise.
157         * libsupc++/del_opvnt.cc: Likewise.
158         * libsupc++/new_op.cc: Likewise.
159         * libsupc++/new_opv.cc: Likewise.
160         * libsupc++/new_opnt.cc: Likewise.
161         * libsupc++/new_opvnt.cc: Likewise.
162         * testsuite/18_support/50594.cc: New.
163         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
164         line number.
165
166 2011-10-11  Emil Wojak  <emil@wojak.eu>
167
168         PR c++/50661
169         * include/bits/stl_algobase.h (equal): Compare arrays of pointers
170         too with memcmp.
171
172 2011-10-10  Benjamin Kosnik  <bkoz@redhat.com>
173
174         PR libstdc++/49818
175         * config/abi/pre/gnu.ver (CXXABI_1.3.6): Add symbols.
176         * testsuite/util/testsuite_abi.cc: Same.
177         * libsupc++/unwind-cxx.h: Move required eh API...
178         * libsupc++/cxxabi.h: ... to here. Add required forward declarations.
179         Use _GLIBCXX_NOTHROW.
180         * libsupc++/pure.cc (__cxa_deleted_virtual): Add.
181         * libsupc++/eh_alloc.cc: Use _GLIBCXX_NOTHROW.
182         * libsupc++/eh_catch.cc: Same.
183         * libsupc++/eh_globals.cc: Same.
184         * libsupc++/eh_type.cc: Same.
185
186 2011-10-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
187
188         * testsuite/util/testsuite_allocator.h (uneq_allocator): Add
189         propagate_on_container_swap typedef for C++0x testing.
190
191 2011-10-06  Paolo Carlini  <paolo.carlini@oracle.com>
192
193         * testsuite/27_io/ios_base/cons/assign_neg.cc: Tidy dg- directives,
194         for C++0x testing too.
195         * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
196         * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Likewise.
197         * testsuite/24_iterators/istreambuf_iterator/requirements/
198         base_classes.cc: Adjust for C++0x testing.
199         * testsuite/ext/codecvt/char-1.cc: Avoid warnings in C++0x mode.
200         * testsuite/ext/codecvt/char-2.cc: Likewise.
201         * testsuite/ext/codecvt/wchar_t.cc: Likewise.
202
203 2011-10-05  Paolo Carlini  <paolo.carlini@oracle.com>
204
205         * include/ext/pod_char_traits.h: Avoid warnings in C++0x mode
206         when int_type is unsigned.
207
208 2011-10-04  Paolo Carlini  <paolo.carlini@oracle.com>
209
210         PR libstdc++/49561
211         * include/bits/stl_list.h (_List_base<>::_List_impl::_M_size):
212         Add in C++0x mode.
213         (_List_base<>::_List_impl, _List_base<>::_M_get_node,
214         _List_base<>::_M_put_node, _List_base<>::_List_base(_List_base&&),
215         list<>::size, list<>::swap, list<>::splice): Use it.
216         (operator==(const list<>&, const list<>&)): Rewrite in C++0x mode.
217         * include/bits/list.tcc (list<>::erase): Likewise.
218         (list<>::merge): Adjust in C++0x mode.
219         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
220         Adjust dg-error line number.
221         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
222         Likewise.
223         * testsuite/23_containers/list/requirements/dr438/
224         constructor_1_neg.cc: Likewise.
225         * testsuite/23_containers/list/requirements/dr438/
226         constructor_2_neg.cc: Likewise.
227
228 2011-10-04  Paolo Carlini  <paolo.carlini@oracle.com>
229
230         * testsuite/20_util/bind/48698.cc (g): Fix return type, avoid -Wall
231         warning.
232
233 2011-10-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
234
235         * include/ext/alloc_traits.h (__alloc_traits::max_size): Define.
236         (__alloc_traits::rebind): Define.
237         * include/bits/stl_vector.h: Use them.
238         * testsuite/util/testsuite_allocator.h (SimpleAllocator): Define.
239         * testsuite/23_containers/vector/allocator/minimal.cc: New.
240         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
241         Adjust dg-error line numbers.
242         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
243         Likewise.
244         * testsuite/23_containers/vector/requirements/dr438/
245         constructor_1_neg.cc: Likewise.
246         * testsuite/23_containers/vector/requirements/dr438/
247         constructor_2_neg.cc: Likewise.
248
249 2011-10-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
250
251         * testsuite/20_util/pointer_traits/pointer_to.cc: Define equality
252         operator and use.
253
254 2011-10-03  Paolo Carlini  <paolo.carlini@oracle.com>
255
256         * include/bits/hashtable.h (_Hashtable<>::insert(value_type&&),
257         insert(const_iterator, value_type&&)): Don't define here...
258         * include/bits/unordered_set.h (__unordered_set<>,
259         __unordered_multiset<>): ... define here instead.
260
261 2011-09-29  Jason Merrill  <jason@redhat.com>
262
263         * testsuite/util/testsuite_tr1.h (test_property): Avoid
264         ambiguity.
265
266 2011-10-01  François Dumont  <fdumont@gcc.gnu.org>
267
268         * include/debug/vector (vector<>::erase(iterator, iterator): Check
269         iterators equality using normal iterators.
270         * include/debug/deque (deque<>::erase(iterator, iterator): Likewise.
271
272 2011-09-29  Paolo Carlini  <paolo.carlini@oracle.com>
273
274         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
275         Remove noexcept from declaration too.
276
277 2011-09-27  Benjamin Kosnik  <bkoz@redhat.com>
278
279         * doc/html/*: Regenerate.
280
281         * doc/Makefile.am: Un-nest the ext output directory.
282         * doc/Makefile.in: Regenerate.
283         * spine.xml: Remove authors, add abstract for short
284         contents. Rename to index.html for html output.
285         * manual/spine.xml: Authors here, manual starts with index.html.
286         * api.xml: Update.
287         * faq.xml: Same.
288
289 2011-09-27  Marcus Shawcroft  <marcus.shawcroft@arm.com>
290
291         * libsupc++/tinfo.cc (type_info::operator==): Test __name instead
292         of name().
293
294 2011-09-26  Paolo Carlini  <paolo.carlini@oracle.com>
295
296         PR libstdc++/50529
297         * include/bits/vector.tcc (vector<>::erase(iterator, iterator)):
298         Fix to do nothing if the range is empty.
299         * include/bits/stl_bvector.h: Likewise.
300         * include/bits/deque.tcc: Likewise.
301         * include/debug/vector: Adjust.
302         * include/debug/deque: Likewise.
303         * testsuite/23_containers/vector/modifiers/erase/50529.cc: New.
304         * testsuite/23_containers/deque/modifiers/erase/50529.cc: Likewise.
305         * testsuite/23_containers/deque/modifiers/erase/3.cc: Adjust.
306
307 2011-09-25  Benjamin Kosnik  <bkoz@redhat.com>
308             Jonathan Wakely  <jwakely.gcc@gmail.com>
309
310         PR libstdc++/48698
311         * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Set libtool_VERSION here.
312         * configure.ac: Move AC_SUBST of libtool_VERSION past call to
313         GLIBCXX_ENABLE_SYMVERS.
314         * configure: Regenerate.
315         * include/bits/c++config: Use __7 as versioned namespace name.
316         * config/abi/pre/gnu-versioned-namespace.ver: Change mangling as
317         per above.
318         * include/c_global/cwchar: Adjust nested namespaces.
319         * testsuite/20_util/bind/48698.cc: Add test case.
320         * testsuite/ext/profile/mutex_extensions_neg.cc: Change line number.
321
322 2011-09-25  Paolo Carlini  <paolo.carlini@oracle.com>
323
324         Revert (no longer necessary post r179130):
325
326         2010-04-27  Fabien Chêne  <fabien.chene@gmail.com>
327
328         * testsuite/util/testsuite_error.h: Add empty default constructor
329         to __gnu_test::test_category and
330         __gnu_test::test_derived_category.
331         * src/future.cc: Add empty default constructor to
332         future_error_category.
333         * src/system_error.cc: Add default ctor to generic_error_category
334         and system_error_category.
335
336 2011-09-24  John Salmon  <john.salmon@deshaw.com>
337
338         PR libstdc++/50510
339         * include/bits/random.tcc (seed_seq::generate): Fix computation.
340
341 2011-09-24  John Salmon  <john.salmon@deshaw.com>
342
343         PR libstdc++/50509
344         * include/bits/random.tcc (seed_seq::generate): Fix computation.
345
346 2011-09-21  Benjamin Kosnik  <bkoz@redhat.com
347
348         * doc/Makefile.am (stamp-epub-docbook): Fix image directory location.
349         * doc/Makefile.in: Regenerate.
350
351 2011-09-21  Paolo Carlini  <paolo.carlini@oracle.com>
352
353         * src/limits.cc: Replace everywhere __int128_t -> __int128, and
354         __uint128_t -> unsigned __int128.
355         * include/std/type_traits: Likewise.
356         * include/std/limits: Likewise.
357         * testsuite/18_support/numeric_limits/dr559.cc: Likewise.
358         * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
359         * testsuite/18_support/numeric_limits/40856.cc: Likewise.
360         * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
361         * testsuite/util/testsuite_common_types.h: Likewise.
362         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Likewise.
363         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
364         * testsuite/20_util/is_floating_point/value.cc: Likewise.
365         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise.
366         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
367         * testsuite/20_util/is_signed/value.cc: Likewise.
368         * testsuite/20_util/is_unsigned/value.cc: Likewise.
369         * testsuite/20_util/is_integral/value.cc: Likewise.
370         * config/abi/pre/gnu.ver: Likewise.
371         * acinclude.m4: Likewise.
372         * configure: Regenerate.
373         * config.h.in: Likewise.
374
375 2011-09-19  Paolo Carlini  <paolo.carlini@oracle.com>
376
377         PR libstdc++/40856
378         * include/std/limits (numeric_limits<__int128_t>,
379         numeric_limits<__uint128_t>): Add.
380         * src/limits.cc:Define.
381         * config/abi/pre/gnu.ver: Export.
382         * include/ext/typelist.h (_GLIBCXX_TYPELIST_CHAIN16, 20): Add.
383         * testsuite/util/testsuite_common_types.h (integral_types_gnu): Add
384         (limits_tl): Use it.
385         * testsuite/18_support/numeric_limits/requirements/
386         constexpr_functions.cc: Likewise.
387         * testsuite/18_support/numeric_limits/40856.cc: New.
388         * testsuite/18_support/numeric_limits/dr559.cc: Extend.
389         * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
390         * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
391         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-error
392         line numbers.
393         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
394         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Likewise.
395         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
396         * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
397         Likewise.
398         * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc:
399         Likewise.
400         * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
401         Likewise.
402
403 2011-09-17  Paolo Carlini  <paolo.carlini@oracle.com>
404
405         PR libstdc++/50441
406         * acinclude.m4 ([GLIBCXX_ENABLE_INT128_FLOAT128]): Add.
407         * configure.ac: Call it.
408         * include/std/type_traits (__is_integral_helper<__int128_t>,
409         __is_integral_helper<__uint128_t>,
410         __is_floating_point_helper<__float128>,
411         __make_unsigned<__int128_t>, __make_signed<__uint128_t>): Add.
412         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Extend.
413         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
414         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise.
415         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
416         * testsuite/20_util/is_signed/value.cc: Likewise.
417         * testsuite/20_util/is_unsigned/value.cc: Likewise.
418         * testsuite/20_util/is_integral/value.cc: Likewise.
419         * testsuite/20_util/is_floating_point/value.cc: New.
420         * testsuite/20_util/is_floating_point/requirements/typedefs.cc:
421         Likewise.
422         * testsuite/20_util/is_floating_point/requirements/
423         explicit_instantiation.cc: Likewise.
424         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
425         dg-error line numbers.
426         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
427         Likewise.
428         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
429         * configure: Regenerate.
430         * config.h.in: Likewise.
431
432 2011-09-17  François Dumont  <fdumont@gcc.gnu.org>
433
434         * include/bits/hashtable.h (_Hashtable<>::__rehash_policy(const
435         _RehashPolicy&)): Commit the modification of the policy only if no
436         exception occured.
437         * testsuite/23_containers/unordered_set/max_load_factor/robustness.cc:
438         New.
439
440 2011-09-16  Paolo Carlini  <paolo.carlini@oracle.com>
441
442         * testsuite/23_containers/array/comparison_operators/
443         less_or_equal.cc: New.
444         * testsuite/23_containers/array/comparison_operators/
445         greater_or_equal.cc: Likewise.
446         * testsuite/23_containers/array/comparison_operators/less.cc: Likewise.
447         * testsuite/23_containers/array/comparison_operators/equal.cc: Likewise.
448         * testsuite/23_containers/array/comparison_operators/not_equal.cc:
449         Likewise.
450         * testsuite/23_containers/array/comparison_operators/greater.cc:
451         Likewise.
452         * testsuite/23_containers/array/iterators/end_is_one_past.cc: Likewise.
453         * testsuite/23_containers/array/capacity/empty.cc: Likewise.
454         * testsuite/23_containers/array/capacity/max_size.cc: Likewise.
455         * testsuite/23_containers/array/capacity/size.cc: Likewise.
456         * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
457         Likewise.
458         * testsuite/23_containers/array/tuple_interface/tuple_size.cc:
459         Likewise.
460         * testsuite/23_containers/array/element_access/at_out_of_range.cc:
461         Likewise.
462         * testsuite/23_containers/array/element_access/back.cc: Likewise.
463         * testsuite/23_containers/array/element_access/front.cc: Likewise.
464         * testsuite/23_containers/array/element_access/data.cc: Likewise.
465         * testsuite/23_containers/array/cons/aggregate_initialization.cc:
466         Likewise.
467         * testsuite/23_containers/array/requirements/zero_sized_arrays.cc:
468         Likewise.
469         * testsuite/23_containers/array/requirements/contiguous.cc: Likewise.
470         * testsuite/23_containers/array/requirements/member_swap.cc: Likewise.
471         * testsuite/23_containers/array/specialized_algorithms/swap.cc:
472         Likewise.
473         * testsuite/23_containers/array/constexpr_get.cc: Move...
474         * testsuite/23_containers/array/tuple_interface/constexpr_get.cc:
475         ... here.
476         * testsuite/23_containers/array/requirements/get.cc: Move...
477         * testsuite/23_containers/array/tuple_interface/get: ... here.
478         * testsuite/23_containers/array/at_neg.cc: Move...
479         * testsuite/23_containers/array/element_access: ... here.
480         * testsuite/23_containers/array/requirements/constexpr_functions.cc:
481         Move...
482         * testsuite/23_containers/array/capacity: ... here.
483         * testsuite/23_containers/array/requirements/
484         constexpr_element_access.cc: Move...
485         * testsuite/23_containers/array/element_access: ... here.
486
487         * testsuite/20_util/duration/cons/1_neg.cc: Avoid -Wall warnings.
488         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Likewise.
489         * testsuite/20_util/pair/make_pair/constexpr.cc: Likewise.
490         * testsuite/20_util/time_point/nonmember/constexpr.cc: Likewise.
491         * testsuite/23_containers/bitset/operations/constexpr.cc: Likewise.
492
493         * testsuite/20_util/duration/cons/1_neg.cc: Discard bogus warning.
494         * testsuite/20_util/forward/1_neg.cc: Likewise.
495
496 2011-09-15  Paolo Carlini  <paolo.carlini@oracle.com>
497
498         * include/std/tuple (make_tuple, forward_as_tuple): Declare constexpr.
499         (_Tuple_impl<>::_Tuple_impl(_Tuple_impl<>&&)): Likewise.
500         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Enable
501         make_tuple test.
502         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
503         line number.
504
505 2011-09-14  François Dumont  <fdumont@gcc.gnu.org>
506             Paolo Carlini  <paolo.carlini@oracle.com>
507
508         * include/bits/hashtable.h (_Hashtable<>::_M_rehash): Take and restore
509         hash policy _M_prev_resize on exception.
510         (_Hashtable<>::_M_insert_bucket): Capture hash policy next resize
511         before using it and use latter method to have it restored on exception.
512         (_Hashtable<>::_M_insert(_Arg&& __v, std::false_type): Likewise.
513         (_Hashtable<>::insert(_InputIterator, _InputIterator): Likewise.
514         (_Hashtable<>::rehash): Likewise.
515         * testsuite/23_containers/unordered_set/insert/hash_policy.cc: New.
516         * testsuite/23_containers/unordered_multiset/insert/hash_policy.cc:
517         Likewise.
518
519 2011-09-13  Paul Brook  <paul@codesourcery.com>
520
521         * libsupc++/eh_arm.cc (__cxa_end_cleanup): Add C6X implementation.
522         * libsupc++/eh_call.cc (__cxa_call_unexpected): Set rtti_base.
523         * libsupc++/eh_personality.cc (NO_SIZE_OF_ENCODED_VALUE): Remove
524         __ARM_EABI_UNWINDER__ check.
525         (parse_lsda_header): Check _GLIBCXX_OVERRIDE_TTYPE_ENCODING.
526         (get_ttype_entry): Use generic implementation on ARM EABI.
527         (check_exception_spec): Use _Unwind_decode_typeinfo_ptr and
528         UNWIND_STACK_REG.
529         (PERSONALITY_FUNCTION): Set ttype_base.
530
531 2011-09-12  Daniel Krugler  <daniel.kruegler@googlemail.com>
532             Paolo Carlini  <paolo.carlini@oracle.com>
533
534         * include/std/tuple (_Head_base<>::_M_head, _Head_base<>::_M_tail,
535         _Tuple_impl<>::_M_head, _Tuple_impl<>::_M_tail): Change to static
536         constexpr functions; adjust everywhere.
537         (__get_helper, get): Declare constexpr all three overloads.
538         (tuple_cat): Declare constexpr; use late return type to improve
539         error messages.
540         * include/std/utility (__pair_get<>::__get, __pair_get<>::__move_get,
541         __pair_get<>::__const_get, get): Declare all constexpr.
542         * include/std/array (get): Likewise.
543         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Re-enable
544         tuple_cat test.
545         * testsuite/23_containers/array/constexpr_get.cc: New.
546         * testsuite/20_util/tuple/element_access/constexpr_get.cc: Likewise.
547         * testsuite/20_util/pair/constexpr_get.cc: Likewise.
548         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
549         line number.
550
551 2011-09-12  Jason Merrill  <jason@redhat.com>
552
553         * testsuite/20_util/is_constructible/value-2.cc: Adjust
554         expected values.
555
556 2011-09-11  Daniel Krugler  <daniel.kruegler@googlemail.com>
557
558         PR libstdc++/50159
559         * include/std/tuple (tuple_cat): Reimplement according to the
560         resolution of LWG 1385.
561         * include/std/type_traits: Define __and_ and __or_ for zero
562         arguments too; minor tweaks.
563         * testsuite/20_util/tuple/creation_functions/tuple_cat.cc: New.
564         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Disable
565         for now tuple_cat test.
566         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
567         line numbers.
568         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
569         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
570         Likewise.
571         * doc/xml/manual/status_cxx200x.xml: Update.
572
573 2011-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
574
575         * include/std/tuple: Use everywhere std::size_t... instead of int...
576         * include/std/functional: Likewise.
577         * include/std/scoped_allocator: Likewise.
578         * include/bits/stl_pair.h: Likewise.
579
580 2011-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
581
582         PR libstdc++/50336
583         * include/bits/streambuf_iterator.h (class istreambuf_iterator):
584         Implement LWG 445 in C++0x mode.
585         * testsuite/24_iterators/istreambuf_iterator/requirements/dr445.cc:
586         New.
587
588 2011-09-08  Dodji Seketeli  <dodji@redhat.com>
589
590         PR c++/33255 - Support -Wunused-local-typedefs warning
591         * include/ext/bitmap_allocator.h
592         (__detail::__mini_vector::__lower_bound): Remove unused typedef.
593         * src/istream.cc (std::operator>>(basic_istream<char>& __in,
594         basic_string<char>& __str)): Likewise.
595         (std::getline): Likewise.
596         * src/valarray.cc (__valarray_product): Likewise.
597
598 2011-09-07  François Dumont  <francois.cppdevs@free.fr>
599
600         * testsuite/23_containers/array/at.cc: Revert to...
601         * testsuite/23_containers/array/at_neg.cc: ...this.
602
603 2011-09-07  Jason Merrill  <jason@redhat.com>
604
605         * testsuite/20_util/bind/ref_neg.cc: Adjust errors.
606         * testsuite/20_util/duration/cons/1_neg.cc: Adjust errors.
607
608 2011-09-06  Benjamin Kosnik  <bkoz@redhat.com>
609
610         * include/std/tuple (_Tuple_impl::_M_head, _M_tail): Mark constexpr.
611         (tuple(tuple&&)): Same.
612         (tuple(const tuple<_UElements...>& __in)): Same.
613         (tuple(tuple<_UElements...>&& __in)): Same.
614         (tuple_cat(const tuple<_TElements...>&, const tuple<_UElements...>&)):
615         Same.
616         (get): Same.
617         * include/std/array: Consolidate array::data usage.
618         * testsuite/23_containers/array/requirements/constexpr_functions.cc:
619         Remove extra include.
620         * testsuite/20_util/tuple/creation_functions/constexpr.cc: New.
621         * testsuite/20_util/tuple/cons/constexpr-2.cc: Add tests.
622         * testsuite/20_util/tuple/cons/constexpr-3.cc: Same.
623         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line numbers.
624
625 2011-09-06  François Dumont  <fdumont@gcc.gnu.org>
626             Paolo Carlini  <paolo.carlini@oracle.com>
627
628         * include/bits/hashtable_policy.h (_Prime_rehash_policy::
629         _M_next_bkt): Cast _M_max_load_factor to long double.
630         (_Prime_rehash_policy::_M_bkt_for_elements): Use _M_next_bkt.
631         (_Prime_rehash_policy::_M_need_rehash): Likewise; cast all
632         float quantities to long double.
633
634 2011-09-06  Paolo Carlini  <paolo.carlini@oracle.com>
635
636         PR libstdc++/50257
637         * include/bits/hashtable_policy.h (_Prime_rehash_policy::
638         _M_next_bkt): Optimize for small argument.
639
640 2011-09-02  François Dumont  <fdumont@gcc.gnu.org>
641
642         * testsuite/util/testsuite_allocator.h (tracker_allocator_counter::
643         allocate): Update allocation count only if allocation succeeded.
644
645 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
646
647         * include/std/bitset: Trivial formatting fixes.
648
649 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
650             Marc Glisse  <marc.glisse@normalesup.org>
651
652         * include/std/bitset (_Base_bitset<>::_M_are_all_aux): Remove.
653         (_Base_bitset<>::_M_are_all): Add.
654         (bitset<>::all): Use the latter, improve implementation.
655
656 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
657             Marc Glisse  <marc.glisse@normalesup.org>
658
659         PR libstdc++/50268
660         * include/std/bitset (struct _Sanitize_val): Add.
661         (bitset<>::bitset(unsigned long long)): Fix.
662         * testsuite/23_containers/bitset/cons/50268.cc: New.
663
664 2011-09-01  Paolo Carlini  <paolo.carlini@oracle.com>
665
666         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
667         Remove noexcept, the move constructor allocates memory; rearrange
668         the code in the body to consistently update __ht._M_rehash_policy
669         before using _M_next_bkt on it.
670         * include/debug/unordered_map: Adjust.
671         * include/debug/unordered_set: Likewise.
672         * include/profile/unordered_map: Likewise.
673         * include/profile/unordered_set: Likewise.
674         * testsuite/23_containers/unordered_map/cons/
675         noexcept_move_construct.cc: Remove.
676         * testsuite/23_containers/unordered_set/cons/
677         noexcept_move_construct.cc: Likewise.
678         * testsuite/23_containers/unordered_multimap/cons/
679         noexcept_move_construct.cc: Likewise.
680         * testsuite/23_containers/unordered_multiset/cons/
681         noexcept_move_construct.cc: Likewise.
682
683 2011-08-31  Paolo Carlini  <paolo.carlini@oracle.com>
684
685         * include/std/chrono (operator*(const _Rep1&, const duration<>&)):
686         Fix order of template parameters per LWG 2004.
687
688 2011-08-30  Paolo Carlini  <paolo.carlini@oracle.com>
689
690         * include/bits/stl_iterator.h (make_move_iterator): Implement DR2061.
691         * testsuite/24_iterators/move_iterator/dr2061.cc: New.
692         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
693         line numbers.
694
695 2011-08-30  Paolo Carlini  <paolo.carlini@oracle.com>
696
697         * config/os/mingw32/error_constants.h: Fix commas.
698
699 2011-08-29  Benjamin Kosnik  <bkoz@redhat.com>
700
701         * testsuite/20_util/duration/arithmetic/constexpr.cc: Add.
702
703 2011-08-29  Kai Tietz  <ktietz@redhat.com>
704
705         * configure: Regenerated.
706         * config.h.in: Regenerated.
707         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR)  Add
708         checks for ECHILD, ENOSPC, EPERM, ETIMEDOUT, and
709         EWOULDBLOCK.
710         * config/os/mingw32/error_constants.h (errc): Add
711         enumerator values no_child_process, no_space_on_device,
712         not_supported, operation_not_permitted, operation_would_block,
713         timed_out, and value_too_large,
714
715 2011-08-29  Paolo Carlini  <paolo.carlini@oracle.com>
716
717         PR libstdc++/50118
718         * include/bits/stl_list.h (_List_base<>::
719         _List_base(const allocator_type&)): Remove.
720         (_List_base<>::_List_base(const _Node_alloc_type&)): Add.
721         (list<>:list(const allocator_type&), list(size_type, const
722         value_type&, const allocator_type&),
723         list(initializer_list<, const allocator_type&),
724         list(_InputIterator, _InputIterator, const allocator_type&),
725         insert(iterator, size_type, const value_type&),
726         insert(iterator, _InputIterator, _InputIterator)): Adjust.
727         * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(const _Compare&,
728         const allocator_type&)): Fix.
729         * include/bits/stl_map.h (map<>::map(const _Compare&,
730         const allocator_type&), map(initializer_list<>,
731         const _Compare&, const allocator_type&), map(_InputIterator,
732         _InputIterator, const _Compare&, const allocator_type&),
733         get_allocator): Adjust.
734         * include/bits/stl_set.h (set<>::set(const _Compare&,
735         const allocator_type&), set(initializer_list<>,
736         const _Compare&, const allocator_type&), set(_InputIterator,
737         _InputIterator, const _Compare&, const allocator_type&),
738         get_allocator): Likewise.
739         * include/bits/stl_multimap.h (multimap<>::multimap(const _Compare&,
740         const allocator_type&), multimap(initializer_list<>,
741         const _Compare&, const allocator_type&), multimap(_InputIterator,
742         _InputIterator, const _Compare&, const allocator_type&),
743         get_allocator): Likewise.
744         * include/bits/stl_multiset.h (multiset<>::multiset(const _Compare&,
745         const allocator_type&), multiset(initializer_list<>,
746         const _Compare&, const allocator_type&), multiset(_InputIterator,
747         _InputIterator, const _Compare&, const allocator_type&),
748         get_allocator): Likewise.
749         * include/bits/forward_list.h (_Fwd_list_base<>::
750         _Fwd_list_base(const _Alloc&), _Fwd_list_base(const _Fwd_list_base&,
751         const _Alloc&), _Fwd_list_base(_Fwd_list_base&&, const _Alloc&)):
752         Remove.
753         (_Fwd_list_base<>::_Fwd_list_base(const _Node_alloc_type&),
754         _Fwd_list_base(const _Fwd_list_base&,
755         const _Node_alloc_type&), _Fwd_list_base(_Fwd_list_base&&,
756         const _Node_alloc_type&)): Add.
757         (forward_list<>::forward_list(const _Alloc&),
758         forward_list(const forward_list&, const _Alloc&),
759         forward_list(forward_list&&, const _Alloc&),
760         forward_list(size_type, const _Tp&, const _Alloc&),
761         forward_list(_InputIterator, _InputIterator, const _Alloc&),
762         forward_list(std::initializer_list<>, const _Alloc&),
763         get_allocator): Adjust.
764         * include/bits/forward_list.tcc: Adjust.
765         * testsuite/util/testsuite_allocator.h (ExplicitConsAlloc): Add.
766         * testsuite/23_containers/unordered_map/requirements/
767         explicit_instantiation/5.cc: New.
768         * testsuite/23_containers/multimap/requirements/
769         explicit_instantiation/5.cc: Likewise.
770         * testsuite/23_containers/multimap/requirements/
771         explicit_instantiation/5_c++0x.cc: Likewise.
772         * testsuite/23_containers/set/requirements/explicit_instantiation/
773         5.cc: Likewise.
774         * testsuite/23_containers/set/requirements/explicit_instantiation/
775         5_c++0x.cc: Likewise.
776         * testsuite/23_containers/unordered_multimap/requirements/
777         explicit_instantiation/5.cc: Likewise.
778         * testsuite/23_containers/forward_list/requirements/
779         explicit_instantiation/5.cc: Likewise.
780         * testsuite/23_containers/unordered_set/requirements/
781         explicit_instantiation/5.cc: Likewise.
782         testsuite/23_containers/multiset/requirements/explicit_instantiation/
783         5.cc: Likewise.
784         * testsuite/23_containers/multiset/requirements/
785         explicit_instantiation/5_c++0x.cc: Likewise.
786         * testsuite/23_containers/list/requirements/explicit_instantiation/
787         5_c++0x.cc: Likewise.
788         * testsuite/23_containers/list/requirements/explicit_instantiation/
789         5.cc: Likewise.
790         * testsuite/23_containers/unordered_multiset/requirements/
791         explicit_instantiation/5.cc: Likewise.
792         * testsuite/23_containers/map/requirements/explicit_instantiation/
793         5.cc: Likewise.
794         * testsuite/23_containers/map/requirements/explicit_instantiation/
795         5_c++0x.cc: Likewise.
796         * testsuite/23_containers/forward_list/requirements/dr438/
797         assign_neg.cc: Adjust dg-error line number.
798         * testsuite/23_containers/forward_list/requirements/dr438/
799         insert_neg.cc: Likewise.
800         * testsuite/23_containers/forward_list/requirements/dr438/
801         constructor_1_neg.cc: Likewise.
802         * testsuite/23_containers/forward_list/requirements/dr438/
803         constructor_2_neg.cc: Likewise.
804         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
805         Likewise.
806         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
807         Likewise.
808         * testsuite/23_containers/list/requirements/dr438/
809         constructor_1_neg.cc: Likewise.
810         * testsuite/23_containers/list/requirements/dr438/
811         constructor_2_neg.cc: Likewise.
812
813 2011-08-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
814
815         * acinclude.m4 (GLIBCXX_CHECK_MATH_PROTO)
816         (GLIBCXX_CHECK_STDLIB_PROTO): New tests.
817         * configure.ac (GLIBCXX_CHECK_MATH_PROTO)
818         (GLIBCXX_CHECK_STDLIB_PROTO): Call them.
819         * configure: Regenerate.
820         * config.h.in: Regenerate.
821         * config/os/solaris/solaris2.8/os_defines.h
822         (__CORRECT_ISO_CPP_MATH_H_PROTO2): Don't define.
823         * config/os/solaris/solaris2.9: Remove.
824         * configure.host (solaris2.8): Merge with ...
825         (solaris2.9, solaris2.1[0-9]): ... this.
826         Always use os/solaris/solaris2.8.
827
828 2011-08-28  Paolo Carlini  <paolo.carlini@oracle.com>
829
830         * include/bits/move.h (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Remove
831         workaround for c++/49045.
832         * include/bits/algorithmfwd.h: Likewise.
833
834 2011-08-25  Tom Tromey  <tromey@redhat.com>
835
836         * testsuite/libstdc++-prettyprinters/simple.cc: New file.
837         * testsuite/lib/gdb-test.exp: New file.
838         * testsuite/libstdc++-prettyprinters/prettyprinters.exp: New
839         file.
840
841 2011-08-18  Marc Glisse  <marc.glisse@normalesup.org>
842
843         * include/tr1/cmath: Extend/update comment.
844
845 2011-08-18  Paolo Carlini  <paolo.carlini@oracle.com>
846
847         PR libstdc++/50119
848         * include/bits/stl_algo.h (__copy_n(_InputIterator, _Size,
849         _OutputIterator, input_iterator_tag)): Fix.
850         * testsuite/25_algorithms/copy_n/50119.cc: New.
851
852 2011-08-18  Marc Glisse  <marc.glisse@normalesup.org>
853             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
854
855         PR libstdc++/1773
856         * config/os/solaris2.7: Rename to config/os/solaris2.9.
857         * config/os/solaris/solaris2.9/os_defines.h
858         (__CORRECT_ISO_CPP_MATH_H_PROTO1)
859         (__CORRECT_ISO_CPP_STDLIB_H_PROTO)
860         (__CORRECT_ISO_CPP_STRING_H_PROTO)
861         (__CORRECT_ISO_CPP_WCHAR_H_PROTO): Define.
862         * config/os/solaris2.8/ctype_base.h,
863         config/os/solaris2.8/ctype_configure_char.cc,
864         config/solaris2.8/ctype_inline.h,
865         config/os/solaris2.8/os_defines.h: New files.
866
867         * configure.host (solaris2.[89], solaris2.1[0-9]):
868         Split into ...
869         (solaris2.8): ... this.
870         Use os/solaris/solaris2.8.
871         (solaris2.9, solaris2.1[0-9]): ... and this.
872         Use os/solaris/solaris2.9.
873
874         * include/c_global/cmath (double abs(double)): Wrap in
875         !__CORRECT_ISO_CPP_MATH_H_PROTO1 &&
876         !__CORRECT_ISO_CPP_MATH_H_PROTO2.
877         (float abs(float), long double abs(long double): Wrap in
878         !__CORRECT_ISO_CPP_MATH_H_PROTO1.
879         (float acos(float), long double acos(long double)): Likewise.
880         (float asin(float), long double asin(long double)): Likewise.
881         (float atan(float), long double atan(long double)): Likewise.
882         (float atan2(float, float), long double atan2(long double, long
883         double)): Likewise.
884         (float ceil(float), long double ceil(long double)): Likewise.
885         (float cos(float), long double cos(long double)): Likewise.
886         (float cosh(float), long double cosh(long double)): Likewise.
887         (float exp(float), long double exp(long double)): Likewise.
888         (float fabs(float), long double fabs(long double)): Likewise.
889         (float floor(float), long double floor(long double)): Likewise.
890         (float fmod(float, float), long double fmod(long double, long
891         double)): Likewise.
892         (float frexp(float, int*), long double frexp(long double, int*)):
893         Likewise.
894         (float ldexp(float, int), long double ldexp(long double, int)):
895         Likewise.
896         (float log(float), long double log(long double)): Likewise.
897         (float log10(float), long double log10(long double)): Likewise.
898         (float modf(float, float*), long double modf(long double, long
899         double*))): Likewise.
900         (float pow(float, float), long double pow(long double, long
901         double)): Likewise.
902         (float sin(float), long double sin(long double)): Likewise.
903         (float sinh(float), long double sinh(long double)): Likewise.
904         (float sqrt(float), long double sqrt(long double)): Likewise.
905         (float tan(float), long double tan(long double)): Likewise.
906         (float tanh(float), long double tanh(long double)): Likewise.
907         * include/c_global/cstdlib (long abs(long), ldiv_t div(long,
908         long)): Wrap in !__CORRECT_ISO_CPP_STDLIB_H_PROTO.
909         * include/tr1/cmath (float fabs(float), long double fabs(long
910         double)): Wrap in !__CORRECT_ISO_CPP_MATH_H_PROTO1.
911
912 2011-08-14  Benjamin Kosnik  <bkoz@redhat.com>
913
914         * doc/xml/images/*: Image and image filename changes.
915
916 2011-08-14  Benjamin Kosnik  <bkoz@redhat.com>
917
918         * testsuite/data/make_graph_test_infos.xml: Edit.
919         * testsuite/data/make_graph_htmls.xml: Remove
920         * scripts/make_graph.py: Edit, fix.
921         * scripts/make_graphs.py: Remove.
922
923         * doc/Makefile.am (doc-svg-performance): New.
924         (doc-html-performance): Remove.
925         * doc/Makefile.in: Regenerate.
926
927         * doc/xml/manual/test_policy_data_structures.xml: Markup changes.
928         * doc/xml/manual/policy_data_structures.xml: Same.
929         * doc/xml/manual/locale.xml: Same.
930
931         Testsuite renames.
932         * performance/ext/pb_ds/priority_queue_text_modify_down_timing.cc:
933         Rename.
934         * performance/ext/pb_ds/random_int_find_timing.cc: Same.
935         * performance/ext/pb_ds/multimap_text_insert_mem_usage.hpp
936         * performance/ext/pb_ds/multimap_text_find_timing.hpp
937         * performance/ext/pb_ds/priority_queue_random_int_push_timing.cc: Same.
938         * performance/ext/pb_ds/priority_queue_text_modify_timing.hpp
939         * performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
940         * performance/ext/pb_ds/multimap_text_insert_mem_usage_large.cc: Same.
941         * performance/ext/pb_ds/priority_queue_text_push_pop_timing.cc: Same.
942         * performance/ext/pb_ds/priority_queue_text_join_timing.cc: Same.
943         * performance/ext/pb_ds/multimap_text_insert_timing_small.cc: Same.
944         * performance/ext/pb_ds/random_int_subscript_insert_timing.cc: Same.
945         * performance/ext/pb_ds/tree_text_lor_find_timing.cc: Same.
946         * performance/ext/pb_ds/priority_queue_text_pop_mem_usage.cc: Same.
947         * performance/ext/pb_ds/multimap_text_find_timing_small.cc: Same.
948         * performance/ext/pb_ds/text_find_timing.cc: Same.
949         * performance/ext/pb_ds/tree_text_insert_timing.cc: Same.
950         * performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc: Same.
951         * performance/ext/pb_ds/random_int_subscript_find_timing.cc: Same.
952         * performance/ext/pb_ds/priority_queue_text_push_timing.cc: Same.
953         * performance/ext/pb_ds/tree_split_join_timing.cc: Same.
954         * performance/ext/pb_ds/multimap_text_insert_timing_large.cc: Same.
955         * performance/ext/pb_ds/priority_queue_text_modify_up_timing.cc: Same.
956         * performance/ext/pb_ds/multimap_text_find_timing_large.cc: Same.
957         * performance/ext/pb_ds/priority_queue_random_int_push_pop_timing.cc:
958         Same.
959         * performance/ext/pb_ds/multimap_text_insert_timing.hpp
960         * performance/ext/pb_ds/multimap_text_insert_mem_usage_small.cc: Same.
961         * performance/ext/pb_ds/hash_zlob_random_int_find_timing.cc: Same.
962
963         * performance/ext/pb_ds/all_int_find.cc: To these new files...
964         * performance/ext/pb_ds/all_int_subscript_find.cc: ...this.
965         * performance/ext/pb_ds/all_int_subscript_insert.cc: ...this.
966         * performance/ext/pb_ds/all_text_find.cc: ...this.
967         * performance/ext/pb_ds/hash_int_erase_mem.cc: ...this.
968         * performance/ext/pb_ds/hash_zlob_int_find.cc: ...this.
969         * performance/ext/pb_ds/multimap_text_find.hpp
970         * performance/ext/pb_ds/multimap_text_find_large.cc: ...this.
971         * performance/ext/pb_ds/multimap_text_find_small.cc: ...this.
972         * performance/ext/pb_ds/multimap_text_insert.hpp
973         * performance/ext/pb_ds/multimap_text_insert_large.cc: ...this.
974         * performance/ext/pb_ds/multimap_text_insert_mem.hpp
975         * performance/ext/pb_ds/multimap_text_insert_mem_large.cc: ...this.
976         * performance/ext/pb_ds/multimap_text_insert_mem_small.cc: ...this.
977         * performance/ext/pb_ds/multimap_text_insert_small.cc: ...this.
978         * performance/ext/pb_ds/priority_queue_int_push.cc: ...this.
979         * performance/ext/pb_ds/priority_queue_int_push_pop.cc: ...this.
980         * performance/ext/pb_ds/priority_queue_text_join.cc: ...this.
981         * performance/ext/pb_ds/priority_queue_text_modify_down.cc: ...this.
982         * performance/ext/pb_ds/priority_queue_text_modify.hpp
983         * performance/ext/pb_ds/priority_queue_text_modify_up.cc: ...this.
984         * performance/ext/pb_ds/priority_queue_text_pop_mem.cc: ...this.
985         * performance/ext/pb_ds/priority_queue_text_push.cc: ...this.
986         * performance/ext/pb_ds/priority_queue_text_push_pop.cc: ...this.
987         * performance/ext/pb_ds/tree_order_statistics.cc: ...this.
988         * performance/ext/pb_ds/tree_split_join.cc: ...this.
989         * performance/ext/pb_ds/tree_text_insert.cc: ...this.
990         * performance/ext/pb_ds/tree_text_lor_find.cc: ...this.
991
992         * doc/xml/images/*: Image and image filename changes.
993
994 2011-08-12  Paolo Carlini  <paolo.carlini@oracle.com>
995
996         * include/c_global/cmath (fmod(_Tp, _Up)): Add.
997         * include/c_std/cmath: Likewise.
998
999 2011-08-11  Paolo Carlini  <paolo.carlini@oracle.com>
1000
1001         * include/std/future: constexpr functions are implicitly inline.
1002         * include/std/chrono: Likewise.
1003         * include/std/complex: Likewise.
1004         * include/bits/move.h: Likewise.
1005         * include/bits/stl_pair.h: Likewise.
1006
1007 2011-08-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
1008
1009         * include/bits/alloc_traits.h: Fix doxygen @headername.
1010
1011 2011-08-06  Benjamin Kosnik  <bkoz@redhat.com>
1012
1013         * doc/doxygen/user.cfg.in (PDF_HYPERLINKS): To NO.
1014
1015 2011-08-06  Benjamin Kosnik  <bkoz@redhat.com>
1016
1017         * doc/doxygen/user.cfg.in: Add scoped_allocator.
1018
1019         * include/debug/safe_sequence.h: Fix doxygen markup.
1020         * include/debug/safe_unordered_base.h: Same.
1021         * include/debug/safe_local_iterator.tcc: Same.
1022         * include/debug/safe_unordered_container.h: Same.
1023         * include/std/valarray: Same.
1024         * include/std/iomanip: Same.
1025         * include/std/streambuf: Same.
1026         * include/std/bitset: Same.
1027         * include/std/fstream: Same.
1028         * include/std/functional: Same.
1029         * include/std/istream: Same.
1030         * include/std/ostream: Same.
1031         * include/std/scoped_allocator: Same.
1032         * include/std/sstream: Same.
1033         * include/parallel/multiway_merge.h: Same.
1034         * include/parallel/base.h: Same.
1035         * include/parallel/for_each_selectors.h: Same.
1036         * include/parallel/multiway_mergesort.h: Same.
1037         * include/parallel/search.h: Same.
1038         * include/parallel/partial_sum.h: Same.
1039         * include/parallel/queue.h: Same.
1040         * include/parallel/sort.h: Same.
1041         * include/parallel/random_number.h: Same.
1042         * include/ext/vstring.h: Same.
1043         * include/ext/algorithm: Same.
1044         * include/ext/pb_ds/assoc_container.h: Same.
1045         * include/ext/bitmap_allocator.h: Same.
1046         * include/ext/stdio_filebuf.h: Same.
1047         * include/ext/memory: Same.
1048         * include/ext/functional: Same.
1049         * include/bits/basic_ios.h: Same.
1050         * include/bits/stl_list.h: Same.
1051         * include/bits/stl_map.h: Same.
1052         * include/bits/stl_algobase.h: Same.
1053         * include/bits/stl_queue.h: Same.
1054         * include/bits/gslice.h: Same.
1055         * include/bits/locale_classes.h: Same.
1056         * include/bits/stl_set.h: Same.
1057         * include/bits/locale_facets.h: Same.
1058         * include/bits/stl_stack.h: Same.
1059         * include/bits/stl_heap.h: Same.
1060         * include/bits/forward_list.h: Same.
1061         * include/bits/stream_iterator.h: Same.
1062         * include/bits/basic_string.h: Same.
1063         * include/bits/stl_multimap.h: Same.
1064         * include/bits/stl_pair.h: Same.
1065         * include/bits/ios_base.h: Same.
1066         * include/bits/stl_numeric.h: Same.
1067         * include/bits/stl_vector.h: Same.
1068         * include/bits/stl_deque.h: Same.
1069         * include/bits/codecvt.h: Same.
1070         * include/bits/stl_multiset.h: Same.
1071         * include/bits/stl_uninitialized.h: Same.
1072         * include/bits/ptr_traits.h: Same.
1073         * include/bits/slice_array.h: Same.
1074         * include/bits/stl_iterator_base_funcs.h: Same.
1075         * include/bits/stl_algo.h: Same.
1076         * include/bits/stl_iterator.h: Same.
1077         * include/bits/stl_tempbuf.h: Same.
1078         * include/bits/regex.h: Same.
1079         * include/bits/range_access.h: Same.
1080         * include/bits/random.h: Same.
1081         * include/bits/alloc_traits.h: Same.
1082         * include/bits/regex_error.h: Same.
1083         * include/bits/locale_facets_nonio.h: Same.
1084         * include/bits/stl_relops.h: Same.
1085         * include/backward/auto_ptr.h: Same.
1086         * libsupc++/initializer_list: Same.
1087
1088         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1089         Adjust line numbers.
1090         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
1091         * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1092         Same.
1093         * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1094         Same.
1095
1096 2011-08-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1097
1098         * acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Point TOPLEVEL_INCLUDES
1099         to $(toplevel_srcdir)/libgcc.
1100         * configure: Regenerate.
1101
1102 2011-08-04  Benjamin Kosnik  <bkoz@redhat.com>
1103
1104         * doc/xml/manual/build_hacking.xml: Use relative fileref for PNG
1105         imagedata.
1106         * doc/xml/manual/test_policy_data_structures.xml: Same.
1107         * doc/xml/manual/policy_data_structures.xml: Same.
1108
1109         * doc/Makefile.am (stamp-html-docbook-images)
1110         (stamp-html-docbook-lwg, stamp-html-docbook-data): New.
1111         (xml_extra): Add lwg html file dependencies.
1112         (xml_images): Add image html file dependencies.
1113         * doc/Makefile.in: Regenerate.
1114         (stamp-html): Change to stamp-html-docbook-data.
1115         (stamp-html-copy): Remove.
1116
1117 2011-08-04  Paolo Carlini  <paolo.carlini@oracle.com>
1118
1119         * src/atomic.cc: Use noexcept.
1120         * include/std/atomic: Likewise.
1121         * include/bits/atomic_0.h: Likewise.
1122         * include/bits/atomic_2.h: Likewise.
1123         * include/bits/atomic_base.h: Likewise.
1124
1125 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
1126
1127         * testsuite/performance/27_io/filebuf_sputn_unbuf.cc: Include
1128         unistd.h for unlink.
1129         * testsuite/performance/27_io/ofstream_insert_int.cc: Same.
1130         * testsuite/performance/27_io/ifstream_extract_int.cc: Same.
1131         * testsuite/performance/27_io/ifstream_getline-2.cc: Same.
1132         * testsuite/performance/27_io/fstream_seek_write.cc: Same.
1133         * testsuite/performance/27_io/ifstream_extract_chars.cc: Same.
1134         * testsuite/performance/27_io/ofstream_insert_float.cc: Same.
1135         * testsuite/performance/27_io/ifstream_extract_float.cc: Same.
1136         * testsuite/performance/27_io/filebuf_sputc.cc: Same.
1137
1138 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
1139
1140         * include/std/tuple: Mark more constructors constexpr.
1141         * testsuite/20_util/tuple/cons/constexpr.cc: Split into and extend as:
1142         * testsuite/20_util/tuple/cons/constexpr-2.cc: ...this.
1143         * testsuite/20_util/tuple/cons/constexpr-3.cc: ... and this.
1144         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line numbers.
1145
1146 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
1147             François Dumont  <francois.cppdevs@free.fr>
1148
1149         * testsuite/23_containers/array/at_neg.cc: Move...
1150         * testsuite/23_containers/array/at.cc: ...here. Remove
1151         -fno-exceptions, call const at member function.
1152
1153 2011-08-01  H.J. Lu  <hongjiu.lu@intel.com>
1154
1155         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Generated.
1156
1157 2011-08-01  Paolo Carlini  <paolo.carlini@oracle.com>
1158
1159         PR c++/49813
1160         * include/c_global/cmath (isinf): Remove workaround.
1161
1162 2011-07-31  Paolo Carlini  <paolo.carlini@oracle.com>
1163
1164         PR libstdc++/49925
1165         * include/bits/shared_ptr.h (make_shared): Qualify allocate_shared
1166         with std::.
1167         * include/bits/shared_ptr_base.h (__make_shared): Likewise.
1168
1169 2011-07-29  Benjamin Kosnik  <bkoz@redhat.com>
1170
1171         * doc/xml/manual/build_hacking.xml: Markup imagedata changes.
1172         * doc/xml/manual/policy_data_structures.xml: Same.
1173
1174         * doc/xml/class.txml: Remove biblioid.
1175         * doc/xml/manual/allocator.xml: Same.
1176         * doc/xml/manual/ctype.xml: Same.
1177         * doc/xml/manual/codecvt.xml: Same.
1178         * doc/xml/manual/backwards_compatibility.xml: Same.
1179         * doc/xml/manual/abi.xml: Same.
1180         * doc/xml/manual/shared_ptr.xml: Same.
1181         * doc/xml/manual/using_exceptions.xml: Same.
1182         * doc/xml/manual/messages.xml: Same.
1183
1184 2011-07-29  Benjamin Kosnik  <bkoz@redhat.com>
1185
1186         Docbook conversion of existing ext/pb_ds documentation.
1187         * doc/Makefile.am (xml_sources_manual): Add
1188         policy_data_structures.xml and
1189         test_policy_data_structures.xml.
1190         (stamp-html-copy): Remove special-case for ext/pb_ds directory.
1191         (XSLTPROC_FLAGS): Split into XSLT_FLAGS and XSLT_PARAM, use.
1192         * doc/Makefile.in: Regenerate.
1193         * doc/xml/manual/policy_data_structures.xml: New, adapted from
1194           previous html-only instance in doc/html/ext/pb_ds.
1195         * doc/xml/manual/test_policy_data_structures.xml: New, same as above.
1196
1197         * doc/xml/spine.xml: Update copyright.
1198         * doc/xml/manual/spine.xml: Same.
1199         * doc/xml/manual/extensions.xml: Adjust set, chapter, sections.
1200         * doc/xml/manual/bitmap_allocator.xml: Same.
1201         * doc/xml/manual/mt_allocator.xml: Same.
1202
1203         Populate image directory.
1204         * doc/xml/images/(pbds_balls_and_bins.png,
1205         pbds_binary_priority_queue_random_int_push_timing_test_local.pdf,
1206         pbds_binary_priority_queue_random_int_push_timing_test_local.png,
1207         pbds_binary_priority_queue_random_int_push_timing_test_local.svg,
1208         pbds_cc_hash_random_int_find_timing_test_local.pdf,
1209         pbds_cc_hash_random_int_find_timing_test_local.png,
1210         pbds_cc_hash_random_int_find_timing_test_local.svg,
1211         pbds_cc_hash_random_int_subscript_timing_test_find_local.pdf,
1212         pbds_cc_hash_random_int_subscript_timing_test_find_local.png,
1213         pbds_cc_hash_random_int_subscript_timing_test_find_local.svg,
1214         pbds_cc_hash_random_int_subscript_timing_test_insert_local.pdf,
1215         pbds_cc_hash_random_int_subscript_timing_test_insert_local.png,
1216         pbds_cc_hash_random_int_subscript_timing_test_insert_local.svg,
1217         pbds_container_tag_hierarchy.pdf,
1218         pbds_container_tag_hierarchy.png,
1219         pbds_container_tag_hierarchy.svg,
1220         pbds_different_underlying_dss_1.png,
1221         pbds_different_underlying_dss_2.png,
1222         pbds_embedded_lists_1.png, pbds_embedded_lists_2.png,
1223         pbds_embedded_lists_3.png, pbds_exception_hierarchy.pdf,
1224         pbds_exception_hierarchy.png, pbds_exception_hierarchy.svg,
1225         pbds_gp_hash_random_int_find_timing_test_local.pdf,
1226         pbds_gp_hash_random_int_find_timing_test_local.png,
1227         pbds_gp_hash_random_int_find_timing_test_local.svg,
1228         pbds_gp_hash_random_int_subscript_timing_test_find_local.pdf,
1229         pbds_gp_hash_random_int_subscript_timing_test_find_local.png,
1230         pbds_gp_hash_random_int_subscript_timing_test_find_local.svg,
1231         pbds_gp_hash_random_int_subscript_timing_test_insert_local.pdf,
1232         pbds_gp_hash_random_int_subscript_timing_test_insert_local.png,
1233         pbds_gp_hash_random_int_subscript_timing_test_insert_local.svg,
1234         pbds_hash_policy_cd.png,
1235         pbds_hash_random_int_erase_mem_usage_test_local.pdf,
1236         pbds_hash_random_int_erase_mem_usage_test_local.png,
1237         pbds_hash_random_int_erase_mem_usage_test_local.svg,
1238         pbds_hash_ranged_hash_range_hashing_fns.png,
1239         pbds_hash_range_hashing_seq_diagram2.png,
1240         pbds_hash_range_hashing_seq_diagram.png,
1241         pbds_hash_zlob_random_int_find_timing_test_local.pdf,
1242         pbds_hash_zlob_random_int_find_timing_test_local.png,
1243         pbds_hash_zlob_random_int_find_timing_test_local.svg,
1244         pbds_insert_resize_sequence_diagram1.png,
1245         pbds_insert_resize_sequence_diagram2.png,
1246         pbds_insert_resize_sequence_diagram3.png,
1247         pbds_invalidation_guarantee_erase.png,
1248         pbds_invalidation_tag_hierarchy.pdf,
1249         pbds_invalidation_tag_hierarchy.png,
1250         pbds_invalidation_tag_hierarchy.svg, pbds_list_update.png,
1251         pbds_multimap_text_find_timing_test_large_s2p_hash_local.pdf,
1252         pbds_multimap_text_find_timing_test_large_s2p_hash_local.png,
1253         pbds_multimap_text_find_timing_test_large_s2p_hash_local.svg,
1254         pbds_multimap_text_find_timing_test_large_s2p_tree_local.pdf,
1255         pbds_multimap_text_find_timing_test_large_s2p_tree_local.png,
1256         pbds_multimap_text_find_timing_test_large_s2p_tree_local.svg,
1257         pbds_multimap_text_find_timing_test_small_s2p_hash_local.pdf,
1258         pbds_multimap_text_find_timing_test_small_s2p_hash_local.png,
1259         pbds_multimap_text_find_timing_test_small_s2p_hash_local.svg,
1260         pbds_multimap_text_find_timing_test_small_s2p_tree_local.pdf,
1261         pbds_multimap_text_find_timing_test_small_s2p_tree_local.png,
1262         pbds_multimap_text_find_timing_test_small_s2p_tree_local.svg,
1263         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.pdf,
1264         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
1265         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.svg,
1266         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.pdf,
1267         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
1268         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.svg,
1269         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.pdf,
1270         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
1271         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.svg,
1272         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.pdf,
1273         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.png,
1274         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.svg,
1275         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.pdf,
1276         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.png,
1277         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.svg,
1278         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.pdf,
1279         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.png,
1280         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.svg,
1281         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.pdf,
1282         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.png,
1283         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.svg,
1284         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.pdf,
1285         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.png,
1286         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.svg,
1287         pbds_node_invariants.png,
1288         pbds_pairing_priority_queue_text_push_pop_timing_test_local.pdf,
1289         pbds_pairing_priority_queue_text_push_pop_timing_test_local.png,
1290         pbds_pairing_priority_queue_text_push_pop_timing_test_local.svg,
1291         pbds_pairing_priority_queue_text_push_timing_test_local.pdf,
1292         pbds_pairing_priority_queue_text_push_timing_test_local.png,
1293         pbds_pairing_priority_queue_text_push_timing_test_local.svg,
1294         pbds_pat_trie.png, pbds_point_iterator_hierarchy.png,
1295         pbds_point_iterators_range_ops_1.png,
1296         pbds_point_iterators_range_ops_2.png,
1297         pbds_priority_queue_different_underlying_dss.png,
1298         pbds_priority_queue_random_int_push_pop_timing_test_local.pdf,
1299         pbds_priority_queue_random_int_push_pop_timing_test_local.png,
1300         pbds_priority_queue_random_int_push_pop_timing_test_local.svg,
1301         pbds_priority_queue_random_int_push_timing_test_local.pdf,
1302         pbds_priority_queue_random_int_push_timing_test_local.png,
1303         pbds_priority_queue_random_int_push_timing_test_local.svg,
1304         pbds_priority_queue_tag_hierarchy.pdf,
1305         pbds_priority_queue_tag_hierarchy.png,
1306         pbds_priority_queue_tag_hierarchy.svg,
1307         pbds_priority_queue_text_join_timing_test_local.pdf,
1308         pbds_priority_queue_text_join_timing_test_local.png,
1309         pbds_priority_queue_text_join_timing_test_local.svg,
1310         pbds_priority_queue_text_modify_down_timing_test_local.pdf,
1311         pbds_priority_queue_text_modify_down_timing_test_local.png,
1312         pbds_priority_queue_text_modify_down_timing_test_local.svg,
1313         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.pdf,
1314         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
1315         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.svg,
1316         pbds_priority_queue_text_modify_up_timing_test_local.pdf,
1317         pbds_priority_queue_text_modify_up_timing_test_local.png,
1318         pbds_priority_queue_text_modify_up_timing_test_local.svg,
1319         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.pdf,
1320         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
1321         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.svg,
1322         pbds_priority_queue_text_pop_mem_usage_test_local.pdf,
1323         pbds_priority_queue_text_pop_mem_usage_test_local.png,
1324         pbds_priority_queue_text_pop_mem_usage_test_local.svg,
1325         pbds_priority_queue_text_push_pop_timing_test_local.pdf,
1326         pbds_priority_queue_text_push_pop_timing_test_local.png,
1327         pbds_priority_queue_text_push_pop_timing_test_local.svg,
1328         pbds_priority_queue_text_push_timing_test_local.pdf,
1329         pbds_priority_queue_text_push_timing_test_local.png,
1330         pbds_priority_queue_text_push_timing_test_local.svg,
1331         pbds_rationale_null_node_updator.png,
1332         pbds_resize_policy_cd.png, pbds_restoring_node_invariants.png,
1333         pbds_simple_list.png,
1334         pbds_text_find_timing_test_hash_local.pdf,
1335         pbds_text_find_timing_test_hash_local.png,
1336         pbds_text_find_timing_test_hash_local.svg,
1337         pbds_text_find_timing_test_tree_like_local.pdf,
1338         pbds_text_find_timing_test_tree_like_local.png,
1339         pbds_text_find_timing_test_tree_like_local.svg,
1340         pbds_tree_node_invalidations.png,
1341         pbds_tree_node_invariants.png,
1342         pbds_tree_node_updator_policy_cd.png,
1343         pbds_tree_order_statistics_timing_test_local.pdf,
1344         pbds_tree_order_statistics_timing_test_local.png,
1345         pbds_tree_order_statistics_timing_test_local.svg,
1346         pbds_tree_split_join_timing_test_local.pdf,
1347         pbds_tree_split_join_timing_test_local.png,
1348         pbds_tree_split_join_timing_test_local.svg,
1349         pbds_tree_text_insert_timing_test_node_tree_local.pdf,
1350         pbds_tree_text_insert_timing_test_node_tree_local.png,
1351         pbds_tree_text_insert_timing_test_node_tree_local.svg,
1352         pbds_tree_text_insert_timing_test_pat_trie_local.pdf,
1353         pbds_tree_text_insert_timing_test_pat_trie_local.png,
1354         pbds_tree_text_insert_timing_test_pat_trie_local.svg,
1355         pbds_tree_text_insert_timing_test_vector_tree_local.pdf,
1356         pbds_tree_text_insert_timing_test_vector_tree_local.png,
1357         pbds_tree_text_insert_timing_test_vector_tree_local.svg,
1358         pbds_tree_text_lor_find_timing_test_local.pdf,
1359         pbds_tree_text_lor_find_timing_test_local.png,
1360         pbds_tree_text_lor_find_timing_test_local.svg,
1361         pbds_trie_node_updator_policy_cd.png,
1362         pbds_update_seq_diagram.png): Add.
1363
1364         * doc/html/ext/pb_ds: Remove.
1365         * doc/html/ext/pb_ds/(acks.html, assoc_container_tag_cd.png,
1366         assoc_container_tag_cd.svg, assoc_container_traits.html,
1367         assoc_design.html, assoc_examples.html,
1368         associative_container_tag.html, assoc_performance_tests.html,
1369         assoc_regression_tests.html, assoc_tests.html,
1370         balls_and_bins.png, basic_hash_table.html,
1371         basic_hash_tag.html, basic_invalidation_guarantee.html,
1372         basic_tree_assoc_container_const_node_iterator.html,
1373         basic_tree.html, basic_tree_tag.html, binary_heap_tag.html,
1374         binary_priority_queue_random_int_push_timing_test_gcc.png,
1375         binary_priority_queue_random_int_push_timing_test_local.png,
1376         binary_priority_queue_random_int_push_timing_test_msvc.png,
1377         binomial_heap_tag.html,
1378         ccgp_hash_random_int_subscript_timing_test_insert_gcc.png,
1379         ccgp_hash_random_int_subscript_timing_test_insert_local.png,
1380         ccgp_hash_random_int_subscript_timing_test_insert_msvc.png,
1381         cc_hash_max_collision_check_resize_trigger.html,
1382         cc_hash_random_int_find_timing_test_gcc.png,
1383         cc_hash_random_int_find_timing_test_local.png,
1384         cc_hash_random_int_find_timing_test_msvc.png,
1385         cc_hash_random_int_subscript_timing_test_find_gcc.png,
1386         cc_hash_random_int_subscript_timing_test_find_local.png,
1387         cc_hash_random_int_subscript_timing_test_find_msvc.png,
1388         cc_hash_random_int_subscript_timing_test_insert_gcc.png,
1389         cc_hash_random_int_subscript_timing_test_insert_local.png,
1390         cc_hash_random_int_subscript_timing_test_insert_msvc.png,
1391         cc_hash_table.html, cc_hash_tag.html, checked_by_tidy.gif
1392         concepts.html, contact.html, container_base.html,
1393         container_cd.png, container_cd.svg, container_tag.html,
1394         counter_lu_policy.html, design.html,
1395         different_underlying_dss.png, direct_mask_range_hashing.html,
1396         direct_mod_range_hashing.html, disclaimer.html, ds_gen.html,
1397         embedded_lists_1.png, embedded_lists_2.png,
1398         embedded_lists_3.png, examples.html, exceptions.html,
1399         gp_hash_random_int_find_timing_test_gcc.png,
1400         gp_hash_random_int_find_timing_test_local.png,
1401         gp_hash_random_int_find_timing_test_msvc.png,
1402         gp_hash_random_int_subscript_timing_test_find_gcc.png,
1403         gp_hash_random_int_subscript_timing_test_find_local.png,
1404         gp_hash_random_int_subscript_timing_test_find_msvc.png,
1405         gp_hash_random_int_subscript_timing_test_insert_gcc.png,
1406         gp_hash_random_int_subscript_timing_test_insert_local.png,
1407         gp_hash_random_int_subscript_timing_test_insert_msvc.png,
1408         gp_hash_table.html, gp_hash_tag.html,
1409         hash_based_containers.html, hash_exponential_size_policy.html,
1410         hash_load_check_resize_trigger.html, hash_policy_cd.png,
1411         hash_prime_size_policy.html,
1412         hash_random_int_erase_mem_usage_test_gcc.png,
1413         hash_random_int_erase_mem_usage_test.html,
1414         hash_random_int_erase_mem_usage_test_local.png,
1415         hash_random_int_erase_mem_usage_test_msvc.png,
1416         hash_random_int_find_find_timing_test.html,
1417         hash_random_int_subscript_find_timing_test.html,
1418         hash_random_int_subscript_insert_timing_test.html,
1419         hash_ranged_hash_range_hashing_fns.png,
1420         hash_range_hashing_seq_diagram2.png,
1421         hash_range_hashing_seq_diagram.png,
1422         hash_standard_resize_policy.html,
1423         hash_text_find_find_timing_test.html,
1424         hash_zlob_random_int_find_find_timing_test.html,
1425         hash_zlob_random_int_find_timing_test_gcc.png,
1426         hash_zlob_random_int_find_timing_test_local.png,
1427         hash_zlob_random_int_find_timing_test_msvc.png, index.html,
1428         insert_error.html, insert_resize_sequence_diagram1.png,
1429         insert_resize_sequence_diagram2.png,
1430         insert_resize_sequence_diagram3.png, interface.html,
1431         introduction.html, invalidation_guarantee_cd.png,
1432         invalidation_guarantee_erase.png, join_error.html,
1433         linear_probe_fn.html, list_update.html, list_update_tag.html,
1434         lu_based_containers.html, lu.png, misc.html, motivation.html,
1435         move_to_front_lu_policy.html,
1436         multimap_text_find_timing_test_large.html,
1437         multimap_text_find_timing_test_large_s2p_hash_gcc.png,
1438         multimap_text_find_timing_test_large_s2p_hash_local.png,
1439         multimap_text_find_timing_test_large_s2p_hash_msvc.png,
1440         multimap_text_find_timing_test_large_s2p_tree_gcc.png,
1441         multimap_text_find_timing_test_large_s2p_tree_local.png,
1442         multimap_text_find_timing_test_large_s2p_tree_msvc.png,
1443         multimap_text_find_timing_test_small.html,
1444         multimap_text_find_timing_test_small_s2p_hash_gcc.png,
1445         multimap_text_find_timing_test_small_s2p_hash_local.png,
1446         multimap_text_find_timing_test_small_s2p_hash_msvc.png,
1447         multimap_text_find_timing_test_small_s2p_tree_gcc.png,
1448         multimap_text_find_timing_test_small_s2p_tree_local.png,
1449         multimap_text_find_timing_test_small_s2p_tree_msvc.png,
1450         multimap_text_insert_mem_usage_test_large.html,
1451         multimap_text_insert_mem_usage_test_large_s2p_hash_gcc.png,
1452         multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
1453         multimap_text_insert_mem_usage_test_large_s2p_hash_msvc.png,
1454         multimap_text_insert_mem_usage_test_large_s2p_tree_gcc.png,
1455         multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
1456         multimap_text_insert_mem_usage_test_large_s2p_tree_msvc.png,
1457         multimap_text_insert_mem_usage_test_small.html,
1458         multimap_text_insert_mem_usage_test_small_s2p_hash_gcc.png,
1459         multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
1460         multimap_text_insert_mem_usage_test_small_s2p_hash_msvc.png,
1461         multimap_text_insert_mem_usage_test_small_s2p_tree_gcc.png,
1462         multimap_text_insert_mem_usage_test_small_s2p_tree_local.png,
1463         multimap_text_insert_mem_usage_test_small_s2p_tree_msvc.png,
1464         multimap_text_insert_timing_test_large.html,
1465         multimap_text_insert_timing_test_large_s2p_hash_gcc.png,
1466         multimap_text_insert_timing_test_large_s2p_hash_local.png,
1467         multimap_text_insert_timing_test_large_s2p_hash_msvc.png,
1468         multimap_text_insert_timing_test_large_s2p_tree_gcc.png,
1469         multimap_text_insert_timing_test_large_s2p_tree_local.png,
1470         multimap_text_insert_timing_test_large_s2p_tree_msvc.png,
1471         multimap_text_insert_timing_test_small.html,
1472         multimap_text_insert_timing_test_small_s2p_hash_gcc.png,
1473         multimap_text_insert_timing_test_small_s2p_hash_local.png,
1474         multimap_text_insert_timing_test_small_s2p_hash_msvc.png,
1475         multimap_text_insert_timing_test_small_s2p_tree_gcc.png,
1476         multimap_text_insert_timing_test_small_s2p_tree_local.png,
1477         multimap_text_insert_timing_test_small_s2p_tree_msvc.png,
1478         node_invariant_invalidations.png, node_invariants.png,
1479         null_hash_fn.html, null_lu_metadata.html,
1480         null_mapped_type.html, null_probe_fn.html,
1481         null_tree_node_update.html, null_trie_node_update.html,
1482         ov_tree_tag.html, pairing_heap_tag.html,
1483         pairing_priority_queue_text_push_pop_timing_test_gcc.png,
1484         pairing_priority_queue_text_push_pop_timing_test_local.png,
1485         pairing_priority_queue_text_push_pop_timing_test_msvc.png,
1486         pairing_priority_queue_text_push_timing_test_gcc.png,
1487         pairing_priority_queue_text_push_timing_test_local.png,
1488         pairing_priority_queue_text_push_timing_test_msvc.png,
1489         pat_trie.png, pat_trie_tag.html,
1490         point_invalidation_guarantee.html, point_iterators_cd.png,
1491         point_iterators_range_ops_1.png,
1492         point_iterators_range_ops_2.png, pq_container_traits.html,
1493         pq_design.html, pq_different_underlying_dss.png,
1494         pq_examples.html, pq_performance_tests.html,
1495         pq_regression_tests.html, pq_tests.html, prerequisites.html,
1496         priority_queue.html,
1497         priority_queue_random_int_push_pop_timing_test_gcc.png,
1498         priority_queue_random_int_push_pop_timing_test.html,
1499         priority_queue_random_int_push_pop_timing_test_local.png,
1500         priority_queue_random_int_push_pop_timing_test_msvc.png,
1501         priority_queue_random_int_push_timing_test_gcc.png,
1502         priority_queue_random_int_push_timing_test.html,
1503         priority_queue_random_int_push_timing_test_local.png,
1504         priority_queue_random_int_push_timing_test_msvc.png,
1505         priority_queue_tag_cd.png, priority_queue_tag_cd.svg,
1506         priority_queue_tag.html,
1507         priority_queue_text_join_timing_test_gcc.png,
1508         priority_queue_text_join_timing_test.html,
1509         priority_queue_text_join_timing_test_local.png,
1510         priority_queue_text_join_timing_test_msvc.png,
1511         priority_queue_text_modify_down_timing_test_gcc.png,
1512         priority_queue_text_modify_down_timing_test.html,
1513         priority_queue_text_modify_down_timing_test_local.png,
1514         priority_queue_text_modify_down_timing_test_msvc.png,
1515         priority_queue_text_modify_down_timing_test_pairing_thin_gcc.png,
1516         priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
1517         priority_queue_text_modify_down_timing_test_pairing_thin_msvc.png,
1518         priority_queue_text_modify_up_timing_test_gcc.png,
1519         priority_queue_text_modify_up_timing_test.html,
1520         priority_queue_text_modify_up_timing_test_local.png,
1521         priority_queue_text_modify_up_timing_test_msvc.png,
1522         priority_queue_text_modify_up_timing_test_pairing_thin_gcc.png,
1523         priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
1524         priority_queue_text_modify_up_timing_test_pairing_thin_msvc.png,
1525         priority_queue_text_pop_mem_usage_test_gcc.png,
1526         priority_queue_text_pop_mem_usage_test.html,
1527         priority_queue_text_pop_mem_usage_test_local.png,
1528         priority_queue_text_pop_mem_usage_test_msvc.png,
1529         priority_queue_text_push_pop_timing_test_gcc.png,
1530         priority_queue_text_push_pop_timing_test.html,
1531         priority_queue_text_push_pop_timing_test_local.png,
1532         priority_queue_text_push_pop_timing_test_msvc.png,
1533         priority_queue_text_push_timing_test_gcc.png,
1534         priority_queue_text_push_timing_test.html,
1535         priority_queue_text_push_timing_test_local.png,
1536         priority_queue_text_push_timing_test_msvc.png,
1537         PythonPoweredSmall.gif quadratic_probe_fn.html,
1538         random_int_find_find_timing_test_tree_gcc.png,
1539         random_int_find_find_timing_test_tree_local.png,
1540         random_int_find_find_timing_test_tree_msvc.png,
1541         range_invalidation_guarantee.html,
1542         rationale_null_node_updator.png, rb_tree_tag.html,
1543         rc_binomial_heap_tag.html, references.html, resize_error.html,
1544         resize_policy_cd.png, restoring_node_invariants.png,
1545         sample_probe_fn.html, sample_ranged_hash_fn.html,
1546         sample_ranged_probe_fn.html, sample_range_hashing.html,
1547         sample_resize_policy.html, sample_resize_trigger.html,
1548         sample_size_policy.html, sample_tree_node_update.html,
1549         sample_trie_access_traits.html, sample_trie_node_update.html,
1550         sample_update_policy.html, simple_list.png,
1551         splay_tree_tag.html, tests.html,
1552         text_find_timing_test_hash_gcc.png,
1553         text_find_timing_test_hash_local.png,
1554         text_find_timing_test_hash_msvc.png,
1555         text_find_timing_test_tree_like_gcc.png,
1556         text_find_timing_test_tree_like_local.png,
1557         text_find_timing_test_tree_like_msvc.png, thin_heap_tag.html,
1558         tree_based_containers.html, tree.html,
1559         tree_node_iterator.html, tree_node_updator_policy_cd.png,
1560         tree_order_statistics_node_update.html,
1561         tree_order_statistics_timing_test_gcc.png,
1562         tree_order_statistics_timing_test.html,
1563         tree_order_statistics_timing_test_local.png,
1564         tree_order_statistics_timing_test_msvc.png,
1565         tree_random_int_find_find_timing_test.html,
1566         tree_split_join_timing_test_gcc.png,
1567         tree_split_join_timing_test.html,
1568         tree_split_join_timing_test_local.png,
1569         tree_split_join_timing_test_msvc.png, tree_tag.html,
1570         tree_text_find_find_timing_test.html,
1571         tree_text_insert_timing_test.html,
1572         tree_text_insert_timing_test_node_tree_gcc.png,
1573         tree_text_insert_timing_test_node_tree_local.png,
1574         tree_text_insert_timing_test_node_tree_msvc.png,
1575         tree_text_insert_timing_test_pat_trie_gcc.png,
1576         tree_text_insert_timing_test_pat_trie_local.png,
1577         tree_text_insert_timing_test_pat_trie_msvc.png,
1578         tree_text_insert_timing_test_vector_tree_gcc.png,
1579         tree_text_insert_timing_test_vector_tree_local.png,
1580         tree_text_insert_timing_test_vector_tree_msvc.png,
1581         tree_text_lor_find_find_timing_test.html,
1582         tree_text_lor_find_timing_test_gcc.png,
1583         tree_text_lor_find_timing_test_local.png,
1584         tree_text_lor_find_timing_test_msvc.png,
1585         trie_based_containers.html, trie_const_node_iterator.html,
1586         trie.html, trie_node_iterator.html,
1587         trie_node_updator_policy_cd.png,
1588         trie_order_statistics_node_update.html,
1589         trie_prefix_search_node_update.html,
1590         trie_string_access_traits.html, trie_tag.html,
1591         trivial_iterator_tag.html, tutorial.html,
1592         update_policy_cd.png, update_seq_diagram.png): Remove.
1593
1594 2011-07-27  Paolo Carlini  <paolo.carlini@oracle.com>
1595
1596         PR c++/49813
1597         * include/c_global/cmath: Use _GLIBCXX_CONSTEXPR and constexpr.
1598
1599 2011-07-27  Jeffrey Yasskin  <jyasskin@google.com>
1600
1601         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Updated.
1602
1603 2011-07-25  Benjamin Kosnik  <bkoz@redhat.com>
1604
1605         * include/std/array (at): Remove constexpr when -fno-exceptions.
1606         * testsuite/23_containers/array/at_neg.cc: Test.
1607
1608 2011-07-25  Paolo Carlini  <paolo.carlini@oracle.com>
1609             Nathan Ridge  <zeratul976@hotmail.com>
1610
1611         PR libstdc++/49836
1612         * include/bits/stl_vector.h (vector<>::_M_emplace_back_aux):
1613         Declare.
1614         (vector<>::push_back(const value_type&)): Use it.
1615         * include/bits/vector.tcc: Define.
1616         (vector<>::emplace_back(_Args&&...)): Use it.
1617         * testsuite/util/testsuite_tr1.h (CopyConsOnlyType, MoveConsOnlyType):
1618         Add.
1619         * testsuite/23_containers/vector/modifiers/push_back/49836.cc: New.
1620         * testsuite/23_containers/deque/modifiers/push_back/49836.cc:
1621         Likewise.
1622         * testsuite/23_containers/deque/modifiers/push_front/49836.cc:
1623         Likewise.
1624         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1625         Adjust dg-error line number.
1626         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1627         Likewise.
1628         * testsuite/23_containers/vector/requirements/dr438/
1629         constructor_1_neg.cc: Likewise.
1630         * testsuite/23_containers/vector/requirements/dr438/
1631         constructor_2_neg.cc: Likewise.
1632
1633 2011-07-24  Paolo Carlini  <paolo.carlini@oracle.com>
1634
1635         * include/bits/hashtable_policy.h (_Prime_rehash_policy::_M_next_bkt,
1636         _M_bkt_for_elements, _M_need_rehash): Fix typos in the last commit.
1637
1638 2011-07-24  François Dumont  <francois.cppdevs@free.fr>
1639
1640         * include/bits/hashtable_policy.h (_Prime_rehash_policy): Use
1641         __builtin_floor rather than __builtin_ceil to compute next resize
1642         value.
1643         * testsuite/23_containers/unordered_set/hash_policy/load_factor.cc:
1644         New.
1645
1646 2011-07-22  Benjamin Kosnik  <bkoz@redhat.com>
1647             Daniel Krugler  <daniel.kruegler@googlemail.com>
1648
1649         * include/bits/move.h (move, forward): Mark constexpr.
1650         * include/bits/stl_pair.h (pair): Mark move ctors constexpr.
1651         * testsuite/20_util/pair/make_pair/constexpr.cc: New.
1652         * testsuite/20_util/pair/cons/constexpr.cc: Add tests.
1653
1654 2011-07-22  Ian Lance Taylor  <iant@google.com>
1655
1656         * fragment.am (CONFIG_CXXFLAGS): Add -frandom-seed.
1657         * Makefile.in: Rebuild.
1658         * doc/Makefile.in: Rebuild.
1659         * include/Makefile.in: Rebuild.
1660         * libsupc++/Makefile.in: Rebuild.
1661         * po/Makefile.in: Rebuild.
1662         * python/Makefile.in: Rebuild.
1663         * src/Makefile.in: Rebuild.
1664         * testsuite/Makefile.in: Rebuild.
1665
1666 2011-07-21  Benjamin Kosnik  <bkoz@redhat.com>
1667
1668         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Move...
1669         * testsuite/ext/pb_ds/regression/tree_set_rand.cc: ... here.
1670         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: Move...
1671         * testsuite/ext/pb_ds/regression/tree_set_rand_debug.cc: ... here.
1672         * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Move...
1673         * testsuite/ext/pb_ds/regression/tree_map_rand.cc: ... here.
1674         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: Move...
1675         * testsuite/ext/pb_ds/regression/tree_map_rand_debug.cc: ... here.
1676
1677         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Move...
1678         * testsuite/ext/pb_ds/regression/trie_set_rand.cc: ... here.
1679         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: Move...
1680         * testsuite/ext/pb_ds/regression/trie_set_rand_debug.cc: ... here.
1681         * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Move...
1682         * testsuite/ext/pb_ds/regression/trie_map_rand.cc: ... here.
1683         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: Move...
1684         * testsuite/ext/pb_ds/regression/trie_map_rand_debug.cc: ... here.
1685
1686         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand.cc: Move.
1687         * testsuite/ext/pb_ds/regression/list_update_set_rand.cc: ...here.
1688         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
1689         Move...
1690         * testsuite/ext/pb_ds/regression/list_update_set_rand_debug.cc: ...here.
1691         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Move...
1692         * testsuite/ext/pb_ds/regression/list_update_map_rand.cc: ...here.
1693         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
1694         Move...
1695         * testsuite/ext/pb_ds/regression/list_update_map_rand_debug.cc: ...here.
1696
1697         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Move...
1698         * testsuite/ext/pb_ds/regression/hash_set_rand.cc: ...here.
1699         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: Move...
1700         * testsuite/ext/pb_ds/regression/hash_set_rand_debug.cc: ...here.
1701
1702         * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Move...
1703         * testsuite/ext/pb_ds/regression/hash_map_rand.cc: ...here.
1704         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: Move...
1705         * testsuite/ext/pb_ds/regression/hash_map_rand_debug.cc: ...here.
1706
1707 2011-07-21  François Dumont  <francois.cppdevs@free.fr>
1708
1709         * include/debug/safe_unordered_sequence.h,
1710         safe_unordered_sequence.tcc: Rename respectively in...
1711         * include/debug/safe_unordered_container.h,
1712         safe_unordered_container.tcc: ...those. _Safe_unordered_sequence
1713         rename _Safe_unordered_container.
1714         * include/debug/safe_unordered_base.h: _Safe_unordered_sequence_base
1715         rename _Safe_unordered_container_base.
1716         * include/debug/unordered_map, unordered_set: Adapt to previous
1717         modifications.
1718         * config/abi/pre/gnu.ver: Likewise.
1719         * src/debug.cc: Likewise.
1720         * include/Makefile.am: Likewise.
1721         * include/Makefile.in: Regenerate.
1722
1723 2011-07-21  Paolo Carlini  <paolo.carlini@oracle.com>
1724
1725         * include/std/mutex (timed_mutex, recursive_timed_mutex): Update
1726         to use steady_clock instead of monotonic_clock.
1727         * config/abi/pre/gnu.ver: Export steady_clock::now.
1728
1729 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
1730             Daniel Krugler  <daniel.kruegler@googlemail.com>
1731
1732         * include/std/array (array::at, array::operator[]): Mark constexpr.
1733         * testsuite/23_containers/array/requirements/
1734         constexpr_element_access.cc: Add.
1735
1736 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
1737             Daniel Krugler  <daniel.kruegler@googlemail.com>
1738
1739         * include/std/chrono: (system_clock::is_steady): Update to N3291
1740         from is_monotonic.
1741         (time_point): Mark nonmember arithmetic operators constexpr.
1742         * src/chrono.cc: Modify for above.
1743         * src/compatibility-c++0x.cc: Same.
1744         * testsuite/20_util/time_point/nonmember/constexpr.cc: New.
1745         * testsuite/20_util/time_point/1.cc: Modify.
1746         * testsuite/20_util/system_clock/constexpr_data.cc: Modify.
1747         * testsuite/20_util/system_clock/1.cc: Modify.
1748         * testsuite/20_util/monotonic_clock/constexpr_data.cc: Move to...
1749         * testsuite/20_util/steady_clock/constexpr_data.cc: ...here.
1750         * testsuite/30_threads/condition_variable/members/2.cc: Modify.
1751         * testsuite/30_threads/condition_variable_any/members/2.cc: Modify.
1752
1753 2011-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
1754
1755         * include/std/system_error: Use noexcept.
1756         * src/system_error.cc: Likewise.
1757         * testsuite/19_diagnostics/error_condition/modifiers/39881.cc: Adjust.
1758         * testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
1759         * testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
1760         * testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
1761         * testsuite/util/testsuite_error.h: Likewise.
1762
1763         * include/std/system_error (error_code::error_code(_ErrorCodeEnum)):
1764         Use enable_if on template parameter default.
1765         (error_condition::error_condition(_ErrorConditionEnum)): Likewise.
1766
1767 2011-07-20  Ed Smith-Rowland  <3dw4rd@verizon.net>
1768
1769         * include/precompiled/stdc++.h: Add scoped_allocator.
1770
1771 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
1772
1773         * include/std/bitset (operator[]): Make constexpr.
1774         * testsuite/23_containers/bitset/operations/constexpr.cc: New.
1775
1776 2011-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
1777
1778         * include/debug/safe_local_iterator.h (_Safe_local_iterator<>::
1779         _Safe_local_iterator(const _Iterator&, size_type, const _Sequence*)):
1780         Fix typo.
1781
1782 2011-07-19  François Dumont  <francois.cppdevs@free.fr>
1783
1784         * include/debug/safe_unordered_base.h, safe_unordered_sequence.h,
1785         safe_unordered_sequence.tcc, safe_local_iterator.h,
1786         safe_local_iterator.tcc: New, support for unordered sequence safe
1787         local iterators.
1788         * include/Makefile.am: Add previous files.
1789         * include/Makefile.in: Regenerate.
1790         * include/debug/unordered_map, unordered_set: Implement
1791         _Safe_unordered_sequence and expose _Safe_local_iterator.
1792         * include/debug/safe_iterator.h, safe_iterator.tcc: Refactor
1793         _Safe_iterator::_M_get_distance static method to expose it as
1794         __get_distance function and use it in _Safe_local_iterator type.
1795         * include/debug/formatter.h: Add __msg_local_iter_compare_bad
1796         _Debug_msg_id enum entry to notify invalid comparison between local
1797         iterators from different buckets. Add _Parameter constructor from
1798         _Safe_local_iterator.
1799         * include/debug/functions.h: Add __valid_range overload for
1800         _Safe_local_iterator.
1801         * src/debug.cc: Add _Safe_unordered_sequence_base and
1802         _Safe_local_iterator_base methods implementations.
1803         * config/abi/pre/gnu.ver: Add export of some
1804         _Safe_unordered_sequence_base and _Safe_local_iterator_base methods.
1805         * testsuite/util/debug/checks.h: Add use_invalid_iterator function to
1806         simulate use of a singular iterator.
1807         * testsuite/util/debug/unordered_checks.h: New, several functions
1808         to simulate classic invalid usage of unordered sequence local
1809         iterators.
1810         * testsuite/23_containers/unordered_map/debug/
1811         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
1812         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
1813         invalid_local_iterator_compare_neg.cc: New.
1814         * testsuite/23_containers/unordered_multimap/debug/
1815         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
1816         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
1817         invalid_local_iterator_compare_neg.cc: New.
1818         * testsuite/23_containers/unordered_set/debug/
1819         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
1820         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
1821         invalid_local_iterator_compare_neg.cc: New.
1822         * testsuite/23_containers/unordered_multiset/debug/
1823         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
1824         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
1825         invalid_local_iterator_compare_neg.cc: New.
1826
1827 2011-07-18  Paolo Carlini  <paolo.carlini@oracle.com>
1828
1829         PR libstdc++/48430
1830         * include/bits/shared_ptr.h (struct hash<shared_ptr<>>): Use
1831         __hash_base.
1832         * include/bits/unique_ptr.h (struct hash<unique_ptr<>>): Likewise.
1833
1834 2011-07-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1835
1836         * crossconfig.m4 (*-netware): Remove.
1837         * configure: Regenerate.
1838
1839 2011-07-15  Yufeng Zhang  <yufeng.zhang@arm.com>
1840
1841         * config/locale/newlib/ctype_members.cc: New file.
1842         * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add a new C locale
1843         kind: newlib.  Configure to use the newlib specific
1844         ctype_members.cc when with_newlib is enabled.
1845         * configure: Regenerate.
1846
1847 2011-07-15  Paolo Carlini  <paolo.carlini@oracle.com>
1848             Jakub Jelinek  <jakub@redhat.com>
1849
1850         PR libstdc++/49745
1851         * acinclude.m4 ([GLIBCXX_CHECK_GTHREADS]): Check separately for
1852         _POSIX_TIMEOUTS and define _GTHREADS_USE_MUTEX_TIMEDLOCK.
1853         * libsupc++/guard.cc: Include <unistd.h>.
1854         * testsuite/17_intro/headers/c++1998/49745.cc: New.
1855         * configure: Regenerate.
1856         * config.h.in: Likewise.
1857
1858 2011-07-11  Paolo Carlini  <paolo.carlini@oracle.com>
1859
1860         PR libstdc++/49559
1861         * include/bits/stl_algo.h (__move_merge_backward): Remove.
1862         (__move_merge_adaptive, __move_merge_adaptive_backward): New.
1863         (__merge_adaptive): Use the latter two.
1864         (__rotate_adaptive): Avoid self move-assignment.
1865         * include/bits/stl_algobase.h (move_backward): Fix comment.
1866         * testsuite/25_algorithms/stable_sort/49559.cc: New.
1867         * testsuite/25_algorithms/inplace_merge/49559.cc: Likewise.
1868         * testsuite/25_algorithms/inplace_merge/moveable.cc: Extend.
1869         * testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise.
1870         * testsuite/util/testsuite_rvalref.h (rvalstruct::operator=
1871         (rvalstruct&&)): Check for self move-assignment.
1872
1873 2011-07-11  Paolo Carlini  <paolo.carlini@oracle.com>
1874
1875         * testsuite/util/testsuite_allocator.h (propagating_allocator<>::
1876         operator=(const propagating_allocator<>&)): Retun *this.
1877
1878 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1879
1880         * include/Makefile.am: Add new header.
1881         * include/Makefile.in: Regenerate.
1882         * include/std/scoped_allocator: New.
1883         * doc/xml/manual/status_cxx200x.xml: Update.
1884         * testsuite/20_util/scoped_allocator/1.cc: New.
1885         * testsuite/20_util/scoped_allocator/propagation.cc: New.
1886         * testsuite/20_util/scoped_allocator/requirements/typedefs.cc: New.
1887         * testsuite/20_util/scoped_allocator/requirements/
1888         explicit_instantiation.cc: New.
1889
1890 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1891
1892         * include/bits/stl_vector.h: Use new allocator model in C++0x mode.
1893         * include/bits/vector.tcc: Likewise.
1894         * testsuite/util/testsuite_allocator.h (propagating_allocator): Define.
1895         * testsuite/23_containers/vector/allocator/copy_assign.cc: New.
1896         * testsuite/23_containers/vector/allocator/noexcept.cc: New.
1897         * testsuite/23_containers/vector/allocator/copy.cc: New.
1898         * testsuite/23_containers/vector/allocator/swap.cc: New.
1899         * testsuite/23_containers/vector/allocator/move_assign.cc: New.
1900         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1901         Adjust dg-error line numbers.
1902         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1903         Likewise.
1904         * testsuite/23_containers/vector/requirements/dr438/
1905         constructor_1_neg.cc: Likewise.
1906         * testsuite/23_containers/vector/requirements/dr438/
1907         constructor_2_neg.cc: Likewise.
1908
1909 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1910
1911         * include/ext/alloc_traits.h (__allocator_always_compares_equal): New
1912         trait, provide partial specializations for known allocators.
1913         (__alloc_traits::construct, __alloc_traits::destroy): Overload for
1914         non-standard pointer types.
1915         (__alloc_traits::_S_always_equal): New trait for use with noexcept.
1916         (__alloc_traits::_S_nothrow_move): Likewise.
1917         (__alloc_traits::_S_nothrow_swap): Likewise.
1918
1919 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1920
1921         * include/ext/cast.h: Fix typo in include guard.
1922         * include/ext/pointer.h (_Unqualified_type): Remove redundant
1923         partial specializations for volatile types. Fix typos in comments.
1924         (pointer_traits<_Pointer_adaptor<Tp>>::pointer_to): Define.
1925
1926 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1927
1928         PR libstdc++/49668
1929         * include/std/functional (__bind_simple): Define.
1930         * include/std/future (_Task_setter): Parameterize by type of result
1931         pointer instead of state object.
1932         (_S_task_setter): Type deduction helper.
1933         (_Task_state): Use _S_task_setter and __bind_simple.
1934         (_Deferred_state, _Async_state): Store call wrapper directly not as
1935         std::function. Use _S_task_setter and __bind_simple.
1936         (_S_make_deferred_state, _S_make_async_state): Type deduction helpers.
1937         (async): Use new functions and __bind_simple.
1938         * include/std/mutex (call_once): Use __bind_simple.
1939         * include/std/thread (thread): Likewise. Remove unused headers.
1940         * src/thread.cc: Add header.
1941         * testsuite/30_threads/async/49668.cc: New.
1942         * testsuite/30_threads/call_once/49668.cc: New.
1943         * testsuite/30_threads/thread/cons/49668.cc: New.
1944         * testsuite/30_threads/thread/cons/moveable.cc: Remove unused bool.
1945
1946 2011-07-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1947
1948         * configure.host (abi_baseline_subdir_switch): Describe.
1949         Provide default.
1950         (*-*-solaris2.[89], *-*-solaris2.1[0-9]): Override.
1951         * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Substitute
1952         baseline_subdir_switch.
1953         * testsuite/Makefile.am (site.exp): Emit it.
1954         (baseline_subdir): Use it.
1955         * testsuite/libstdc++-abi/abi.exp: Use it.
1956         * configure: Regenerate.
1957         * Makefile.in: Regenerate.
1958         * doc/Makefile.in: Regenerate.
1959         * include/Makefile.in: Regenerate.
1960         * libsupc++/Makefile.in: Regenerate.
1961         * po/Makefile.in: Regenerate.
1962         * python/Makefile.in: Regenerate.
1963         * src/Makefile.in: Regenerate.
1964         * testsuite/Makefile.in: Regenerate.
1965
1966 2011-06-29  François Dumont  <francois.cppdevs@free.fr>
1967
1968         * include/debug/set.h, unordered_map, multiset.h, forward_list,
1969         unordered_set, vector, deque, string, list, multimap.h: Remove
1970         base class default constructor calls.
1971         * include/debug/map.h: Likewise and cleanup several redefinition of
1972         base iterator typedef.
1973
1974 2011-06-29  Nathan Sidwell  <nathan@codesourcery.com>
1975
1976         * libsupc++/eh_arm.c (__cxa_type_match): Construct address of
1977         thrown object here.  Return succeded_with_ptr_to_base for all
1978         pointer cases.
1979
1980 2011-06-23  Jonathan Wakely  <jwakely.gcc@gmail.com>
1981
1982         * testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Fix for
1983         C++0x mode.
1984         * testsuite/25_algorithms/sort/35588.cc: Likewise.
1985         * testsuite/26_numerics/headers/complex/synopsis.cc: Likewise.
1986
1987 2011-06-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
1988
1989         * testsuite/20_util/bind/socket.cc: Use variable and remove attribute.
1990
1991 2011-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
1992
1993         * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Avoid -Wall
1994         warning.
1995
1996 2011-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
1997
1998         * testsuite/20_util/reference_wrapper/invoke.cc: Avoid -Wall warnings.
1999         * testsuite/20_util/reference_wrapper/typedefs-3.cc: Likewise.
2000         * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
2001         * testsuite/20_util/allocator_traits/members/allocate_hint.cc:
2002         Likewise.
2003         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2004         * testsuite/20_util/bind/socket.cc: Likewise.
2005         * testsuite/20_util/pointer_traits/pointer_to.cc: Likewise.
2006         * testsuite/util/testsuite_random.h: Likewise.
2007
2008 2011-06-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
2009
2010         * include/Makefile.am: Add alloc_traits.h headers.
2011         * include/Makefile.in: Regenerate.
2012         * include/std/memory: Include uses_allocator.h explicitly.
2013         * include/bits/allocator.h (allocator_traits): Move to ...
2014         * include/bits/alloc_traits.h: New header.
2015         * include/ext/alloc_traits.h (__alloc_traits): Extension to provide
2016         a common allocator interface for C++98 and C++0x.
2017         * include/bits/stl_construct.h: Use __alloc_traits.
2018         * include/bits/stl_uninitialized.h: Likewise.
2019
2020 2011-06-22  Daniel Krugler  <daniel.kruegler@googlemail.com>
2021             Paolo Carlini  <paolo.carlini@oracle.com>
2022
2023         * include/bits/move.h (__is_nothrow_swappable): Add.
2024         (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Use noexcept.
2025         * include/bits/algorithmfwd.h: Adjust.
2026         * testsuite/25_algorithms/swap/noexcept.cc: New.
2027
2028 2011-06-21  Jakub Jelinek  <jakub@redhat.com>
2029
2030         * testsuite/Makefile.am (check_DEJAGNU_normal_targets): Add
2031         check-DEJAGNUnormal[4-9].
2032         (check-DEJAGNU): Split into 10 jobs for parallel testing instead of 4.
2033         * testsuite/Makefile.in: Regenerated.
2034
2035 2011-06-20  Daniel Krugler  <daniel.kruegler@googlemail.com>
2036             Paolo Carlini  <paolo.carlini@oracle.com>
2037
2038         * include/std/tuple (__conv_types, __one_by_one_convertible,
2039         __all_convertible): Add.
2040         (tuple): Use the latter.
2041         (tuple<_T1>): Remove.
2042         * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error
2043         line number.
2044         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
2045
2046 2011-06-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
2047
2048         * include/bits/ptr_traits.h (pointer_traits<T*>::pointer_to): Use
2049         noexcept.
2050
2051 2011-06-14  Paolo Carlini  <paolo.carlini@oracle.com>
2052
2053         * include/std/valarray (~valarray): Use noexcept.
2054         * include/bits/unique_ptr.h (~unique_ptr): Likewise.
2055         * testsuite/26_numerics/valarray/noexcept_move_construct.cc: New.
2056         * testsuite/20_util/shared_ptr/cons/noexcept_move_construct.cc:
2057         Likewise.
2058         * testsuite/20_util/unique_ptr/cons/noexcept_move_construct.cc:
2059         Likewise.
2060         * testsuite/20_util/weak_ptr/cons/noexcept_move_construct.cc:
2061         Likewise.
2062
2063 2011-06-14  Paolo Carlini  <paolo.carlini@oracle.com>
2064
2065         * include/std/functional: Use noexcept.
2066         * include/bits/stl_tempbuf.h: Likewise.
2067
2068 2011-06-12  François Dumont  <francois.cppdevs@free.fr>
2069             Paolo Carlini  <paolo.carlini@oracle.com>
2070
2071         * include/bits/allocator.h (__shrink_to_fit): Rename to
2072         __shrink_to_fit_aux, fix.
2073         * include/bits/stl_vector.h (_M_shrink_to_fit): Declare.
2074         (shrink_to_fit): Use the latter.
2075         * include/debug/vector (shrink_to_fit): Likewise.
2076         * include/bits/vector.tcc (_M_shrink_to_fit): Define.
2077         * include/bits/stl_deque.h (_M_shrink_to_fit): Declare.
2078         (shrink_to_fit): Use the latter.
2079         * include/debug/deque (shrink_to_fit): Likewise.
2080         * include/bits/deque.tcc (_M_shrink_to_fit): Define.
2081         * include/bits/vector.tcc (vector<bool>::_M_reallocate): Add.
2082         * include/bits/stl_bvector.h (_M_shrink_to_fit): Declare.
2083         (shrink_to_fit): Use the latter.
2084         (reserve): Use _M_reallocate, move inline.
2085         (_Bvector_base<>::_S_nword): Add, use it throughout.
2086         * include/debug/string (shrink_to_fit): Redo.
2087         * include/ext/vstring.h (shrink_to_fit): Optimize.
2088         * include/bits/basic_string.h (shrink_to_fit): Likewise.
2089         * testsuite/21_strings/debug/shrink_to_fit.cc: New.
2090         * testsuite/23_containers/vector/debug/shrink_to_fit.cc: Likewise.
2091         * testsuite/23_containers/vector/debug/bool/shrink_to_fit.cc:
2092         Likewise.
2093         * testsuite/23_containers/vector/bool/capacity/shrink_to_fit.cc:
2094         Likewise.
2095         * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
2096
2097 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2098
2099         * include/ext/extptr_allocator.h (construct, destroy): Fix for C++0x
2100         mode by overloading to take allocator's pointer type.
2101         * testsuite/23_containers/vector/ext_pointer/types/2.cc: New.
2102         * testsuite/23_containers/vector/ext_pointer/explicit_instantiation/
2103         2.cc: New.
2104
2105 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2106
2107         * testsuite/20_util/allocator_traits/requirements/
2108         explicit_instantiation.cc: Add another instantiation.
2109
2110 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2111
2112         * testsuite/20_util/allocator_traits/requirements/typedefs.cc: Check
2113         for allocator_type and value_type.
2114
2115 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2116
2117         * testsuite/30_threads/packaged_task/uses_allocator.cc: New.
2118         * testsuite/30_threads/promise/uses_allocator.cc: Likewise.
2119
2120 2011-06-10  Paolo Carlini  <paolo.carlini@oracle.com>
2121
2122         * include/ext/throw_allocator.h: Use noexcept.
2123         * include/ext/pool_allocator.h: Likewise.
2124         * include/ext/bitmap_allocator.h: Likewise.
2125         * include/ext/new_allocator.h: Likewise.
2126         * include/ext/malloc_allocator.h: Likewise.
2127         * include/ext/array_allocator.h: Likewise.
2128         * include/ext/mt_allocator.h: Likewise.
2129         * include/ext/extptr_allocator.h: Likewise.
2130         * testsuite/util/testsuite_allocator.h: Likewise; do not include
2131         <cassert> directly, include <testsuite_hooks.h> instead.
2132
2133 2011-06-10  Benjamin Kosnik  <bkoz@redhat.com>
2134
2135         * include/ext/pb_ds/*: Doxygen markup redo.
2136         * include/Makefile.am: Fold in constructors_destructor_fn_imps.hpp.
2137         * include/Makefile.in: Regenerate.
2138
2139 2011-06-10  Jason Merrill  <jason@redhat.com>
2140
2141         * testsuite/20_util/bind/ref_neg.cc: Remove wrong test lines.
2142
2143         * testsuite/20_util/bind/ref_neg.cc: Remove dg-excess-errors,
2144         fix dg-error markup.
2145
2146 2011-06-09  Jason Merrill  <jason@redhat.com>
2147
2148         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust.
2149
2150         * testsuite/lib/prune.exp (libstdc++-dg-prune): Prune notes.
2151         * testsuite/20_util/duration/cons/1_neg.cc: Remove dg-excess-errors.
2152         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
2153         * testsuite/20_util/forward/1_neg.cc: Likewise.
2154         * testsuite/20_util/function/cmp/cmp_neg.cc: Likewise.
2155         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2156         * testsuite/20_util/reference_wrapper/ref_neg.cc: Likewise.
2157         * testsuite/20_util/tuple/comparison_operators/35480_neg.cc: Likewise.
2158         * testsuite/tr1/6_containers/tuple/comparison_operators/35480_neg.cc:
2159         Likewise.
2160         * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
2161         * testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise.
2162         * testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc:
2163         Likewise.
2164         * testsuite/20_util/unique_ptr/cons/auto_ptr_neg.cc: Likewise.
2165         * testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: Likewise.
2166         * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc:
2167         Likewise.
2168         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
2169         auto_ptr_rvalue_neg.cc: Likewise.
2170         * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc:
2171         Likewise.
2172         * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
2173         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
2174         Likewise.
2175         * testsuite/23_containers/deque/requirements/dr438/
2176         constructor_1_neg.cc: Likewise.
2177         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
2178         Likewise.
2179         * testsuite/23_containers/forward_list/requirements/dr438/
2180         assign_neg.cc: Likewise.
2181         * testsuite/23_containers/forward_list/requirements/dr438/
2182         constructor_1_neg.cc: Likewise.
2183         * testsuite/23_containers/forward_list/requirements/dr438/
2184         constructor_2_neg.cc: Likewise.
2185         * testsuite/23_containers/forward_list/requirements/dr438/
2186         insert_neg.cc: Likewise.
2187         * testsuite/23_containers/list/requirements/dr438/
2188         assign_neg.cc: Likewise.
2189         * testsuite/23_containers/list/requirements/dr438/
2190         constructor_1_neg.cc: Likewise.
2191         * testsuite/23_containers/list/requirements/dr438/
2192         constructor_2_neg.cc: Likewise.
2193         * testsuite/23_containers/list/requirements/dr438/
2194         insert_neg.cc: Likewise.
2195         * testsuite/23_containers/vector/requirements/dr438/
2196         assign_neg.cc: Likewise.
2197         * testsuite/23_containers/vector/requirements/dr438/
2198         constructor_1_neg.cc: Likewise.
2199         * testsuite/23_containers/vector/requirements/dr438/
2200         constructor_2_neg.cc: Likewise.
2201         * testsuite/23_containers/vector/requirements/dr438/
2202         insert_neg.cc: Likewise.
2203         * testsuite/23_containers/map/operators/1_neg.cc: Likewise.
2204         * testsuite/29_atomics/atomic_integral/operators/
2205         bitwise_neg.cc: Likewise.
2206         * testsuite/decimal/mixed-mode-arith_neg.cc: Likewise.
2207         * testsuite/decimal/mixed-mode-cmp_neg.cc: Likewise.
2208         * testsuite/decimal/operator_neg.cc: Likewise.
2209
2210 2011-06-09  Simon Baldwin  <simonb@google.com>
2211
2212         * scripts/extract_symvers.in: Handle processor/OS specific or
2213         unknown symbol binding strings from readelf.
2214
2215 2011-06-09  Paolo Carlini  <paolo.carlini@oracle.com>
2216
2217         * include/std/type_traits (__is_copy_assignable_impl,
2218         __is_nt_copy_assignable_impl): Fix typo.
2219
2220 2011-06-08  Paolo Carlini  <paolo.carlini@oracle.com>
2221
2222         * include/ext/extptr_allocator.h: Include <ext/numeric_traits.h>
2223         instead of <limits>.
2224         * include/bits/allocator.h: Likewise.
2225
2226         * include/std/chrono (duration_values<>::min): Call lowest, not min.
2227
2228 2011-06-08  Paolo Carlini  <paolo.carlini@oracle.com>
2229
2230         * include/bits/allocator.h (__shrink_to_fit): Simplify.
2231         * include/bits/stl_vector.h (vector<>::shrink_to_fit): Adjust.
2232         * include/bits/stl_deque.h: Likewise.
2233         * include/bits/stl_bvector.h: Likewise.
2234
2235 2011-06-07  Jason Merrill  <jason@redhat.com>
2236
2237         * testsuite/lib/prune.exp: s/required/instantiated/.
2238         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2239         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
2240         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
2241         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
2242         * testsuite/20_util/forward/1_neg.cc: Likewise.
2243         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
2244         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2245         Likewise.
2246         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
2247         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2248         * testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Likewise.
2249         * testsuite/ext/ext_pointer/1_neg.cc: Likewise.
2250         * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Likewise.
2251         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Likewise.
2252         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
2253         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
2254         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
2255         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
2256         shared_ptr_neg.cc: Likewise.
2257
2258 2011-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
2259
2260         * include/bits/move.h (struct __move_if_noexcept_cond): Add.
2261         (move_if_noexcept): Use the latter.
2262         * include/bits/stl_iterator.h (__make_move_if_noexcept_iterator,
2263         _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR): Add.
2264         * include/bits/stl_uninitialized.h
2265         (__uninitialized_move_if_noexcept_a): Add.
2266         * include/bits/vector.tcc (vector<>::reserve): Use
2267         _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR.
2268         (vector<>::_M_insert_aux, _M_fill_insert, _M_default_append,
2269         _M_range_insert): Use __uninitialized_move_if_noexcept_a.
2270         * testsuite/util/testsuite_rvalref.h (throwing_move_constructor):
2271         Add.
2272         (copycounter::copycounter(copycounter&&)): Use noexcept.
2273         * testsuite/23_containers/vector/modifiers/moveable2.cc: New.
2274         * testsuite/23_containers/vector/capacity/resize/moveable2.cc:
2275         Likewise.
2276         * testsuite/23_containers/vector/capacity/reserve/moveable2.cc:
2277         Likewise.
2278
2279 2011-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
2280
2281         PR libstdc++/49293
2282         * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: Tweak
2283         for glibc 2.14.
2284         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
2285
2286 2011-06-06  Paolo Carlini  <paolo.carlini@oracle.com>
2287
2288         * include/bits/move.h (move_if_noexcept): Use __and_ and __not_.
2289
2290 2011-06-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
2291
2292         * include/bits/ptr_traits.h (pointer_traits): Fix typos.
2293         * include/ext/pointer.h (pointer_traits): Add partial specialization
2294         for _Pointer_adapter.
2295
2296 2011-06-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
2297
2298         * testsuite/util/testsuite_allocator.h (tracker_allocator::construct):
2299         Update to C++0x definition using type to construct as template
2300         parameter.
2301         (tracker_allocator::destroy): Likewise for type to destroy.
2302         (uneq_allocator::construct, uneq_allocator::destroy): Likewise.
2303
2304 2011-06-01  Paolo Carlini  <paolo.carlini@oracle.com>
2305
2306         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
2307         Use std::move on the allocator, use noexcept.
2308         (_Hashtable<>::~_Hashtable): Use noexcept.
2309         * include/bits/stl_list.h: Likewise.
2310         * include/bits/forward_list.h: Likewise.
2311         * include/bits/stl_vector.h: Likewise.
2312         * include/bits/stl_bvector.h: Likewise.
2313         * include/bits/stl_map.h (map<>::map(map&&)): Use noexcept.
2314         * include/bits/stl_set.h: Likewise.
2315         * include/bits/stl_multimap.h: Likewise.
2316         * include/bits/stl_multiset.h: Likewise.
2317         * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(_Rb_tree&&)): Use
2318         std::move on the allocator.
2319         (_Rb_tree<>::~_Rb_tree): Use noexcept.
2320         * include/bits/stl_deque.h: Likewise.
2321         * include/bits/basic_string.h (basic_string<>::~basic_string): Use
2322         noexcept.
2323         * include/ext/vstring.h (__versa_string<>::~__versa_string): Likewise.
2324         * include/debug/set.h: Adjust.
2325         * include/debug/unordered_map: Likewise.
2326         * include/debug/multiset.h: Likewise.
2327         * include/debug/forward_list: Likewise.
2328         * include/debug/vector: Likewise.
2329         * include/debug/unordered_set: Likewise.
2330         * include/debug/deque: Likewise.
2331         * include/debug/map.h: Likewise.
2332         * include/debug/string: Likewise.
2333         * include/debug/list: Likewise.
2334         * include/debug/multimap.h: Likewise.
2335         * include/profile/set.h: Likewise.
2336         * include/profile/unordered_map: Likewise.
2337         * include/profile/multiset.h: Likewise.
2338         * include/profile/forward_list: Likewise.
2339         * include/profile/unordered_set: Likewise.
2340         * include/profile/vector: Likewise.
2341         * include/profile/deque: Likewise.
2342         * include/profile/map.h: Likewise.
2343         * include/profile/list: Likewise.
2344         * include/profile/multimap.h: Likewise.
2345         * testsuite/21_strings/basic_string/cons/wchar_t/
2346         noexcept_move_construct.cc: New.
2347         * testsuite/21_strings/basic_string/cons/char/
2348         noexcept_move_construct.cc: Likewise.
2349         * testsuite/ext/vstring/cons/noexcept_move_construct.cc: Likewise.
2350         * testsuite/23_containers/unordered_map/cons/
2351         noexcept_move_construct.cc: Likewise.
2352         * testsuite/23_containers/multimap/cons/
2353         noexcept_move_construct.cc: Likewise.
2354         * testsuite/23_containers/set/cons/
2355         noexcept_move_construct.cc: Likewise.
2356         * testsuite/23_containers/unordered_multimap/cons/
2357         noexcept_move_construct.cc: Likewise.
2358         * testsuite/23_containers/forward_list/cons/
2359         noexcept_move_construct.cc: Likewise.
2360         * testsuite/23_containers/unordered_set/cons/
2361         noexcept_move_construct.cc: Likewise.
2362         * testsuite/23_containers/vector/bool/cons/
2363         noexcept_move_construct.cc: Likewise.
2364         * testsuite/23_containers/vector/cons/
2365         noexcept_move_construct.cc: Likewise.
2366         * testsuite/23_containers/multiset/cons/
2367         noexcept_move_construct.cc: Likewise.
2368         * testsuite/23_containers/list/cons/
2369         noexcept_move_construct.cc: Likewise.
2370         * testsuite/23_containers/unordered_multiset/cons/
2371         noexcept_move_construct.cc: Likewise.
2372         * testsuite/23_containers/map/cons/noexcept_move_construct.cc
2373         * testsuite/23_containers/forward_list/requirements/dr438/
2374         assign_neg.cc: Adjust dg-error line numbers.
2375         * testsuite/23_containers/forward_list/requirements/dr438/
2376         insert_neg.cc: Likewise.
2377         * testsuite/23_containers/forward_list/requirements/dr438/
2378         constructor_1_neg.cc: Likewise.
2379         * testsuite/23_containers/forward_list/requirements/dr438/
2380         constructor_2_neg.cc: Likewise.
2381         * testsuite/23_containers/vector/requirements/dr438/
2382         assign_neg.cc: Likewise.
2383         * testsuite/23_containers/vector/requirements/dr438/
2384         insert_neg.cc: Likewise.
2385         * testsuite/23_containers/vector/requirements/dr438/
2386         constructor_1_neg.cc: Likewise.
2387         * testsuite/23_containers/vector/requirements/dr438/
2388         constructor_2_neg.cc: Likewise.
2389         * testsuite/23_containers/deque/requirements/dr438/
2390         assign_neg.cc: Likewise.
2391         * testsuite/23_containers/deque/requirements/dr438/
2392         insert_neg.cc: Likewise.
2393         * testsuite/23_containers/deque/requirements/dr438/
2394         constructor_1_neg.cc: Likewise.
2395         * testsuite/23_containers/deque/requirements/dr438/
2396         constructor_2_neg.cc: Likewise.
2397         * testsuite/23_containers/list/requirements/dr438/
2398         assign_neg.cc: Likewise.
2399         * testsuite/23_containers/list/requirements/dr438/
2400         insert_neg.cc: Likewise.
2401         * testsuite/23_containers/list/requirements/dr438/
2402         constructor_1_neg.cc: Likewise.
2403         * testsuite/23_containers/list/requirements/dr438/
2404         constructor_2_neg.cc: Likewise.
2405
2406         * include/bits/move.h (swap): Use __and_ in the noexcept.
2407         * include/bits/algorithmfwd.h: Adjust.
2408
2409 2011-05-31  Paolo Carlini  <paolo.carlini@oracle.com>
2410
2411         * include/bits/basic_string.h: Use noexcept per the FDIS (minus
2412         compare(const string&), which uses char_traits::compare, which
2413         isn't noexcept; also no noexcept in the move assignment operator
2414         and move assign, see c++std-lib-30855).
2415         * include/bits/basic_string.tcc: Likewise.
2416         * include/ext/vstring.h: Likewise.
2417         * include/ext/vstring.tcc: Likewise.
2418         * include/debug/string: Likewise.
2419
2420 2011-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
2421
2422         * doc/xml/manual/status_cxx200x.xml: Update.
2423         * doc/html/*: Regenerate.
2424
2425 2011-05-30  Paolo Carlini  <paolo.carlini@oracle.com>
2426
2427         * include/std/type_traits (__or_, __and_): Add trivial definitions
2428         for a single element.
2429         * include/bits/stl_pair.h: Use __and_ in noexcept specs and
2430         constraints.
2431         (pair<>::pair(pair&&)): Define.
2432         (pair<>::pair(const pair<>&)): Constrain with is_convertible.
2433         (pair<>::pair(pair<>&&)): Likewise, remove noexcept.
2434         * include/std/tuple: Use __and_ in noexcept specs and constraints.
2435         (_Tuple_impl<>::_Tuple_impl(allocator_arg_t, const _Alloc&,
2436         _Tuple_impl&&)): Remove noexcept.
2437         (tuple<>::tuple(_UElements&&...), tuple(const tuple<_UElements...>&),
2438         tuple(tuple<_UElements...>&&), tuple(const pair<_U1, _U2>&),
2439         tuple(pair<_U1, _U2>&&)): Constrain with is_convertible.
2440         * testsuite/20_util/tuple/moveable2.cc: Use = delete.
2441         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
2442         Adjust dg-error line numbers.
2443         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2444         Likewise.
2445         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2446         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
2447         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
2448
2449 2011-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
2450
2451         * include/std/tuple: Restore is_convertible constraint.
2452         * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: Remove.
2453
2454 2011-05-30  Paolo Carlini  <paolo.carlini@oracle.com>
2455
2456         PR libstdc++/49236
2457         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
2458         line number.
2459
2460 2011-05-30  Jonathan Wakely  <jwakely.gcc@gmail.com>
2461
2462         * include/std/tuple: Implement uses-allocator construction.
2463         * include/bits/allocator.h (uses_allocator): Move to ...
2464         * include/bits/uses_allocator.h: New file.
2465         * include/Makefile.am: Add new header.
2466         * include/Makefile.in: Regenerate.
2467         * testsuite/20_util/uses_allocator/cons_neg.cc: New.
2468         * testsuite/20_util/uses_allocator/construction.cc: New.
2469         * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: New.
2470         * testsuite/20_util/tuple/cons/allocators.cc: New.
2471
2472 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2473
2474         * testsuite/20_util/pointer_traits/pointer_to.cc: Fix.
2475
2476 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2477
2478         * acinclude.m4: Define GLIBCXX_CHECK_GET_NPROCS and
2479         GLIBCXX_CHECK_SC_NPROCESSORS_ONLN.
2480         * configure.ac: Use them. Increase minor version.
2481         * configure: Regenerate.
2482         * config.h.in: Regenerate.
2483         * include/std/thread (thread::hardware_concurrency): Remove inline
2484         definition.
2485         * src/thread.cc (thread::hardware_concurrency): Define.
2486         * config/abi/pre/gnu.ver: Export new symbol @3.4.17
2487         * testsuite/util/testsuite_abi.cc: Add new version.
2488         * testsuite/lib/libstdc++.exp (check_v3_target_nprocs): Add.
2489         * testsuite/lib/dg-options.exp (dg-require-nprocs): Add.
2490         * testsuite/30_threads/thread/members/hardware_concurrency.cc: Use
2491         dg-require-nprocs and verify hardware_concurrency returns non-zero.
2492
2493 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2494
2495         * testsuite/20_util/pointer_traits/pointer_to.cc: New.
2496
2497 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2498
2499         * include/Makefile.am: Add new ptr_traits.h header.
2500         * include/Makefile.in: Regenerate.
2501         * include/bits/ptr_traits.h (pointer_traits): New.
2502         * include/bits/allocator.h (allocator_traits): Add.
2503         * include/ext/array_allocator.h (construct, destroy): Update C++0x
2504         versions.
2505         * include/ext/bitmap_allocator.h (construct, destroy): Likewise.
2506         * include/ext/extptr_allocator.h (construct, destroy): Likewise.
2507         * include/ext/malloc_allocator.h (construct, destroy): Likewise.
2508         * include/ext/mt_allocator.h (construct, destroy): Likewise.
2509         * include/ext/new_allocator.h (construct, destroy): Likewise.
2510         * include/ext/pool_allocator.h (construct, destroy): Likewise.
2511         * include/ext/throw_allocator.h (construct, destroy): Likewise.
2512         * testsuite/20_util/allocator_traits/requirements/typedefs.cc: New.
2513         * testsuite/20_util/allocator_traits/requirements/
2514         explicit_instantiation.cc: New.
2515         * testsuite/20_util/allocator_traits/members/max_size.cc: New.
2516         * testsuite/20_util/allocator_traits/members/select.cc: New.
2517         * testsuite/20_util/allocator_traits/members/construct.cc: New.
2518         * testsuite/20_util/allocator_traits/members/allocate_hint.cc: New.
2519         * testsuite/20_util/allocator_traits/members/destroy.cc: New.
2520         * testsuite/20_util/pointer_traits/requirements/typedefs.cc: New.
2521         * testsuite/20_util/pointer_traits/requirements/
2522         explicit_instantiation.cc: New.
2523
2524 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2525
2526         * include/std/future (launch): Update enumerators and define
2527         operators required for bitmask type. Remove trailing whitespace.
2528         * src/future.cc: Remove trailing whitespace.
2529         * testsuite/30_threads/async/any.cc: Adjust.
2530         * testsuite/30_threads/async/sync.cc: Adjust.
2531         * testsuite/30_threads/async/launch.cc: New.
2532
2533 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2534
2535         * include/std/future: Use noexcept.
2536         * src/future.cc: Likewise.
2537
2538 2011-05-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
2539
2540         * include/std/thread (this_thread::sleep_until): Move after sleep_for.
2541
2542 2011-05-27  Paolo Carlini  <paolo.carlini@oracle.com>
2543
2544         PR libstdc++/49187
2545         * include/parallel/losertree.h: Add missing using declarations
2546         of _Base::_M_comp.
2547         * include/parallel/algobase.h: Include <parallel/algorithmfwd.h>.
2548         * include/parallel/multiway_merge.h: Include <parallel/
2549         multiseq_selection.h>, forward declare __merge_advance.
2550         * include/parallel/multiseq_selection.h: Don't include <parallel/
2551         sort.h> here.
2552         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Fix
2553         qualification of upper_bound.
2554
2555         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc:
2556         Use dg-require-debug-mode.
2557         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc:
2558         Likewise.
2559         * testsuite/ext/pb_ds/regression/priority_queue_rand_debug.cc:
2560         Likewise.
2561         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc:
2562         Likewise.
2563         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc:
2564         Likewise.
2565         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
2566         Likewise.
2567         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
2568         Likewise.
2569         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc:
2570         Likewise.
2571         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc:
2572         Likewise.
2573
2574         * include/parallel/algo.h: Minor uglification fixes.
2575
2576 2011-05-26  Paolo Carlini  <paolo.carlini@oracle.com>
2577
2578         * src/list.cc: Use noexcept per the FDIS.
2579         * src/compatibility-list-2.cc: Likewise.
2580         * include/debug/set.h: Likewise.
2581         * include/debug/unordered_map: Likewise.
2582         * include/debug/multiset.h: Likewise.
2583         * include/debug/forward_list: Likewise.
2584         * include/debug/unordered_set: Likewise.
2585         * include/debug/vector: Likewise.
2586         * include/debug/map.h: Likewise.
2587         * include/debug/deque: Likewise.
2588         * include/debug/list: Likewise.
2589         * include/debug/multimap.h: Likewise.
2590         * include/profile/set.h: Likewise.
2591         * include/profile/unordered_map: Likewise.
2592         * include/profile/multiset.h: Likewise.
2593         * include/profile/forward_list: Likewise.
2594         * include/profile/vector: Likewise.
2595         * include/profile/unordered_set: Likewise.
2596         * include/profile/map.h: Likewise.
2597         * include/profile/deque: Likewise.
2598         * include/profile/list: Likewise.
2599         * include/profile/multimap.h: Likewise.
2600         * include/bits/hashtable.h: Likewise.
2601         * include/bits/stl_list.h: Likewise.
2602         * include/bits/stl_map.h: Likewise.
2603         * include/bits/hashtable_policy.h: Likewise.
2604         * include/bits/stl_set.h: Likewise.
2605         * include/bits/forward_list.h: Likewise.
2606         * include/bits/stl_multimap.h: Likewise.
2607         * include/bits/stl_vector.h: Likewise.
2608         * include/bits/stl_deque.h: Likewise.
2609         * include/bits/stl_multiset.h: Likewise.
2610         * include/bits/stl_bvector.h: Likewise.
2611         * include/bits/stl_tree.h: Likewise.
2612
2613 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2614
2615         * include/bits/stl_queue.h: Use noexcept per the FDIS.
2616         * include/bits/stl_stack.h: Likewise.
2617
2618 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2619
2620         * config/abi/pre/gnu.ver: Correct last change, export instead
2621         at the existing @3.4.16.
2622         * configure.ac: Revert last change.
2623         * testsuite/util/testsuite_abi.cc: Likewise.
2624         * configure: Regenerate.
2625
2626 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
2627
2628         * doc/xml/manual/documentation_hacking.xml: Minor corrections.
2629
2630 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
2631
2632         * include/std/mutex: Add doxygen comments.
2633
2634 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2635
2636         * config/abi/pre/gnu.ver: Export recently added  basic_streambuf
2637         and basic_stringbuf symbols @3.4.17.
2638         * configure.ac: Update.
2639         * testsuite/util/testsuite_abi.cc: Likewise.
2640         * configure: Regenerate.
2641
2642 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
2643
2644         * libsupc++/guard.cc: Fix comments.
2645
2646 2011-05-25  Ian Lance Taylor  <iant@google.com>
2647
2648         PR libstdc++/49060
2649         * include/backward/hashtable.h (hashtable::erase): Don't crash if
2650         erasing first and another element with a reference to the other
2651         element.
2652         * testsuite/backward/hash_set/49060.cc: New.
2653
2654 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2655
2656         * include/bits/random.h (random_device::min, max): Specify constexpr.
2657
2658 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2659
2660         * include/std/thread: Use noexcept throughout per the FDIS.
2661         * include/std/mutex: Likewise.
2662
2663 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
2664
2665         * testsuite/20_util/duration/arithmetic/dr2020.cc: Fix typo.
2666
2667 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
2668
2669         PR libstdc++/49151
2670         * include/std/chrono (operator+, operator-, operator*, operator/,
2671         operator&): Implement LWG 2020 [WP]; specify constexpr.
2672         * testsuite/20_util/duration/arithmetic/dr2020.cc: New.
2673
2674 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
2675
2676         PR libstdc++/49141
2677         * testsuite/26_numerics/complex/cons/48760.cc: Use dg-require-c-std.
2678         * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
2679         * testsuite/26_numerics/headers/cmath/19322.cc: Likewise.
2680
2681 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
2682
2683         * include/bits/c++config (_GLIBCXX_NOTHROW): Update for noexcept.
2684         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
2685         line number.
2686
2687 2011-05-23  Benjamin Kosnik  <bkoz@redhat.com>
2688
2689         PR libstdc++/37144
2690         PR libstdc++/28457
2691         Interface changes for ext/pb_ds.
2692         PB_DS_BASE_C_DEC to unique PB_DS_*_BASE macros.
2693         * include/ext/pb_ds/assoc_container.hpp (container_base): Remove.
2694         (basic_hash_table, basic_branch, list_update): Derive from
2695         container_base_dispatch.
2696         * include/ext/pb_ds/list_update_policy.hpp (null_lu_metadata): Remove.
2697         (move_to_front_lu_policy): To lu_move_to_front_policy.
2698         (counter_lu_policy): To lu_counter_policy.
2699         * include/ext/pb_ds/tree_policy.hpp (null_tree_node_update): Remove.
2700         * include/ext/pb_ds/tag_and_trait.hpp (container_base_dispatch): Adjust
2701         template parameters, declare here.
2702         (null_mapped_type) Remove.
2703         (null_type): Just use this for template tricks everywhere.
2704         * include/ext/pb_ds/hash_policy.hpp (null_hash_fn, null_probe_fn):
2705         Remove.
2706         * include/ext/pb_ds/trie_policy.hpp (null_trie_node_update): Remove.
2707         (string_trie_e_access_traits): To trie_string_access_traits.
2708         * include/ext/pb_ds/priority_queue.hpp: Use container_base_dispatch.
2709
2710         File changes.
2711         * include/Makefile.am (pb_headers): Removed and changed file names.
2712         * include/Makefile.in: Regenerated.
2713         * include/ext/pb_ds/detail/basic_types.hpp: Remove.
2714         * include/ext/pb_ds/detail/bin_search_tree_/
2715           cond_dtor_entry_dealtor.hpp: Remove.
2716         * include/ext/pb_ds/detail/bin_search_tree_/
2717           cond_key_dtor_entry_dealtor.hpp: Remove.
2718         * include/ext/pb_ds/detail/binary_heap_/const_point_iterator.hpp: Move..
2719         * include/ext/pb_ds/detail/binary_heap_/
2720           point_const_iterator.hpp: ..here.
2721         * include/ext/pb_ds/detail/basic_tree_policy: Move to...
2722         * include/ext/pb_ds/detail/branch_policy: This.
2723         * include/ext/pb_ds/detail/branch_policy/
2724           basic_tree_policy_base.hpp: Move...
2725         * include/ext/pb_ds/detail/branch_policy/branch_policy.hpp: ...here.
2726         * include/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp: Add.
2727         * include/ext/pb_ds/detail/branch_policy/traits.hpp: Add.
2728         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2729         null_metadata.hpp: Remove.
2730         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2731         const_point_iterator.hpp: Move...
2732         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2733         point_const_iterator.hpp: ...here.
2734         * include/ext/pb_ds/detail/list_update_policy/
2735         counter_lu_metadata.hpp: Move..
2736         * include/ext/pb_ds/detail/list_update_policy/
2737         lu_counter_metadata.hpp: ...here.
2738         * include/ext/pb_ds/detail/list_update_policy/
2739         counter_lu_policy_imp.hpp: Remove.
2740         * include/ext/pb_ds/detail/list_update_policy/
2741         mtf_lu_policy_imp.hpp: Remove.
2742         * include/ext/pb_ds/detail/trie_policy/
2743         string_trie_e_access_traits_imp.hpp: Move...
2744         * include/ext/pb_ds/detail/trie_policy/
2745         sample_trie_access_traits.hpp: ...here.
2746         * include/ext/pb_ds/detail/trie_policy/
2747         sample_trie_e_access_traits.hpp: Move...
2748         * include/ext/pb_ds/detail/trie_policy/
2749         trie_string_access_traits_imp.hpp: ...here.
2750         * include/ext/pb_ds/detail/trie_policy/null_node_update_imp.hpp: Remove.
2751         * include/ext/pb_ds/detail/tree_policy/null_node_update_imp.hpp: Remove.
2752         * include/ext/pb_ds/detail/ov_tree_map_/cond_dtor.hpp: Remove.
2753         * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: New, fold all
2754         types found in the following files into pat_trie_base.
2755         * include/ext/pb_ds/detail/pat_trie_/const_child_iterator.hpp: Folded.
2756         * include/ext/pb_ds/detail/pat_trie_/
2757           cond_dtor_entry_dealtor.hpp: Folded.
2758         * include/ext/pb_ds/detail/pat_trie_/child_iterator.hpp: Folded.
2759         * include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp: Folded.
2760         * include/ext/pb_ds/detail/pat_trie_/head.hpp: Folded.
2761         * include/ext/pb_ds/detail/pat_trie_/leaf.hpp: Folded.
2762         * include/ext/pb_ds/detail/pat_trie_/node_base.hpp: Folded.
2763         * include/ext/pb_ds/detail/pat_trie_/node_metadata_base.hpp: Folded.
2764         * include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Folded.
2765         * include/ext/pb_ds/detail/pat_trie_/node_iterators.hpp: Folded.
2766         * include/ext/pb_ds/detail/pat_trie_/point_iterators.hpp: Folded.
2767         * include/ext/pb_ds/detail/pat_trie_/synth_e_access_traits.hpp: Move...
2768         * include/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp: ...here.
2769         * include/ext/pb_ds/detail/unordered_iterator/
2770         const_point_iterator.hpp: Move...
2771         * include/ext/pb_ds/detail/unordered_iterator/
2772         point_const_iterator.hpp: ...here.
2773
2774
2775         Adjust for above changes.
2776         * include/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp: Same.
2777         * include/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp: Same.
2778         * include/ext/pb_ds/detail/resize_policy/
2779           sample_resize_trigger.hpp: Same.
2780         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp: Same.
2781         * include/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp: Same.
2782         * include/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp: Same.
2783         * include/ext/pb_ds/detail/binomial_heap_base_/
2784           binomial_heap_base_.hpp: Same.
2785         * include/ext/pb_ds/detail/binomial_heap_base_/
2786           constructors_destructor_fn_imps.hpp: Same.
2787         * include/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp: Same.
2788         * include/ext/pb_ds/detail/binomial_heap_base_/
2789           split_join_fn_imps.hpp: Same.
2790         * include/ext/pb_ds/detail/container_base_dispatch.hpp: Same. Adjust
2791           for template parameter ordering change.
2792         * include/ext/pb_ds/detail/cc_hash_table_map_/
2793           erase_store_hash_fn_imps.hpp: Same.
2794         * include/ext/pb_ds/detail/cc_hash_table_map_/
2795           constructor_destructor_no_store_hash_fn_imps.hpp: Same.
2796         * include/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp: Same.
2797         * include/ext/pb_ds/detail/cc_hash_table_map_/
2798           insert_no_store_hash_fn_imps.hpp: Same.
2799         * include/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp: Same.
2800         * include/ext/pb_ds/detail/cc_hash_table_map_/
2801           policy_access_fn_imps.hpp: Same.
2802         * include/ext/pb_ds/detail/cc_hash_table_map_/
2803           resize_store_hash_fn_imps.hpp: Same.
2804         * include/ext/pb_ds/detail/cc_hash_table_map_/
2805           constructor_destructor_store_hash_fn_imps.hpp: Same.
2806         * include/ext/pb_ds/detail/cc_hash_table_map_/
2807           insert_store_hash_fn_imps.hpp: Same.
2808         * include/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp: Same.
2809         * include/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp: Same.
2810         * include/ext/pb_ds/detail/cc_hash_table_map_/
2811           entry_list_fn_imps.hpp: Same.
2812         * include/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp: Same.
2813         * include/ext/pb_ds/detail/cc_hash_table_map_/
2814           find_store_hash_fn_imps.hpp: Same.
2815         * include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp: Same.
2816         * include/ext/pb_ds/detail/cc_hash_table_map_/
2817           debug_no_store_hash_fn_imps.hpp: Same.
2818         * include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same.
2819         * include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp: Same.
2820         * include/ext/pb_ds/detail/cc_hash_table_map_/
2821           constructor_destructor_fn_imps.hpp: Same.
2822         * include/ext/pb_ds/detail/cc_hash_table_map_/
2823           cond_key_dtor_entry_dealtor.hpp: Same.
2824         * include/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp: Same.
2825         * include/ext/pb_ds/detail/cc_hash_table_map_/
2826           debug_store_hash_fn_imps.hpp: Same.
2827         * include/ext/pb_ds/detail/cc_hash_table_map_/
2828           erase_no_store_hash_fn_imps.hpp: Same.
2829         * include/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp: Same.
2830         * include/ext/pb_ds/detail/cc_hash_table_map_/
2831           iterators_fn_imps.hpp: Same.
2832         * include/ext/pb_ds/detail/cc_hash_table_map_/
2833           resize_no_store_hash_fn_imps.hpp: Same.
2834         * include/ext/pb_ds/detail/cc_hash_table_map_/
2835           standard_policies.hpp: Same.
2836         * include/ext/pb_ds/detail/tree_trace_base.hpp: Same.
2837         * include/ext/pb_ds/detail/unordered_iterator/iterator.hpp: Same.
2838         * include/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp: Same.
2839         * include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp: Same.
2840         * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp: Same.
2841         * include/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp: Same.
2842         * include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp: Same.
2843         * include/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp: Same.
2844         * include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp: Same.
2845         * include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp: Same.
2846         * include/ext/pb_ds/detail/pat_trie_/
2847           constructors_destructor_fn_imps.hpp: Same.
2848         * include/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp: Same.
2849         * include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp: Same.
2850         * include/ext/pb_ds/detail/pat_trie_/traits.hpp: Same.
2851         * include/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp: Same.
2852         * include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp: Same.
2853         * include/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp: Same.
2854         * include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp: Same.
2855         * include/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp: Same.
2856         * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp: Same.
2857         * include/ext/pb_ds/detail/bin_search_tree_/
2858           policy_access_fn_imps.hpp: Same.
2859         * include/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp: Same.
2860         * include/ext/pb_ds/detail/bin_search_tree_/
2861           constructors_destructor_fn_imps.hpp: Same.
2862         * include/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp: Same.
2863         * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp: Same.
2864         * include/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp: Same.
2865         * include/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp: Same.
2866         * include/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp: Same.
2867         * include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp: Same.
2868         * include/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp: Same.
2869         * include/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp: Same.
2870         * include/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp: Same.
2871         * include/ext/pb_ds/detail/bin_search_tree_/
2872           split_join_fn_imps.hpp: Same.
2873         * include/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp: Same.
2874         * include/ext/pb_ds/detail/list_update_policy/
2875           sample_update_policy.hpp: Same.
2876         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2877           trace_fn_imps.hpp: Same.
2878         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2879           erase_fn_imps.hpp: Same.
2880         * include/ext/pb_ds/detail/gp_hash_table_map_/
2881           erase_store_hash_fn_imps.hpp: Same.
2882         * include/ext/pb_ds/detail/gp_hash_table_map_/
2883           constructor_destructor_no_store_hash_fn_imps.hpp: Same.
2884         * include/ext/pb_ds/detail/gp_hash_table_map_/
2885           insert_no_store_hash_fn_imps.hpp: Same.
2886         * include/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp: Same.
2887         * include/ext/pb_ds/detail/gp_hash_table_map_/
2888           policy_access_fn_imps.hpp: Same.
2889         * include/ext/pb_ds/detail/gp_hash_table_map_/
2890           resize_store_hash_fn_imps.hpp: Same.
2891         * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
2892         * include/ext/pb_ds/detail/gp_hash_table_map_/
2893           constructor_destructor_store_hash_fn_imps.hpp: Same.
2894         * include/ext/pb_ds/detail/gp_hash_table_map_/
2895           insert_store_hash_fn_imps.hpp: Same.
2896         * include/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp: Same.
2897         * include/ext/pb_ds/detail/gp_hash_table_map_/
2898           iterator_fn_imps.hpp: Same.
2899         * include/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp: Same.
2900         * include/ext/pb_ds/detail/gp_hash_table_map_/
2901           find_no_store_hash_fn_imps.hpp: Same.
2902         * include/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp: Same.
2903         * include/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp: Same.
2904         * include/ext/pb_ds/detail/gp_hash_table_map_/
2905           find_store_hash_fn_imps.hpp: Same.
2906         * include/ext/pb_ds/detail/gp_hash_table_map_/
2907           debug_no_store_hash_fn_imps.hpp: Same.
2908         * include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
2909         * include/ext/pb_ds/detail/gp_hash_table_map_/
2910           constructor_destructor_fn_imps.hpp: Same.
2911         * include/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp: Same.
2912         * include/ext/pb_ds/detail/gp_hash_table_map_/
2913           debug_store_hash_fn_imps.hpp: Same.
2914         * include/ext/pb_ds/detail/gp_hash_table_map_/
2915           erase_no_store_hash_fn_imps.hpp: Same.
2916         * include/ext/pb_ds/detail/gp_hash_table_map_/
2917           resize_no_store_hash_fn_imps.hpp: Same.
2918         * include/ext/pb_ds/detail/gp_hash_table_map_/
2919           standard_policies.hpp: Same.
2920         * include/ext/pb_ds/detail/standard_policies.hpp: Same.
2921         * include/ext/pb_ds/detail/types_traits.hpp: Same.
2922         * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp: Same.
2923         * include/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp: Same.
2924         * include/ext/pb_ds/detail/binary_heap_/const_iterator.hpp: Same.
2925         * include/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp: Same.
2926         * include/ext/pb_ds/detail/binary_heap_/
2927           constructors_destructor_fn_imps.hpp: Same.
2928         * include/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp: Same.
2929         * include/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp: Same.
2930         * include/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp: Same.
2931         * include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Same.
2932         * include/ext/pb_ds/detail/binary_heap_/entry_pred.hpp: Same.
2933         * include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp: Same.
2934         * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp: Same.
2935         * include/ext/pb_ds/detail/binary_heap_/resize_policy.hpp: Same.
2936         * include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same.
2937         * include/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp: Same.
2938         * include/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp: Same.
2939         * include/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp: Same.
2940         * include/ext/pb_ds/detail/tree_policy/
2941           sample_tree_node_update.hpp: Same.
2942         * include/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp: Same.
2943         * include/ext/pb_ds/detail/trie_policy/
2944           sample_trie_node_update.hpp: Same.
2945         * include/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp: Same.
2946         * include/ext/pb_ds/detail/trie_policy/
2947           prefix_search_node_update_imp.hpp: Same.
2948         * include/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp: Same.
2949         * include/ext/pb_ds/detail/cond_dealtor.hpp: Same.
2950         * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp: Same.
2951           Adjust for template parameter change, fold into
2952           container_base_dispatch.
2953         * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp: Same.
2954         * include/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp: Same.
2955         * include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp: Same.
2956         * include/ext/pb_ds/detail/pairing_heap_/
2957           constructors_destructor_fn_imps.hpp: Same.
2958         * include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp: Same.
2959         * include/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp: Same.
2960         * include/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp: Same.
2961         * include/ext/pb_ds/detail/binomial_heap_/
2962           constructors_destructor_fn_imps.hpp: Same.
2963         * include/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp: Same.
2964         * include/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp: Same.
2965         * include/ext/pb_ds/detail/constructors_destructor_fn_imps.hpp: Same.
2966         * include/ext/pb_ds/detail/type_utils.hpp: Same.
2967         * include/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp: Same.
2968         * include/ext/pb_ds/detail/eq_fn/eq_by_less.hpp: Same.
2969         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2970           policy_access_fn_imps.hpp: Same.
2971         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2972           left_child_next_sibling_heap_.hpp: Same.
2973         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2974           const_iterator.hpp: Same.
2975         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2976           insert_fn_imps.hpp: Same.
2977         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2978           constructors_destructor_fn_imps.hpp: Same.
2979         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2980           debug_fn_imps.hpp: Same.
2981         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2982           node.hpp: Same.
2983         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2984           info_fn_imps.hpp: Same.
2985         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2986           iterators_fn_imps.hpp: Same.
2987         * include/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp: Same.
2988         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Same.
2989         * include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp: Same.
2990         * include/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp: Same.
2991         * include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp: Same.
2992         * include/ext/pb_ds/detail/thin_heap_/
2993           constructors_destructor_fn_imps.hpp: Same.
2994         * include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp: Same.
2995         * include/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp: Same.
2996         * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp: Same.
2997         * include/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp: Same.
2998         * include/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp: Same.
2999         * include/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp: Same.
3000         * include/ext/pb_ds/detail/ov_tree_map_/
3001           constructors_destructor_fn_imps.hpp: Same.
3002         * include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
3003         * include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Same.
3004         * include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp: Same.
3005         * include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp: Same.
3006         * include/ext/pb_ds/detail/ov_tree_map_/traits.hpp: Same.
3007         * include/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp: Same.
3008         * include/ext/pb_ds/detail/debug_map_base.hpp: Same.
3009         * include/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp: Same.
3010         * include/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp: Same.
3011         * include/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp: Same.
3012         * include/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp: Same.
3013         * include/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp: Same.
3014         * include/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp: Same.
3015         * include/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp: Same.
3016         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Same.
3017         * include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp: Same.
3018         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Same.
3019         * include/ext/pb_ds/detail/splay_tree_/
3020           constructors_destructor_fn_imps.hpp: Same.
3021         * include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp: Same.
3022         * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Same.
3023         * include/ext/pb_ds/detail/splay_tree_/node.hpp: Same.
3024         * include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp: Same.
3025         * include/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp: Same.
3026         * include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same.
3027         * include/ext/pb_ds/detail/splay_tree_/traits.hpp: Same.
3028         * include/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp: Same.
3029         * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp: Same.
3030         * include/ext/pb_ds/detail/list_update_map_/
3031           entry_metadata_base.hpp: Same.
3032         * include/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp: Same.
3033         * include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Same.
3034         * include/ext/pb_ds/detail/list_update_map_/
3035           constructor_destructor_fn_imps.hpp: Same.
3036         * include/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp: Same.
3037         * include/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp: Same.
3038         * include/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp: Same.
3039         * include/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp: Same.
3040         * include/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp: Same.
3041         * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp: Same.
3042         * include/ext/pb_ds/detail/rc_binomial_heap_/
3043           rc_binomial_heap_.hpp: Same.
3044         * include/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp: Same.
3045         * include/ext/pb_ds/detail/rc_binomial_heap_/
3046           constructors_destructor_fn_imps.hpp: Same.
3047         * include/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp: Same.
3048         * include/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp: Same.
3049         * include/ext/pb_ds/detail/rc_binomial_heap_/
3050           split_join_fn_imps.hpp: Same.
3051         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Same.
3052         * include/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp: Same.
3053         * include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp: Same.
3054         * include/ext/pb_ds/detail/rb_tree_map_/
3055           constructors_destructor_fn_imps.hpp: Same.
3056         * include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp: Same.
3057         * include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
3058         * include/ext/pb_ds/detail/rb_tree_map_/node.hpp: Same.
3059         * include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp: Same.
3060         * include/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp: Same.
3061         * include/ext/pb_ds/detail/rb_tree_map_/traits.hpp: Same.
3062
3063
3064         Documentation changes.
3065         * include/ext/pb_ds/*: Add doxygen markup.
3066         * doc/doxygen/user.cfg.in: Add details for extracting comments
3067         from pb_ds.
3068         * scripts/run_doxygen: Fixup __gnu_pb_ds::detail.
3069         * scripts/make_graph.py: Move to svg output. Re-format generated tables.
3070
3071         * doc/Makefile.am (stamp-html-copy): New rule.
3072         (stamp-html): Use it to copy non-generated files into html docs.
3073         * doc/Makefile.in: Regenerated.
3074
3075         * doc/html/ext/pb_ds/sample_trie_e_access_traits.html: Move...
3076         * doc/html/ext/pb_ds/trie_string_access_traits.html: ...here.
3077         * doc/html/ext/pb_ds/string_trie_e_access_traits.html: Move..
3078         * doc/html/ext/pb_ds/sample_trie_access_traits.html: ...here.
3079
3080         * doc/html/ext/pb_ds/tree_text_lor_find_timing_test_local.png,
3081         hash_random_int_erase_mem_usage_test_local.png,
3082         multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
3083         tree_text_insert_timing_test_pat_trie_local.png ,
3084         multimap_text_insert_mem_usage_test_small_s2p_tree_local.png ,
3085         priority_queue_text_modify_down_timing_test_local.png,
3086         gp_hash_random_int_subscript_timing_test_find_local.png,
3087         text_find_timing_test_hash_local.png,
3088         multimap_text_insert_timing_test_small_s2p_hash_local.png,
3089         multimap_text_insert_timing_test_small_s2p_tree_local.png,
3090         multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
3091         multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
3092         multimap_text_insert_timing_test_large_s2p_hash_local.png,
3093         hash_zlob_random_int_find_timing_test_local.png,
3094         multimap_text_insert_timing_test_large_s2p_tree_local.png,
3095         binary_priority_queue_random_int_push_timing_test_local.png,
3096         priority_queue_text_pop_mem_usage_test_local.png,
3097         priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
3098         tree_split_join_timing_test_local.png,
3099         multimap_text_find_timing_test_small_s2p_hash_local.png,
3100         ccgp_hash_random_int_subscript_timing_test_insert_local.png,
3101         priority_queue_random_int_push_pop_timing_test_local.png,
3102         multimap_text_find_timing_test_small_s2p_tree_local.png,
3103         gp_hash_random_int_subscript_timing_test_insert_local.png,
3104         priority_queue_text_push_timing_test_local.png,
3105         cc_hash_random_int_subscript_timing_test_find_local.png,
3106         tree_text_insert_timing_test_vector_tree_local.png,
3107         multimap_text_find_timing_test_large_s2p_hash_local.png,
3108         pairing_priority_queue_text_push_timing_test_local.png,
3109         tree_order_statistics_timing_test_local.png,
3110         priority_queue_text_push_pop_timing_test_local.png,
3111         text_find_timing_test_tree_like_local.png,
3112         multimap_text_find_timing_test_large_s2p_tree_local.png,
3113         priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
3114         cc_hash_random_int_subscript_timing_test_insert_local.png,
3115         priority_queue_text_modify_up_timing_test_local.png,
3116         random_int_find_find_timing_test_tree_local.png,
3117         priority_queue_random_int_push_timing_test_local.png,
3118         tree_text_insert_timing_test_node_tree_local.png,
3119         pairing_priority_queue_text_push_pop_timing_test_local.png,
3120         gp_hash_random_int_find_timing_test_local.png,
3121         cc_hash_random_int_find_timing_test_local.png,
3122         priority_queue_text_join_timing_test_local.png: Update local pngs.
3123
3124
3125         Testsuite changes.
3126         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: New.
3127         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: New.
3128         * testsuite/ext/pb_ds/regression/priority_queue_rand_debug.cc: New.
3129         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: New.
3130         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: New.
3131         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
3132         New.
3133         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
3134         New.
3135         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: New.
3136         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: New.
3137
3138         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Fix typo.
3139
3140         * testsuite/ext/pb_ds/example/basic_set.cc: Update.
3141         * testsuite/ext/pb_ds/example/ranged_hash.cc: Same.
3142         * testsuite/ext/pb_ds/example/tree_order_statistics.cc: Same.
3143         * testsuite/ext/pb_ds/example/trie_prefix_search.cc: Same.
3144         * testsuite/ext/pb_ds/example/trie_dna.cc: Same.
3145         * testsuite/ext/pb_ds/example/tree_intervals.cc: Same.
3146         * testsuite/ext/pb_ds/example/basic_multimap.cc: Same.
3147         * testsuite/performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc:
3148           Same.
3149         * testsuite/performance/ext/pb_ds/tree_split_join_timing.cc: Same.
3150         * testsuite/performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
3151         * testsuite/data/make_graph_test_infos.xml: Same.
3152         * testsuite/util/regression/common_type.hpp: Same.
3153         * testsuite/util/regression/trait/assoc/native_type_trait.hpp: Same.
3154         * testsuite/util/regression/trait/assoc/trait.hpp: Same.
3155         * testsuite/util/regression/trait/assoc/type_trait.hpp: Same.
3156         * testsuite/util/regression/rand/priority_queue/
3157           rand_regression_test.hpp: Same.
3158         * testsuite/util/regression/rand/priority_queue/
3159           container_rand_regression_test.tcc: Same.
3160         * testsuite/util/regression/rand/assoc/rand_regression_test.hpp: Same.
3161         * testsuite/util/regression/rand/assoc/container_rand_regression_test.h
3162         * testsuite/util/regression/rand/assoc/
3163           container_rand_regression_test.tcc: Same.
3164         * testsuite/util/native_type/native_priority_queue.hpp: Same.
3165         * testsuite/util/native_type/native_multimap.hpp: Same.
3166         * testsuite/util/native_type/native_hash_multimap.hpp: Same.
3167         * testsuite/util/native_type/native_set.hpp: Same.
3168         * testsuite/util/native_type/native_map.hpp: Same.
3169         * testsuite/util/native_type/native_hash_set.hpp: Same.
3170         * testsuite/util/native_type/native_hash_map.hpp: Same.
3171         * testsuite/util/testsuite_containers.h
3172         * testsuite/util/common_type/priority_queue/common_type.hpp: Same.
3173         * testsuite/util/common_type/assoc/common_type.hpp: Same.
3174         * testsuite/util/common_type/assoc/string_form.hpp: Same.
3175         * testsuite/util/common_type/assoc/template_policy.hpp: Same.
3176         * testsuite/util/common_type/assoc/detail/
3177           trigger_policy_string_form.hpp: Same.
3178         * testsuite/util/common_type/assoc/detail/ds_string_form.hpp: Same.
3179         * testsuite/util/common_type/assoc/detail/
3180           size_policy_string_form.hpp: Same.
3181         * testsuite/util/common_type/assoc/detail/
3182           probe_fn_string_form.hpp: Same.
3183         * testsuite/util/common_type/assoc/detail/
3184           tree_supports_order_statistics.hpp: Same.
3185         * testsuite/util/common_type/assoc/detail/
3186           trie_supports_prefix_search.hpp: Same.
3187         * testsuite/util/common_type/assoc/detail/
3188           list_update_policy_string_form.hpp: Same.
3189         * testsuite/util/common_type/assoc/detail/
3190           trie_supports_order_statistics.hpp: Same.
3191         * testsuite/util/common_type/assoc/native_set.hpp: Same.
3192         * testsuite/util/performance/assoc/timing/common_type.hpp: Same.
3193         * testsuite/util/performance/assoc/timing/multimap_find_test.hpp: Same.
3194         * testsuite/util/performance/assoc/multimap_common_type.hpp: Same.
3195
3196 2011-05-23  Paolo Carlini  <paolo.carlini@oracle.com>
3197
3198         * include/bits/streambuf_iterator.h: Use noexcept per the FDIS.
3199         (istreambuf_iterator<>::istreambuf_iterator(const
3200         istreambuf_iterator&),  ~istreambuf_iterator()): Add defaulted
3201         in C++0x mode.
3202
3203 2011-05-23  Jason Merrill  <jason@redhat.com>
3204
3205         * libsupc++/exception_ptr.h: Fix compilation in C++0x mode.
3206
3207 2011-05-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
3208
3209         * testsuite/20_util/bind/cv_quals_2.cc: New.
3210
3211 2011-05-22  Paolo Carlini  <paolo.carlini@oracle.com>
3212
3213         PR libstdc++/49058
3214         * include/std/functional (_Bind<_Functor(_Bound_args...)>::
3215         operator()(_Args&&...)): Don't cv qualify _Functor directly
3216         in the default template argument, SFINAE doesn't apply when
3217         the functor has no arguments.
3218         * testsuite/20_util/bind/49058_1.cc: New.
3219         * testsuite/20_util/bind/49058_2.cc: Likewise.
3220
3221 2011-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
3222
3223         * include/bits/unique_ptr.h: Use noexcept per the FDIS.
3224
3225 2011-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
3226
3227         * testsuite/21_strings/basic_string/requirements/exception/
3228         propagation_consistent.cc: Fix vs POD-ness of value_type.
3229         * testsuite/21_strings/basic_string/requirements/exception/
3230         basic.cc: Likewise.
3231         * testsuite/ext/vstring/requirements/exception/
3232         propagation_consistent.cc: Likewise.
3233         * testsuite/ext/vstring/requirements/exception/basic.cc: Likewise.
3234
3235 2011-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
3236
3237         * include/bits/char_traits.h: Use noexcept throughout.
3238         * include/std/typeindex: Likewise.
3239
3240         * include/std/tuple (_Tuple_impl<>_Tuple_impl(_Tuple_impl&&)): Use
3241         noexcept; adjust callers.
3242         * include/bits/stl_pair.h (pair<>::pair(pair<>&&)): Use noexcept.
3243         * testsuite/20_util/tuple/cons/noexcept_move_construct.cc: New.
3244         * testsuite/20_util/pair/cons/noexcept_move_construct.cc: Likewise.
3245         * testsuite/20_util/pair/noexcept_swap.cc: Likewise.
3246         * testsuite/20_util/pair/noexcept_move_assign.cc: Likewise.
3247         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
3248         line numbers.
3249
3250 2011-05-20  Jason Merrill  <jason@redhat.com>
3251
3252         * include/ext/pb_ds/assoc_container.hpp: Explicitly qualify calls to
3253         functions from dependent bases.
3254         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Likewise.
3255         * include/ext/pb_ds/detail/rb_tree_map_/
3256         split_join_fn_imps.hpp: Likewise.
3257         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Likewise.
3258         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Likewise.
3259         * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Likewise.
3260         * include/ext/pb_ds/detail/splay_tree_/
3261         split_join_fn_imps.hpp: Likewise.
3262         * include/ext/pb_ds/detail/tree_policy/
3263         order_statistics_imp.hpp: Likewise.
3264         * include/ext/pb_ds/detail/trie_policy/
3265         prefix_search_node_update_imp.hpp: Likewise.
3266         * include/ext/rc_string_base.h: Likewise.
3267         * include/ext/rope: Likewise.
3268         * include/ext/ropeimpl.h: Likewise.
3269         * testsuite/util/exception/safety.h: Likewise.
3270         * testsuite/util/native_type/native_priority_queue.hpp: Likewise.
3271         * testsuite/util/testsuite_io.h: Likewise.
3272         * include/std/functional: Declare mem_fn earlier.
3273         * include/tr1/functional: Likewise.
3274         * include/tr1/exp_integral.tcc: Declare __expint_E1 earlier.
3275
3276 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
3277
3278         * include/std/tuple (tuple_element<__i, const _Tp>,
3279         tuple_element<__i, volatile _Tp>, tuple_element<__i,
3280         const volatile _Tp>, tuple_size<const _Tp>, tuple_size<volatile _Tp>,
3281         tuple_size<const volatile _Tp>): Add.
3282         * include/std/utility (tuple_size<std::pair<_Tp1, _Tp2>>): Tweak.
3283         * include/std/array (tuple_size<array<_Tp, _Nm>>): Likewise.
3284         * testsuite/20_util/tuple/cv_tuple_size.cc: New.
3285         * testsuite/20_util/tuple/cv_tuple_element.cc: Likewise.
3286         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-warning
3287         line number.
3288
3289 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
3290
3291         * include/std/tuple (tuple<>::operator=(tuple&&)): Specify as
3292         noexcept.
3293         (__get_helper): Likewise.
3294         (_Head_base<>::_M_head, _Tuple_impl<>::_M_head, _M_tail): Likewise.
3295         * include/bits/move.h (swap): Likewise.
3296         * include/bits/algorithmfwd.h (swap): Adjust.
3297         * include/bits/stl_pair.h (pair<>::operator=(pair&&)): Spec noexcept.
3298         * testsuite/util/testsuite_allocator.h (uneq_allocator): In C++0x
3299         mode, prefer delete to access control to make the type not copy
3300         assignable.
3301         * testsuite/util/testsuite_tr1.h: Add test classes.
3302         * testsuite/20_util/tuple/noexcept_swap.cc: New.
3303         * testsuite/20_util/tuple/noexcept_move_assign.cc: Likewise.
3304         * testsuite/25_algorithms/reverse/moveable.cc: Likewise, prefer
3305         delete to access control.
3306         * testsuite/25_algorithms/swap_ranges/moveable.cc: Likewise.
3307         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
3308         line numbers.
3309
3310 2011-05-19  Daniel Krugler  <daniel.kruegler@googlemail.com>
3311
3312         * testsuite/util/testsuite_tr1.h: Add test classes.
3313         * testsuite/20_util/is_nothrow_assignable/value.cc: Add.
3314
3315 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
3316
3317         * include/std/type_traits (is_assignable, is_copy_assignable,
3318         is_move_assignable, is_nothrow_assignable, is_nothrow_copy_assignable,
3319         is_nothrow_move_assignable): Add; minor tweaks elsewhere.
3320         (has_nothrow_copy_assign): Remove.
3321         * testsuite/util/testsuite_tr1.h: Add test classes.
3322         * testsuite/20_util/is_assignable/requirements/typedefs.cc: Add.
3323         * testsuite/20_util/is_assignable/requirements/
3324         explicit_instantiation.cc: Likewise.
3325         * testsuite/20_util/is_nothrow_assignable/value.cc: Likewise.
3326         * testsuite/20_util/is_nothrow_assignable/requirements/typedefs.cc:
3327         Likewise.
3328         * testsuite/20_util/is_nothrow_assignable/requirements/
3329         explicit_instantiation.cc: Likewise.
3330         * testsuite/20_util/is_move_assignable/value.cc: Likewise.
3331         * testsuite/20_util/is_move_assignable/requirements/typedefs.cc:
3332         Likewise.
3333         * testsuite/20_util/is_move_assignable/requirements/
3334         explicit_instantiation.cc: Likewise.
3335         * testsuite/20_util/is_copy_assignable/value.cc: Likewise.
3336         * testsuite/20_util/is_copy_assignable/requirements/typedefs.cc:
3337         Likewise.
3338         * testsuite/20_util/is_copy_assignable/requirements/
3339         explicit_instantiation.cc: Likewise.
3340         * testsuite/20_util/is_nothrow_move_assignable/value.cc: Likewise.
3341         * testsuite/20_util/is_nothrow_move_assignable/requirements/
3342         typedefs.cc: Likewise.
3343         * testsuite/20_util/is_nothrow_move_assignable/requirements/
3344         explicit_instantiation.cc: Likewise.
3345         * testsuite/20_util/is_nothrow_copy_assignable/value.cc: Likewise.
3346         * testsuite/20_util/is_nothrow_copy_assignable/requirements/
3347         typedefs.cc: Likewise.
3348         * testsuite/20_util/is_nothrow_copy_assignable/requirements/
3349         explicit_instantiation.cc: Likewise.
3350         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
3351         dg-error line numbers.
3352         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3353         Likewise.
3354         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
3355
3356 2011-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
3357
3358         * include/bits/shared_ptr_base.h: Use noexcept. Define special member
3359         functions as defaulted/deleted.
3360         * include/bits/shared_ptr.h: Use noexcept.
3361         * 20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line numbers.
3362         * 20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
3363
3364 2011-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
3365
3366         * doc/xml/manual/bitmap_allocator.xml: Fix typos.
3367
3368 2011-05-18  Paolo Carlini  <paolo.carlini@oracle.com>
3369
3370         * libsupc++/initializer_list: Use noexcept specifier.
3371         (initializer_list<>::size, begin, end): Qualify as const.
3372         * include/bits/move.h (__addressof, forward, move, addressof): Specify
3373         as noexcept.
3374         * include/std/bitset: Use noexcept specifier throughout.
3375         * include/debug/bitset: Update.
3376         * include/profile/bitset: Likewise.
3377
3378 2011-05-17  Paolo Carlini  <paolo.carlini@oracle.com>
3379
3380         * include/std/tuple: Use noexcept where appropriate.
3381         (tuple<>::swap): Rework implementation.
3382         (_Head_base<>::_M_swap_impl): Remove.
3383         (get(std::tuple<>&&)): Add.
3384         * testsuite/20_util/tuple/element_access/get2.cc: New.
3385         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
3386         line number.
3387
3388 2011-05-16  Paolo Carlini  <paolo.carlini@oracle.com>
3389
3390         * include/std/utility: Simplify the last commit, the whole
3391         std::get code is C++0x only.
3392
3393 2011-05-16  Paolo Carlini  <paolo.carlini@oracle.com>
3394
3395         * include/std/utility (get(std::pair<>&&)): Add.
3396         * include/bits/stl_pair.h (pair::swap(pair&),
3397         swap(pair<>&, pair<>&)): Use noexcept.
3398         * include/bits/random.h (discard_block_engine<>::base,
3399         independent_bits_engine<>::base, shuffle_order_engine<>::base,
3400         random_device::entropy): Use noexcept.
3401         * include/std/array: Use noexcept where appropriate.
3402         (get(array<>&&)): Add.
3403         * testsuite/23_containers/array/requirements/get.cc: New.
3404         * testsuite/20_util/pair/get.cc: Likewise.
3405         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-error
3406         line number.
3407
3408 2011-05-15  Paolo Carlini  <paolo.carlini@oracle.com>
3409
3410         * include/bits/c++config (_GLIBCXX_NOEXCEPT, _GLIBCXX_USE_NOEXCEPT):
3411         Add.
3412         * include/std/limits: Use the latter everywhere.
3413         (numeric_limits<char16_t>, numeric_limits<char32_t>): Simplify
3414         macro usages, the specializations exist only in C++0x mode.
3415         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
3416         line number.
3417
3418 2011-05-11  Paolo Carlini  <paolo.carlini@oracle.com>
3419
3420         * testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: Use
3421         dg-require-cmath.
3422         * testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise.
3423
3424 2011-05-11  François Dumont  <francois.cppdevs@free.fr>
3425
3426         * include/ext/pb_ds/detail/resize_policy/
3427         hash_load_check_resize_trigger_imp.hpp (assert_valid): Replace
3428         _GLIBCXX_DEBUG_ASSERT calls with PB_DS_DEBUG_VERIFY.
3429         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
3430         find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
3431         constructors_destructor_fn_imps.hpp, split_join_fn_imps.hpp
3432         (PB_DS_ASSERT_VALID): Rename in PB_DS_ASSERT_VALID_COND.
3433         * include/ext/pb_ds/detail/debug_map_base.hpp,
3434         splay_tree_/splay_tree_.hpp, ov_tree_map_/ov_tree_map_.hpp,
3435         cc_hash_table_map_/cc_ht_map_.hpp, pat_trie_/pat_trie_.hpp,
3436         leaf.hpp, internal_node.hpp, gp_hash_table_map_/gp_ht_map_.hpp,
3437         bin_search_tree_/bin_search_tree_.hpp, list_update_map_/lu_map_.hpp,
3438         rb_tree_map_/rb_tree_.hpp (PB_DS_ASSERT_VALID, PB_DS_DEBUG_VERIFY,
3439         PB_DS_CHECK_KEY_EXISTS, PB_DS_CHECK_KEY_DOES_NOT_EXIST): Duplicate
3440         macro definitions move...
3441         * include/ext/pb_ds/detail/container_base_dispatch.hpp: ... here...
3442         * include/ext/pb_ds/detail/basic_tree_policy/traits.hpp: ... and here.
3443         * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp,
3444         resize_policy.hpp, pairing_heap_/pairing_heap_.hpp,
3445         left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp,
3446         binomial_heap_/binomial_heap_.hpp, thin_heap_/thin_heap_.hpp,
3447         rc_binomial_heap_/rc_binomial_heap_.hpp, rc.hpp (PB_DS_ASSERT_VALID,
3448         PB_DS_DEBUG_VERIFY): Duplicate macro definitions move...
3449         * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp:
3450         ...here.
3451
3452 2011-05-09  Paolo Carlini  <paolo.carlini@oracle.com>
3453
3454         PR libstdc++/48933
3455         * include/c_global/cmath (acosh, asinh, atanh, cbrt, copysign,
3456         erf, erfc, exp2, expm1, fdim, fma, fmax, hypot, ilogb, lgamma,
3457         llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
3458         nextafter, nexttoward, remainder, remquo, rint, round, scalbln,
3459         scalbn, tgamma, trunc): Use __enable_if on the return type.
3460         * include/tr1/cmath: Likewise.
3461         * testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: New.
3462         * testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise.
3463
3464 2011-05-07  François Dumont  <francois.cppdevs@free.fr>
3465
3466         * include/debug/macro.h (_GLIBCXX_DEBUG_VERIFY_AT): New.
3467         (_GLICXX_DEBUG_VERIFY): Use latter.
3468         * include/ext/pb_ds/detail/resize_policy/
3469         hash_load_check_resize_trigger_imp.hpp: Emit assertion on the line
3470         containing the original assert call.
3471         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
3472         find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
3473         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3474         split_join_fn_imps.hpp: Likewise.
3475         * include/ext/pb_ds/detail/cc_hash_table_map_/
3476         erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
3477         find_fn_imps.hpp, insert_store_hash_fn_imps.hpp, debug_fn_imps.hpp,
3478         debug_no_store_hash_fn_imps.hpp, cc_ht_map_.hpp, resize_fn_imps.hpp,
3479         constructor_destructor_fn_imps.hpp, debug_store_hash_fn_imps.hpp,
3480         erase_no_store_hash_fn_imps.hpp: Likewise.
3481         * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp,
3482         insert_join_fn_imps.hpp, pat_trie_/head.hpp, debug_fn_imps.hpp,
3483         constructors_destructor_fn_imps.hpp, pat_trie_.hpp, split_fn_imps.hpp,
3484         leaf.hpp, erase_fn_imps.hpp, node_base.hpp, internal_node.hpp:
3485         Likewise.
3486         * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp,
3487         r_erase_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
3488         debug_fn_imps.hpp, rotate_fn_imps.hpp, erase_fn_imps.hpp,
3489         bin_search_tree_.hpp, insert_fn_imps.hpp, split_join_fn_imps.hpp:
3490         Likewise.
3491         * include/ext/pb_ds/detail/gp_hash_table_map_/
3492         erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
3493         find_fn_imps.hpp, gp_ht_map_.hpp, insert_store_hash_fn_imps.hpp,
3494         debug_fn_imps.hpp, erase_fn_imps.hpp, debug_no_store_hash_fn_imps.hpp,
3495         resize_fn_imps.hpp, constructor_destructor_fn_imps.hpp,
3496         debug_store_hash_fn_imps.hpp, erase_no_store_hash_fn_imps.hpp:
3497         Likewise.
3498         * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp,
3499         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3500         erase_fn_imps.hpp, insert_fn_imps.hpp, binary_heap_.hpp,
3501         resize_policy.hpp, split_join_fn_imps.hpp: Likewise.
3502         * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp,
3503         find_fn_imps.hpp, insert_fn_imps.hpp,
3504         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3505         pairing_heap_.hpp, split_join_fn_imps.hpp: Likewise.
3506         * include/ext/pb_ds/detail/binomial_heap_/
3507         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3508         binomial_heap_.hpp: Likewise.
3509         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3510         erase_fn_imps.hpp, left_child_next_sibling_heap_.hpp,
3511         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
3512         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp,
3513         find_fn_imps.hpp, thin_heap_.hpp, insert_fn_imps.hpp,
3514         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3515         split_join_fn_imps.hpp: Likewise.
3516         * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp,
3517         ov_tree_map_.hpp, constructors_destructor_fn_imps.hpp,
3518         debug_fn_imps.hpp, split_join_fn_imps.hpp, info_fn_imps.hpp: Likewise.
3519         * include/ext/pb_ds/detail/debug_map_base.hpp: Likewise.
3520         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp,
3521         find_fn_imps.hpp, insert_fn_imps.hpp,
3522         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3523         splay_fn_imps.hpp, split_join_fn_imps.hpp, splay_tree_.hpp: Likewise.
3524         * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp,
3525         find_fn_imps.hpp, lu_map_.hpp, constructor_destructor_fn_imps.hpp,
3526         insert_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
3527         * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp,
3528         rc_binomial_heap_.hpp, insert_fn_imps.hpp,
3529         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp, rc.hpp,
3530         split_join_fn_imps.hpp: Likewise.
3531         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp,
3532         insert_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
3533         debug_fn_imps.hpp, rb_tree_.hpp, split_join_fn_imps.hpp: Likewise.
3534         * include/ext/pb_ds/hash_policy.hpp: Likewise.
3535
3536 2011-05-06  Paolo Carlini  <paolo.carlini@oracle.com>
3537
3538         * testsuite/22_locale/messages_byname/named_equivalence.cc: Fix.
3539
3540 2011-05-04  Marc Glisse  <marc.glisse@normalesup.org>
3541
3542         PR libstdc++/47913 (again)
3543         * include/std/ratio (ratio_add, ratio_less): Rewrite.
3544         * testsuite/20_util/ratio/operations/47913.cc: Extend.
3545         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust dg-error
3546         line numbers.
3547         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
3548
3549 2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>
3550
3551         PR libstdc++/48848
3552         * include/std/valarray (valarray<>::valarray(valarray&&),
3553         valarray<>::operator=(valarray&&), valarray<>::swap): Add.
3554         * doc/xml/manual/status_cxx200x.xml: Update.
3555         * testsuite/26_numerics/valarray/moveable.cc: New.
3556         * testsuite/26_numerics/valarray/swap.cc: Likewise.
3557
3558 2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>
3559
3560         PR libstdc++/48750
3561         * include/parallel/multiway_merge.h: Run _ValueType destructors.
3562         * include/parallel/multiway_mergesort.h: Likewise.
3563         * include/parallel/quicksort.h: Likewise.
3564         * include/parallel/random_shuffle.h: Likewise.
3565         * include/parallel/partial_sum.h: Likewise.
3566         * include/parallel/losertree.h: Run destructors; minor tweaks.
3567         * include/parallel/par_loop.h: Run destructors, fix memory
3568         allocations and deallocations.
3569         * testsuite/26_numerics/accumulate/48750.cc: New.
3570
3571         * testsuite/ext/profile/mutex_extensions_neg.cc: Do not run in
3572         parallel-mode to avoid spurious multiple errors.
3573
3574 2011-05-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
3575
3576         * include/std/functional (bind): Remove from overload set when first
3577         argument type might be a socket file descriptor.
3578         * testsuite/20_util/bind/socket.cc: New.
3579
3580 2011-05-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
3581
3582         PR libstdc++/48848
3583         * doc/xml/manual/status_cxx200x.xml: Update valarray status.
3584         * doc/html/*: Regenerate.
3585
3586 2011-05-02  Ollie Wild  <aaw@google.com>
3587
3588         * include/ext/sso_string_base.h (__sso_string_base<>::_M_construct):
3589         Fix unqualified lookup.
3590         (__sso_string_base<>::_M_assign): Likewise.
3591         (__sso_string_base<>::_M_reserve): Likewise.
3592         (__sso_string_base<>::_M_mutate): Likewise.
3593         (__sso_string_base<>::_M_erase): Likewise.
3594         * include/ext/vstring.h (__versa_string<>::replace): Likewise.
3595         (__versa_string<>::compare): Likewise.
3596         * include/ext/vstring.tcc (__versa_string<>::compare): Likewise.
3597
3598 2011-05-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
3599
3600         * doc/xml/manual/status_cxx200x.xml: Update to reflect current status
3601         and FDIS content.
3602         * doc/xml/manual/documentation_hacking.xml: Fix typo.
3603         * doc/html/*: Regenerate.
3604
3605 2011-04-30  Daniel Krugler  <daniel.kruegler@googlemail.com>
3606
3607         * include/std/type_traits (__is_default_constructible_atom,
3608         __is_default_constructible_safe<, true>,
3609         __is_direct_constructible_new_safe,
3610         __is_base_to_derived_ref<,, true>, __is_lvalue_to_rvalue_ref<,, true>,
3611         __is_direct_constructible_ref_cast, __is_direct_constructible,
3612         __is_nary_constructible): Simplify; add comments throughout.
3613
3614 2011-04-30  Paolo Carlini  <paolo.carlini@oracle.com>
3615
3616         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
3617         Adjust dg-error line numbers.
3618         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3619         Likewise.
3620         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
3621
3622 2011-04-30  Doug Kwan  <dougkwan@google.com>
3623
3624         * include/Makefile.am (install-freestanding-headers): Also install
3625         cxxabi_tweaks.h.
3626         * include/Makefile.in: Regenerate.
3627
3628 2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
3629
3630         PR libstdc++/48760
3631         * include/std/complex (complex<float>::complex(float, float),
3632         complex<double>::complex(double, double),
3633         complex<long double>::complex(long double, long double)): Use
3634         list-initialization in C++0x mode, initialize in the body in
3635         C++03 mode.
3636         * testsuite/26_numerics/complex/cons/48760.cc: New.
3637         * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
3638
3639 2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
3640
3641         * include/std/bitset (_Base_bitset(unsigned long long)): Minor
3642         tweak, remove redundant round braces.
3643
3644 2011-04-27  Paolo Carlini  <paolo.carlini@oracle.com>
3645
3646         * include/bits/move.h (move_if_noexcept): Add.
3647         * testsuite/20_util/move_if_noexcept/requirements/
3648         explicit_instantiation.cc: New.
3649         * testsuite/20_util/move_if_noexcept/1.cc: Likewise.
3650
3651 2011-04-25  Paolo Carlini  <paolo.carlini@oracle.com>
3652
3653         * include/std/type_traits (struct underlying_type): Add.
3654         * testsuite/20_util/underlying_type/requirements/typedefs-1.cc: New.
3655         * testsuite/20_util/underlying_type/requirements/typedefs-2.cc:
3656         Likewise.
3657         * testsuite/20_util/underlying_type/requirements/
3658         explicit_instantiation.cc: Likewise.
3659         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
3660         line number.
3661
3662 2011-04-24  Paolo Carlini  <paolo.carlini@oracle.com>
3663
3664         * include/parallel/multiway_merge.h: Uglify equally_split
3665         and equally_split_point throughout.
3666         * include/parallel/par_loop.h: Likewise.
3667         * include/parallel/equally_split.h: Likewise.
3668         * include/parallel/set_operations.h: Likewise.
3669         * include/parallel/unique_copy.h: Likewise.
3670         * include/parallel/multiway_mergesort.h: Likewise.
3671         * include/parallel/search.h: Likewise.
3672         * include/parallel/partial_sum.h: Likewise.
3673         * include/parallel/find.h: Likewise.
3674
3675 2011-04-24  Gerald Pfeifer  <gerald@pfeifer.com>
3676
3677         * doc/xml/manual/parallel_mode.xml: Fix link to libgomp online
3678         documentation.  Expand link text.
3679
3680 2011-04-24  Gerald Pfeifer  <gerald@pfeifer.com>
3681
3682         * libsupc++/cxxabi.h: Adjust link to FAQ entry.
3683
3684 2011-04-22  François Dumont  <francois.cppdevs@free.fr>
3685
3686         * testsuite/lib/libstdc++.exp (check_v3_target_time): Discard
3687         unused compilation result thanks to /dev/null.
3688         * testsuite/lib/libstdc++.exp (check_v3_target_debug_mode,
3689         check_v3_target_profile_mode, check_v3_target_normal_mode,
3690         check_v3_target_cstdint, check_v3_target_cmath,
3691         check_v3_target_atomic_builtins, check_v3_target_gthreads,
3692         check_v3_target_nanosleep, check_v3_target_sched_yield,
3693         check_v3_target_string_conversions, check_v3_target_swprintf,
3694         check_v3_target_binary_io): Use simple preprocessing rather than
3695         compilation. Discard unused preprocessing result thanks to /dev/null.
3696
3697 2011-04-20  Jim Meyering  <meyering@redhat.com>
3698
3699         * libsupc++/del_opnt.cc (operator delete): Remove useless
3700         if-before-free.
3701
3702 2011-04-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
3703
3704         PR libstdc++/48521
3705         * include/std/type_traits (result_of): Handle pointer to member.
3706         * include/std/functional (__invoke): Likewise.
3707         (_Function_to_function_pointer): Remove.
3708         (_Reference_wrapper_base): Provide nested types independent of
3709         unary_function and binary_function.
3710         (reference_wrapper::operator()): DR 2017.
3711         (ref(const A&&), cref(const A&&): Define as deleted.
3712         * include/std/future (async): Simplify SFINAE and use result_of to
3713         support pointer to member.
3714         * testsuite/20_util/reference_wrapper/invoke.cc: Test pointer to
3715         member.
3716         * testsuite/20_util/reference_wrapper/24803.cc: Likewise.
3717         * testsuite/20_util/reference_wrapper/typedefs.cc: Test for types
3718         instead of derivation from unary_function and binary_function.
3719         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
3720         * testsuite/20_util/reference_wrapper/invoke-2.cc: New.
3721         * testsuite/20_util/reference_wrapper/ref_neg.c: New.
3722         * testsuite/20_util/reference_wrapper/typedefs-3.c: New.
3723
3724 2011-04-19  Hans-Peter Nilsson  <hp@axis.com>
3725
3726         PR testsuite/48675
3727         * testsuite/20_util/hash/chi2_quality.cc (test_document_words): Stub
3728         this part if SAMPLES < 100000.
3729
3730 2011-04-18  Paolo Carlini  <paolo.carlini@oracle.com>
3731
3732         * include/std/type_traits (is_nothrow_default_constructible,
3733         is_nothrow_copy_constructible, is_nothrow_move_constructible,
3734         is_copy_constructible, is_move_constructible): Add.
3735         (has_nothrow_default_constructor, has_nothrow_copy_constructor):
3736         Remove.
3737         (is_nothrow_constructible): Adjust.
3738
3739         * testsuite/util/testsuite_tr1.h (ThrowDefaultClass,
3740         ThrowCopyConsClass, ThrowMoveConsClass, NoexceptDefaultClass,
3741         ExceptDefaultClass, NoexceptCopyConsClass, ExceptCopyConsClass,
3742         NoexceptMoveConsClass, ExceptMoveConsClass): Add in C++0x mode.
3743
3744         * testsuite/20_util/has_nothrow_default_constructor: Remove.
3745         * testsuite/20_util/has_nothrow_copy_constructor: Likewise.
3746
3747         * testsuite/20_util/is_nothrow_move_constructible/value.cc: Likewise.
3748         * testsuite/20_util/is_nothrow_move_constructible/requirements/
3749         typedefs.cc: Likewise.