OSDN Git Service

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