OSDN Git Service

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