OSDN Git Service

a7d5335b51aab7d595bfb4f8b4cde7fcbdbf8468
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2011-10-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
2
3         PR libstdc++/49894
4         * include/std/mutex (__mutex_base,__recursive_mutex_base): Define new
5         base classes to manage construction/destruction of native mutexes,
6         using NSDMI when INIT macros are defined.
7         (mutex,recursive_mutex,timed_mutex,recursive_timed_mutex): Derive from
8         new base classes.
9         * include/std/condition_variable (condition_variable): Use NSDMI when
10         INIT macro is defined. Use noexcept.
11         * src/condition_variable.cc (condition_variable): Explicitly-default
12         constructor/destructor when using NSDMI. Use noexcept.
13         (condition_variable_any): Likewise.
14
15 2011-10-24  Jonathan Wakely  <jwakely.gcc@gmail.com>
16
17         * testsuite/30_threads/async/49668.cc: Add missing dg-require.
18         * testsuite/30_threads/packaged_task/49668.cc: Likewise.
19
20 2011-10-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
21
22         PR libstdc++/50834
23         * doc/xml/manual/using.xml: Update thread safety docs w.r.t. C++11.
24
25 2011-10-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
26
27         PR libstdc++/50196
28         * acinclude.m4 (GLIBCXX_HAS_GTHREADS): Don't depend on _POSIX_TIMEOUTS.
29         * configure: Regenerate.
30         * include/std/mutex (timed_mutex, recursive_timed_mutex): Define
31         conditionally on GTHREADS_HAS_MUTEX_TIMEDLOCK.
32         * testsuite/lib/libstdc++.exp (check_v3_target_gthreads_timed): Define.
33         * testsuite/lib/dg-options.exp (dg-require-gthreads-timed): Define.
34         * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
35         Use dg-require-gthreads-timed instead of dg-require-gthreads.
36         * testsuite/30_threads/recursive_timed_mutex/native_handle/
37         typesizes.cc: Likewise.
38         * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
39         Likewise.
40         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
41         Likewise.
42         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
43         Likewise.
44         * testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc:
45         Likewise.
46         * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
47         * testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc:
48         Likewise.
49         * testsuite/30_threads/recursive_timed_mutex/requirements/typedefs.cc:
50         Likewise.
51         * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
52         * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
53         * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
54         * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
55         * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
56         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
57         Likewise.
58         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
59         Likewise.
60         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
61         Likewise.
62         * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
63         * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc:
64         Likewise.
65         * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
66         * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
67         * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
68         * testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
69         * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
70         * testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Likewise.
71         * testsuite/30_threads/timed_mutex/requirements/standard_layout.cc:
72         Likewise.
73         * testsuite/30_threads/timed_mutex/requirements/typedefs.cc: Likewise.
74         * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
75         * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
76         * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
77         * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
78         * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
79         * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
80         * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
81         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
82         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
83         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
84         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
85
86 2011-10-19  Ed Smith-Rowland  <3dw4rd@verizon.net>
87
88         * include/tr2/bool_set (bool_set): New.
89         * include/tr2/bool_set.tcc: New.
90         * include/tr2/dynamic_bitset (dynamic_bitset): New.
91         * include/tr2/ratio (kibi, mebi, gibi, tebi, pebi, exbi): New.
92         * include/Makefile.am: Add files.
93         * include/Makefile.in: Regenerate.
94
95 2011-10-19  Benjamin Kosnik  <bkoz@redhat.com>
96
97         * doc/doxygen/user.cfg.in: Add tr2 files.
98         * testsuite/tr2/headers/all.cc: New.
99         * testsuite/tr2/headers/using_namespace_std_tr2.cc: New.
100
101         * include/tr2/type_traits: Tweak.
102
103 2011-10-18  Jason Merrill  <jason@redhat.com>
104
105         PR c++/50500
106         * include/bits/shared_ptr.h: Default copy ctor and assignment.
107         * testsuite/util/testsuite_allocator.h: Define copy assignment.
108         * testsuite/util/testsuite_rvalref.h: Default copy assignment.
109         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Remove note tags.
110
111 2011-10-17  Michael Spertus  <mike_spertus@symantec.com>
112
113         * include/tr2/type_traits (bases, direct_bases, typelist): New.
114
115 2011-10-17  Benjamin Kosnik  <bkoz@redhat.com>
116
117         * libstdc++-v3/include/Makefile.am: Add tr2 directory and includes.
118         * libstdc++-v3/include/Makefile.in: Regenerate.
119
120         * scripts/create_testsuite_files: Search tr2 directory.
121         * testsuite/libstdc++-dg/conformance.exp: Same.
122
123         * testsuite/tr2/bases/requirements/explicit_instantiation.cc: New.
124         * testsuite/tr2/bases/requirements/typedefs.cc: New.
125         * testsuite/tr2/bases/value.cc: New.
126         * testsuite/tr2/direct_bases/requirements/
127         explicit_instantiation.cc: New.
128         * testsuite/tr2/direct_bases/requirements/typedefs.cc: New.
129         * testsuite/tr2/direct_bases/value.cc: New.
130
131 2011-10-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
132
133         PR bootstrap/50715
134         * config/abi/pre/gnu.ver (CXXABI_1.3.6): Remove duplicate
135         __cxa_get_exception_ptr.
136
137 2011-10-14  François Dumont  <francois.cppdevs@free.fr>
138
139         * testsuite/performance/23_containers/insert_erase/41975.cc: New.
140
141 2011-10-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
142
143         * testsuite/22_locale/codecvt_byname/50714.cc: Fix mychar.
144
145 2011-10-14  Jonathan Yong  <jon_y@users.sourceforge.net>
146
147         * configure.host: Use config/os/mingw32-w64 instead of
148         config/os/mingw32 if vendor key is "w64".
149         * config/os/mingw32-w64: Duplicate from config/os/mingw32.
150         * config/os/mingw32-w64/os_defines.h: Enable
151         _GLIBCXX_FULLY_DYNAMIC_STRING if undefined.
152         * acinclude.m4: Set fully-dynamic-string to 1 when enabled,
153         0 when disabled or undefined if unset by user.
154         * include/bits/basic_string.h: Check if
155         _GLIBCXX_FULLY_DYNAMIC_STRING is set to 0 instead of undefined.
156         include/bits/basic_string.tcc: Likewise.
157         * configure: Regenerated.
158         * config.h.in: Likewise.
159
160 2011-10-13  Paolo Carlini  <paolo.carlini@oracle.com>
161
162         PR libstdc++/50714
163         * include/bits/codecvt.h (codecvt<>::codecvt(size_t)): Initialize
164         _M_c_locale_codecvt member.
165         * testsuite/22_locale/codecvt_byname/50714.cc: New.
166
167 2011-10-12  Paolo Carlini  <paolo.carlini@oracle.com>
168
169         PR c++/50594
170         * libsupc++/new (operator new, operator delete): Decorate with
171         __attribute__((__externally_visible__)).
172         * include/bits/c++config: Add _GLIBCXX_THROW.
173         * libsupc++/del_op.cc: Adjust.
174         * libsupc++/del_opv.cc: Likewise.
175         * libsupc++/del_opnt.cc: Likewise.
176         * libsupc++/del_opvnt.cc: Likewise.
177         * libsupc++/new_op.cc: Likewise.
178         * libsupc++/new_opv.cc: Likewise.
179         * libsupc++/new_opnt.cc: Likewise.
180         * libsupc++/new_opvnt.cc: Likewise.
181         * testsuite/18_support/50594.cc: New.
182         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
183         line number.
184
185 2011-10-11  Emil Wojak  <emil@wojak.eu>
186
187         PR c++/50661
188         * include/bits/stl_algobase.h (equal): Compare arrays of pointers
189         too with memcmp.
190
191 2011-10-10  Benjamin Kosnik  <bkoz@redhat.com>
192
193         PR libstdc++/49818
194         * config/abi/pre/gnu.ver (CXXABI_1.3.6): Add symbols.
195         * testsuite/util/testsuite_abi.cc: Same.
196         * libsupc++/unwind-cxx.h: Move required eh API...
197         * libsupc++/cxxabi.h: ... to here. Add required forward declarations.
198         Use _GLIBCXX_NOTHROW.
199         * libsupc++/pure.cc (__cxa_deleted_virtual): Add.
200         * libsupc++/eh_alloc.cc: Use _GLIBCXX_NOTHROW.
201         * libsupc++/eh_catch.cc: Same.
202         * libsupc++/eh_globals.cc: Same.
203         * libsupc++/eh_type.cc: Same.
204
205 2011-10-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
206
207         * testsuite/util/testsuite_allocator.h (uneq_allocator): Add
208         propagate_on_container_swap typedef for C++0x testing.
209
210 2011-10-06  Paolo Carlini  <paolo.carlini@oracle.com>
211
212         * testsuite/27_io/ios_base/cons/assign_neg.cc: Tidy dg- directives,
213         for C++0x testing too.
214         * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
215         * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Likewise.
216         * testsuite/24_iterators/istreambuf_iterator/requirements/
217         base_classes.cc: Adjust for C++0x testing.
218         * testsuite/ext/codecvt/char-1.cc: Avoid warnings in C++0x mode.
219         * testsuite/ext/codecvt/char-2.cc: Likewise.
220         * testsuite/ext/codecvt/wchar_t.cc: Likewise.
221
222 2011-10-05  Paolo Carlini  <paolo.carlini@oracle.com>
223
224         * include/ext/pod_char_traits.h: Avoid warnings in C++0x mode
225         when int_type is unsigned.
226
227 2011-10-04  Paolo Carlini  <paolo.carlini@oracle.com>
228
229         PR libstdc++/49561
230         * include/bits/stl_list.h (_List_base<>::_List_impl::_M_size):
231         Add in C++0x mode.
232         (_List_base<>::_List_impl, _List_base<>::_M_get_node,
233         _List_base<>::_M_put_node, _List_base<>::_List_base(_List_base&&),
234         list<>::size, list<>::swap, list<>::splice): Use it.
235         (operator==(const list<>&, const list<>&)): Rewrite in C++0x mode.
236         * include/bits/list.tcc (list<>::erase): Likewise.
237         (list<>::merge): Adjust in C++0x mode.
238         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
239         Adjust dg-error line number.
240         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
241         Likewise.
242         * testsuite/23_containers/list/requirements/dr438/
243         constructor_1_neg.cc: Likewise.
244         * testsuite/23_containers/list/requirements/dr438/
245         constructor_2_neg.cc: Likewise.
246
247 2011-10-04  Paolo Carlini  <paolo.carlini@oracle.com>
248
249         * testsuite/20_util/bind/48698.cc (g): Fix return type, avoid -Wall
250         warning.
251
252 2011-10-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
253
254         * include/ext/alloc_traits.h (__alloc_traits::max_size): Define.
255         (__alloc_traits::rebind): Define.
256         * include/bits/stl_vector.h: Use them.
257         * testsuite/util/testsuite_allocator.h (SimpleAllocator): Define.
258         * testsuite/23_containers/vector/allocator/minimal.cc: New.
259         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
260         Adjust dg-error line numbers.
261         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
262         Likewise.
263         * testsuite/23_containers/vector/requirements/dr438/
264         constructor_1_neg.cc: Likewise.
265         * testsuite/23_containers/vector/requirements/dr438/
266         constructor_2_neg.cc: Likewise.
267
268 2011-10-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
269
270         * testsuite/20_util/pointer_traits/pointer_to.cc: Define equality
271         operator and use.
272
273 2011-10-03  Paolo Carlini  <paolo.carlini@oracle.com>
274
275         * include/bits/hashtable.h (_Hashtable<>::insert(value_type&&),
276         insert(const_iterator, value_type&&)): Don't define here...
277         * include/bits/unordered_set.h (__unordered_set<>,
278         __unordered_multiset<>): ... define here instead.
279
280 2011-09-29  Jason Merrill  <jason@redhat.com>
281
282         * testsuite/util/testsuite_tr1.h (test_property): Avoid
283         ambiguity.
284
285 2011-10-01  François Dumont  <fdumont@gcc.gnu.org>
286
287         * include/debug/vector (vector<>::erase(iterator, iterator): Check
288         iterators equality using normal iterators.
289         * include/debug/deque (deque<>::erase(iterator, iterator): Likewise.
290
291 2011-09-29  Paolo Carlini  <paolo.carlini@oracle.com>
292
293         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
294         Remove noexcept from declaration too.
295
296 2011-09-27  Benjamin Kosnik  <bkoz@redhat.com>
297
298         * doc/html/*: Regenerate.
299
300         * doc/Makefile.am: Un-nest the ext output directory.
301         * doc/Makefile.in: Regenerate.
302         * spine.xml: Remove authors, add abstract for short
303         contents. Rename to index.html for html output.
304         * manual/spine.xml: Authors here, manual starts with index.html.
305         * api.xml: Update.
306         * faq.xml: Same.
307
308 2011-09-27  Marcus Shawcroft  <marcus.shawcroft@arm.com>
309
310         * libsupc++/tinfo.cc (type_info::operator==): Test __name instead
311         of name().
312
313 2011-09-26  Paolo Carlini  <paolo.carlini@oracle.com>
314
315         PR libstdc++/50529
316         * include/bits/vector.tcc (vector<>::erase(iterator, iterator)):
317         Fix to do nothing if the range is empty.
318         * include/bits/stl_bvector.h: Likewise.
319         * include/bits/deque.tcc: Likewise.
320         * include/debug/vector: Adjust.
321         * include/debug/deque: Likewise.
322         * testsuite/23_containers/vector/modifiers/erase/50529.cc: New.
323         * testsuite/23_containers/deque/modifiers/erase/50529.cc: Likewise.
324         * testsuite/23_containers/deque/modifiers/erase/3.cc: Adjust.
325
326 2011-09-25  Benjamin Kosnik  <bkoz@redhat.com>
327             Jonathan Wakely  <jwakely.gcc@gmail.com>
328
329         PR libstdc++/48698
330         * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Set libtool_VERSION here.
331         * configure.ac: Move AC_SUBST of libtool_VERSION past call to
332         GLIBCXX_ENABLE_SYMVERS.
333         * configure: Regenerate.
334         * include/bits/c++config: Use __7 as versioned namespace name.
335         * config/abi/pre/gnu-versioned-namespace.ver: Change mangling as
336         per above.
337         * include/c_global/cwchar: Adjust nested namespaces.
338         * testsuite/20_util/bind/48698.cc: Add test case.
339         * testsuite/ext/profile/mutex_extensions_neg.cc: Change line number.
340
341 2011-09-25  Paolo Carlini  <paolo.carlini@oracle.com>
342
343         Revert (no longer necessary post r179130):
344
345         2010-04-27  Fabien Chêne  <fabien.chene@gmail.com>
346
347         * testsuite/util/testsuite_error.h: Add empty default constructor
348         to __gnu_test::test_category and
349         __gnu_test::test_derived_category.
350         * src/future.cc: Add empty default constructor to
351         future_error_category.
352         * src/system_error.cc: Add default ctor to generic_error_category
353         and system_error_category.
354
355 2011-09-24  John Salmon  <john.salmon@deshaw.com>
356
357         PR libstdc++/50510
358         * include/bits/random.tcc (seed_seq::generate): Fix computation.
359
360 2011-09-24  John Salmon  <john.salmon@deshaw.com>
361
362         PR libstdc++/50509
363         * include/bits/random.tcc (seed_seq::generate): Fix computation.
364
365 2011-09-21  Benjamin Kosnik  <bkoz@redhat.com
366
367         * doc/Makefile.am (stamp-epub-docbook): Fix image directory location.
368         * doc/Makefile.in: Regenerate.
369
370 2011-09-21  Paolo Carlini  <paolo.carlini@oracle.com>
371
372         * src/limits.cc: Replace everywhere __int128_t -> __int128, and
373         __uint128_t -> unsigned __int128.
374         * include/std/type_traits: Likewise.
375         * include/std/limits: Likewise.
376         * testsuite/18_support/numeric_limits/dr559.cc: Likewise.
377         * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
378         * testsuite/18_support/numeric_limits/40856.cc: Likewise.
379         * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
380         * testsuite/util/testsuite_common_types.h: Likewise.
381         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Likewise.
382         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
383         * testsuite/20_util/is_floating_point/value.cc: Likewise.
384         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise.
385         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
386         * testsuite/20_util/is_signed/value.cc: Likewise.
387         * testsuite/20_util/is_unsigned/value.cc: Likewise.
388         * testsuite/20_util/is_integral/value.cc: Likewise.
389         * config/abi/pre/gnu.ver: Likewise.
390         * acinclude.m4: Likewise.
391         * configure: Regenerate.
392         * config.h.in: Likewise.
393
394 2011-09-19  Paolo Carlini  <paolo.carlini@oracle.com>
395
396         PR libstdc++/40856
397         * include/std/limits (numeric_limits<__int128_t>,
398         numeric_limits<__uint128_t>): Add.
399         * src/limits.cc:Define.
400         * config/abi/pre/gnu.ver: Export.
401         * include/ext/typelist.h (_GLIBCXX_TYPELIST_CHAIN16, 20): Add.
402         * testsuite/util/testsuite_common_types.h (integral_types_gnu): Add
403         (limits_tl): Use it.
404         * testsuite/18_support/numeric_limits/requirements/
405         constexpr_functions.cc: Likewise.
406         * testsuite/18_support/numeric_limits/40856.cc: New.
407         * testsuite/18_support/numeric_limits/dr559.cc: Extend.
408         * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
409         * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
410         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-error
411         line numbers.
412         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
413         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Likewise.
414         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
415         * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
416         Likewise.
417         * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc:
418         Likewise.
419         * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
420         Likewise.
421
422 2011-09-17  Paolo Carlini  <paolo.carlini@oracle.com>
423
424         PR libstdc++/50441
425         * acinclude.m4 ([GLIBCXX_ENABLE_INT128_FLOAT128]): Add.
426         * configure.ac: Call it.
427         * include/std/type_traits (__is_integral_helper<__int128_t>,
428         __is_integral_helper<__uint128_t>,
429         __is_floating_point_helper<__float128>,
430         __make_unsigned<__int128_t>, __make_signed<__uint128_t>): Add.
431         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Extend.
432         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
433         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise.
434         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
435         * testsuite/20_util/is_signed/value.cc: Likewise.
436         * testsuite/20_util/is_unsigned/value.cc: Likewise.
437         * testsuite/20_util/is_integral/value.cc: Likewise.
438         * testsuite/20_util/is_floating_point/value.cc: New.
439         * testsuite/20_util/is_floating_point/requirements/typedefs.cc:
440         Likewise.
441         * testsuite/20_util/is_floating_point/requirements/
442         explicit_instantiation.cc: Likewise.
443         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
444         dg-error line numbers.
445         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
446         Likewise.
447         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
448         * configure: Regenerate.
449         * config.h.in: Likewise.
450
451 2011-09-17  François Dumont  <fdumont@gcc.gnu.org>
452
453         * include/bits/hashtable.h (_Hashtable<>::__rehash_policy(const
454         _RehashPolicy&)): Commit the modification of the policy only if no
455         exception occured.
456         * testsuite/23_containers/unordered_set/max_load_factor/robustness.cc:
457         New.
458
459 2011-09-16  Paolo Carlini  <paolo.carlini@oracle.com>
460
461         * testsuite/23_containers/array/comparison_operators/
462         less_or_equal.cc: New.
463         * testsuite/23_containers/array/comparison_operators/
464         greater_or_equal.cc: Likewise.
465         * testsuite/23_containers/array/comparison_operators/less.cc: Likewise.
466         * testsuite/23_containers/array/comparison_operators/equal.cc: Likewise.
467         * testsuite/23_containers/array/comparison_operators/not_equal.cc:
468         Likewise.
469         * testsuite/23_containers/array/comparison_operators/greater.cc:
470         Likewise.
471         * testsuite/23_containers/array/iterators/end_is_one_past.cc: Likewise.
472         * testsuite/23_containers/array/capacity/empty.cc: Likewise.
473         * testsuite/23_containers/array/capacity/max_size.cc: Likewise.
474         * testsuite/23_containers/array/capacity/size.cc: Likewise.
475         * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
476         Likewise.
477         * testsuite/23_containers/array/tuple_interface/tuple_size.cc:
478         Likewise.
479         * testsuite/23_containers/array/element_access/at_out_of_range.cc:
480         Likewise.
481         * testsuite/23_containers/array/element_access/back.cc: Likewise.
482         * testsuite/23_containers/array/element_access/front.cc: Likewise.
483         * testsuite/23_containers/array/element_access/data.cc: Likewise.
484         * testsuite/23_containers/array/cons/aggregate_initialization.cc:
485         Likewise.
486         * testsuite/23_containers/array/requirements/zero_sized_arrays.cc:
487         Likewise.
488         * testsuite/23_containers/array/requirements/contiguous.cc: Likewise.
489         * testsuite/23_containers/array/requirements/member_swap.cc: Likewise.
490         * testsuite/23_containers/array/specialized_algorithms/swap.cc:
491         Likewise.
492         * testsuite/23_containers/array/constexpr_get.cc: Move...
493         * testsuite/23_containers/array/tuple_interface/constexpr_get.cc:
494         ... here.
495         * testsuite/23_containers/array/requirements/get.cc: Move...
496         * testsuite/23_containers/array/tuple_interface/get: ... here.
497         * testsuite/23_containers/array/at_neg.cc: Move...
498         * testsuite/23_containers/array/element_access: ... here.
499         * testsuite/23_containers/array/requirements/constexpr_functions.cc:
500         Move...
501         * testsuite/23_containers/array/capacity: ... here.
502         * testsuite/23_containers/array/requirements/
503         constexpr_element_access.cc: Move...
504         * testsuite/23_containers/array/element_access: ... here.
505
506         * testsuite/20_util/duration/cons/1_neg.cc: Avoid -Wall warnings.
507         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Likewise.
508         * testsuite/20_util/pair/make_pair/constexpr.cc: Likewise.
509         * testsuite/20_util/time_point/nonmember/constexpr.cc: Likewise.
510         * testsuite/23_containers/bitset/operations/constexpr.cc: Likewise.
511
512         * testsuite/20_util/duration/cons/1_neg.cc: Discard bogus warning.
513         * testsuite/20_util/forward/1_neg.cc: Likewise.
514
515 2011-09-15  Paolo Carlini  <paolo.carlini@oracle.com>
516
517         * include/std/tuple (make_tuple, forward_as_tuple): Declare constexpr.
518         (_Tuple_impl<>::_Tuple_impl(_Tuple_impl<>&&)): Likewise.
519         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Enable
520         make_tuple test.
521         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
522         line number.
523
524 2011-09-14  François Dumont  <fdumont@gcc.gnu.org>
525             Paolo Carlini  <paolo.carlini@oracle.com>
526
527         * include/bits/hashtable.h (_Hashtable<>::_M_rehash): Take and restore
528         hash policy _M_prev_resize on exception.
529         (_Hashtable<>::_M_insert_bucket): Capture hash policy next resize
530         before using it and use latter method to have it restored on exception.
531         (_Hashtable<>::_M_insert(_Arg&& __v, std::false_type): Likewise.
532         (_Hashtable<>::insert(_InputIterator, _InputIterator): Likewise.
533         (_Hashtable<>::rehash): Likewise.
534         * testsuite/23_containers/unordered_set/insert/hash_policy.cc: New.
535         * testsuite/23_containers/unordered_multiset/insert/hash_policy.cc:
536         Likewise.
537
538 2011-09-13  Paul Brook  <paul@codesourcery.com>
539
540         * libsupc++/eh_arm.cc (__cxa_end_cleanup): Add C6X implementation.
541         * libsupc++/eh_call.cc (__cxa_call_unexpected): Set rtti_base.
542         * libsupc++/eh_personality.cc (NO_SIZE_OF_ENCODED_VALUE): Remove
543         __ARM_EABI_UNWINDER__ check.
544         (parse_lsda_header): Check _GLIBCXX_OVERRIDE_TTYPE_ENCODING.
545         (get_ttype_entry): Use generic implementation on ARM EABI.
546         (check_exception_spec): Use _Unwind_decode_typeinfo_ptr and
547         UNWIND_STACK_REG.
548         (PERSONALITY_FUNCTION): Set ttype_base.
549
550 2011-09-12  Daniel Krugler  <daniel.kruegler@googlemail.com>
551             Paolo Carlini  <paolo.carlini@oracle.com>
552
553         * include/std/tuple (_Head_base<>::_M_head, _Head_base<>::_M_tail,
554         _Tuple_impl<>::_M_head, _Tuple_impl<>::_M_tail): Change to static
555         constexpr functions; adjust everywhere.
556         (__get_helper, get): Declare constexpr all three overloads.
557         (tuple_cat): Declare constexpr; use late return type to improve
558         error messages.
559         * include/std/utility (__pair_get<>::__get, __pair_get<>::__move_get,
560         __pair_get<>::__const_get, get): Declare all constexpr.
561         * include/std/array (get): Likewise.
562         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Re-enable
563         tuple_cat test.
564         * testsuite/23_containers/array/constexpr_get.cc: New.
565         * testsuite/20_util/tuple/element_access/constexpr_get.cc: Likewise.
566         * testsuite/20_util/pair/constexpr_get.cc: Likewise.
567         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
568         line number.
569
570 2011-09-12  Jason Merrill  <jason@redhat.com>
571
572         * testsuite/20_util/is_constructible/value-2.cc: Adjust
573         expected values.
574
575 2011-09-11  Daniel Krugler  <daniel.kruegler@googlemail.com>
576
577         PR libstdc++/50159
578         * include/std/tuple (tuple_cat): Reimplement according to the
579         resolution of LWG 1385.
580         * include/std/type_traits: Define __and_ and __or_ for zero
581         arguments too; minor tweaks.
582         * testsuite/20_util/tuple/creation_functions/tuple_cat.cc: New.
583         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Disable
584         for now tuple_cat test.
585         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
586         line numbers.
587         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
588         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
589         Likewise.
590         * doc/xml/manual/status_cxx200x.xml: Update.
591
592 2011-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
593
594         * include/std/tuple: Use everywhere std::size_t... instead of int...
595         * include/std/functional: Likewise.
596         * include/std/scoped_allocator: Likewise.
597         * include/bits/stl_pair.h: Likewise.
598
599 2011-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
600
601         PR libstdc++/50336
602         * include/bits/streambuf_iterator.h (class istreambuf_iterator):
603         Implement LWG 445 in C++0x mode.
604         * testsuite/24_iterators/istreambuf_iterator/requirements/dr445.cc:
605         New.
606
607 2011-09-08  Dodji Seketeli  <dodji@redhat.com>
608
609         PR c++/33255 - Support -Wunused-local-typedefs warning
610         * include/ext/bitmap_allocator.h
611         (__detail::__mini_vector::__lower_bound): Remove unused typedef.
612         * src/istream.cc (std::operator>>(basic_istream<char>& __in,
613         basic_string<char>& __str)): Likewise.
614         (std::getline): Likewise.
615         * src/valarray.cc (__valarray_product): Likewise.
616
617 2011-09-07  François Dumont  <francois.cppdevs@free.fr>
618
619         * testsuite/23_containers/array/at.cc: Revert to...
620         * testsuite/23_containers/array/at_neg.cc: ...this.
621
622 2011-09-07  Jason Merrill  <jason@redhat.com>
623
624         * testsuite/20_util/bind/ref_neg.cc: Adjust errors.
625         * testsuite/20_util/duration/cons/1_neg.cc: Adjust errors.
626
627 2011-09-06  Benjamin Kosnik  <bkoz@redhat.com>
628
629         * include/std/tuple (_Tuple_impl::_M_head, _M_tail): Mark constexpr.
630         (tuple(tuple&&)): Same.
631         (tuple(const tuple<_UElements...>& __in)): Same.
632         (tuple(tuple<_UElements...>&& __in)): Same.
633         (tuple_cat(const tuple<_TElements...>&, const tuple<_UElements...>&)):
634         Same.
635         (get): Same.
636         * include/std/array: Consolidate array::data usage.
637         * testsuite/23_containers/array/requirements/constexpr_functions.cc:
638         Remove extra include.
639         * testsuite/20_util/tuple/creation_functions/constexpr.cc: New.
640         * testsuite/20_util/tuple/cons/constexpr-2.cc: Add tests.
641         * testsuite/20_util/tuple/cons/constexpr-3.cc: Same.
642         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line numbers.
643
644 2011-09-06  François Dumont  <fdumont@gcc.gnu.org>
645             Paolo Carlini  <paolo.carlini@oracle.com>
646
647         * include/bits/hashtable_policy.h (_Prime_rehash_policy::
648         _M_next_bkt): Cast _M_max_load_factor to long double.
649         (_Prime_rehash_policy::_M_bkt_for_elements): Use _M_next_bkt.
650         (_Prime_rehash_policy::_M_need_rehash): Likewise; cast all
651         float quantities to long double.
652
653 2011-09-06  Paolo Carlini  <paolo.carlini@oracle.com>
654
655         PR libstdc++/50257
656         * include/bits/hashtable_policy.h (_Prime_rehash_policy::
657         _M_next_bkt): Optimize for small argument.
658
659 2011-09-02  François Dumont  <fdumont@gcc.gnu.org>
660
661         * testsuite/util/testsuite_allocator.h (tracker_allocator_counter::
662         allocate): Update allocation count only if allocation succeeded.
663
664 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
665
666         * include/std/bitset: Trivial formatting fixes.
667
668 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
669             Marc Glisse  <marc.glisse@normalesup.org>
670
671         * include/std/bitset (_Base_bitset<>::_M_are_all_aux): Remove.
672         (_Base_bitset<>::_M_are_all): Add.
673         (bitset<>::all): Use the latter, improve implementation.
674
675 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
676             Marc Glisse  <marc.glisse@normalesup.org>
677
678         PR libstdc++/50268
679         * include/std/bitset (struct _Sanitize_val): Add.
680         (bitset<>::bitset(unsigned long long)): Fix.
681         * testsuite/23_containers/bitset/cons/50268.cc: New.
682
683 2011-09-01  Paolo Carlini  <paolo.carlini@oracle.com>
684
685         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
686         Remove noexcept, the move constructor allocates memory; rearrange
687         the code in the body to consistently update __ht._M_rehash_policy
688         before using _M_next_bkt on it.
689         * include/debug/unordered_map: Adjust.
690         * include/debug/unordered_set: Likewise.
691         * include/profile/unordered_map: Likewise.
692         * include/profile/unordered_set: Likewise.
693         * testsuite/23_containers/unordered_map/cons/
694         noexcept_move_construct.cc: Remove.
695         * testsuite/23_containers/unordered_set/cons/
696         noexcept_move_construct.cc: Likewise.
697         * testsuite/23_containers/unordered_multimap/cons/
698         noexcept_move_construct.cc: Likewise.
699         * testsuite/23_containers/unordered_multiset/cons/
700         noexcept_move_construct.cc: Likewise.
701
702 2011-08-31  Paolo Carlini  <paolo.carlini@oracle.com>
703
704         * include/std/chrono (operator*(const _Rep1&, const duration<>&)):
705         Fix order of template parameters per LWG 2004.
706
707 2011-08-30  Paolo Carlini  <paolo.carlini@oracle.com>
708
709         * include/bits/stl_iterator.h (make_move_iterator): Implement DR2061.
710         * testsuite/24_iterators/move_iterator/dr2061.cc: New.
711         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
712         line numbers.
713
714 2011-08-30  Paolo Carlini  <paolo.carlini@oracle.com>
715
716         * config/os/mingw32/error_constants.h: Fix commas.
717
718 2011-08-29  Benjamin Kosnik  <bkoz@redhat.com>
719
720         * testsuite/20_util/duration/arithmetic/constexpr.cc: Add.
721
722 2011-08-29  Kai Tietz  <ktietz@redhat.com>
723
724         * configure: Regenerated.
725         * config.h.in: Regenerated.
726         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR)  Add
727         checks for ECHILD, ENOSPC, EPERM, ETIMEDOUT, and
728         EWOULDBLOCK.
729         * config/os/mingw32/error_constants.h (errc): Add
730         enumerator values no_child_process, no_space_on_device,
731         not_supported, operation_not_permitted, operation_would_block,
732         timed_out, and value_too_large,
733
734 2011-08-29  Paolo Carlini  <paolo.carlini@oracle.com>
735
736         PR libstdc++/50118
737         * include/bits/stl_list.h (_List_base<>::
738         _List_base(const allocator_type&)): Remove.
739         (_List_base<>::_List_base(const _Node_alloc_type&)): Add.
740         (list<>:list(const allocator_type&), list(size_type, const
741         value_type&, const allocator_type&),
742         list(initializer_list<, const allocator_type&),
743         list(_InputIterator, _InputIterator, const allocator_type&),
744         insert(iterator, size_type, const value_type&),
745         insert(iterator, _InputIterator, _InputIterator)): Adjust.
746         * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(const _Compare&,
747         const allocator_type&)): Fix.
748         * include/bits/stl_map.h (map<>::map(const _Compare&,
749         const allocator_type&), map(initializer_list<>,
750         const _Compare&, const allocator_type&), map(_InputIterator,
751         _InputIterator, const _Compare&, const allocator_type&),
752         get_allocator): Adjust.
753         * include/bits/stl_set.h (set<>::set(const _Compare&,
754         const allocator_type&), set(initializer_list<>,
755         const _Compare&, const allocator_type&), set(_InputIterator,
756         _InputIterator, const _Compare&, const allocator_type&),
757         get_allocator): Likewise.
758         * include/bits/stl_multimap.h (multimap<>::multimap(const _Compare&,
759         const allocator_type&), multimap(initializer_list<>,
760         const _Compare&, const allocator_type&), multimap(_InputIterator,
761         _InputIterator, const _Compare&, const allocator_type&),
762         get_allocator): Likewise.
763         * include/bits/stl_multiset.h (multiset<>::multiset(const _Compare&,
764         const allocator_type&), multiset(initializer_list<>,
765         const _Compare&, const allocator_type&), multiset(_InputIterator,
766         _InputIterator, const _Compare&, const allocator_type&),
767         get_allocator): Likewise.
768         * include/bits/forward_list.h (_Fwd_list_base<>::
769         _Fwd_list_base(const _Alloc&), _Fwd_list_base(const _Fwd_list_base&,
770         const _Alloc&), _Fwd_list_base(_Fwd_list_base&&, const _Alloc&)):
771         Remove.
772         (_Fwd_list_base<>::_Fwd_list_base(const _Node_alloc_type&),
773         _Fwd_list_base(const _Fwd_list_base&,
774         const _Node_alloc_type&), _Fwd_list_base(_Fwd_list_base&&,
775         const _Node_alloc_type&)): Add.
776         (forward_list<>::forward_list(const _Alloc&),
777         forward_list(const forward_list&, const _Alloc&),
778         forward_list(forward_list&&, const _Alloc&),
779         forward_list(size_type, const _Tp&, const _Alloc&),
780         forward_list(_InputIterator, _InputIterator, const _Alloc&),
781         forward_list(std::initializer_list<>, const _Alloc&),
782         get_allocator): Adjust.
783         * include/bits/forward_list.tcc: Adjust.
784         * testsuite/util/testsuite_allocator.h (ExplicitConsAlloc): Add.
785         * testsuite/23_containers/unordered_map/requirements/
786         explicit_instantiation/5.cc: New.
787         * testsuite/23_containers/multimap/requirements/
788         explicit_instantiation/5.cc: Likewise.
789         * testsuite/23_containers/multimap/requirements/
790         explicit_instantiation/5_c++0x.cc: Likewise.
791         * testsuite/23_containers/set/requirements/explicit_instantiation/
792         5.cc: Likewise.
793         * testsuite/23_containers/set/requirements/explicit_instantiation/
794         5_c++0x.cc: Likewise.
795         * testsuite/23_containers/unordered_multimap/requirements/
796         explicit_instantiation/5.cc: Likewise.
797         * testsuite/23_containers/forward_list/requirements/
798         explicit_instantiation/5.cc: Likewise.
799         * testsuite/23_containers/unordered_set/requirements/
800         explicit_instantiation/5.cc: Likewise.
801         testsuite/23_containers/multiset/requirements/explicit_instantiation/
802         5.cc: Likewise.
803         * testsuite/23_containers/multiset/requirements/
804         explicit_instantiation/5_c++0x.cc: Likewise.
805         * testsuite/23_containers/list/requirements/explicit_instantiation/
806         5_c++0x.cc: Likewise.
807         * testsuite/23_containers/list/requirements/explicit_instantiation/
808         5.cc: Likewise.
809         * testsuite/23_containers/unordered_multiset/requirements/
810         explicit_instantiation/5.cc: Likewise.
811         * testsuite/23_containers/map/requirements/explicit_instantiation/
812         5.cc: Likewise.
813         * testsuite/23_containers/map/requirements/explicit_instantiation/
814         5_c++0x.cc: Likewise.
815         * testsuite/23_containers/forward_list/requirements/dr438/
816         assign_neg.cc: Adjust dg-error line number.
817         * testsuite/23_containers/forward_list/requirements/dr438/
818         insert_neg.cc: Likewise.
819         * testsuite/23_containers/forward_list/requirements/dr438/
820         constructor_1_neg.cc: Likewise.
821         * testsuite/23_containers/forward_list/requirements/dr438/
822         constructor_2_neg.cc: Likewise.
823         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
824         Likewise.
825         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
826         Likewise.
827         * testsuite/23_containers/list/requirements/dr438/
828         constructor_1_neg.cc: Likewise.
829         * testsuite/23_containers/list/requirements/dr438/
830         constructor_2_neg.cc: Likewise.
831
832 2011-08-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
833
834         * acinclude.m4 (GLIBCXX_CHECK_MATH_PROTO)
835         (GLIBCXX_CHECK_STDLIB_PROTO): New tests.
836         * configure.ac (GLIBCXX_CHECK_MATH_PROTO)
837         (GLIBCXX_CHECK_STDLIB_PROTO): Call them.
838         * configure: Regenerate.
839         * config.h.in: Regenerate.
840         * config/os/solaris/solaris2.8/os_defines.h
841         (__CORRECT_ISO_CPP_MATH_H_PROTO2): Don't define.
842         * config/os/solaris/solaris2.9: Remove.
843         * configure.host (solaris2.8): Merge with ...
844         (solaris2.9, solaris2.1[0-9]): ... this.
845         Always use os/solaris/solaris2.8.
846
847 2011-08-28  Paolo Carlini  <paolo.carlini@oracle.com>
848
849         * include/bits/move.h (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Remove
850         workaround for c++/49045.
851         * include/bits/algorithmfwd.h: Likewise.
852
853 2011-08-25  Tom Tromey  <tromey@redhat.com>
854
855         * testsuite/libstdc++-prettyprinters/simple.cc: New file.
856         * testsuite/lib/gdb-test.exp: New file.
857         * testsuite/libstdc++-prettyprinters/prettyprinters.exp: New
858         file.
859
860 2011-08-18  Marc Glisse  <marc.glisse@normalesup.org>
861
862         * include/tr1/cmath: Extend/update comment.
863
864 2011-08-18  Paolo Carlini  <paolo.carlini@oracle.com>
865
866         PR libstdc++/50119
867         * include/bits/stl_algo.h (__copy_n(_InputIterator, _Size,
868         _OutputIterator, input_iterator_tag)): Fix.
869         * testsuite/25_algorithms/copy_n/50119.cc: New.
870
871 2011-08-18  Marc Glisse  <marc.glisse@normalesup.org>
872             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
873
874         PR libstdc++/1773
875         * config/os/solaris2.7: Rename to config/os/solaris2.9.
876         * config/os/solaris/solaris2.9/os_defines.h
877         (__CORRECT_ISO_CPP_MATH_H_PROTO1)
878         (__CORRECT_ISO_CPP_STDLIB_H_PROTO)
879         (__CORRECT_ISO_CPP_STRING_H_PROTO)
880         (__CORRECT_ISO_CPP_WCHAR_H_PROTO): Define.
881         * config/os/solaris2.8/ctype_base.h,
882         config/os/solaris2.8/ctype_configure_char.cc,
883         config/solaris2.8/ctype_inline.h,
884         config/os/solaris2.8/os_defines.h: New files.
885
886         * configure.host (solaris2.[89], solaris2.1[0-9]):
887         Split into ...
888         (solaris2.8): ... this.
889         Use os/solaris/solaris2.8.
890         (solaris2.9, solaris2.1[0-9]): ... and this.
891         Use os/solaris/solaris2.9.
892
893         * include/c_global/cmath (double abs(double)): Wrap in
894         !__CORRECT_ISO_CPP_MATH_H_PROTO1 &&
895         !__CORRECT_ISO_CPP_MATH_H_PROTO2.
896         (float abs(float), long double abs(long double): Wrap in
897         !__CORRECT_ISO_CPP_MATH_H_PROTO1.
898         (float acos(float), long double acos(long double)): Likewise.
899         (float asin(float), long double asin(long double)): Likewise.
900         (float atan(float), long double atan(long double)): Likewise.
901         (float atan2(float, float), long double atan2(long double, long
902         double)): Likewise.
903         (float ceil(float), long double ceil(long double)): Likewise.
904         (float cos(float), long double cos(long double)): Likewise.
905         (float cosh(float), long double cosh(long double)): Likewise.
906         (float exp(float), long double exp(long double)): Likewise.
907         (float fabs(float), long double fabs(long double)): Likewise.
908         (float floor(float), long double floor(long double)): Likewise.
909         (float fmod(float, float), long double fmod(long double, long
910         double)): Likewise.
911         (float frexp(float, int*), long double frexp(long double, int*)):
912         Likewise.
913         (float ldexp(float, int), long double ldexp(long double, int)):
914         Likewise.
915         (float log(float), long double log(long double)): Likewise.
916         (float log10(float), long double log10(long double)): Likewise.
917         (float modf(float, float*), long double modf(long double, long
918         double*))): Likewise.
919         (float pow(float, float), long double pow(long double, long
920         double)): Likewise.
921         (float sin(float), long double sin(long double)): Likewise.
922         (float sinh(float), long double sinh(long double)): Likewise.
923         (float sqrt(float), long double sqrt(long double)): Likewise.
924         (float tan(float), long double tan(long double)): Likewise.
925         (float tanh(float), long double tanh(long double)): Likewise.
926         * include/c_global/cstdlib (long abs(long), ldiv_t div(long,
927         long)): Wrap in !__CORRECT_ISO_CPP_STDLIB_H_PROTO.
928         * include/tr1/cmath (float fabs(float), long double fabs(long
929         double)): Wrap in !__CORRECT_ISO_CPP_MATH_H_PROTO1.
930
931 2011-08-14  Benjamin Kosnik  <bkoz@redhat.com>
932
933         * doc/xml/images/*: Image and image filename changes.
934
935 2011-08-14  Benjamin Kosnik  <bkoz@redhat.com>
936
937         * testsuite/data/make_graph_test_infos.xml: Edit.
938         * testsuite/data/make_graph_htmls.xml: Remove
939         * scripts/make_graph.py: Edit, fix.
940         * scripts/make_graphs.py: Remove.
941
942         * doc/Makefile.am (doc-svg-performance): New.
943         (doc-html-performance): Remove.
944         * doc/Makefile.in: Regenerate.
945
946         * doc/xml/manual/test_policy_data_structures.xml: Markup changes.
947         * doc/xml/manual/policy_data_structures.xml: Same.
948         * doc/xml/manual/locale.xml: Same.
949
950         Testsuite renames.
951         * performance/ext/pb_ds/priority_queue_text_modify_down_timing.cc:
952         Rename.
953         * performance/ext/pb_ds/random_int_find_timing.cc: Same.
954         * performance/ext/pb_ds/multimap_text_insert_mem_usage.hpp
955         * performance/ext/pb_ds/multimap_text_find_timing.hpp
956         * performance/ext/pb_ds/priority_queue_random_int_push_timing.cc: Same.
957         * performance/ext/pb_ds/priority_queue_text_modify_timing.hpp
958         * performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
959         * performance/ext/pb_ds/multimap_text_insert_mem_usage_large.cc: Same.
960         * performance/ext/pb_ds/priority_queue_text_push_pop_timing.cc: Same.
961         * performance/ext/pb_ds/priority_queue_text_join_timing.cc: Same.
962         * performance/ext/pb_ds/multimap_text_insert_timing_small.cc: Same.
963         * performance/ext/pb_ds/random_int_subscript_insert_timing.cc: Same.
964         * performance/ext/pb_ds/tree_text_lor_find_timing.cc: Same.
965         * performance/ext/pb_ds/priority_queue_text_pop_mem_usage.cc: Same.
966         * performance/ext/pb_ds/multimap_text_find_timing_small.cc: Same.
967         * performance/ext/pb_ds/text_find_timing.cc: Same.
968         * performance/ext/pb_ds/tree_text_insert_timing.cc: Same.
969         * performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc: Same.
970         * performance/ext/pb_ds/random_int_subscript_find_timing.cc: Same.
971         * performance/ext/pb_ds/priority_queue_text_push_timing.cc: Same.
972         * performance/ext/pb_ds/tree_split_join_timing.cc: Same.
973         * performance/ext/pb_ds/multimap_text_insert_timing_large.cc: Same.
974         * performance/ext/pb_ds/priority_queue_text_modify_up_timing.cc: Same.
975         * performance/ext/pb_ds/multimap_text_find_timing_large.cc: Same.
976         * performance/ext/pb_ds/priority_queue_random_int_push_pop_timing.cc:
977         Same.
978         * performance/ext/pb_ds/multimap_text_insert_timing.hpp
979         * performance/ext/pb_ds/multimap_text_insert_mem_usage_small.cc: Same.
980         * performance/ext/pb_ds/hash_zlob_random_int_find_timing.cc: Same.
981
982         * performance/ext/pb_ds/all_int_find.cc: To these new files...
983         * performance/ext/pb_ds/all_int_subscript_find.cc: ...this.
984         * performance/ext/pb_ds/all_int_subscript_insert.cc: ...this.
985         * performance/ext/pb_ds/all_text_find.cc: ...this.
986         * performance/ext/pb_ds/hash_int_erase_mem.cc: ...this.
987         * performance/ext/pb_ds/hash_zlob_int_find.cc: ...this.
988         * performance/ext/pb_ds/multimap_text_find.hpp
989         * performance/ext/pb_ds/multimap_text_find_large.cc: ...this.
990         * performance/ext/pb_ds/multimap_text_find_small.cc: ...this.
991         * performance/ext/pb_ds/multimap_text_insert.hpp
992         * performance/ext/pb_ds/multimap_text_insert_large.cc: ...this.
993         * performance/ext/pb_ds/multimap_text_insert_mem.hpp
994         * performance/ext/pb_ds/multimap_text_insert_mem_large.cc: ...this.
995         * performance/ext/pb_ds/multimap_text_insert_mem_small.cc: ...this.
996         * performance/ext/pb_ds/multimap_text_insert_small.cc: ...this.
997         * performance/ext/pb_ds/priority_queue_int_push.cc: ...this.
998         * performance/ext/pb_ds/priority_queue_int_push_pop.cc: ...this.
999         * performance/ext/pb_ds/priority_queue_text_join.cc: ...this.
1000         * performance/ext/pb_ds/priority_queue_text_modify_down.cc: ...this.
1001         * performance/ext/pb_ds/priority_queue_text_modify.hpp
1002         * performance/ext/pb_ds/priority_queue_text_modify_up.cc: ...this.
1003         * performance/ext/pb_ds/priority_queue_text_pop_mem.cc: ...this.
1004         * performance/ext/pb_ds/priority_queue_text_push.cc: ...this.
1005         * performance/ext/pb_ds/priority_queue_text_push_pop.cc: ...this.
1006         * performance/ext/pb_ds/tree_order_statistics.cc: ...this.
1007         * performance/ext/pb_ds/tree_split_join.cc: ...this.
1008         * performance/ext/pb_ds/tree_text_insert.cc: ...this.
1009         * performance/ext/pb_ds/tree_text_lor_find.cc: ...this.
1010
1011         * doc/xml/images/*: Image and image filename changes.
1012
1013 2011-08-12  Paolo Carlini  <paolo.carlini@oracle.com>
1014
1015         * include/c_global/cmath (fmod(_Tp, _Up)): Add.
1016         * include/c_std/cmath: Likewise.
1017
1018 2011-08-11  Paolo Carlini  <paolo.carlini@oracle.com>
1019
1020         * include/std/future: constexpr functions are implicitly inline.
1021         * include/std/chrono: Likewise.
1022         * include/std/complex: Likewise.
1023         * include/bits/move.h: Likewise.
1024         * include/bits/stl_pair.h: Likewise.
1025
1026 2011-08-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
1027
1028         * include/bits/alloc_traits.h: Fix doxygen @headername.
1029
1030 2011-08-06  Benjamin Kosnik  <bkoz@redhat.com>
1031
1032         * doc/doxygen/user.cfg.in (PDF_HYPERLINKS): To NO.
1033
1034 2011-08-06  Benjamin Kosnik  <bkoz@redhat.com>
1035
1036         * doc/doxygen/user.cfg.in: Add scoped_allocator.
1037
1038         * include/debug/safe_sequence.h: Fix doxygen markup.
1039         * include/debug/safe_unordered_base.h: Same.
1040         * include/debug/safe_local_iterator.tcc: Same.
1041         * include/debug/safe_unordered_container.h: Same.
1042         * include/std/valarray: Same.
1043         * include/std/iomanip: Same.
1044         * include/std/streambuf: Same.
1045         * include/std/bitset: Same.
1046         * include/std/fstream: Same.
1047         * include/std/functional: Same.
1048         * include/std/istream: Same.
1049         * include/std/ostream: Same.
1050         * include/std/scoped_allocator: Same.
1051         * include/std/sstream: Same.
1052         * include/parallel/multiway_merge.h: Same.
1053         * include/parallel/base.h: Same.
1054         * include/parallel/for_each_selectors.h: Same.
1055         * include/parallel/multiway_mergesort.h: Same.
1056         * include/parallel/search.h: Same.
1057         * include/parallel/partial_sum.h: Same.
1058         * include/parallel/queue.h: Same.
1059         * include/parallel/sort.h: Same.
1060         * include/parallel/random_number.h: Same.
1061         * include/ext/vstring.h: Same.
1062         * include/ext/algorithm: Same.
1063         * include/ext/pb_ds/assoc_container.h: Same.
1064         * include/ext/bitmap_allocator.h: Same.
1065         * include/ext/stdio_filebuf.h: Same.
1066         * include/ext/memory: Same.
1067         * include/ext/functional: Same.
1068         * include/bits/basic_ios.h: Same.
1069         * include/bits/stl_list.h: Same.
1070         * include/bits/stl_map.h: Same.
1071         * include/bits/stl_algobase.h: Same.
1072         * include/bits/stl_queue.h: Same.
1073         * include/bits/gslice.h: Same.
1074         * include/bits/locale_classes.h: Same.
1075         * include/bits/stl_set.h: Same.
1076         * include/bits/locale_facets.h: Same.
1077         * include/bits/stl_stack.h: Same.
1078         * include/bits/stl_heap.h: Same.
1079         * include/bits/forward_list.h: Same.
1080         * include/bits/stream_iterator.h: Same.
1081         * include/bits/basic_string.h: Same.
1082         * include/bits/stl_multimap.h: Same.
1083         * include/bits/stl_pair.h: Same.
1084         * include/bits/ios_base.h: Same.
1085         * include/bits/stl_numeric.h: Same.
1086         * include/bits/stl_vector.h: Same.
1087         * include/bits/stl_deque.h: Same.
1088         * include/bits/codecvt.h: Same.
1089         * include/bits/stl_multiset.h: Same.
1090         * include/bits/stl_uninitialized.h: Same.
1091         * include/bits/ptr_traits.h: Same.
1092         * include/bits/slice_array.h: Same.
1093         * include/bits/stl_iterator_base_funcs.h: Same.
1094         * include/bits/stl_algo.h: Same.
1095         * include/bits/stl_iterator.h: Same.
1096         * include/bits/stl_tempbuf.h: Same.
1097         * include/bits/regex.h: Same.
1098         * include/bits/range_access.h: Same.
1099         * include/bits/random.h: Same.
1100         * include/bits/alloc_traits.h: Same.
1101         * include/bits/regex_error.h: Same.
1102         * include/bits/locale_facets_nonio.h: Same.
1103         * include/bits/stl_relops.h: Same.
1104         * include/backward/auto_ptr.h: Same.
1105         * libsupc++/initializer_list: Same.
1106
1107         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1108         Adjust line numbers.
1109         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
1110         * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1111         Same.
1112         * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1113         Same.
1114
1115 2011-08-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1116
1117         * acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Point TOPLEVEL_INCLUDES
1118         to $(toplevel_srcdir)/libgcc.
1119         * configure: Regenerate.
1120
1121 2011-08-04  Benjamin Kosnik  <bkoz@redhat.com>
1122
1123         * doc/xml/manual/build_hacking.xml: Use relative fileref for PNG
1124         imagedata.
1125         * doc/xml/manual/test_policy_data_structures.xml: Same.
1126         * doc/xml/manual/policy_data_structures.xml: Same.
1127
1128         * doc/Makefile.am (stamp-html-docbook-images)
1129         (stamp-html-docbook-lwg, stamp-html-docbook-data): New.
1130         (xml_extra): Add lwg html file dependencies.
1131         (xml_images): Add image html file dependencies.
1132         * doc/Makefile.in: Regenerate.
1133         (stamp-html): Change to stamp-html-docbook-data.
1134         (stamp-html-copy): Remove.
1135
1136 2011-08-04  Paolo Carlini  <paolo.carlini@oracle.com>
1137
1138         * src/atomic.cc: Use noexcept.
1139         * include/std/atomic: Likewise.
1140         * include/bits/atomic_0.h: Likewise.
1141         * include/bits/atomic_2.h: Likewise.
1142         * include/bits/atomic_base.h: Likewise.
1143
1144 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
1145
1146         * testsuite/performance/27_io/filebuf_sputn_unbuf.cc: Include
1147         unistd.h for unlink.
1148         * testsuite/performance/27_io/ofstream_insert_int.cc: Same.
1149         * testsuite/performance/27_io/ifstream_extract_int.cc: Same.
1150         * testsuite/performance/27_io/ifstream_getline-2.cc: Same.
1151         * testsuite/performance/27_io/fstream_seek_write.cc: Same.
1152         * testsuite/performance/27_io/ifstream_extract_chars.cc: Same.
1153         * testsuite/performance/27_io/ofstream_insert_float.cc: Same.
1154         * testsuite/performance/27_io/ifstream_extract_float.cc: Same.
1155         * testsuite/performance/27_io/filebuf_sputc.cc: Same.
1156
1157 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
1158
1159         * include/std/tuple: Mark more constructors constexpr.
1160         * testsuite/20_util/tuple/cons/constexpr.cc: Split into and extend as:
1161         * testsuite/20_util/tuple/cons/constexpr-2.cc: ...this.
1162         * testsuite/20_util/tuple/cons/constexpr-3.cc: ... and this.
1163         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line numbers.
1164
1165 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
1166             François Dumont  <francois.cppdevs@free.fr>
1167
1168         * testsuite/23_containers/array/at_neg.cc: Move...
1169         * testsuite/23_containers/array/at.cc: ...here. Remove
1170         -fno-exceptions, call const at member function.
1171
1172 2011-08-01  H.J. Lu  <hongjiu.lu@intel.com>
1173
1174         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Generated.
1175
1176 2011-08-01  Paolo Carlini  <paolo.carlini@oracle.com>
1177
1178         PR c++/49813
1179         * include/c_global/cmath (isinf): Remove workaround.
1180
1181 2011-07-31  Paolo Carlini  <paolo.carlini@oracle.com>
1182
1183         PR libstdc++/49925
1184         * include/bits/shared_ptr.h (make_shared): Qualify allocate_shared
1185         with std::.
1186         * include/bits/shared_ptr_base.h (__make_shared): Likewise.
1187
1188 2011-07-29  Benjamin Kosnik  <bkoz@redhat.com>
1189
1190         * doc/xml/manual/build_hacking.xml: Markup imagedata changes.
1191         * doc/xml/manual/policy_data_structures.xml: Same.
1192
1193         * doc/xml/class.txml: Remove biblioid.
1194         * doc/xml/manual/allocator.xml: Same.
1195         * doc/xml/manual/ctype.xml: Same.
1196         * doc/xml/manual/codecvt.xml: Same.
1197         * doc/xml/manual/backwards_compatibility.xml: Same.
1198         * doc/xml/manual/abi.xml: Same.
1199         * doc/xml/manual/shared_ptr.xml: Same.
1200         * doc/xml/manual/using_exceptions.xml: Same.
1201         * doc/xml/manual/messages.xml: Same.
1202
1203 2011-07-29  Benjamin Kosnik  <bkoz@redhat.com>
1204
1205         Docbook conversion of existing ext/pb_ds documentation.
1206         * doc/Makefile.am (xml_sources_manual): Add
1207         policy_data_structures.xml and
1208         test_policy_data_structures.xml.
1209         (stamp-html-copy): Remove special-case for ext/pb_ds directory.
1210         (XSLTPROC_FLAGS): Split into XSLT_FLAGS and XSLT_PARAM, use.
1211         * doc/Makefile.in: Regenerate.
1212         * doc/xml/manual/policy_data_structures.xml: New, adapted from
1213           previous html-only instance in doc/html/ext/pb_ds.
1214         * doc/xml/manual/test_policy_data_structures.xml: New, same as above.
1215
1216         * doc/xml/spine.xml: Update copyright.
1217         * doc/xml/manual/spine.xml: Same.
1218         * doc/xml/manual/extensions.xml: Adjust set, chapter, sections.
1219         * doc/xml/manual/bitmap_allocator.xml: Same.
1220         * doc/xml/manual/mt_allocator.xml: Same.
1221
1222         Populate image directory.
1223         * doc/xml/images/(pbds_balls_and_bins.png,
1224         pbds_binary_priority_queue_random_int_push_timing_test_local.pdf,
1225         pbds_binary_priority_queue_random_int_push_timing_test_local.png,
1226         pbds_binary_priority_queue_random_int_push_timing_test_local.svg,
1227         pbds_cc_hash_random_int_find_timing_test_local.pdf,
1228         pbds_cc_hash_random_int_find_timing_test_local.png,
1229         pbds_cc_hash_random_int_find_timing_test_local.svg,
1230         pbds_cc_hash_random_int_subscript_timing_test_find_local.pdf,
1231         pbds_cc_hash_random_int_subscript_timing_test_find_local.png,
1232         pbds_cc_hash_random_int_subscript_timing_test_find_local.svg,
1233         pbds_cc_hash_random_int_subscript_timing_test_insert_local.pdf,
1234         pbds_cc_hash_random_int_subscript_timing_test_insert_local.png,
1235         pbds_cc_hash_random_int_subscript_timing_test_insert_local.svg,
1236         pbds_container_tag_hierarchy.pdf,
1237         pbds_container_tag_hierarchy.png,
1238         pbds_container_tag_hierarchy.svg,
1239         pbds_different_underlying_dss_1.png,
1240         pbds_different_underlying_dss_2.png,
1241         pbds_embedded_lists_1.png, pbds_embedded_lists_2.png,
1242         pbds_embedded_lists_3.png, pbds_exception_hierarchy.pdf,
1243         pbds_exception_hierarchy.png, pbds_exception_hierarchy.svg,
1244         pbds_gp_hash_random_int_find_timing_test_local.pdf,
1245         pbds_gp_hash_random_int_find_timing_test_local.png,
1246         pbds_gp_hash_random_int_find_timing_test_local.svg,
1247         pbds_gp_hash_random_int_subscript_timing_test_find_local.pdf,
1248         pbds_gp_hash_random_int_subscript_timing_test_find_local.png,
1249         pbds_gp_hash_random_int_subscript_timing_test_find_local.svg,
1250         pbds_gp_hash_random_int_subscript_timing_test_insert_local.pdf,
1251         pbds_gp_hash_random_int_subscript_timing_test_insert_local.png,
1252         pbds_gp_hash_random_int_subscript_timing_test_insert_local.svg,
1253         pbds_hash_policy_cd.png,
1254         pbds_hash_random_int_erase_mem_usage_test_local.pdf,
1255         pbds_hash_random_int_erase_mem_usage_test_local.png,
1256         pbds_hash_random_int_erase_mem_usage_test_local.svg,
1257         pbds_hash_ranged_hash_range_hashing_fns.png,
1258         pbds_hash_range_hashing_seq_diagram2.png,
1259         pbds_hash_range_hashing_seq_diagram.png,
1260         pbds_hash_zlob_random_int_find_timing_test_local.pdf,
1261         pbds_hash_zlob_random_int_find_timing_test_local.png,
1262         pbds_hash_zlob_random_int_find_timing_test_local.svg,
1263         pbds_insert_resize_sequence_diagram1.png,
1264         pbds_insert_resize_sequence_diagram2.png,
1265         pbds_insert_resize_sequence_diagram3.png,
1266         pbds_invalidation_guarantee_erase.png,
1267         pbds_invalidation_tag_hierarchy.pdf,
1268         pbds_invalidation_tag_hierarchy.png,
1269         pbds_invalidation_tag_hierarchy.svg, pbds_list_update.png,
1270         pbds_multimap_text_find_timing_test_large_s2p_hash_local.pdf,
1271         pbds_multimap_text_find_timing_test_large_s2p_hash_local.png,
1272         pbds_multimap_text_find_timing_test_large_s2p_hash_local.svg,
1273         pbds_multimap_text_find_timing_test_large_s2p_tree_local.pdf,
1274         pbds_multimap_text_find_timing_test_large_s2p_tree_local.png,
1275         pbds_multimap_text_find_timing_test_large_s2p_tree_local.svg,
1276         pbds_multimap_text_find_timing_test_small_s2p_hash_local.pdf,
1277         pbds_multimap_text_find_timing_test_small_s2p_hash_local.png,
1278         pbds_multimap_text_find_timing_test_small_s2p_hash_local.svg,
1279         pbds_multimap_text_find_timing_test_small_s2p_tree_local.pdf,
1280         pbds_multimap_text_find_timing_test_small_s2p_tree_local.png,
1281         pbds_multimap_text_find_timing_test_small_s2p_tree_local.svg,
1282         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.pdf,
1283         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
1284         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.svg,
1285         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.pdf,
1286         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
1287         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.svg,
1288         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.pdf,
1289         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
1290         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.svg,
1291         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.pdf,
1292         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.png,
1293         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.svg,
1294         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.pdf,
1295         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.png,
1296         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.svg,
1297         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.pdf,
1298         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.png,
1299         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.svg,
1300         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.pdf,
1301         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.png,
1302         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.svg,
1303         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.pdf,
1304         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.png,
1305         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.svg,
1306         pbds_node_invariants.png,
1307         pbds_pairing_priority_queue_text_push_pop_timing_test_local.pdf,
1308         pbds_pairing_priority_queue_text_push_pop_timing_test_local.png,
1309         pbds_pairing_priority_queue_text_push_pop_timing_test_local.svg,
1310         pbds_pairing_priority_queue_text_push_timing_test_local.pdf,
1311         pbds_pairing_priority_queue_text_push_timing_test_local.png,
1312         pbds_pairing_priority_queue_text_push_timing_test_local.svg,
1313         pbds_pat_trie.png, pbds_point_iterator_hierarchy.png,
1314         pbds_point_iterators_range_ops_1.png,
1315         pbds_point_iterators_range_ops_2.png,
1316         pbds_priority_queue_different_underlying_dss.png,
1317         pbds_priority_queue_random_int_push_pop_timing_test_local.pdf,
1318         pbds_priority_queue_random_int_push_pop_timing_test_local.png,
1319         pbds_priority_queue_random_int_push_pop_timing_test_local.svg,
1320         pbds_priority_queue_random_int_push_timing_test_local.pdf,
1321         pbds_priority_queue_random_int_push_timing_test_local.png,
1322         pbds_priority_queue_random_int_push_timing_test_local.svg,
1323         pbds_priority_queue_tag_hierarchy.pdf,
1324         pbds_priority_queue_tag_hierarchy.png,
1325         pbds_priority_queue_tag_hierarchy.svg,
1326         pbds_priority_queue_text_join_timing_test_local.pdf,
1327         pbds_priority_queue_text_join_timing_test_local.png,
1328         pbds_priority_queue_text_join_timing_test_local.svg,
1329         pbds_priority_queue_text_modify_down_timing_test_local.pdf,
1330         pbds_priority_queue_text_modify_down_timing_test_local.png,
1331         pbds_priority_queue_text_modify_down_timing_test_local.svg,
1332         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.pdf,
1333         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
1334         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.svg,
1335         pbds_priority_queue_text_modify_up_timing_test_local.pdf,
1336         pbds_priority_queue_text_modify_up_timing_test_local.png,
1337         pbds_priority_queue_text_modify_up_timing_test_local.svg,
1338         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.pdf,
1339         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
1340         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.svg,
1341         pbds_priority_queue_text_pop_mem_usage_test_local.pdf,
1342         pbds_priority_queue_text_pop_mem_usage_test_local.png,
1343         pbds_priority_queue_text_pop_mem_usage_test_local.svg,
1344         pbds_priority_queue_text_push_pop_timing_test_local.pdf,
1345         pbds_priority_queue_text_push_pop_timing_test_local.png,
1346         pbds_priority_queue_text_push_pop_timing_test_local.svg,
1347         pbds_priority_queue_text_push_timing_test_local.pdf,
1348         pbds_priority_queue_text_push_timing_test_local.png,
1349         pbds_priority_queue_text_push_timing_test_local.svg,
1350         pbds_rationale_null_node_updator.png,
1351         pbds_resize_policy_cd.png, pbds_restoring_node_invariants.png,
1352         pbds_simple_list.png,
1353         pbds_text_find_timing_test_hash_local.pdf,
1354         pbds_text_find_timing_test_hash_local.png,
1355         pbds_text_find_timing_test_hash_local.svg,
1356         pbds_text_find_timing_test_tree_like_local.pdf,
1357         pbds_text_find_timing_test_tree_like_local.png,
1358         pbds_text_find_timing_test_tree_like_local.svg,
1359         pbds_tree_node_invalidations.png,
1360         pbds_tree_node_invariants.png,
1361         pbds_tree_node_updator_policy_cd.png,
1362         pbds_tree_order_statistics_timing_test_local.pdf,
1363         pbds_tree_order_statistics_timing_test_local.png,
1364         pbds_tree_order_statistics_timing_test_local.svg,
1365         pbds_tree_split_join_timing_test_local.pdf,
1366         pbds_tree_split_join_timing_test_local.png,
1367         pbds_tree_split_join_timing_test_local.svg,
1368         pbds_tree_text_insert_timing_test_node_tree_local.pdf,
1369         pbds_tree_text_insert_timing_test_node_tree_local.png,
1370         pbds_tree_text_insert_timing_test_node_tree_local.svg,
1371         pbds_tree_text_insert_timing_test_pat_trie_local.pdf,
1372         pbds_tree_text_insert_timing_test_pat_trie_local.png,
1373         pbds_tree_text_insert_timing_test_pat_trie_local.svg,
1374         pbds_tree_text_insert_timing_test_vector_tree_local.pdf,
1375         pbds_tree_text_insert_timing_test_vector_tree_local.png,
1376         pbds_tree_text_insert_timing_test_vector_tree_local.svg,
1377         pbds_tree_text_lor_find_timing_test_local.pdf,
1378         pbds_tree_text_lor_find_timing_test_local.png,
1379         pbds_tree_text_lor_find_timing_test_local.svg,
1380         pbds_trie_node_updator_policy_cd.png,
1381         pbds_update_seq_diagram.png): Add.
1382
1383         * doc/html/ext/pb_ds: Remove.
1384         * doc/html/ext/pb_ds/(acks.html, assoc_container_tag_cd.png,
1385         assoc_container_tag_cd.svg, assoc_container_traits.html,
1386         assoc_design.html, assoc_examples.html,
1387         associative_container_tag.html, assoc_performance_tests.html,
1388         assoc_regression_tests.html, assoc_tests.html,
1389         balls_and_bins.png, basic_hash_table.html,
1390         basic_hash_tag.html, basic_invalidation_guarantee.html,
1391         basic_tree_assoc_container_const_node_iterator.html,
1392         basic_tree.html, basic_tree_tag.html, binary_heap_tag.html,
1393         binary_priority_queue_random_int_push_timing_test_gcc.png,
1394         binary_priority_queue_random_int_push_timing_test_local.png,
1395         binary_priority_queue_random_int_push_timing_test_msvc.png,
1396         binomial_heap_tag.html,
1397         ccgp_hash_random_int_subscript_timing_test_insert_gcc.png,
1398         ccgp_hash_random_int_subscript_timing_test_insert_local.png,
1399         ccgp_hash_random_int_subscript_timing_test_insert_msvc.png,
1400         cc_hash_max_collision_check_resize_trigger.html,
1401         cc_hash_random_int_find_timing_test_gcc.png,
1402         cc_hash_random_int_find_timing_test_local.png,
1403         cc_hash_random_int_find_timing_test_msvc.png,
1404         cc_hash_random_int_subscript_timing_test_find_gcc.png,
1405         cc_hash_random_int_subscript_timing_test_find_local.png,
1406         cc_hash_random_int_subscript_timing_test_find_msvc.png,
1407         cc_hash_random_int_subscript_timing_test_insert_gcc.png,
1408         cc_hash_random_int_subscript_timing_test_insert_local.png,
1409         cc_hash_random_int_subscript_timing_test_insert_msvc.png,
1410         cc_hash_table.html, cc_hash_tag.html, checked_by_tidy.gif
1411         concepts.html, contact.html, container_base.html,
1412         container_cd.png, container_cd.svg, container_tag.html,
1413         counter_lu_policy.html, design.html,
1414         different_underlying_dss.png, direct_mask_range_hashing.html,
1415         direct_mod_range_hashing.html, disclaimer.html, ds_gen.html,
1416         embedded_lists_1.png, embedded_lists_2.png,
1417         embedded_lists_3.png, examples.html, exceptions.html,
1418         gp_hash_random_int_find_timing_test_gcc.png,
1419         gp_hash_random_int_find_timing_test_local.png,
1420         gp_hash_random_int_find_timing_test_msvc.png,
1421         gp_hash_random_int_subscript_timing_test_find_gcc.png,
1422         gp_hash_random_int_subscript_timing_test_find_local.png,
1423         gp_hash_random_int_subscript_timing_test_find_msvc.png,
1424         gp_hash_random_int_subscript_timing_test_insert_gcc.png,
1425         gp_hash_random_int_subscript_timing_test_insert_local.png,
1426         gp_hash_random_int_subscript_timing_test_insert_msvc.png,
1427         gp_hash_table.html, gp_hash_tag.html,
1428         hash_based_containers.html, hash_exponential_size_policy.html,
1429         hash_load_check_resize_trigger.html, hash_policy_cd.png,
1430         hash_prime_size_policy.html,
1431         hash_random_int_erase_mem_usage_test_gcc.png,
1432         hash_random_int_erase_mem_usage_test.html,
1433         hash_random_int_erase_mem_usage_test_local.png,
1434         hash_random_int_erase_mem_usage_test_msvc.png,
1435         hash_random_int_find_find_timing_test.html,
1436         hash_random_int_subscript_find_timing_test.html,
1437         hash_random_int_subscript_insert_timing_test.html,
1438         hash_ranged_hash_range_hashing_fns.png,
1439         hash_range_hashing_seq_diagram2.png,
1440         hash_range_hashing_seq_diagram.png,
1441         hash_standard_resize_policy.html,
1442         hash_text_find_find_timing_test.html,
1443         hash_zlob_random_int_find_find_timing_test.html,
1444         hash_zlob_random_int_find_timing_test_gcc.png,
1445         hash_zlob_random_int_find_timing_test_local.png,
1446         hash_zlob_random_int_find_timing_test_msvc.png, index.html,
1447         insert_error.html, insert_resize_sequence_diagram1.png,
1448         insert_resize_sequence_diagram2.png,
1449         insert_resize_sequence_diagram3.png, interface.html,
1450         introduction.html, invalidation_guarantee_cd.png,
1451         invalidation_guarantee_erase.png, join_error.html,
1452         linear_probe_fn.html, list_update.html, list_update_tag.html,
1453         lu_based_containers.html, lu.png, misc.html, motivation.html,
1454         move_to_front_lu_policy.html,
1455         multimap_text_find_timing_test_large.html,
1456         multimap_text_find_timing_test_large_s2p_hash_gcc.png,
1457         multimap_text_find_timing_test_large_s2p_hash_local.png,
1458         multimap_text_find_timing_test_large_s2p_hash_msvc.png,
1459         multimap_text_find_timing_test_large_s2p_tree_gcc.png,
1460         multimap_text_find_timing_test_large_s2p_tree_local.png,
1461         multimap_text_find_timing_test_large_s2p_tree_msvc.png,
1462         multimap_text_find_timing_test_small.html,
1463         multimap_text_find_timing_test_small_s2p_hash_gcc.png,
1464         multimap_text_find_timing_test_small_s2p_hash_local.png,
1465         multimap_text_find_timing_test_small_s2p_hash_msvc.png,
1466         multimap_text_find_timing_test_small_s2p_tree_gcc.png,
1467         multimap_text_find_timing_test_small_s2p_tree_local.png,
1468         multimap_text_find_timing_test_small_s2p_tree_msvc.png,
1469         multimap_text_insert_mem_usage_test_large.html,
1470         multimap_text_insert_mem_usage_test_large_s2p_hash_gcc.png,
1471         multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
1472         multimap_text_insert_mem_usage_test_large_s2p_hash_msvc.png,
1473         multimap_text_insert_mem_usage_test_large_s2p_tree_gcc.png,
1474         multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
1475         multimap_text_insert_mem_usage_test_large_s2p_tree_msvc.png,
1476         multimap_text_insert_mem_usage_test_small.html,
1477         multimap_text_insert_mem_usage_test_small_s2p_hash_gcc.png,
1478         multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
1479         multimap_text_insert_mem_usage_test_small_s2p_hash_msvc.png,
1480         multimap_text_insert_mem_usage_test_small_s2p_tree_gcc.png,
1481         multimap_text_insert_mem_usage_test_small_s2p_tree_local.png,
1482         multimap_text_insert_mem_usage_test_small_s2p_tree_msvc.png,
1483         multimap_text_insert_timing_test_large.html,
1484         multimap_text_insert_timing_test_large_s2p_hash_gcc.png,
1485         multimap_text_insert_timing_test_large_s2p_hash_local.png,
1486         multimap_text_insert_timing_test_large_s2p_hash_msvc.png,
1487         multimap_text_insert_timing_test_large_s2p_tree_gcc.png,
1488         multimap_text_insert_timing_test_large_s2p_tree_local.png,
1489         multimap_text_insert_timing_test_large_s2p_tree_msvc.png,
1490         multimap_text_insert_timing_test_small.html,
1491         multimap_text_insert_timing_test_small_s2p_hash_gcc.png,
1492         multimap_text_insert_timing_test_small_s2p_hash_local.png,
1493         multimap_text_insert_timing_test_small_s2p_hash_msvc.png,
1494         multimap_text_insert_timing_test_small_s2p_tree_gcc.png,
1495         multimap_text_insert_timing_test_small_s2p_tree_local.png,
1496         multimap_text_insert_timing_test_small_s2p_tree_msvc.png,
1497         node_invariant_invalidations.png, node_invariants.png,
1498         null_hash_fn.html, null_lu_metadata.html,
1499         null_mapped_type.html, null_probe_fn.html,
1500         null_tree_node_update.html, null_trie_node_update.html,
1501         ov_tree_tag.html, pairing_heap_tag.html,
1502         pairing_priority_queue_text_push_pop_timing_test_gcc.png,
1503         pairing_priority_queue_text_push_pop_timing_test_local.png,
1504         pairing_priority_queue_text_push_pop_timing_test_msvc.png,
1505         pairing_priority_queue_text_push_timing_test_gcc.png,
1506         pairing_priority_queue_text_push_timing_test_local.png,
1507         pairing_priority_queue_text_push_timing_test_msvc.png,
1508         pat_trie.png, pat_trie_tag.html,
1509         point_invalidation_guarantee.html, point_iterators_cd.png,
1510         point_iterators_range_ops_1.png,
1511         point_iterators_range_ops_2.png, pq_container_traits.html,
1512         pq_design.html, pq_different_underlying_dss.png,
1513         pq_examples.html, pq_performance_tests.html,
1514         pq_regression_tests.html, pq_tests.html, prerequisites.html,
1515         priority_queue.html,
1516         priority_queue_random_int_push_pop_timing_test_gcc.png,
1517         priority_queue_random_int_push_pop_timing_test.html,
1518         priority_queue_random_int_push_pop_timing_test_local.png,
1519         priority_queue_random_int_push_pop_timing_test_msvc.png,
1520         priority_queue_random_int_push_timing_test_gcc.png,
1521         priority_queue_random_int_push_timing_test.html,
1522         priority_queue_random_int_push_timing_test_local.png,
1523         priority_queue_random_int_push_timing_test_msvc.png,
1524         priority_queue_tag_cd.png, priority_queue_tag_cd.svg,
1525         priority_queue_tag.html,
1526         priority_queue_text_join_timing_test_gcc.png,
1527         priority_queue_text_join_timing_test.html,
1528         priority_queue_text_join_timing_test_local.png,
1529         priority_queue_text_join_timing_test_msvc.png,
1530         priority_queue_text_modify_down_timing_test_gcc.png,
1531         priority_queue_text_modify_down_timing_test.html,
1532         priority_queue_text_modify_down_timing_test_local.png,
1533         priority_queue_text_modify_down_timing_test_msvc.png,
1534         priority_queue_text_modify_down_timing_test_pairing_thin_gcc.png,
1535         priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
1536         priority_queue_text_modify_down_timing_test_pairing_thin_msvc.png,
1537         priority_queue_text_modify_up_timing_test_gcc.png,
1538         priority_queue_text_modify_up_timing_test.html,
1539         priority_queue_text_modify_up_timing_test_local.png,
1540         priority_queue_text_modify_up_timing_test_msvc.png,
1541         priority_queue_text_modify_up_timing_test_pairing_thin_gcc.png,
1542         priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
1543         priority_queue_text_modify_up_timing_test_pairing_thin_msvc.png,
1544         priority_queue_text_pop_mem_usage_test_gcc.png,
1545         priority_queue_text_pop_mem_usage_test.html,
1546         priority_queue_text_pop_mem_usage_test_local.png,
1547         priority_queue_text_pop_mem_usage_test_msvc.png,
1548         priority_queue_text_push_pop_timing_test_gcc.png,
1549         priority_queue_text_push_pop_timing_test.html,
1550         priority_queue_text_push_pop_timing_test_local.png,
1551         priority_queue_text_push_pop_timing_test_msvc.png,
1552         priority_queue_text_push_timing_test_gcc.png,
1553         priority_queue_text_push_timing_test.html,
1554         priority_queue_text_push_timing_test_local.png,
1555         priority_queue_text_push_timing_test_msvc.png,
1556         PythonPoweredSmall.gif quadratic_probe_fn.html,
1557         random_int_find_find_timing_test_tree_gcc.png,
1558         random_int_find_find_timing_test_tree_local.png,
1559         random_int_find_find_timing_test_tree_msvc.png,
1560         range_invalidation_guarantee.html,
1561         rationale_null_node_updator.png, rb_tree_tag.html,
1562         rc_binomial_heap_tag.html, references.html, resize_error.html,
1563         resize_policy_cd.png, restoring_node_invariants.png,
1564         sample_probe_fn.html, sample_ranged_hash_fn.html,
1565         sample_ranged_probe_fn.html, sample_range_hashing.html,
1566         sample_resize_policy.html, sample_resize_trigger.html,
1567         sample_size_policy.html, sample_tree_node_update.html,
1568         sample_trie_access_traits.html, sample_trie_node_update.html,
1569         sample_update_policy.html, simple_list.png,
1570         splay_tree_tag.html, tests.html,
1571         text_find_timing_test_hash_gcc.png,
1572         text_find_timing_test_hash_local.png,
1573         text_find_timing_test_hash_msvc.png,
1574         text_find_timing_test_tree_like_gcc.png,
1575         text_find_timing_test_tree_like_local.png,
1576         text_find_timing_test_tree_like_msvc.png, thin_heap_tag.html,
1577         tree_based_containers.html, tree.html,
1578         tree_node_iterator.html, tree_node_updator_policy_cd.png,
1579         tree_order_statistics_node_update.html,
1580         tree_order_statistics_timing_test_gcc.png,
1581         tree_order_statistics_timing_test.html,
1582         tree_order_statistics_timing_test_local.png,
1583         tree_order_statistics_timing_test_msvc.png,
1584         tree_random_int_find_find_timing_test.html,
1585         tree_split_join_timing_test_gcc.png,
1586         tree_split_join_timing_test.html,
1587         tree_split_join_timing_test_local.png,
1588         tree_split_join_timing_test_msvc.png, tree_tag.html,
1589         tree_text_find_find_timing_test.html,
1590         tree_text_insert_timing_test.html,
1591         tree_text_insert_timing_test_node_tree_gcc.png,
1592         tree_text_insert_timing_test_node_tree_local.png,
1593         tree_text_insert_timing_test_node_tree_msvc.png,
1594         tree_text_insert_timing_test_pat_trie_gcc.png,
1595         tree_text_insert_timing_test_pat_trie_local.png,
1596         tree_text_insert_timing_test_pat_trie_msvc.png,
1597         tree_text_insert_timing_test_vector_tree_gcc.png,
1598         tree_text_insert_timing_test_vector_tree_local.png,
1599         tree_text_insert_timing_test_vector_tree_msvc.png,
1600         tree_text_lor_find_find_timing_test.html,
1601         tree_text_lor_find_timing_test_gcc.png,
1602         tree_text_lor_find_timing_test_local.png,
1603         tree_text_lor_find_timing_test_msvc.png,
1604         trie_based_containers.html, trie_const_node_iterator.html,
1605         trie.html, trie_node_iterator.html,
1606         trie_node_updator_policy_cd.png,
1607         trie_order_statistics_node_update.html,
1608         trie_prefix_search_node_update.html,
1609         trie_string_access_traits.html, trie_tag.html,
1610         trivial_iterator_tag.html, tutorial.html,
1611         update_policy_cd.png, update_seq_diagram.png): Remove.
1612
1613 2011-07-27  Paolo Carlini  <paolo.carlini@oracle.com>
1614
1615         PR c++/49813
1616         * include/c_global/cmath: Use _GLIBCXX_CONSTEXPR and constexpr.
1617
1618 2011-07-27  Jeffrey Yasskin  <jyasskin@google.com>
1619
1620         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Updated.
1621
1622 2011-07-25  Benjamin Kosnik  <bkoz@redhat.com>
1623
1624         * include/std/array (at): Remove constexpr when -fno-exceptions.
1625         * testsuite/23_containers/array/at_neg.cc: Test.
1626
1627 2011-07-25  Paolo Carlini  <paolo.carlini@oracle.com>
1628             Nathan Ridge  <zeratul976@hotmail.com>
1629
1630         PR libstdc++/49836
1631         * include/bits/stl_vector.h (vector<>::_M_emplace_back_aux):
1632         Declare.
1633         (vector<>::push_back(const value_type&)): Use it.
1634         * include/bits/vector.tcc: Define.
1635         (vector<>::emplace_back(_Args&&...)): Use it.
1636         * testsuite/util/testsuite_tr1.h (CopyConsOnlyType, MoveConsOnlyType):
1637         Add.
1638         * testsuite/23_containers/vector/modifiers/push_back/49836.cc: New.
1639         * testsuite/23_containers/deque/modifiers/push_back/49836.cc:
1640         Likewise.
1641         * testsuite/23_containers/deque/modifiers/push_front/49836.cc:
1642         Likewise.
1643         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1644         Adjust dg-error line number.
1645         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1646         Likewise.
1647         * testsuite/23_containers/vector/requirements/dr438/
1648         constructor_1_neg.cc: Likewise.
1649         * testsuite/23_containers/vector/requirements/dr438/
1650         constructor_2_neg.cc: Likewise.
1651
1652 2011-07-24  Paolo Carlini  <paolo.carlini@oracle.com>
1653
1654         * include/bits/hashtable_policy.h (_Prime_rehash_policy::_M_next_bkt,
1655         _M_bkt_for_elements, _M_need_rehash): Fix typos in the last commit.
1656
1657 2011-07-24  François Dumont  <francois.cppdevs@free.fr>
1658
1659         * include/bits/hashtable_policy.h (_Prime_rehash_policy): Use
1660         __builtin_floor rather than __builtin_ceil to compute next resize
1661         value.
1662         * testsuite/23_containers/unordered_set/hash_policy/load_factor.cc:
1663         New.
1664
1665 2011-07-22  Benjamin Kosnik  <bkoz@redhat.com>
1666             Daniel Krugler  <daniel.kruegler@googlemail.com>
1667
1668         * include/bits/move.h (move, forward): Mark constexpr.
1669         * include/bits/stl_pair.h (pair): Mark move ctors constexpr.
1670         * testsuite/20_util/pair/make_pair/constexpr.cc: New.
1671         * testsuite/20_util/pair/cons/constexpr.cc: Add tests.
1672
1673 2011-07-22  Ian Lance Taylor  <iant@google.com>
1674
1675         * fragment.am (CONFIG_CXXFLAGS): Add -frandom-seed.
1676         * Makefile.in: Rebuild.
1677         * doc/Makefile.in: Rebuild.
1678         * include/Makefile.in: Rebuild.
1679         * libsupc++/Makefile.in: Rebuild.
1680         * po/Makefile.in: Rebuild.
1681         * python/Makefile.in: Rebuild.
1682         * src/Makefile.in: Rebuild.
1683         * testsuite/Makefile.in: Rebuild.
1684
1685 2011-07-21  Benjamin Kosnik  <bkoz@redhat.com>
1686
1687         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Move...
1688         * testsuite/ext/pb_ds/regression/tree_set_rand.cc: ... here.
1689         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: Move...
1690         * testsuite/ext/pb_ds/regression/tree_set_rand_debug.cc: ... here.
1691         * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Move...
1692         * testsuite/ext/pb_ds/regression/tree_map_rand.cc: ... here.
1693         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: Move...
1694         * testsuite/ext/pb_ds/regression/tree_map_rand_debug.cc: ... here.
1695
1696         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Move...
1697         * testsuite/ext/pb_ds/regression/trie_set_rand.cc: ... here.
1698         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: Move...
1699         * testsuite/ext/pb_ds/regression/trie_set_rand_debug.cc: ... here.
1700         * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Move...
1701         * testsuite/ext/pb_ds/regression/trie_map_rand.cc: ... here.
1702         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: Move...
1703         * testsuite/ext/pb_ds/regression/trie_map_rand_debug.cc: ... here.
1704
1705         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand.cc: Move.
1706         * testsuite/ext/pb_ds/regression/list_update_set_rand.cc: ...here.
1707         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
1708         Move...
1709         * testsuite/ext/pb_ds/regression/list_update_set_rand_debug.cc: ...here.
1710         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Move...
1711         * testsuite/ext/pb_ds/regression/list_update_map_rand.cc: ...here.
1712         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
1713         Move...
1714         * testsuite/ext/pb_ds/regression/list_update_map_rand_debug.cc: ...here.
1715
1716         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Move...
1717         * testsuite/ext/pb_ds/regression/hash_set_rand.cc: ...here.
1718         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: Move...
1719         * testsuite/ext/pb_ds/regression/hash_set_rand_debug.cc: ...here.
1720
1721         * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Move...
1722         * testsuite/ext/pb_ds/regression/hash_map_rand.cc: ...here.
1723         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: Move...
1724         * testsuite/ext/pb_ds/regression/hash_map_rand_debug.cc: ...here.
1725
1726 2011-07-21  François Dumont  <francois.cppdevs@free.fr>
1727
1728         * include/debug/safe_unordered_sequence.h,
1729         safe_unordered_sequence.tcc: Rename respectively in...
1730         * include/debug/safe_unordered_container.h,
1731         safe_unordered_container.tcc: ...those. _Safe_unordered_sequence
1732         rename _Safe_unordered_container.
1733         * include/debug/safe_unordered_base.h: _Safe_unordered_sequence_base
1734         rename _Safe_unordered_container_base.
1735         * include/debug/unordered_map, unordered_set: Adapt to previous
1736         modifications.
1737         * config/abi/pre/gnu.ver: Likewise.
1738         * src/debug.cc: Likewise.
1739         * include/Makefile.am: Likewise.
1740         * include/Makefile.in: Regenerate.
1741
1742 2011-07-21  Paolo Carlini  <paolo.carlini@oracle.com>
1743
1744         * include/std/mutex (timed_mutex, recursive_timed_mutex): Update
1745         to use steady_clock instead of monotonic_clock.
1746         * config/abi/pre/gnu.ver: Export steady_clock::now.
1747
1748 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
1749             Daniel Krugler  <daniel.kruegler@googlemail.com>
1750
1751         * include/std/array (array::at, array::operator[]): Mark constexpr.
1752         * testsuite/23_containers/array/requirements/
1753         constexpr_element_access.cc: Add.
1754
1755 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
1756             Daniel Krugler  <daniel.kruegler@googlemail.com>
1757
1758         * include/std/chrono: (system_clock::is_steady): Update to N3291
1759         from is_monotonic.
1760         (time_point): Mark nonmember arithmetic operators constexpr.
1761         * src/chrono.cc: Modify for above.
1762         * src/compatibility-c++0x.cc: Same.
1763         * testsuite/20_util/time_point/nonmember/constexpr.cc: New.
1764         * testsuite/20_util/time_point/1.cc: Modify.
1765         * testsuite/20_util/system_clock/constexpr_data.cc: Modify.
1766         * testsuite/20_util/system_clock/1.cc: Modify.
1767         * testsuite/20_util/monotonic_clock/constexpr_data.cc: Move to...
1768         * testsuite/20_util/steady_clock/constexpr_data.cc: ...here.
1769         * testsuite/30_threads/condition_variable/members/2.cc: Modify.
1770         * testsuite/30_threads/condition_variable_any/members/2.cc: Modify.
1771
1772 2011-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
1773
1774         * include/std/system_error: Use noexcept.
1775         * src/system_error.cc: Likewise.
1776         * testsuite/19_diagnostics/error_condition/modifiers/39881.cc: Adjust.
1777         * testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
1778         * testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
1779         * testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
1780         * testsuite/util/testsuite_error.h: Likewise.
1781
1782         * include/std/system_error (error_code::error_code(_ErrorCodeEnum)):
1783         Use enable_if on template parameter default.
1784         (error_condition::error_condition(_ErrorConditionEnum)): Likewise.
1785
1786 2011-07-20  Ed Smith-Rowland  <3dw4rd@verizon.net>
1787
1788         * include/precompiled/stdc++.h: Add scoped_allocator.
1789
1790 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
1791
1792         * include/std/bitset (operator[]): Make constexpr.
1793         * testsuite/23_containers/bitset/operations/constexpr.cc: New.
1794
1795 2011-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
1796
1797         * include/debug/safe_local_iterator.h (_Safe_local_iterator<>::
1798         _Safe_local_iterator(const _Iterator&, size_type, const _Sequence*)):
1799         Fix typo.
1800
1801 2011-07-19  François Dumont  <francois.cppdevs@free.fr>
1802
1803         * include/debug/safe_unordered_base.h, safe_unordered_sequence.h,
1804         safe_unordered_sequence.tcc, safe_local_iterator.h,
1805         safe_local_iterator.tcc: New, support for unordered sequence safe
1806         local iterators.
1807         * include/Makefile.am: Add previous files.
1808         * include/Makefile.in: Regenerate.
1809         * include/debug/unordered_map, unordered_set: Implement
1810         _Safe_unordered_sequence and expose _Safe_local_iterator.
1811         * include/debug/safe_iterator.h, safe_iterator.tcc: Refactor
1812         _Safe_iterator::_M_get_distance static method to expose it as
1813         __get_distance function and use it in _Safe_local_iterator type.
1814         * include/debug/formatter.h: Add __msg_local_iter_compare_bad
1815         _Debug_msg_id enum entry to notify invalid comparison between local
1816         iterators from different buckets. Add _Parameter constructor from
1817         _Safe_local_iterator.
1818         * include/debug/functions.h: Add __valid_range overload for
1819         _Safe_local_iterator.
1820         * src/debug.cc: Add _Safe_unordered_sequence_base and
1821         _Safe_local_iterator_base methods implementations.
1822         * config/abi/pre/gnu.ver: Add export of some
1823         _Safe_unordered_sequence_base and _Safe_local_iterator_base methods.
1824         * testsuite/util/debug/checks.h: Add use_invalid_iterator function to
1825         simulate use of a singular iterator.
1826         * testsuite/util/debug/unordered_checks.h: New, several functions
1827         to simulate classic invalid usage of unordered sequence local
1828         iterators.
1829         * testsuite/23_containers/unordered_map/debug/
1830         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
1831         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
1832         invalid_local_iterator_compare_neg.cc: New.
1833         * testsuite/23_containers/unordered_multimap/debug/
1834         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
1835         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
1836         invalid_local_iterator_compare_neg.cc: New.
1837         * testsuite/23_containers/unordered_set/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_multiset/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
1846 2011-07-18  Paolo Carlini  <paolo.carlini@oracle.com>
1847
1848         PR libstdc++/48430
1849         * include/bits/shared_ptr.h (struct hash<shared_ptr<>>): Use
1850         __hash_base.
1851         * include/bits/unique_ptr.h (struct hash<unique_ptr<>>): Likewise.
1852
1853 2011-07-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1854
1855         * crossconfig.m4 (*-netware): Remove.
1856         * configure: Regenerate.
1857
1858 2011-07-15  Yufeng Zhang  <yufeng.zhang@arm.com>
1859
1860         * config/locale/newlib/ctype_members.cc: New file.
1861         * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add a new C locale
1862         kind: newlib.  Configure to use the newlib specific
1863         ctype_members.cc when with_newlib is enabled.
1864         * configure: Regenerate.
1865
1866 2011-07-15  Paolo Carlini  <paolo.carlini@oracle.com>
1867             Jakub Jelinek  <jakub@redhat.com>
1868
1869         PR libstdc++/49745
1870         * acinclude.m4 ([GLIBCXX_CHECK_GTHREADS]): Check separately for
1871         _POSIX_TIMEOUTS and define _GTHREADS_USE_MUTEX_TIMEDLOCK.
1872         * libsupc++/guard.cc: Include <unistd.h>.
1873         * testsuite/17_intro/headers/c++1998/49745.cc: New.
1874         * configure: Regenerate.
1875         * config.h.in: Likewise.
1876
1877 2011-07-11  Paolo Carlini  <paolo.carlini@oracle.com>
1878
1879         PR libstdc++/49559
1880         * include/bits/stl_algo.h (__move_merge_backward): Remove.
1881         (__move_merge_adaptive, __move_merge_adaptive_backward): New.
1882         (__merge_adaptive): Use the latter two.
1883         (__rotate_adaptive): Avoid self move-assignment.
1884         * include/bits/stl_algobase.h (move_backward): Fix comment.
1885         * testsuite/25_algorithms/stable_sort/49559.cc: New.
1886         * testsuite/25_algorithms/inplace_merge/49559.cc: Likewise.
1887         * testsuite/25_algorithms/inplace_merge/moveable.cc: Extend.
1888         * testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise.
1889         * testsuite/util/testsuite_rvalref.h (rvalstruct::operator=
1890         (rvalstruct&&)): Check for self move-assignment.
1891
1892 2011-07-11  Paolo Carlini  <paolo.carlini@oracle.com>
1893
1894         * testsuite/util/testsuite_allocator.h (propagating_allocator<>::
1895         operator=(const propagating_allocator<>&)): Retun *this.
1896
1897 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1898
1899         * include/Makefile.am: Add new header.
1900         * include/Makefile.in: Regenerate.
1901         * include/std/scoped_allocator: New.
1902         * doc/xml/manual/status_cxx200x.xml: Update.
1903         * testsuite/20_util/scoped_allocator/1.cc: New.
1904         * testsuite/20_util/scoped_allocator/propagation.cc: New.
1905         * testsuite/20_util/scoped_allocator/requirements/typedefs.cc: New.
1906         * testsuite/20_util/scoped_allocator/requirements/
1907         explicit_instantiation.cc: New.
1908
1909 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1910
1911         * include/bits/stl_vector.h: Use new allocator model in C++0x mode.
1912         * include/bits/vector.tcc: Likewise.
1913         * testsuite/util/testsuite_allocator.h (propagating_allocator): Define.
1914         * testsuite/23_containers/vector/allocator/copy_assign.cc: New.
1915         * testsuite/23_containers/vector/allocator/noexcept.cc: New.
1916         * testsuite/23_containers/vector/allocator/copy.cc: New.
1917         * testsuite/23_containers/vector/allocator/swap.cc: New.
1918         * testsuite/23_containers/vector/allocator/move_assign.cc: New.
1919         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1920         Adjust dg-error line numbers.
1921         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1922         Likewise.
1923         * testsuite/23_containers/vector/requirements/dr438/
1924         constructor_1_neg.cc: Likewise.
1925         * testsuite/23_containers/vector/requirements/dr438/
1926         constructor_2_neg.cc: Likewise.
1927
1928 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1929
1930         * include/ext/alloc_traits.h (__allocator_always_compares_equal): New
1931         trait, provide partial specializations for known allocators.
1932         (__alloc_traits::construct, __alloc_traits::destroy): Overload for
1933         non-standard pointer types.
1934         (__alloc_traits::_S_always_equal): New trait for use with noexcept.
1935         (__alloc_traits::_S_nothrow_move): Likewise.
1936         (__alloc_traits::_S_nothrow_swap): Likewise.
1937
1938 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1939
1940         * include/ext/cast.h: Fix typo in include guard.
1941         * include/ext/pointer.h (_Unqualified_type): Remove redundant
1942         partial specializations for volatile types. Fix typos in comments.
1943         (pointer_traits<_Pointer_adaptor<Tp>>::pointer_to): Define.
1944
1945 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1946
1947         PR libstdc++/49668
1948         * include/std/functional (__bind_simple): Define.
1949         * include/std/future (_Task_setter): Parameterize by type of result
1950         pointer instead of state object.
1951         (_S_task_setter): Type deduction helper.
1952         (_Task_state): Use _S_task_setter and __bind_simple.
1953         (_Deferred_state, _Async_state): Store call wrapper directly not as
1954         std::function. Use _S_task_setter and __bind_simple.
1955         (_S_make_deferred_state, _S_make_async_state): Type deduction helpers.
1956         (async): Use new functions and __bind_simple.
1957         * include/std/mutex (call_once): Use __bind_simple.
1958         * include/std/thread (thread): Likewise. Remove unused headers.
1959         * src/thread.cc: Add header.
1960         * testsuite/30_threads/async/49668.cc: New.
1961         * testsuite/30_threads/call_once/49668.cc: New.
1962         * testsuite/30_threads/thread/cons/49668.cc: New.
1963         * testsuite/30_threads/thread/cons/moveable.cc: Remove unused bool.
1964
1965 2011-07-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1966
1967         * configure.host (abi_baseline_subdir_switch): Describe.
1968         Provide default.
1969         (*-*-solaris2.[89], *-*-solaris2.1[0-9]): Override.
1970         * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Substitute
1971         baseline_subdir_switch.
1972         * testsuite/Makefile.am (site.exp): Emit it.
1973         (baseline_subdir): Use it.
1974         * testsuite/libstdc++-abi/abi.exp: Use it.
1975         * configure: Regenerate.
1976         * Makefile.in: Regenerate.
1977         * doc/Makefile.in: Regenerate.
1978         * include/Makefile.in: Regenerate.
1979         * libsupc++/Makefile.in: Regenerate.
1980         * po/Makefile.in: Regenerate.
1981         * python/Makefile.in: Regenerate.
1982         * src/Makefile.in: Regenerate.
1983         * testsuite/Makefile.in: Regenerate.
1984
1985 2011-06-29  François Dumont  <francois.cppdevs@free.fr>
1986
1987         * include/debug/set.h, unordered_map, multiset.h, forward_list,
1988         unordered_set, vector, deque, string, list, multimap.h: Remove
1989         base class default constructor calls.
1990         * include/debug/map.h: Likewise and cleanup several redefinition of
1991         base iterator typedef.
1992
1993 2011-06-29  Nathan Sidwell  <nathan@codesourcery.com>
1994
1995         * libsupc++/eh_arm.c (__cxa_type_match): Construct address of
1996         thrown object here.  Return succeded_with_ptr_to_base for all
1997         pointer cases.
1998
1999 2011-06-23  Jonathan Wakely  <jwakely.gcc@gmail.com>
2000
2001         * testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Fix for
2002         C++0x mode.
2003         * testsuite/25_algorithms/sort/35588.cc: Likewise.
2004         * testsuite/26_numerics/headers/complex/synopsis.cc: Likewise.
2005
2006 2011-06-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
2007
2008         * testsuite/20_util/bind/socket.cc: Use variable and remove attribute.
2009
2010 2011-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
2011
2012         * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Avoid -Wall
2013         warning.
2014
2015 2011-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
2016
2017         * testsuite/20_util/reference_wrapper/invoke.cc: Avoid -Wall warnings.
2018         * testsuite/20_util/reference_wrapper/typedefs-3.cc: Likewise.
2019         * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
2020         * testsuite/20_util/allocator_traits/members/allocate_hint.cc:
2021         Likewise.
2022         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2023         * testsuite/20_util/bind/socket.cc: Likewise.
2024         * testsuite/20_util/pointer_traits/pointer_to.cc: Likewise.
2025         * testsuite/util/testsuite_random.h: Likewise.
2026
2027 2011-06-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
2028
2029         * include/Makefile.am: Add alloc_traits.h headers.
2030         * include/Makefile.in: Regenerate.
2031         * include/std/memory: Include uses_allocator.h explicitly.
2032         * include/bits/allocator.h (allocator_traits): Move to ...
2033         * include/bits/alloc_traits.h: New header.
2034         * include/ext/alloc_traits.h (__alloc_traits): Extension to provide
2035         a common allocator interface for C++98 and C++0x.
2036         * include/bits/stl_construct.h: Use __alloc_traits.
2037         * include/bits/stl_uninitialized.h: Likewise.
2038
2039 2011-06-22  Daniel Krugler  <daniel.kruegler@googlemail.com>
2040             Paolo Carlini  <paolo.carlini@oracle.com>
2041
2042         * include/bits/move.h (__is_nothrow_swappable): Add.
2043         (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Use noexcept.
2044         * include/bits/algorithmfwd.h: Adjust.
2045         * testsuite/25_algorithms/swap/noexcept.cc: New.
2046
2047 2011-06-21  Jakub Jelinek  <jakub@redhat.com>
2048
2049         * testsuite/Makefile.am (check_DEJAGNU_normal_targets): Add
2050         check-DEJAGNUnormal[4-9].
2051         (check-DEJAGNU): Split into 10 jobs for parallel testing instead of 4.
2052         * testsuite/Makefile.in: Regenerated.
2053
2054 2011-06-20  Daniel Krugler  <daniel.kruegler@googlemail.com>
2055             Paolo Carlini  <paolo.carlini@oracle.com>
2056
2057         * include/std/tuple (__conv_types, __one_by_one_convertible,
2058         __all_convertible): Add.
2059         (tuple): Use the latter.
2060         (tuple<_T1>): Remove.
2061         * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error
2062         line number.
2063         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
2064
2065 2011-06-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
2066
2067         * include/bits/ptr_traits.h (pointer_traits<T*>::pointer_to): Use
2068         noexcept.
2069
2070 2011-06-14  Paolo Carlini  <paolo.carlini@oracle.com>
2071
2072         * include/std/valarray (~valarray): Use noexcept.
2073         * include/bits/unique_ptr.h (~unique_ptr): Likewise.
2074         * testsuite/26_numerics/valarray/noexcept_move_construct.cc: New.
2075         * testsuite/20_util/shared_ptr/cons/noexcept_move_construct.cc:
2076         Likewise.
2077         * testsuite/20_util/unique_ptr/cons/noexcept_move_construct.cc:
2078         Likewise.
2079         * testsuite/20_util/weak_ptr/cons/noexcept_move_construct.cc:
2080         Likewise.
2081
2082 2011-06-14  Paolo Carlini  <paolo.carlini@oracle.com>
2083
2084         * include/std/functional: Use noexcept.
2085         * include/bits/stl_tempbuf.h: Likewise.
2086
2087 2011-06-12  François Dumont  <francois.cppdevs@free.fr>
2088             Paolo Carlini  <paolo.carlini@oracle.com>
2089
2090         * include/bits/allocator.h (__shrink_to_fit): Rename to
2091         __shrink_to_fit_aux, fix.
2092         * include/bits/stl_vector.h (_M_shrink_to_fit): Declare.
2093         (shrink_to_fit): Use the latter.
2094         * include/debug/vector (shrink_to_fit): Likewise.
2095         * include/bits/vector.tcc (_M_shrink_to_fit): Define.
2096         * include/bits/stl_deque.h (_M_shrink_to_fit): Declare.
2097         (shrink_to_fit): Use the latter.
2098         * include/debug/deque (shrink_to_fit): Likewise.
2099         * include/bits/deque.tcc (_M_shrink_to_fit): Define.
2100         * include/bits/vector.tcc (vector<bool>::_M_reallocate): Add.
2101         * include/bits/stl_bvector.h (_M_shrink_to_fit): Declare.
2102         (shrink_to_fit): Use the latter.
2103         (reserve): Use _M_reallocate, move inline.
2104         (_Bvector_base<>::_S_nword): Add, use it throughout.
2105         * include/debug/string (shrink_to_fit): Redo.
2106         * include/ext/vstring.h (shrink_to_fit): Optimize.
2107         * include/bits/basic_string.h (shrink_to_fit): Likewise.
2108         * testsuite/21_strings/debug/shrink_to_fit.cc: New.
2109         * testsuite/23_containers/vector/debug/shrink_to_fit.cc: Likewise.
2110         * testsuite/23_containers/vector/debug/bool/shrink_to_fit.cc:
2111         Likewise.
2112         * testsuite/23_containers/vector/bool/capacity/shrink_to_fit.cc:
2113         Likewise.
2114         * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
2115
2116 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2117
2118         * include/ext/extptr_allocator.h (construct, destroy): Fix for C++0x
2119         mode by overloading to take allocator's pointer type.
2120         * testsuite/23_containers/vector/ext_pointer/types/2.cc: New.
2121         * testsuite/23_containers/vector/ext_pointer/explicit_instantiation/
2122         2.cc: New.
2123
2124 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2125
2126         * testsuite/20_util/allocator_traits/requirements/
2127         explicit_instantiation.cc: Add another instantiation.
2128
2129 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2130
2131         * testsuite/20_util/allocator_traits/requirements/typedefs.cc: Check
2132         for allocator_type and value_type.
2133
2134 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2135
2136         * testsuite/30_threads/packaged_task/uses_allocator.cc: New.
2137         * testsuite/30_threads/promise/uses_allocator.cc: Likewise.
2138
2139 2011-06-10  Paolo Carlini  <paolo.carlini@oracle.com>
2140
2141         * include/ext/throw_allocator.h: Use noexcept.
2142         * include/ext/pool_allocator.h: Likewise.
2143         * include/ext/bitmap_allocator.h: Likewise.
2144         * include/ext/new_allocator.h: Likewise.
2145         * include/ext/malloc_allocator.h: Likewise.
2146         * include/ext/array_allocator.h: Likewise.
2147         * include/ext/mt_allocator.h: Likewise.
2148         * include/ext/extptr_allocator.h: Likewise.
2149         * testsuite/util/testsuite_allocator.h: Likewise; do not include
2150         <cassert> directly, include <testsuite_hooks.h> instead.
2151
2152 2011-06-10  Benjamin Kosnik  <bkoz@redhat.com>
2153
2154         * include/ext/pb_ds/*: Doxygen markup redo.
2155         * include/Makefile.am: Fold in constructors_destructor_fn_imps.hpp.
2156         * include/Makefile.in: Regenerate.
2157
2158 2011-06-10  Jason Merrill  <jason@redhat.com>
2159
2160         * testsuite/20_util/bind/ref_neg.cc: Remove wrong test lines.
2161
2162         * testsuite/20_util/bind/ref_neg.cc: Remove dg-excess-errors,
2163         fix dg-error markup.
2164
2165 2011-06-09  Jason Merrill  <jason@redhat.com>
2166
2167         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust.
2168
2169         * testsuite/lib/prune.exp (libstdc++-dg-prune): Prune notes.
2170         * testsuite/20_util/duration/cons/1_neg.cc: Remove dg-excess-errors.
2171         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
2172         * testsuite/20_util/forward/1_neg.cc: Likewise.
2173         * testsuite/20_util/function/cmp/cmp_neg.cc: Likewise.
2174         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2175         * testsuite/20_util/reference_wrapper/ref_neg.cc: Likewise.
2176         * testsuite/20_util/tuple/comparison_operators/35480_neg.cc: Likewise.
2177         * testsuite/tr1/6_containers/tuple/comparison_operators/35480_neg.cc:
2178         Likewise.
2179         * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
2180         * testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise.
2181         * testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc:
2182         Likewise.
2183         * testsuite/20_util/unique_ptr/cons/auto_ptr_neg.cc: Likewise.
2184         * testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: Likewise.
2185         * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc:
2186         Likewise.
2187         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
2188         auto_ptr_rvalue_neg.cc: Likewise.
2189         * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc:
2190         Likewise.
2191         * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
2192         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
2193         Likewise.
2194         * testsuite/23_containers/deque/requirements/dr438/
2195         constructor_1_neg.cc: Likewise.
2196         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
2197         Likewise.
2198         * testsuite/23_containers/forward_list/requirements/dr438/
2199         assign_neg.cc: Likewise.
2200         * testsuite/23_containers/forward_list/requirements/dr438/
2201         constructor_1_neg.cc: Likewise.
2202         * testsuite/23_containers/forward_list/requirements/dr438/
2203         constructor_2_neg.cc: Likewise.
2204         * testsuite/23_containers/forward_list/requirements/dr438/
2205         insert_neg.cc: Likewise.
2206         * testsuite/23_containers/list/requirements/dr438/
2207         assign_neg.cc: Likewise.
2208         * testsuite/23_containers/list/requirements/dr438/
2209         constructor_1_neg.cc: Likewise.
2210         * testsuite/23_containers/list/requirements/dr438/
2211         constructor_2_neg.cc: Likewise.
2212         * testsuite/23_containers/list/requirements/dr438/
2213         insert_neg.cc: Likewise.
2214         * testsuite/23_containers/vector/requirements/dr438/
2215         assign_neg.cc: Likewise.
2216         * testsuite/23_containers/vector/requirements/dr438/
2217         constructor_1_neg.cc: Likewise.
2218         * testsuite/23_containers/vector/requirements/dr438/
2219         constructor_2_neg.cc: Likewise.
2220         * testsuite/23_containers/vector/requirements/dr438/
2221         insert_neg.cc: Likewise.
2222         * testsuite/23_containers/map/operators/1_neg.cc: Likewise.
2223         * testsuite/29_atomics/atomic_integral/operators/
2224         bitwise_neg.cc: Likewise.
2225         * testsuite/decimal/mixed-mode-arith_neg.cc: Likewise.
2226         * testsuite/decimal/mixed-mode-cmp_neg.cc: Likewise.
2227         * testsuite/decimal/operator_neg.cc: Likewise.
2228
2229 2011-06-09  Simon Baldwin  <simonb@google.com>
2230
2231         * scripts/extract_symvers.in: Handle processor/OS specific or
2232         unknown symbol binding strings from readelf.
2233
2234 2011-06-09  Paolo Carlini  <paolo.carlini@oracle.com>
2235
2236         * include/std/type_traits (__is_copy_assignable_impl,
2237         __is_nt_copy_assignable_impl): Fix typo.
2238
2239 2011-06-08  Paolo Carlini  <paolo.carlini@oracle.com>
2240
2241         * include/ext/extptr_allocator.h: Include <ext/numeric_traits.h>
2242         instead of <limits>.
2243         * include/bits/allocator.h: Likewise.
2244
2245         * include/std/chrono (duration_values<>::min): Call lowest, not min.
2246
2247 2011-06-08  Paolo Carlini  <paolo.carlini@oracle.com>
2248
2249         * include/bits/allocator.h (__shrink_to_fit): Simplify.
2250         * include/bits/stl_vector.h (vector<>::shrink_to_fit): Adjust.
2251         * include/bits/stl_deque.h: Likewise.
2252         * include/bits/stl_bvector.h: Likewise.
2253
2254 2011-06-07  Jason Merrill  <jason@redhat.com>
2255
2256         * testsuite/lib/prune.exp: s/required/instantiated/.
2257         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2258         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
2259         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
2260         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
2261         * testsuite/20_util/forward/1_neg.cc: Likewise.
2262         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
2263         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2264         Likewise.
2265         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
2266         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2267         * testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Likewise.
2268         * testsuite/ext/ext_pointer/1_neg.cc: Likewise.
2269         * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Likewise.
2270         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Likewise.
2271         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
2272         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
2273         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
2274         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
2275         shared_ptr_neg.cc: Likewise.
2276
2277 2011-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
2278
2279         * include/bits/move.h (struct __move_if_noexcept_cond): Add.
2280         (move_if_noexcept): Use the latter.
2281         * include/bits/stl_iterator.h (__make_move_if_noexcept_iterator,
2282         _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR): Add.
2283         * include/bits/stl_uninitialized.h
2284         (__uninitialized_move_if_noexcept_a): Add.
2285         * include/bits/vector.tcc (vector<>::reserve): Use
2286         _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR.
2287         (vector<>::_M_insert_aux, _M_fill_insert, _M_default_append,
2288         _M_range_insert): Use __uninitialized_move_if_noexcept_a.
2289         * testsuite/util/testsuite_rvalref.h (throwing_move_constructor):
2290         Add.
2291         (copycounter::copycounter(copycounter&&)): Use noexcept.
2292         * testsuite/23_containers/vector/modifiers/moveable2.cc: New.
2293         * testsuite/23_containers/vector/capacity/resize/moveable2.cc:
2294         Likewise.
2295         * testsuite/23_containers/vector/capacity/reserve/moveable2.cc:
2296         Likewise.
2297
2298 2011-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
2299
2300         PR libstdc++/49293
2301         * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: Tweak
2302         for glibc 2.14.
2303         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
2304
2305 2011-06-06  Paolo Carlini  <paolo.carlini@oracle.com>
2306
2307         * include/bits/move.h (move_if_noexcept): Use __and_ and __not_.
2308
2309 2011-06-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
2310
2311         * include/bits/ptr_traits.h (pointer_traits): Fix typos.
2312         * include/ext/pointer.h (pointer_traits): Add partial specialization
2313         for _Pointer_adapter.
2314
2315 2011-06-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
2316
2317         * testsuite/util/testsuite_allocator.h (tracker_allocator::construct):
2318         Update to C++0x definition using type to construct as template
2319         parameter.
2320         (tracker_allocator::destroy): Likewise for type to destroy.
2321         (uneq_allocator::construct, uneq_allocator::destroy): Likewise.
2322
2323 2011-06-01  Paolo Carlini  <paolo.carlini@oracle.com>
2324
2325         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
2326         Use std::move on the allocator, use noexcept.
2327         (_Hashtable<>::~_Hashtable): Use noexcept.
2328         * include/bits/stl_list.h: Likewise.
2329         * include/bits/forward_list.h: Likewise.
2330         * include/bits/stl_vector.h: Likewise.
2331         * include/bits/stl_bvector.h: Likewise.
2332         * include/bits/stl_map.h (map<>::map(map&&)): Use noexcept.
2333         * include/bits/stl_set.h: Likewise.
2334         * include/bits/stl_multimap.h: Likewise.
2335         * include/bits/stl_multiset.h: Likewise.
2336         * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(_Rb_tree&&)): Use
2337         std::move on the allocator.
2338         (_Rb_tree<>::~_Rb_tree): Use noexcept.
2339         * include/bits/stl_deque.h: Likewise.
2340         * include/bits/basic_string.h (basic_string<>::~basic_string): Use
2341         noexcept.
2342         * include/ext/vstring.h (__versa_string<>::~__versa_string): Likewise.
2343         * include/debug/set.h: Adjust.
2344         * include/debug/unordered_map: Likewise.
2345         * include/debug/multiset.h: Likewise.
2346         * include/debug/forward_list: Likewise.
2347         * include/debug/vector: Likewise.
2348         * include/debug/unordered_set: Likewise.
2349         * include/debug/deque: Likewise.
2350         * include/debug/map.h: Likewise.
2351         * include/debug/string: Likewise.
2352         * include/debug/list: Likewise.
2353         * include/debug/multimap.h: Likewise.
2354         * include/profile/set.h: Likewise.
2355         * include/profile/unordered_map: Likewise.
2356         * include/profile/multiset.h: Likewise.
2357         * include/profile/forward_list: Likewise.
2358         * include/profile/unordered_set: Likewise.
2359         * include/profile/vector: Likewise.
2360         * include/profile/deque: Likewise.
2361         * include/profile/map.h: Likewise.
2362         * include/profile/list: Likewise.
2363         * include/profile/multimap.h: Likewise.
2364         * testsuite/21_strings/basic_string/cons/wchar_t/
2365         noexcept_move_construct.cc: New.
2366         * testsuite/21_strings/basic_string/cons/char/
2367         noexcept_move_construct.cc: Likewise.
2368         * testsuite/ext/vstring/cons/noexcept_move_construct.cc: Likewise.
2369         * testsuite/23_containers/unordered_map/cons/
2370         noexcept_move_construct.cc: Likewise.
2371         * testsuite/23_containers/multimap/cons/
2372         noexcept_move_construct.cc: Likewise.
2373         * testsuite/23_containers/set/cons/
2374         noexcept_move_construct.cc: Likewise.
2375         * testsuite/23_containers/unordered_multimap/cons/
2376         noexcept_move_construct.cc: Likewise.
2377         * testsuite/23_containers/forward_list/cons/
2378         noexcept_move_construct.cc: Likewise.
2379         * testsuite/23_containers/unordered_set/cons/
2380         noexcept_move_construct.cc: Likewise.
2381         * testsuite/23_containers/vector/bool/cons/
2382         noexcept_move_construct.cc: Likewise.
2383         * testsuite/23_containers/vector/cons/
2384         noexcept_move_construct.cc: Likewise.
2385         * testsuite/23_containers/multiset/cons/
2386         noexcept_move_construct.cc: Likewise.
2387         * testsuite/23_containers/list/cons/
2388         noexcept_move_construct.cc: Likewise.
2389         * testsuite/23_containers/unordered_multiset/cons/
2390         noexcept_move_construct.cc: Likewise.
2391         * testsuite/23_containers/map/cons/noexcept_move_construct.cc
2392         * testsuite/23_containers/forward_list/requirements/dr438/
2393         assign_neg.cc: Adjust dg-error line numbers.
2394         * testsuite/23_containers/forward_list/requirements/dr438/
2395         insert_neg.cc: Likewise.
2396         * testsuite/23_containers/forward_list/requirements/dr438/
2397         constructor_1_neg.cc: Likewise.
2398         * testsuite/23_containers/forward_list/requirements/dr438/
2399         constructor_2_neg.cc: Likewise.
2400         * testsuite/23_containers/vector/requirements/dr438/
2401         assign_neg.cc: Likewise.
2402         * testsuite/23_containers/vector/requirements/dr438/
2403         insert_neg.cc: Likewise.
2404         * testsuite/23_containers/vector/requirements/dr438/
2405         constructor_1_neg.cc: Likewise.
2406         * testsuite/23_containers/vector/requirements/dr438/
2407         constructor_2_neg.cc: Likewise.
2408         * testsuite/23_containers/deque/requirements/dr438/
2409         assign_neg.cc: Likewise.
2410         * testsuite/23_containers/deque/requirements/dr438/
2411         insert_neg.cc: Likewise.
2412         * testsuite/23_containers/deque/requirements/dr438/
2413         constructor_1_neg.cc: Likewise.
2414         * testsuite/23_containers/deque/requirements/dr438/
2415         constructor_2_neg.cc: Likewise.
2416         * testsuite/23_containers/list/requirements/dr438/
2417         assign_neg.cc: Likewise.
2418         * testsuite/23_containers/list/requirements/dr438/
2419         insert_neg.cc: Likewise.
2420         * testsuite/23_containers/list/requirements/dr438/
2421         constructor_1_neg.cc: Likewise.
2422         * testsuite/23_containers/list/requirements/dr438/
2423         constructor_2_neg.cc: Likewise.
2424
2425         * include/bits/move.h (swap): Use __and_ in the noexcept.
2426         * include/bits/algorithmfwd.h: Adjust.
2427
2428 2011-05-31  Paolo Carlini  <paolo.carlini@oracle.com>
2429
2430         * include/bits/basic_string.h: Use noexcept per the FDIS (minus
2431         compare(const string&), which uses char_traits::compare, which
2432         isn't noexcept; also no noexcept in the move assignment operator
2433         and move assign, see c++std-lib-30855).
2434         * include/bits/basic_string.tcc: Likewise.
2435         * include/ext/vstring.h: Likewise.
2436         * include/ext/vstring.tcc: Likewise.
2437         * include/debug/string: Likewise.
2438
2439 2011-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
2440
2441         * doc/xml/manual/status_cxx200x.xml: Update.
2442         * doc/html/*: Regenerate.
2443
2444 2011-05-30  Paolo Carlini  <paolo.carlini@oracle.com>
2445
2446         * include/std/type_traits (__or_, __and_): Add trivial definitions
2447         for a single element.
2448         * include/bits/stl_pair.h: Use __and_ in noexcept specs and
2449         constraints.
2450         (pair<>::pair(pair&&)): Define.
2451         (pair<>::pair(const pair<>&)): Constrain with is_convertible.
2452         (pair<>::pair(pair<>&&)): Likewise, remove noexcept.
2453         * include/std/tuple: Use __and_ in noexcept specs and constraints.
2454         (_Tuple_impl<>::_Tuple_impl(allocator_arg_t, const _Alloc&,
2455         _Tuple_impl&&)): Remove noexcept.
2456         (tuple<>::tuple(_UElements&&...), tuple(const tuple<_UElements...>&),
2457         tuple(tuple<_UElements...>&&), tuple(const pair<_U1, _U2>&),
2458         tuple(pair<_U1, _U2>&&)): Constrain with is_convertible.
2459         * testsuite/20_util/tuple/moveable2.cc: Use = delete.
2460         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
2461         Adjust dg-error line numbers.
2462         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2463         Likewise.
2464         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2465         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
2466         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
2467
2468 2011-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
2469
2470         * include/std/tuple: Restore is_convertible constraint.
2471         * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: Remove.
2472
2473 2011-05-30  Paolo Carlini  <paolo.carlini@oracle.com>
2474
2475         PR libstdc++/49236
2476         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
2477         line number.
2478
2479 2011-05-30  Jonathan Wakely  <jwakely.gcc@gmail.com>
2480
2481         * include/std/tuple: Implement uses-allocator construction.
2482         * include/bits/allocator.h (uses_allocator): Move to ...
2483         * include/bits/uses_allocator.h: New file.
2484         * include/Makefile.am: Add new header.
2485         * include/Makefile.in: Regenerate.
2486         * testsuite/20_util/uses_allocator/cons_neg.cc: New.
2487         * testsuite/20_util/uses_allocator/construction.cc: New.
2488         * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: New.
2489         * testsuite/20_util/tuple/cons/allocators.cc: New.
2490
2491 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2492
2493         * testsuite/20_util/pointer_traits/pointer_to.cc: Fix.
2494
2495 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2496
2497         * acinclude.m4: Define GLIBCXX_CHECK_GET_NPROCS and
2498         GLIBCXX_CHECK_SC_NPROCESSORS_ONLN.
2499         * configure.ac: Use them. Increase minor version.
2500         * configure: Regenerate.
2501         * config.h.in: Regenerate.
2502         * include/std/thread (thread::hardware_concurrency): Remove inline
2503         definition.
2504         * src/thread.cc (thread::hardware_concurrency): Define.
2505         * config/abi/pre/gnu.ver: Export new symbol @3.4.17
2506         * testsuite/util/testsuite_abi.cc: Add new version.
2507         * testsuite/lib/libstdc++.exp (check_v3_target_nprocs): Add.
2508         * testsuite/lib/dg-options.exp (dg-require-nprocs): Add.
2509         * testsuite/30_threads/thread/members/hardware_concurrency.cc: Use
2510         dg-require-nprocs and verify hardware_concurrency returns non-zero.
2511
2512 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2513
2514         * testsuite/20_util/pointer_traits/pointer_to.cc: New.
2515
2516 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2517
2518         * include/Makefile.am: Add new ptr_traits.h header.
2519         * include/Makefile.in: Regenerate.
2520         * include/bits/ptr_traits.h (pointer_traits): New.
2521         * include/bits/allocator.h (allocator_traits): Add.
2522         * include/ext/array_allocator.h (construct, destroy): Update C++0x
2523         versions.
2524         * include/ext/bitmap_allocator.h (construct, destroy): Likewise.
2525         * include/ext/extptr_allocator.h (construct, destroy): Likewise.
2526         * include/ext/malloc_allocator.h (construct, destroy): Likewise.
2527         * include/ext/mt_allocator.h (construct, destroy): Likewise.
2528         * include/ext/new_allocator.h (construct, destroy): Likewise.
2529         * include/ext/pool_allocator.h (construct, destroy): Likewise.
2530         * include/ext/throw_allocator.h (construct, destroy): Likewise.
2531         * testsuite/20_util/allocator_traits/requirements/typedefs.cc: New.
2532         * testsuite/20_util/allocator_traits/requirements/
2533         explicit_instantiation.cc: New.
2534         * testsuite/20_util/allocator_traits/members/max_size.cc: New.
2535         * testsuite/20_util/allocator_traits/members/select.cc: New.
2536         * testsuite/20_util/allocator_traits/members/construct.cc: New.
2537         * testsuite/20_util/allocator_traits/members/allocate_hint.cc: New.
2538         * testsuite/20_util/allocator_traits/members/destroy.cc: New.
2539         * testsuite/20_util/pointer_traits/requirements/typedefs.cc: New.
2540         * testsuite/20_util/pointer_traits/requirements/
2541         explicit_instantiation.cc: New.
2542
2543 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2544
2545         * include/std/future (launch): Update enumerators and define
2546         operators required for bitmask type. Remove trailing whitespace.
2547         * src/future.cc: Remove trailing whitespace.
2548         * testsuite/30_threads/async/any.cc: Adjust.
2549         * testsuite/30_threads/async/sync.cc: Adjust.
2550         * testsuite/30_threads/async/launch.cc: New.
2551
2552 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2553
2554         * include/std/future: Use noexcept.
2555         * src/future.cc: Likewise.
2556
2557 2011-05-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
2558
2559         * include/std/thread (this_thread::sleep_until): Move after sleep_for.
2560
2561 2011-05-27  Paolo Carlini  <paolo.carlini@oracle.com>
2562
2563         PR libstdc++/49187
2564         * include/parallel/losertree.h: Add missing using declarations
2565         of _Base::_M_comp.
2566         * include/parallel/algobase.h: Include <parallel/algorithmfwd.h>.
2567         * include/parallel/multiway_merge.h: Include <parallel/
2568         multiseq_selection.h>, forward declare __merge_advance.
2569         * include/parallel/multiseq_selection.h: Don't include <parallel/
2570         sort.h> here.
2571         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Fix
2572         qualification of upper_bound.
2573
2574         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc:
2575         Use dg-require-debug-mode.
2576         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc:
2577         Likewise.
2578         * testsuite/ext/pb_ds/regression/priority_queue_rand_debug.cc:
2579         Likewise.
2580         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc:
2581         Likewise.
2582         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc:
2583         Likewise.
2584         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
2585         Likewise.
2586         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
2587         Likewise.
2588         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc:
2589         Likewise.
2590         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc:
2591         Likewise.
2592
2593         * include/parallel/algo.h: Minor uglification fixes.
2594
2595 2011-05-26  Paolo Carlini  <paolo.carlini@oracle.com>
2596
2597         * src/list.cc: Use noexcept per the FDIS.
2598         * src/compatibility-list-2.cc: Likewise.
2599         * include/debug/set.h: Likewise.
2600         * include/debug/unordered_map: Likewise.
2601         * include/debug/multiset.h: Likewise.
2602         * include/debug/forward_list: Likewise.
2603         * include/debug/unordered_set: Likewise.
2604         * include/debug/vector: Likewise.
2605         * include/debug/map.h: Likewise.
2606         * include/debug/deque: Likewise.
2607         * include/debug/list: Likewise.
2608         * include/debug/multimap.h: Likewise.
2609         * include/profile/set.h: Likewise.
2610         * include/profile/unordered_map: Likewise.
2611         * include/profile/multiset.h: Likewise.
2612         * include/profile/forward_list: Likewise.
2613         * include/profile/vector: Likewise.
2614         * include/profile/unordered_set: Likewise.
2615         * include/profile/map.h: Likewise.
2616         * include/profile/deque: Likewise.
2617         * include/profile/list: Likewise.
2618         * include/profile/multimap.h: Likewise.
2619         * include/bits/hashtable.h: Likewise.
2620         * include/bits/stl_list.h: Likewise.
2621         * include/bits/stl_map.h: Likewise.
2622         * include/bits/hashtable_policy.h: Likewise.
2623         * include/bits/stl_set.h: Likewise.
2624         * include/bits/forward_list.h: Likewise.
2625         * include/bits/stl_multimap.h: Likewise.
2626         * include/bits/stl_vector.h: Likewise.
2627         * include/bits/stl_deque.h: Likewise.
2628         * include/bits/stl_multiset.h: Likewise.
2629         * include/bits/stl_bvector.h: Likewise.
2630         * include/bits/stl_tree.h: Likewise.
2631
2632 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2633
2634         * include/bits/stl_queue.h: Use noexcept per the FDIS.
2635         * include/bits/stl_stack.h: Likewise.
2636
2637 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2638
2639         * config/abi/pre/gnu.ver: Correct last change, export instead
2640         at the existing @3.4.16.
2641         * configure.ac: Revert last change.
2642         * testsuite/util/testsuite_abi.cc: Likewise.
2643         * configure: Regenerate.
2644
2645 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
2646
2647         * doc/xml/manual/documentation_hacking.xml: Minor corrections.
2648
2649 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
2650
2651         * include/std/mutex: Add doxygen comments.
2652
2653 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2654
2655         * config/abi/pre/gnu.ver: Export recently added  basic_streambuf
2656         and basic_stringbuf symbols @3.4.17.
2657         * configure.ac: Update.
2658         * testsuite/util/testsuite_abi.cc: Likewise.
2659         * configure: Regenerate.
2660
2661 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
2662
2663         * libsupc++/guard.cc: Fix comments.
2664
2665 2011-05-25  Ian Lance Taylor  <iant@google.com>
2666
2667         PR libstdc++/49060
2668         * include/backward/hashtable.h (hashtable::erase): Don't crash if
2669         erasing first and another element with a reference to the other
2670         element.
2671         * testsuite/backward/hash_set/49060.cc: New.
2672
2673 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2674
2675         * include/bits/random.h (random_device::min, max): Specify constexpr.
2676
2677 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2678
2679         * include/std/thread: Use noexcept throughout per the FDIS.
2680         * include/std/mutex: Likewise.
2681
2682 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
2683
2684         * testsuite/20_util/duration/arithmetic/dr2020.cc: Fix typo.
2685
2686 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
2687
2688         PR libstdc++/49151
2689         * include/std/chrono (operator+, operator-, operator*, operator/,
2690         operator&): Implement LWG 2020 [WP]; specify constexpr.
2691         * testsuite/20_util/duration/arithmetic/dr2020.cc: New.
2692
2693 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
2694
2695         PR libstdc++/49141
2696         * testsuite/26_numerics/complex/cons/48760.cc: Use dg-require-c-std.
2697         * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
2698         * testsuite/26_numerics/headers/cmath/19322.cc: Likewise.
2699
2700 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
2701
2702         * include/bits/c++config (_GLIBCXX_NOTHROW): Update for noexcept.
2703         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
2704         line number.
2705
2706 2011-05-23  Benjamin Kosnik  <bkoz@redhat.com>
2707
2708         PR libstdc++/37144
2709         PR libstdc++/28457
2710         Interface changes for ext/pb_ds.
2711         PB_DS_BASE_C_DEC to unique PB_DS_*_BASE macros.
2712         * include/ext/pb_ds/assoc_container.hpp (container_base): Remove.
2713         (basic_hash_table, basic_branch, list_update): Derive from
2714         container_base_dispatch.
2715         * include/ext/pb_ds/list_update_policy.hpp (null_lu_metadata): Remove.
2716         (move_to_front_lu_policy): To lu_move_to_front_policy.
2717         (counter_lu_policy): To lu_counter_policy.
2718         * include/ext/pb_ds/tree_policy.hpp (null_tree_node_update): Remove.
2719         * include/ext/pb_ds/tag_and_trait.hpp (container_base_dispatch): Adjust
2720         template parameters, declare here.
2721         (null_mapped_type) Remove.
2722         (null_type): Just use this for template tricks everywhere.
2723         * include/ext/pb_ds/hash_policy.hpp (null_hash_fn, null_probe_fn):
2724         Remove.
2725         * include/ext/pb_ds/trie_policy.hpp (null_trie_node_update): Remove.
2726         (string_trie_e_access_traits): To trie_string_access_traits.
2727         * include/ext/pb_ds/priority_queue.hpp: Use container_base_dispatch.
2728
2729         File changes.
2730         * include/Makefile.am (pb_headers): Removed and changed file names.
2731         * include/Makefile.in: Regenerated.
2732         * include/ext/pb_ds/detail/basic_types.hpp: Remove.
2733         * include/ext/pb_ds/detail/bin_search_tree_/
2734           cond_dtor_entry_dealtor.hpp: Remove.
2735         * include/ext/pb_ds/detail/bin_search_tree_/
2736           cond_key_dtor_entry_dealtor.hpp: Remove.
2737         * include/ext/pb_ds/detail/binary_heap_/const_point_iterator.hpp: Move..
2738         * include/ext/pb_ds/detail/binary_heap_/
2739           point_const_iterator.hpp: ..here.
2740         * include/ext/pb_ds/detail/basic_tree_policy: Move to...
2741         * include/ext/pb_ds/detail/branch_policy: This.
2742         * include/ext/pb_ds/detail/branch_policy/
2743           basic_tree_policy_base.hpp: Move...
2744         * include/ext/pb_ds/detail/branch_policy/branch_policy.hpp: ...here.
2745         * include/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp: Add.
2746         * include/ext/pb_ds/detail/branch_policy/traits.hpp: Add.
2747         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2748         null_metadata.hpp: Remove.
2749         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2750         const_point_iterator.hpp: Move...
2751         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2752         point_const_iterator.hpp: ...here.
2753         * include/ext/pb_ds/detail/list_update_policy/
2754         counter_lu_metadata.hpp: Move..
2755         * include/ext/pb_ds/detail/list_update_policy/
2756         lu_counter_metadata.hpp: ...here.
2757         * include/ext/pb_ds/detail/list_update_policy/
2758         counter_lu_policy_imp.hpp: Remove.
2759         * include/ext/pb_ds/detail/list_update_policy/
2760         mtf_lu_policy_imp.hpp: Remove.
2761         * include/ext/pb_ds/detail/trie_policy/
2762         string_trie_e_access_traits_imp.hpp: Move...
2763         * include/ext/pb_ds/detail/trie_policy/
2764         sample_trie_access_traits.hpp: ...here.
2765         * include/ext/pb_ds/detail/trie_policy/
2766         sample_trie_e_access_traits.hpp: Move...
2767         * include/ext/pb_ds/detail/trie_policy/
2768         trie_string_access_traits_imp.hpp: ...here.
2769         * include/ext/pb_ds/detail/trie_policy/null_node_update_imp.hpp: Remove.
2770         * include/ext/pb_ds/detail/tree_policy/null_node_update_imp.hpp: Remove.
2771         * include/ext/pb_ds/detail/ov_tree_map_/cond_dtor.hpp: Remove.
2772         * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: New, fold all
2773         types found in the following files into pat_trie_base.
2774         * include/ext/pb_ds/detail/pat_trie_/const_child_iterator.hpp: Folded.
2775         * include/ext/pb_ds/detail/pat_trie_/
2776           cond_dtor_entry_dealtor.hpp: Folded.
2777         * include/ext/pb_ds/detail/pat_trie_/child_iterator.hpp: Folded.
2778         * include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp: Folded.
2779         * include/ext/pb_ds/detail/pat_trie_/head.hpp: Folded.
2780         * include/ext/pb_ds/detail/pat_trie_/leaf.hpp: Folded.
2781         * include/ext/pb_ds/detail/pat_trie_/node_base.hpp: Folded.
2782         * include/ext/pb_ds/detail/pat_trie_/node_metadata_base.hpp: Folded.
2783         * include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Folded.
2784         * include/ext/pb_ds/detail/pat_trie_/node_iterators.hpp: Folded.
2785         * include/ext/pb_ds/detail/pat_trie_/point_iterators.hpp: Folded.
2786         * include/ext/pb_ds/detail/pat_trie_/synth_e_access_traits.hpp: Move...
2787         * include/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp: ...here.
2788         * include/ext/pb_ds/detail/unordered_iterator/
2789         const_point_iterator.hpp: Move...
2790         * include/ext/pb_ds/detail/unordered_iterator/
2791         point_const_iterator.hpp: ...here.
2792
2793
2794         Adjust for above changes.
2795         * include/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp: Same.
2796         * include/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp: Same.
2797         * include/ext/pb_ds/detail/resize_policy/
2798           sample_resize_trigger.hpp: Same.
2799         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp: Same.
2800         * include/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp: Same.
2801         * include/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp: Same.
2802         * include/ext/pb_ds/detail/binomial_heap_base_/
2803           binomial_heap_base_.hpp: Same.
2804         * include/ext/pb_ds/detail/binomial_heap_base_/
2805           constructors_destructor_fn_imps.hpp: Same.
2806         * include/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp: Same.
2807         * include/ext/pb_ds/detail/binomial_heap_base_/
2808           split_join_fn_imps.hpp: Same.
2809         * include/ext/pb_ds/detail/container_base_dispatch.hpp: Same. Adjust
2810           for template parameter ordering change.
2811         * include/ext/pb_ds/detail/cc_hash_table_map_/
2812           erase_store_hash_fn_imps.hpp: Same.
2813         * include/ext/pb_ds/detail/cc_hash_table_map_/
2814           constructor_destructor_no_store_hash_fn_imps.hpp: Same.
2815         * include/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp: Same.
2816         * include/ext/pb_ds/detail/cc_hash_table_map_/
2817           insert_no_store_hash_fn_imps.hpp: Same.
2818         * include/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp: Same.
2819         * include/ext/pb_ds/detail/cc_hash_table_map_/
2820           policy_access_fn_imps.hpp: Same.
2821         * include/ext/pb_ds/detail/cc_hash_table_map_/
2822           resize_store_hash_fn_imps.hpp: Same.
2823         * include/ext/pb_ds/detail/cc_hash_table_map_/
2824           constructor_destructor_store_hash_fn_imps.hpp: Same.
2825         * include/ext/pb_ds/detail/cc_hash_table_map_/
2826           insert_store_hash_fn_imps.hpp: Same.
2827         * include/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp: Same.
2828         * include/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp: Same.
2829         * include/ext/pb_ds/detail/cc_hash_table_map_/
2830           entry_list_fn_imps.hpp: Same.
2831         * include/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp: Same.
2832         * include/ext/pb_ds/detail/cc_hash_table_map_/
2833           find_store_hash_fn_imps.hpp: Same.
2834         * include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp: Same.
2835         * include/ext/pb_ds/detail/cc_hash_table_map_/
2836           debug_no_store_hash_fn_imps.hpp: Same.
2837         * include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same.
2838         * include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp: Same.
2839         * include/ext/pb_ds/detail/cc_hash_table_map_/
2840           constructor_destructor_fn_imps.hpp: Same.
2841         * include/ext/pb_ds/detail/cc_hash_table_map_/
2842           cond_key_dtor_entry_dealtor.hpp: Same.
2843         * include/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp: Same.
2844         * include/ext/pb_ds/detail/cc_hash_table_map_/
2845           debug_store_hash_fn_imps.hpp: Same.
2846         * include/ext/pb_ds/detail/cc_hash_table_map_/
2847           erase_no_store_hash_fn_imps.hpp: Same.
2848         * include/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp: Same.
2849         * include/ext/pb_ds/detail/cc_hash_table_map_/
2850           iterators_fn_imps.hpp: Same.
2851         * include/ext/pb_ds/detail/cc_hash_table_map_/
2852           resize_no_store_hash_fn_imps.hpp: Same.
2853         * include/ext/pb_ds/detail/cc_hash_table_map_/
2854           standard_policies.hpp: Same.
2855         * include/ext/pb_ds/detail/tree_trace_base.hpp: Same.
2856         * include/ext/pb_ds/detail/unordered_iterator/iterator.hpp: Same.
2857         * include/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp: Same.
2858         * include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp: Same.
2859         * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp: Same.
2860         * include/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp: Same.
2861         * include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp: Same.
2862         * include/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp: Same.
2863         * include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp: Same.
2864         * include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp: Same.
2865         * include/ext/pb_ds/detail/pat_trie_/
2866           constructors_destructor_fn_imps.hpp: Same.
2867         * include/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp: Same.
2868         * include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp: Same.
2869         * include/ext/pb_ds/detail/pat_trie_/traits.hpp: Same.
2870         * include/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp: Same.
2871         * include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp: Same.
2872         * include/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp: Same.
2873         * include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp: Same.
2874         * include/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp: Same.
2875         * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp: Same.
2876         * include/ext/pb_ds/detail/bin_search_tree_/
2877           policy_access_fn_imps.hpp: Same.
2878         * include/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp: Same.
2879         * include/ext/pb_ds/detail/bin_search_tree_/
2880           constructors_destructor_fn_imps.hpp: Same.
2881         * include/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp: Same.
2882         * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp: Same.
2883         * include/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp: Same.
2884         * include/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp: Same.
2885         * include/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp: Same.
2886         * include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp: Same.
2887         * include/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp: Same.
2888         * include/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp: Same.
2889         * include/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp: Same.
2890         * include/ext/pb_ds/detail/bin_search_tree_/
2891           split_join_fn_imps.hpp: Same.
2892         * include/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp: Same.
2893         * include/ext/pb_ds/detail/list_update_policy/
2894           sample_update_policy.hpp: Same.
2895         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2896           trace_fn_imps.hpp: Same.
2897         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2898           erase_fn_imps.hpp: Same.
2899         * include/ext/pb_ds/detail/gp_hash_table_map_/
2900           erase_store_hash_fn_imps.hpp: Same.
2901         * include/ext/pb_ds/detail/gp_hash_table_map_/
2902           constructor_destructor_no_store_hash_fn_imps.hpp: Same.
2903         * include/ext/pb_ds/detail/gp_hash_table_map_/
2904           insert_no_store_hash_fn_imps.hpp: Same.
2905         * include/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp: Same.
2906         * include/ext/pb_ds/detail/gp_hash_table_map_/
2907           policy_access_fn_imps.hpp: Same.
2908         * include/ext/pb_ds/detail/gp_hash_table_map_/
2909           resize_store_hash_fn_imps.hpp: Same.
2910         * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
2911         * include/ext/pb_ds/detail/gp_hash_table_map_/
2912           constructor_destructor_store_hash_fn_imps.hpp: Same.
2913         * include/ext/pb_ds/detail/gp_hash_table_map_/
2914           insert_store_hash_fn_imps.hpp: Same.
2915         * include/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp: Same.
2916         * include/ext/pb_ds/detail/gp_hash_table_map_/
2917           iterator_fn_imps.hpp: Same.
2918         * include/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp: Same.
2919         * include/ext/pb_ds/detail/gp_hash_table_map_/
2920           find_no_store_hash_fn_imps.hpp: Same.
2921         * include/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp: Same.
2922         * include/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp: Same.
2923         * include/ext/pb_ds/detail/gp_hash_table_map_/
2924           find_store_hash_fn_imps.hpp: Same.
2925         * include/ext/pb_ds/detail/gp_hash_table_map_/
2926           debug_no_store_hash_fn_imps.hpp: Same.
2927         * include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
2928         * include/ext/pb_ds/detail/gp_hash_table_map_/
2929           constructor_destructor_fn_imps.hpp: Same.
2930         * include/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp: Same.
2931         * include/ext/pb_ds/detail/gp_hash_table_map_/
2932           debug_store_hash_fn_imps.hpp: Same.
2933         * include/ext/pb_ds/detail/gp_hash_table_map_/
2934           erase_no_store_hash_fn_imps.hpp: Same.
2935         * include/ext/pb_ds/detail/gp_hash_table_map_/
2936           resize_no_store_hash_fn_imps.hpp: Same.
2937         * include/ext/pb_ds/detail/gp_hash_table_map_/
2938           standard_policies.hpp: Same.
2939         * include/ext/pb_ds/detail/standard_policies.hpp: Same.
2940         * include/ext/pb_ds/detail/types_traits.hpp: Same.
2941         * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp: Same.
2942         * include/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp: Same.
2943         * include/ext/pb_ds/detail/binary_heap_/const_iterator.hpp: Same.
2944         * include/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp: Same.
2945         * include/ext/pb_ds/detail/binary_heap_/
2946           constructors_destructor_fn_imps.hpp: Same.
2947         * include/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp: Same.
2948         * include/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp: Same.
2949         * include/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp: Same.
2950         * include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Same.
2951         * include/ext/pb_ds/detail/binary_heap_/entry_pred.hpp: Same.
2952         * include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp: Same.
2953         * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp: Same.
2954         * include/ext/pb_ds/detail/binary_heap_/resize_policy.hpp: Same.
2955         * include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same.
2956         * include/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp: Same.
2957         * include/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp: Same.
2958         * include/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp: Same.
2959         * include/ext/pb_ds/detail/tree_policy/
2960           sample_tree_node_update.hpp: Same.
2961         * include/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp: Same.
2962         * include/ext/pb_ds/detail/trie_policy/
2963           sample_trie_node_update.hpp: Same.
2964         * include/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp: Same.
2965         * include/ext/pb_ds/detail/trie_policy/
2966           prefix_search_node_update_imp.hpp: Same.
2967         * include/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp: Same.
2968         * include/ext/pb_ds/detail/cond_dealtor.hpp: Same.
2969         * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp: Same.
2970           Adjust for template parameter change, fold into
2971           container_base_dispatch.
2972         * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp: Same.
2973         * include/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp: Same.
2974         * include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp: Same.
2975         * include/ext/pb_ds/detail/pairing_heap_/
2976           constructors_destructor_fn_imps.hpp: Same.
2977         * include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp: Same.
2978         * include/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp: Same.
2979         * include/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp: Same.
2980         * include/ext/pb_ds/detail/binomial_heap_/
2981           constructors_destructor_fn_imps.hpp: Same.
2982         * include/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp: Same.
2983         * include/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp: Same.
2984         * include/ext/pb_ds/detail/constructors_destructor_fn_imps.hpp: Same.
2985         * include/ext/pb_ds/detail/type_utils.hpp: Same.
2986         * include/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp: Same.
2987         * include/ext/pb_ds/detail/eq_fn/eq_by_less.hpp: Same.
2988         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2989           policy_access_fn_imps.hpp: Same.
2990         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2991           left_child_next_sibling_heap_.hpp: Same.
2992         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2993           const_iterator.hpp: Same.
2994         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2995           insert_fn_imps.hpp: Same.
2996         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2997           constructors_destructor_fn_imps.hpp: Same.
2998         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2999           debug_fn_imps.hpp: Same.
3000         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3001           node.hpp: Same.
3002         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3003           info_fn_imps.hpp: Same.
3004         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3005           iterators_fn_imps.hpp: Same.
3006         * include/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp: Same.
3007         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Same.
3008         * include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp: Same.
3009         * include/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp: Same.
3010         * include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp: Same.
3011         * include/ext/pb_ds/detail/thin_heap_/
3012           constructors_destructor_fn_imps.hpp: Same.
3013         * include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp: Same.
3014         * include/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp: Same.
3015         * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp: Same.
3016         * include/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp: Same.
3017         * include/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp: Same.
3018         * include/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp: Same.
3019         * include/ext/pb_ds/detail/ov_tree_map_/
3020           constructors_destructor_fn_imps.hpp: Same.
3021         * include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
3022         * include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Same.
3023         * include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp: Same.
3024         * include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp: Same.
3025         * include/ext/pb_ds/detail/ov_tree_map_/traits.hpp: Same.
3026         * include/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp: Same.
3027         * include/ext/pb_ds/detail/debug_map_base.hpp: Same.
3028         * include/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp: Same.
3029         * include/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp: Same.
3030         * include/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp: Same.
3031         * include/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp: Same.
3032         * include/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp: Same.
3033         * include/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp: Same.
3034         * include/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp: Same.
3035         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Same.
3036         * include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp: Same.
3037         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Same.
3038         * include/ext/pb_ds/detail/splay_tree_/
3039           constructors_destructor_fn_imps.hpp: Same.
3040         * include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp: Same.
3041         * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Same.
3042         * include/ext/pb_ds/detail/splay_tree_/node.hpp: Same.
3043         * include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp: Same.
3044         * include/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp: Same.
3045         * include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same.
3046         * include/ext/pb_ds/detail/splay_tree_/traits.hpp: Same.
3047         * include/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp: Same.
3048         * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp: Same.
3049         * include/ext/pb_ds/detail/list_update_map_/
3050           entry_metadata_base.hpp: Same.
3051         * include/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp: Same.
3052         * include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Same.
3053         * include/ext/pb_ds/detail/list_update_map_/
3054           constructor_destructor_fn_imps.hpp: Same.
3055         * include/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp: Same.
3056         * include/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp: Same.
3057         * include/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp: Same.
3058         * include/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp: Same.
3059         * include/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp: Same.
3060         * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp: Same.
3061         * include/ext/pb_ds/detail/rc_binomial_heap_/
3062           rc_binomial_heap_.hpp: Same.
3063         * include/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp: Same.
3064         * include/ext/pb_ds/detail/rc_binomial_heap_/
3065           constructors_destructor_fn_imps.hpp: Same.
3066         * include/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp: Same.
3067         * include/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp: Same.
3068         * include/ext/pb_ds/detail/rc_binomial_heap_/
3069           split_join_fn_imps.hpp: Same.
3070         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Same.
3071         * include/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp: Same.
3072         * include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp: Same.
3073         * include/ext/pb_ds/detail/rb_tree_map_/
3074           constructors_destructor_fn_imps.hpp: Same.
3075         * include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp: Same.
3076         * include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
3077         * include/ext/pb_ds/detail/rb_tree_map_/node.hpp: Same.
3078         * include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp: Same.
3079         * include/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp: Same.
3080         * include/ext/pb_ds/detail/rb_tree_map_/traits.hpp: Same.
3081
3082
3083         Documentation changes.
3084         * include/ext/pb_ds/*: Add doxygen markup.
3085         * doc/doxygen/user.cfg.in: Add details for extracting comments
3086         from pb_ds.
3087         * scripts/run_doxygen: Fixup __gnu_pb_ds::detail.
3088         * scripts/make_graph.py: Move to svg output. Re-format generated tables.
3089
3090         * doc/Makefile.am (stamp-html-copy): New rule.
3091         (stamp-html): Use it to copy non-generated files into html docs.
3092         * doc/Makefile.in: Regenerated.
3093
3094         * doc/html/ext/pb_ds/sample_trie_e_access_traits.html: Move...
3095         * doc/html/ext/pb_ds/trie_string_access_traits.html: ...here.
3096         * doc/html/ext/pb_ds/string_trie_e_access_traits.html: Move..
3097         * doc/html/ext/pb_ds/sample_trie_access_traits.html: ...here.
3098
3099         * doc/html/ext/pb_ds/tree_text_lor_find_timing_test_local.png,
3100         hash_random_int_erase_mem_usage_test_local.png,
3101         multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
3102         tree_text_insert_timing_test_pat_trie_local.png ,
3103         multimap_text_insert_mem_usage_test_small_s2p_tree_local.png ,
3104         priority_queue_text_modify_down_timing_test_local.png,
3105         gp_hash_random_int_subscript_timing_test_find_local.png,
3106         text_find_timing_test_hash_local.png,
3107         multimap_text_insert_timing_test_small_s2p_hash_local.png,
3108         multimap_text_insert_timing_test_small_s2p_tree_local.png,
3109         multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
3110         multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
3111         multimap_text_insert_timing_test_large_s2p_hash_local.png,
3112         hash_zlob_random_int_find_timing_test_local.png,
3113         multimap_text_insert_timing_test_large_s2p_tree_local.png,
3114         binary_priority_queue_random_int_push_timing_test_local.png,
3115         priority_queue_text_pop_mem_usage_test_local.png,
3116         priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
3117         tree_split_join_timing_test_local.png,
3118         multimap_text_find_timing_test_small_s2p_hash_local.png,
3119         ccgp_hash_random_int_subscript_timing_test_insert_local.png,
3120         priority_queue_random_int_push_pop_timing_test_local.png,
3121         multimap_text_find_timing_test_small_s2p_tree_local.png,
3122         gp_hash_random_int_subscript_timing_test_insert_local.png,
3123         priority_queue_text_push_timing_test_local.png,
3124         cc_hash_random_int_subscript_timing_test_find_local.png,
3125         tree_text_insert_timing_test_vector_tree_local.png,
3126         multimap_text_find_timing_test_large_s2p_hash_local.png,
3127         pairing_priority_queue_text_push_timing_test_local.png,
3128         tree_order_statistics_timing_test_local.png,
3129         priority_queue_text_push_pop_timing_test_local.png,
3130         text_find_timing_test_tree_like_local.png,
3131         multimap_text_find_timing_test_large_s2p_tree_local.png,
3132         priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
3133         cc_hash_random_int_subscript_timing_test_insert_local.png,
3134         priority_queue_text_modify_up_timing_test_local.png,
3135         random_int_find_find_timing_test_tree_local.png,
3136         priority_queue_random_int_push_timing_test_local.png,
3137         tree_text_insert_timing_test_node_tree_local.png,
3138         pairing_priority_queue_text_push_pop_timing_test_local.png,
3139         gp_hash_random_int_find_timing_test_local.png,
3140         cc_hash_random_int_find_timing_test_local.png,
3141         priority_queue_text_join_timing_test_local.png: Update local pngs.
3142
3143
3144         Testsuite changes.
3145         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: New.
3146         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: New.
3147         * testsuite/ext/pb_ds/regression/priority_queue_rand_debug.cc: New.
3148         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: New.
3149         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: New.
3150         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
3151         New.
3152         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
3153         New.
3154         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: New.
3155         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: New.
3156
3157         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Fix typo.
3158
3159         * testsuite/ext/pb_ds/example/basic_set.cc: Update.
3160         * testsuite/ext/pb_ds/example/ranged_hash.cc: Same.
3161         * testsuite/ext/pb_ds/example/tree_order_statistics.cc: Same.
3162         * testsuite/ext/pb_ds/example/trie_prefix_search.cc: Same.
3163         * testsuite/ext/pb_ds/example/trie_dna.cc: Same.
3164         * testsuite/ext/pb_ds/example/tree_intervals.cc: Same.
3165         * testsuite/ext/pb_ds/example/basic_multimap.cc: Same.
3166         * testsuite/performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc:
3167           Same.
3168         * testsuite/performance/ext/pb_ds/tree_split_join_timing.cc: Same.
3169         * testsuite/performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
3170         * testsuite/data/make_graph_test_infos.xml: Same.
3171         * testsuite/util/regression/common_type.hpp: Same.
3172         * testsuite/util/regression/trait/assoc/native_type_trait.hpp: Same.
3173         * testsuite/util/regression/trait/assoc/trait.hpp: Same.
3174         * testsuite/util/regression/trait/assoc/type_trait.hpp: Same.
3175         * testsuite/util/regression/rand/priority_queue/
3176           rand_regression_test.hpp: Same.
3177         * testsuite/util/regression/rand/priority_queue/
3178           container_rand_regression_test.tcc: Same.
3179         * testsuite/util/regression/rand/assoc/rand_regression_test.hpp: Same.
3180         * testsuite/util/regression/rand/assoc/container_rand_regression_test.h
3181         * testsuite/util/regression/rand/assoc/
3182           container_rand_regression_test.tcc: Same.
3183         * testsuite/util/native_type/native_priority_queue.hpp: Same.
3184         * testsuite/util/native_type/native_multimap.hpp: Same.
3185         * testsuite/util/native_type/native_hash_multimap.hpp: Same.
3186         * testsuite/util/native_type/native_set.hpp: Same.
3187         * testsuite/util/native_type/native_map.hpp: Same.
3188         * testsuite/util/native_type/native_hash_set.hpp: Same.
3189         * testsuite/util/native_type/native_hash_map.hpp: Same.
3190         * testsuite/util/testsuite_containers.h
3191         * testsuite/util/common_type/priority_queue/common_type.hpp: Same.
3192         * testsuite/util/common_type/assoc/common_type.hpp: Same.
3193         * testsuite/util/common_type/assoc/string_form.hpp: Same.
3194         * testsuite/util/common_type/assoc/template_policy.hpp: Same.
3195         * testsuite/util/common_type/assoc/detail/
3196           trigger_policy_string_form.hpp: Same.
3197         * testsuite/util/common_type/assoc/detail/ds_string_form.hpp: Same.
3198         * testsuite/util/common_type/assoc/detail/
3199           size_policy_string_form.hpp: Same.
3200         * testsuite/util/common_type/assoc/detail/
3201           probe_fn_string_form.hpp: Same.
3202         * testsuite/util/common_type/assoc/detail/
3203           tree_supports_order_statistics.hpp: Same.
3204         * testsuite/util/common_type/assoc/detail/
3205           trie_supports_prefix_search.hpp: Same.
3206         * testsuite/util/common_type/assoc/detail/
3207           list_update_policy_string_form.hpp: Same.
3208         * testsuite/util/common_type/assoc/detail/
3209           trie_supports_order_statistics.hpp: Same.
3210         * testsuite/util/common_type/assoc/native_set.hpp: Same.
3211         * testsuite/util/performance/assoc/timing/common_type.hpp: Same.
3212         * testsuite/util/performance/assoc/timing/multimap_find_test.hpp: Same.
3213         * testsuite/util/performance/assoc/multimap_common_type.hpp: Same.
3214
3215 2011-05-23  Paolo Carlini  <paolo.carlini@oracle.com>
3216
3217         * include/bits/streambuf_iterator.h: Use noexcept per the FDIS.
3218         (istreambuf_iterator<>::istreambuf_iterator(const
3219         istreambuf_iterator&),  ~istreambuf_iterator()): Add defaulted
3220         in C++0x mode.
3221
3222 2011-05-23  Jason Merrill  <jason@redhat.com>
3223
3224         * libsupc++/exception_ptr.h: Fix compilation in C++0x mode.
3225
3226 2011-05-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
3227
3228         * testsuite/20_util/bind/cv_quals_2.cc: New.
3229
3230 2011-05-22  Paolo Carlini  <paolo.carlini@oracle.com>
3231
3232         PR libstdc++/49058
3233         * include/std/functional (_Bind<_Functor(_Bound_args...)>::
3234         operator()(_Args&&...)): Don't cv qualify _Functor directly
3235         in the default template argument, SFINAE doesn't apply when
3236         the functor has no arguments.
3237         * testsuite/20_util/bind/49058_1.cc: New.
3238         * testsuite/20_util/bind/49058_2.cc: Likewise.
3239
3240 2011-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
3241
3242         * include/bits/unique_ptr.h: Use noexcept per the FDIS.
3243
3244 2011-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
3245
3246         * testsuite/21_strings/basic_string/requirements/exception/
3247         propagation_consistent.cc: Fix vs POD-ness of value_type.
3248         * testsuite/21_strings/basic_string/requirements/exception/
3249         basic.cc: Likewise.
3250         * testsuite/ext/vstring/requirements/exception/
3251         propagation_consistent.cc: Likewise.
3252         * testsuite/ext/vstring/requirements/exception/basic.cc: Likewise.
3253
3254 2011-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
3255
3256         * include/bits/char_traits.h: Use noexcept throughout.
3257         * include/std/typeindex: Likewise.
3258
3259         * include/std/tuple (_Tuple_impl<>_Tuple_impl(_Tuple_impl&&)): Use
3260         noexcept; adjust callers.
3261         * include/bits/stl_pair.h (pair<>::pair(pair<>&&)): Use noexcept.
3262         * testsuite/20_util/tuple/cons/noexcept_move_construct.cc: New.
3263         * testsuite/20_util/pair/cons/noexcept_move_construct.cc: Likewise.
3264         * testsuite/20_util/pair/noexcept_swap.cc: Likewise.
3265         * testsuite/20_util/pair/noexcept_move_assign.cc: Likewise.
3266         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
3267         line numbers.
3268
3269 2011-05-20  Jason Merrill  <jason@redhat.com>
3270
3271         * include/ext/pb_ds/assoc_container.hpp: Explicitly qualify calls to
3272         functions from dependent bases.
3273         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Likewise.
3274         * include/ext/pb_ds/detail/rb_tree_map_/
3275         split_join_fn_imps.hpp: Likewise.
3276         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Likewise.
3277         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Likewise.
3278         * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Likewise.
3279         * include/ext/pb_ds/detail/splay_tree_/
3280         split_join_fn_imps.hpp: Likewise.
3281         * include/ext/pb_ds/detail/tree_policy/
3282         order_statistics_imp.hpp: Likewise.
3283         * include/ext/pb_ds/detail/trie_policy/
3284         prefix_search_node_update_imp.hpp: Likewise.
3285         * include/ext/rc_string_base.h: Likewise.
3286         * include/ext/rope: Likewise.
3287         * include/ext/ropeimpl.h: Likewise.
3288         * testsuite/util/exception/safety.h: Likewise.
3289         * testsuite/util/native_type/native_priority_queue.hpp: Likewise.
3290         * testsuite/util/testsuite_io.h: Likewise.
3291         * include/std/functional: Declare mem_fn earlier.
3292         * include/tr1/functional: Likewise.
3293         * include/tr1/exp_integral.tcc: Declare __expint_E1 earlier.
3294
3295 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
3296
3297         * include/std/tuple (tuple_element<__i, const _Tp>,
3298         tuple_element<__i, volatile _Tp>, tuple_element<__i,
3299         const volatile _Tp>, tuple_size<const _Tp>, tuple_size<volatile _Tp>,
3300         tuple_size<const volatile _Tp>): Add.
3301         * include/std/utility (tuple_size<std::pair<_Tp1, _Tp2>>): Tweak.
3302         * include/std/array (tuple_size<array<_Tp, _Nm>>): Likewise.
3303         * testsuite/20_util/tuple/cv_tuple_size.cc: New.
3304         * testsuite/20_util/tuple/cv_tuple_element.cc: Likewise.
3305         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-warning
3306         line number.
3307
3308 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
3309
3310         * include/std/tuple (tuple<>::operator=(tuple&&)): Specify as
3311         noexcept.
3312         (__get_helper): Likewise.
3313         (_Head_base<>::_M_head, _Tuple_impl<>::_M_head, _M_tail): Likewise.
3314         * include/bits/move.h (swap): Likewise.
3315         * include/bits/algorithmfwd.h (swap): Adjust.
3316         * include/bits/stl_pair.h (pair<>::operator=(pair&&)): Spec noexcept.
3317         * testsuite/util/testsuite_allocator.h (uneq_allocator): In C++0x
3318         mode, prefer delete to access control to make the type not copy
3319         assignable.
3320         * testsuite/util/testsuite_tr1.h: Add test classes.
3321         * testsuite/20_util/tuple/noexcept_swap.cc: New.
3322         * testsuite/20_util/tuple/noexcept_move_assign.cc: Likewise.
3323         * testsuite/25_algorithms/reverse/moveable.cc: Likewise, prefer
3324         delete to access control.
3325         * testsuite/25_algorithms/swap_ranges/moveable.cc: Likewise.
3326         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
3327         line numbers.
3328
3329 2011-05-19  Daniel Krugler  <daniel.kruegler@googlemail.com>
3330
3331         * testsuite/util/testsuite_tr1.h: Add test classes.
3332         * testsuite/20_util/is_nothrow_assignable/value.cc: Add.
3333
3334 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
3335
3336         * include/std/type_traits (is_assignable, is_copy_assignable,
3337         is_move_assignable, is_nothrow_assignable, is_nothrow_copy_assignable,
3338         is_nothrow_move_assignable): Add; minor tweaks elsewhere.
3339         (has_nothrow_copy_assign): Remove.
3340         * testsuite/util/testsuite_tr1.h: Add test classes.
3341         * testsuite/20_util/is_assignable/requirements/typedefs.cc: Add.
3342         * testsuite/20_util/is_assignable/requirements/
3343         explicit_instantiation.cc: Likewise.
3344         * testsuite/20_util/is_nothrow_assignable/value.cc: Likewise.
3345         * testsuite/20_util/is_nothrow_assignable/requirements/typedefs.cc:
3346         Likewise.
3347         * testsuite/20_util/is_nothrow_assignable/requirements/
3348         explicit_instantiation.cc: Likewise.
3349         * testsuite/20_util/is_move_assignable/value.cc: Likewise.
3350         * testsuite/20_util/is_move_assignable/requirements/typedefs.cc:
3351         Likewise.
3352         * testsuite/20_util/is_move_assignable/requirements/
3353         explicit_instantiation.cc: Likewise.
3354         * testsuite/20_util/is_copy_assignable/value.cc: Likewise.
3355         * testsuite/20_util/is_copy_assignable/requirements/typedefs.cc:
3356         Likewise.
3357         * testsuite/20_util/is_copy_assignable/requirements/
3358         explicit_instantiation.cc: Likewise.
3359         * testsuite/20_util/is_nothrow_move_assignable/value.cc: Likewise.
3360         * testsuite/20_util/is_nothrow_move_assignable/requirements/
3361         typedefs.cc: Likewise.
3362         * testsuite/20_util/is_nothrow_move_assignable/requirements/
3363         explicit_instantiation.cc: Likewise.
3364         * testsuite/20_util/is_nothrow_copy_assignable/value.cc: Likewise.
3365         * testsuite/20_util/is_nothrow_copy_assignable/requirements/
3366         typedefs.cc: Likewise.
3367         * testsuite/20_util/is_nothrow_copy_assignable/requirements/
3368         explicit_instantiation.cc: Likewise.
3369         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
3370         dg-error line numbers.
3371         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3372         Likewise.
3373         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
3374
3375 2011-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
3376
3377         * include/bits/shared_ptr_base.h: Use noexcept. Define special member
3378         functions as defaulted/deleted.
3379         * include/bits/shared_ptr.h: Use noexcept.
3380         * 20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line numbers.
3381         * 20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
3382
3383 2011-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
3384
3385         * doc/xml/manual/bitmap_allocator.xml: Fix typos.
3386
3387 2011-05-18  Paolo Carlini  <paolo.carlini@oracle.com>
3388
3389         * libsupc++/initializer_list: Use noexcept specifier.
3390         (initializer_list<>::size, begin, end): Qualify as const.
3391         * include/bits/move.h (__addressof, forward, move, addressof): Specify
3392         as noexcept.
3393         * include/std/bitset: Use noexcept specifier throughout.
3394         * include/debug/bitset: Update.
3395         * include/profile/bitset: Likewise.
3396
3397 2011-05-17  Paolo Carlini  <paolo.carlini@oracle.com>
3398
3399         * include/std/tuple: Use noexcept where appropriate.
3400         (tuple<>::swap): Rework implementation.
3401         (_Head_base<>::_M_swap_impl): Remove.
3402         (get(std::tuple<>&&)): Add.
3403         * testsuite/20_util/tuple/element_access/get2.cc: New.
3404         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
3405         line number.
3406
3407 2011-05-16  Paolo Carlini  <paolo.carlini@oracle.com>
3408
3409         * include/std/utility: Simplify the last commit, the whole
3410         std::get code is C++0x only.
3411
3412 2011-05-16  Paolo Carlini  <paolo.carlini@oracle.com>
3413
3414         * include/std/utility (get(std::pair<>&&)): Add.
3415         * include/bits/stl_pair.h (pair::swap(pair&),
3416         swap(pair<>&, pair<>&)): Use noexcept.
3417         * include/bits/random.h (discard_block_engine<>::base,
3418         independent_bits_engine<>::base, shuffle_order_engine<>::base,
3419         random_device::entropy): Use noexcept.
3420         * include/std/array: Use noexcept where appropriate.
3421         (get(array<>&&)): Add.
3422         * testsuite/23_containers/array/requirements/get.cc: New.
3423         * testsuite/20_util/pair/get.cc: Likewise.
3424         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-error
3425         line number.
3426
3427 2011-05-15  Paolo Carlini  <paolo.carlini@oracle.com>
3428
3429         * include/bits/c++config (_GLIBCXX_NOEXCEPT, _GLIBCXX_USE_NOEXCEPT):
3430         Add.
3431         * include/std/limits: Use the latter everywhere.
3432         (numeric_limits<char16_t>, numeric_limits<char32_t>): Simplify
3433         macro usages, the specializations exist only in C++0x mode.
3434         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
3435         line number.
3436
3437 2011-05-11  Paolo Carlini  <paolo.carlini@oracle.com>
3438
3439         * testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: Use
3440         dg-require-cmath.
3441         * testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise.
3442
3443 2011-05-11  François Dumont  <francois.cppdevs@free.fr>
3444
3445         * include/ext/pb_ds/detail/resize_policy/
3446         hash_load_check_resize_trigger_imp.hpp (assert_valid): Replace
3447         _GLIBCXX_DEBUG_ASSERT calls with PB_DS_DEBUG_VERIFY.
3448         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
3449         find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
3450         constructors_destructor_fn_imps.hpp, split_join_fn_imps.hpp
3451         (PB_DS_ASSERT_VALID): Rename in PB_DS_ASSERT_VALID_COND.
3452         * include/ext/pb_ds/detail/debug_map_base.hpp,
3453         splay_tree_/splay_tree_.hpp, ov_tree_map_/ov_tree_map_.hpp,
3454         cc_hash_table_map_/cc_ht_map_.hpp, pat_trie_/pat_trie_.hpp,
3455         leaf.hpp, internal_node.hpp, gp_hash_table_map_/gp_ht_map_.hpp,
3456         bin_search_tree_/bin_search_tree_.hpp, list_update_map_/lu_map_.hpp,
3457         rb_tree_map_/rb_tree_.hpp (PB_DS_ASSERT_VALID, PB_DS_DEBUG_VERIFY,
3458         PB_DS_CHECK_KEY_EXISTS, PB_DS_CHECK_KEY_DOES_NOT_EXIST): Duplicate
3459         macro definitions move...
3460         * include/ext/pb_ds/detail/container_base_dispatch.hpp: ... here...
3461         * include/ext/pb_ds/detail/basic_tree_policy/traits.hpp: ... and here.
3462         * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp,
3463         resize_policy.hpp, pairing_heap_/pairing_heap_.hpp,
3464         left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp,
3465         binomial_heap_/binomial_heap_.hpp, thin_heap_/thin_heap_.hpp,
3466         rc_binomial_heap_/rc_binomial_heap_.hpp, rc.hpp (PB_DS_ASSERT_VALID,
3467         PB_DS_DEBUG_VERIFY): Duplicate macro definitions move...
3468         * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp:
3469         ...here.
3470
3471 2011-05-09  Paolo Carlini  <paolo.carlini@oracle.com>
3472
3473         PR libstdc++/48933
3474         * include/c_global/cmath (acosh, asinh, atanh, cbrt, copysign,
3475         erf, erfc, exp2, expm1, fdim, fma, fmax, hypot, ilogb, lgamma,
3476         llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
3477         nextafter, nexttoward, remainder, remquo, rint, round, scalbln,
3478         scalbn, tgamma, trunc): Use __enable_if on the return type.
3479         * include/tr1/cmath: Likewise.
3480         * testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: New.
3481         * testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise.
3482
3483 2011-05-07  François Dumont  <francois.cppdevs@free.fr>
3484
3485         * include/debug/macro.h (_GLIBCXX_DEBUG_VERIFY_AT): New.
3486         (_GLICXX_DEBUG_VERIFY): Use latter.
3487         * include/ext/pb_ds/detail/resize_policy/
3488         hash_load_check_resize_trigger_imp.hpp: Emit assertion on the line
3489         containing the original assert call.
3490         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
3491         find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
3492         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3493         split_join_fn_imps.hpp: Likewise.
3494         * include/ext/pb_ds/detail/cc_hash_table_map_/
3495         erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
3496         find_fn_imps.hpp, insert_store_hash_fn_imps.hpp, debug_fn_imps.hpp,
3497         debug_no_store_hash_fn_imps.hpp, cc_ht_map_.hpp, resize_fn_imps.hpp,
3498         constructor_destructor_fn_imps.hpp, debug_store_hash_fn_imps.hpp,
3499         erase_no_store_hash_fn_imps.hpp: Likewise.
3500         * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp,
3501         insert_join_fn_imps.hpp, pat_trie_/head.hpp, debug_fn_imps.hpp,
3502         constructors_destructor_fn_imps.hpp, pat_trie_.hpp, split_fn_imps.hpp,
3503         leaf.hpp, erase_fn_imps.hpp, node_base.hpp, internal_node.hpp:
3504         Likewise.
3505         * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp,
3506         r_erase_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
3507         debug_fn_imps.hpp, rotate_fn_imps.hpp, erase_fn_imps.hpp,
3508         bin_search_tree_.hpp, insert_fn_imps.hpp, split_join_fn_imps.hpp:
3509         Likewise.
3510         * include/ext/pb_ds/detail/gp_hash_table_map_/
3511         erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
3512         find_fn_imps.hpp, gp_ht_map_.hpp, insert_store_hash_fn_imps.hpp,
3513         debug_fn_imps.hpp, erase_fn_imps.hpp, debug_no_store_hash_fn_imps.hpp,
3514         resize_fn_imps.hpp, constructor_destructor_fn_imps.hpp,
3515         debug_store_hash_fn_imps.hpp, erase_no_store_hash_fn_imps.hpp:
3516         Likewise.
3517         * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp,
3518         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3519         erase_fn_imps.hpp, insert_fn_imps.hpp, binary_heap_.hpp,
3520         resize_policy.hpp, split_join_fn_imps.hpp: Likewise.
3521         * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp,
3522         find_fn_imps.hpp, insert_fn_imps.hpp,
3523         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3524         pairing_heap_.hpp, split_join_fn_imps.hpp: Likewise.
3525         * include/ext/pb_ds/detail/binomial_heap_/
3526         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3527         binomial_heap_.hpp: Likewise.
3528         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3529         erase_fn_imps.hpp, left_child_next_sibling_heap_.hpp,
3530         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
3531         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp,
3532         find_fn_imps.hpp, thin_heap_.hpp, insert_fn_imps.hpp,
3533         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3534         split_join_fn_imps.hpp: Likewise.
3535         * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp,
3536         ov_tree_map_.hpp, constructors_destructor_fn_imps.hpp,
3537         debug_fn_imps.hpp, split_join_fn_imps.hpp, info_fn_imps.hpp: Likewise.
3538         * include/ext/pb_ds/detail/debug_map_base.hpp: Likewise.
3539         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp,
3540         find_fn_imps.hpp, insert_fn_imps.hpp,
3541         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3542         splay_fn_imps.hpp, split_join_fn_imps.hpp, splay_tree_.hpp: Likewise.
3543         * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp,
3544         find_fn_imps.hpp, lu_map_.hpp, constructor_destructor_fn_imps.hpp,
3545         insert_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
3546         * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp,
3547         rc_binomial_heap_.hpp, insert_fn_imps.hpp,
3548         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp, rc.hpp,
3549         split_join_fn_imps.hpp: Likewise.
3550         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp,
3551         insert_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
3552         debug_fn_imps.hpp, rb_tree_.hpp, split_join_fn_imps.hpp: Likewise.
3553         * include/ext/pb_ds/hash_policy.hpp: Likewise.
3554
3555 2011-05-06  Paolo Carlini  <paolo.carlini@oracle.com>
3556
3557         * testsuite/22_locale/messages_byname/named_equivalence.cc: Fix.
3558
3559 2011-05-04  Marc Glisse  <marc.glisse@normalesup.org>
3560
3561         PR libstdc++/47913 (again)
3562         * include/std/ratio (ratio_add, ratio_less): Rewrite.
3563         * testsuite/20_util/ratio/operations/47913.cc: Extend.
3564         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust dg-error
3565         line numbers.
3566         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
3567
3568 2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>
3569
3570         PR libstdc++/48848
3571         * include/std/valarray (valarray<>::valarray(valarray&&),
3572         valarray<>::operator=(valarray&&), valarray<>::swap): Add.
3573         * doc/xml/manual/status_cxx200x.xml: Update.
3574         * testsuite/26_numerics/valarray/moveable.cc: New.
3575         * testsuite/26_numerics/valarray/swap.cc: Likewise.
3576
3577 2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>
3578
3579         PR libstdc++/48750
3580         * include/parallel/multiway_merge.h: Run _ValueType destructors.
3581         * include/parallel/multiway_mergesort.h: Likewise.
3582         * include/parallel/quicksort.h: Likewise.
3583         * include/parallel/random_shuffle.h: Likewise.
3584         * include/parallel/partial_sum.h: Likewise.
3585         * include/parallel/losertree.h: Run destructors; minor tweaks.
3586         * include/parallel/par_loop.h: Run destructors, fix memory
3587         allocations and deallocations.
3588         * testsuite/26_numerics/accumulate/48750.cc: New.
3589
3590         * testsuite/ext/profile/mutex_extensions_neg.cc: Do not run in
3591         parallel-mode to avoid spurious multiple errors.
3592
3593 2011-05-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
3594
3595         * include/std/functional (bind): Remove from overload set when first
3596         argument type might be a socket file descriptor.
3597         * testsuite/20_util/bind/socket.cc: New.
3598
3599 2011-05-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
3600
3601         PR libstdc++/48848
3602         * doc/xml/manual/status_cxx200x.xml: Update valarray status.
3603         * doc/html/*: Regenerate.
3604
3605 2011-05-02  Ollie Wild  <aaw@google.com>
3606
3607         * include/ext/sso_string_base.h (__sso_string_base<>::_M_construct):
3608         Fix unqualified lookup.
3609         (__sso_string_base<>::_M_assign): Likewise.
3610         (__sso_string_base<>::_M_reserve): Likewise.
3611         (__sso_string_base<>::_M_mutate): Likewise.
3612         (__sso_string_base<>::_M_erase): Likewise.
3613         * include/ext/vstring.h (__versa_string<>::replace): Likewise.
3614         (__versa_string<>::compare): Likewise.
3615         * include/ext/vstring.tcc (__versa_string<>::compare): Likewise.
3616
3617 2011-05-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
3618
3619         * doc/xml/manual/status_cxx200x.xml: Update to reflect current status
3620         and FDIS content.
3621         * doc/xml/manual/documentation_hacking.xml: Fix typo.
3622         * doc/html/*: Regenerate.
3623
3624 2011-04-30  Daniel Krugler  <daniel.kruegler@googlemail.com>
3625
3626         * include/std/type_traits (__is_default_constructible_atom,
3627         __is_default_constructible_safe<, true>,
3628         __is_direct_constructible_new_safe,
3629         __is_base_to_derived_ref<,, true>, __is_lvalue_to_rvalue_ref<,, true>,
3630         __is_direct_constructible_ref_cast, __is_direct_constructible,
3631         __is_nary_constructible): Simplify; add comments throughout.
3632
3633 2011-04-30  Paolo Carlini  <paolo.carlini@oracle.com>
3634
3635         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
3636         Adjust dg-error line numbers.
3637         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3638         Likewise.
3639         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
3640
3641 2011-04-30  Doug Kwan  <dougkwan@google.com>
3642
3643         * include/Makefile.am (install-freestanding-headers): Also install
3644         cxxabi_tweaks.h.
3645         * include/Makefile.in: Regenerate.
3646
3647 2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
3648
3649         PR libstdc++/48760
3650         * include/std/complex (complex<float>::complex(float, float),
3651         complex<double>::complex(double, double),
3652         complex<long double>::complex(long double, long double)): Use
3653         list-initialization in C++0x mode, initialize in the body in
3654         C++03 mode.
3655         * testsuite/26_numerics/complex/cons/48760.cc: New.
3656         * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
3657
3658 2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
3659
3660         * include/std/bitset (_Base_bitset(unsigned long long)): Minor
3661         tweak, remove redundant round braces.
3662
3663 2011-04-27  Paolo Carlini  <paolo.carlini@oracle.com>
3664
3665         * include/bits/move.h (move_if_noexcept): Add.
3666         * testsuite/20_util/move_if_noexcept/requirements/
3667         explicit_instantiation.cc: New.
3668         * testsuite/20_util/move_if_noexcept/1.cc: Likewise.
3669
3670 2011-04-25  Paolo Carlini  <paolo.carlini@oracle.com>
3671
3672         * include/std/type_traits (struct underlying_type): Add.
3673         * testsuite/20_util/underlying_type/requirements/typedefs-1.cc: New.
3674         * testsuite/20_util/underlying_type/requirements/typedefs-2.cc:
3675         Likewise.
3676         * testsuite/20_util/underlying_type/requirements/
3677         explicit_instantiation.cc: Likewise.
3678         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
3679         line number.
3680
3681 2011-04-24  Paolo Carlini  <paolo.carlini@oracle.com>
3682
3683         * include/parallel/multiway_merge.h: Uglify equally_split
3684         and equally_split_point throughout.
3685         * include/parallel/par_loop.h: Likewise.
3686         * include/parallel/equally_split.h: Likewise.
3687         * include/parallel/set_operations.h: Likewise.
3688         * include/parallel/unique_copy.h: Likewise.
3689         * include/parallel/multiway_mergesort.h: Likewise.
3690         * include/parallel/search.h: Likewise.
3691         * include/parallel/partial_sum.h: Likewise.
3692         * include/parallel/find.h: Likewise.
3693
3694 2011-04-24  Gerald Pfeifer  <gerald@pfeifer.com>
3695
3696         * doc/xml/manual/parallel_mode.xml: Fix link to libgomp online
3697         documentation.  Expand link text.
3698
3699 2011-04-24  Gerald Pfeifer  <gerald@pfeifer.com>
3700
3701         * libsupc++/cxxabi.h: Adjust link to FAQ entry.
3702
3703 2011-04-22  François Dumont  <francois.cppdevs@free.fr>
3704
3705         * testsuite/lib/libstdc++.exp (check_v3_target_time): Discard
3706         unused compilation result thanks to /dev/null.
3707         * testsuite/lib/libstdc++.exp (check_v3_target_debug_mode,
3708         check_v3_target_profile_mode, check_v3_target_normal_mode,
3709         check_v3_target_cstdint, check_v3_target_cmath,
3710         check_v3_target_atomic_builtins, check_v3_target_gthreads,
3711         check_v3_target_nanosleep, check_v3_target_sched_yield,
3712         check_v3_target_string_conversions, check_v3_target_swprintf,
3713         check_v3_target_binary_io): Use simple preprocessing rather than
3714         compilation. Discard unused preprocessing result thanks to /dev/null.
3715
3716 2011-04-20  Jim Meyering  <meyering@redhat.com>
3717
3718         * libsupc++/del_opnt.cc (operator delete): Remove useless
3719         if-before-free.
3720
3721 2011-04-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
3722
3723         PR libstdc++/48521
3724         * include/std/type_traits (result_of): Handle pointer to member.
3725         * include/std/functional (__invoke): Likewise.
3726         (_Function_to_function_pointer): Remove.
3727         (_Reference_wrapper_base): Provide nested types independent of
3728         unary_function and binary_function.
3729         (reference_wrapper::operator()): DR 2017.
3730         (ref(const A&&), cref(const A&&): Define as deleted.
3731         * include/std/future (async): Simplify SFINAE and use result_of to
3732         support pointer to member.
3733         * testsuite/20_util/reference_wrapper/invoke.cc: Test pointer to
3734         member.
3735         * testsuite/20_util/reference_wrapper/24803.cc: Likewise.
3736         * testsuite/20_util/reference_wrapper/typedefs.cc: Test for types
3737         instead of derivation from unary_function and binary_function.
3738         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
3739         * testsuite/20_util/reference_wrapper/invoke-2.cc: New.
3740         * testsuite/20_util/reference_wrapper/ref_neg.c: New.
3741         * testsuite/20_util/reference_wrapper/typedefs-3.c: New.
3742
3743 2011-04-19  Hans-Peter Nilsson  <hp@axis.com>
3744
3745         PR testsuite/48675
3746         * testsuite/20_util/hash/chi2_quality.cc (test_document_words): Stub
3747         this part if SAMPLES < 100000.
3748
3749 2011-04-18  Paolo Carlini  <paolo.carlini@oracle.com>
3750
3751         * include/std/type_traits (is_nothrow_default_constructible,
3752         is_nothrow_copy_constructible, is_nothrow_move_constructible,
3753         is_copy_constructible, is_move_constructible): Add.
3754         (has_nothrow_default_constructor, has_nothrow_copy_constructor):
3755         Remove.
3756         (is_nothrow_constructible): Adjust.
3757
3758         * testsuite/util/testsuite_tr1.h (ThrowDefaultClass,
3759         ThrowCopyConsClass, ThrowMoveConsClass, NoexceptDefaultClass,
3760         ExceptDefaultClass, NoexceptCopyConsClass, ExceptCopyConsClass,
3761         NoexceptMoveConsClass, ExceptMoveConsClass): Add in C++0x mode.
3762
3763         * testsuite/20_util/has_nothrow_default_constructor: Remove.
3764         * testsuite/20_util/has_nothrow_copy_constructor: Likewise.
3765
3766         * testsuite/20_util/is_nothrow_move_constructible/value.cc: Likewise.
3767         * testsuite/20_util/is_nothrow_move_constructible/requirements/
3768         typedefs.cc: Likewise.
3769         * testsuite/20_util/is_nothrow_move_constructible/requirements/
3770         explicit_instantiation.cc: Likewise.
3771         * testsuite/20_util/is_nothrow_copy_constructible/value.cc: Likewise.
3772         * testsuite/20_util/is_nothrow_copy_constructible/requirements/
3773         typedefs.cc: Likewise.
3774         * testsuite/20_util/is_nothrow_copy_constructible/requirements/
3775         explicit_instantiation.cc: Likewise.
3776         * testsuite/20_util/is_nothrow_default_constructible/value.cc:
3777         Likewise.
3778         * testsuite/20_util/is_nothrow_default_constructible/requirements/
3779         typedefs.cc: Likewise.
3780         * testsuite/20_util/is_nothrow_default_constructible/requirements/
3781         explicit_instantiation.cc: Likewise.
3782         * testsuite/20_util/is_move_constructible/value.cc: Likewise.
3783         * testsuite/20_util/is_move_constructible/requirements/typedefs.cc:
3784         Likewise.
3785         * testsuite/20_util/is_move_constructible/requirements/
3786         explicit_instantiation.cc: Likewise.
3787         * testsuite/20_util/is_copy_constructible/value.cc: Likewise.
3788         * testsuite/20_util/is_copy_constructible/requirements/typedefs.cc:
3789         Likewise.
3790         * testsuite/20_util/is_copy_constructible/requirements/
3791         explicit_instantiation.cc: Likewise.
3792
3793         * testsuite/20_util/is_default_constructible/value.cc: Add tests.
3794         * testsuite/20_util/is_nothrow_constructible/value.cc: Likewise.
3795
3796         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
3797         Adjust dg-error line numbers.
3798         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3799         Likewise.
3800         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
3801
3802 2011-04-17  Paolo Carlini  <paolo.carlini@oracle.com>
3803
3804         * testsuite/25_algorithms/partition/moveable.cc: Actually run
3805         it in parallel-mode for check-parallel.
3806
3807 2011-04-17  Daniel Krugler  <daniel.kruegler@googlemail.com>
3808             Paolo Carlini  <paolo.carlini@oracle.com>
3809
3810         PR libstdc++/48635 (again)
3811         * include/bits/unique_ptr.h (unique_ptr<>::unique_ptr(unique_ptr<>&&),
3812         unique_ptr<_Tp[]>::unique_ptr(unique_ptr<>&&),
3813         unique_ptr<>::operator=(unique_ptr<>&&),
3814         unique_ptr<_Tp[]>::operator=(unique_ptr<>&&)): Use forward<_Ep>, not
3815         forward<_Dp>, to forward the deleter.
3816         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: New.
3817
3818 2011-04-15  Daniel Krugler  <daniel.kruegler@googlemail.com>
3819             Paolo Carlini  <paolo.carlini@oracle.com>
3820
3821         PR libstdc++/48631
3822         * include/bits/unique_ptr.h (default_delete<_Tp[]>): Add deleted
3823         function call operator.
3824         * testsuite/20_util/default_delete/48631_neg.cc: New.
3825         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
3826         line numbers.
3827
3828 2011-04-15  Daniel Krugler  <daniel.kruegler@googlemail.com>
3829             Paolo Carlini  <paolo.carlini@oracle.com>
3830
3831         PR libstdc++/48635
3832         * include/bits/unique_ptr.h (unique_ptr<>::operator=(unique_ptr&&),
3833         unique_ptr<>::operator=(unique_ptr<>&&),
3834         unique_ptr<_Tp[],>::operator=(unique_ptr&&),
3835         unique_ptr<_Tp[],>::operator=(unique_ptr<>&&)): Forward the deleter
3836         instead of moving it.
3837         * testsuite/20_util/unique_ptr/assign/48635.cc: New.
3838
3839 2011-04-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3840
3841         * scripts/extract_symvers.pl: Handle NOTY.
3842
3843 2011-04-15  Paolo Carlini  <paolo.carlini@oracle.com>
3844
3845         * include/std/istream: Fix comments in the light of DR60 + N3168.
3846
3847 2011-04-13  Daniel Krugler  <daniel.kruegler@googlemail.com>
3848             Paolo Carlini  <paolo.carlini@oracle.com>
3849
3850         PR libstdc++/48526
3851         * include/std/type_traits (struct is_constructible): Re-implement,
3852         according to n3290.
3853         (struct is_default_constructible): Add.
3854         (struct is_destructible): Likewise.
3855         (struct __and_, __or_, __not_): Add and use throughout; reorder some
3856         facilities, other minor tweaks.
3857         * testsuite/util/testsuite_tr1.h: Add test types.
3858         * testsuite/20_util/is_constructible/value-2.cc: New.
3859         * testsuite/20_util/is_default_constructible/value.cc: Likewise.
3860         * testsuite/20_util/is_default_constructible/requirements/typedefs.cc:
3861         Likewise.
3862         * testsuite/20_util/is_default_constructible/requirements/
3863         explicit_instantiation.cc: Likewise.
3864         * testsuite/20_util/is_destructible/value.cc: Likewise.
3865         * testsuite/20_util/is_destructible/requirements/typedefs.cc:
3866         Likewise.
3867         * testsuite/20_util/is_destructible/requirements/
3868         explicit_instantiation.cc: Likewise.
3869         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
3870         dg-error line numbers.
3871         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3872         Likewise.
3873         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
3874         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
3875
3876 2011-04-13  Paolo Carlini  <paolo.carlini@oracle.com>
3877
3878         * testsuite/20_util/is_function/value.cc: Add, adapted from the tr
3879         testsuite.
3880         * testsuite/20_util/is_function/requirements/typedefs.cc: Likewise.
3881         * testsuite/20_util/is_function/requirements/
3882         explicit_instantiation.cc: Likewise.
3883         * testsuite/20_util/is_function/24808.cc: Likewise.
3884         * testsuite/20_util/is_function/35637.cc: Likewise.
3885         * testsuite/20_util/is_object/value.cc: Likewise.
3886         * testsuite/20_util/is_object/requirements/typedefs.cc: Likewise.
3887         * testsuite/20_util/is_object/requirements/explicit_instantiation.cc:
3888         : Likewise.
3889         * testsuite/20_util/is_object/24808.cc: Likewise.
3890         * testsuite/20_util/is_compound/value.cc: Likewise.
3891         * testsuite/20_util/is_compound/requirements/typedefs.cc: Likewise.
3892         * testsuite/20_util/is_compound/requirements/
3893         explicit_instantiation.cc: Likewise.
3894         * testsuite/20_util/is_member_object_pointer/value.cc: Likewise.
3895         * testsuite/20_util/is_member_object_pointer/requirements/
3896         typedefs.cc: Likewise.
3897         * testsuite/20_util/is_member_object_pointer/requirements/
3898         explicit_instantiation.cc: Likewise.
3899         * testsuite/20_util/is_fundamental/value.cc: Likewise.
3900         * testsuite/20_util/is_fundamental/requirements/typedefs.cc: Likewise.
3901         * testsuite/20_util/is_fundamental/requirements/
3902         explicit_instantiation.cc: Likewise.
3903         * testsuite/20_util/is_member_pointer/value.cc: Likewise.
3904         * testsuite/20_util/is_member_pointer/requirements/typedefs.cc:
3905         Likewise.
3906         * testsuite/20_util/is_member_pointer/requirements/
3907         explicit_instantiation.cc: Likewise.
3908         * testsuite/20_util/is_member_function_pointer/value.cc: Likewise.
3909         * testsuite/20_util/is_member_function_pointer/
3910         requirements/typedefs.cc: Likewise.
3911         * testsuite/20_util/is_member_function_pointer/requirements/
3912         explicit_instantiation.cc: Likewise.
3913
3914         * testsuite/20_util/is_convertible/value.cc: Minor tweak, adjust
3915         Copyright years.
3916
3917 2011-04-12  Takaya Saito  <gintensubaru@gmail.com>
3918
3919         PR libstdc++/48476
3920         * include/std/tuple (_Tuple_impl<>::_Tuple_impl(_Tuple_impl<>&&),
3921         _Tuple_impl<>::operator=(_Tuple_impl&&), _Tuple_impl<>::operator=
3922         (_Tuple_impl<>&&), tuple_cat): Use std::forward where appropriate.
3923         * testsuite/20_util/tuple/cons/48476.cc: New.
3924         * testsuite/20_util/tuple/48476.cc: Likewise.
3925         * testsuite/20_util/tuple/creation_functions/48476.cc: Likewise.
3926
3927 2011-04-12  Allan McRae  <allan@archlinux.org>
3928
3929         PR libstdc++/48566
3930         * testsuite/tr1/6_containers/unordered_map/requirements/
3931         iterator_null_neg.cc: Include <cstddef>.
3932         * testsuite/tr1/6_containers/unordered_set/requirements/
3933         iterator_null_neg.cc: Likewise.
3934         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc: Include
3935         <cstring>.
3936         * testsuite/util/testsuite_common_types.h: Include <limits>.
3937         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc:
3938         Adjust dg-error line numbers.
3939         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
3940         * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
3941         Likewise.
3942         * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
3943         Likewise.
3944         * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc:
3945         Likewise.
3946         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Likewise.
3947         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
3948
3949 2011-04-11  Jason Merrill  <jason@redhat.com>
3950
3951         * testsuite/20_util/is_convertible/value.cc: Adjust.
3952
3953 2011-04-11  Paolo Carlini  <paolo.carlini@oracle.com>
3954
3955         * testsuite/25_algorithms/inplace_merge/moveable.cc: Actually run
3956         it in parallel-mode for check-parallel.
3957         * testsuite/25_algorithms/rotate/moveable.cc: Likewise.
3958         * testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
3959         * testsuite/25_algorithms/remove/moveable.cc: Likewise.
3960         * testsuite/25_algorithms/sort_heap/check_compare_by_value.cc:
3961         Likewise.
3962         * testsuite/25_algorithms/unique/moveable.cc: Likewise.
3963         * testsuite/25_algorithms/remove_if/moveable.cc: Likewise.
3964         * testsuite/25_algorithms/heap/moveable.cc: Likewise.
3965
3966         * testsuite/25_algorithms/next_permutation/moveable.cc: Only skip
3967         the tests based on std::lexicographical_compare for check-parallel.
3968         * testsuite/25_algorithms/prev_permutation/moveable.cc: Likewise.
3969
3970 2011-04-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
3971
3972         PR libstdc++/48541
3973         * include/std/functional (_Base_manager::_M_get_pointer): Use
3974         addressof.
3975         * testsuite/20_util/function/48541.cc: New.
3976
3977 2011-04-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
3978
3979         PR libstdc++/48465
3980         * configure.ac (libtool_VERSION): Bump library version to 6:16:0.
3981         * configure: Regenerate.
3982         * config/abi/pre/gnu.ver (GLIBCXX_3.4.16): Export missing symbols.
3983         * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.16.
3984
3985 2011-04-06  Jeffrey Yasskin  <jyasskin@google.com>
3986
3987         * include/ext/algorithm (is_sorted): In C++0x mode import from
3988         namespace std.
3989         * include/ext/numeric (iota): In C++0x mode import from
3990         namespace std.
3991         * testsuite/ext/is_sorted/cxx0x.cc: New.
3992         * testsuite/ext/iota/cxx0x.cc: New.
3993
3994 2011-04-02  Jonathan Wakely  <redi@gcc.gnu.org>
3995
3996         PR libstdc++/48398
3997         * include/bits/unique_ptr.h (__tuple_type): Store pointer type.
3998         * testsuite/20_util/unique_ptr/modifiers/48398.cc: New.
3999         * testsuite/20_util/unique_ptr/requirements/pointer_type.cc: Remove
4000         unused parameter name.
4001
4002 2011-03-31  Jeffrey Yasskin  <jyasskin@google.com>
4003
4004         * libsupc++/exception_ptr.h: Forward-declare std::type_info.
4005         * libsupc++/nested_exception.h (__throw_with_nested): Remove a
4006         redundant default argument from std::__throw_with_nested.
4007
4008 2011-03-31  Paolo Carlini  <paolo.carlini@oracle.com>
4009
4010         PR libstdc++/48382
4011         * src/ctype.cc: Do not include <bits/ctype_noninline.h>.
4012         * src/Makefile.am: Add ctype_configure_char.cc to host_sources.
4013         * src/Makefile.in: Regenerate.
4014         * include/Makefile.am: Remove ctype_noninline.h from host_headers.
4015         * include/Makefile.in: Regenerate.
4016         * doc/xml/manual/internals.xml: Update.
4017         * config/os/newlib/ctype_noninline.h: Fixup and rename to...
4018         * config/os/newlib/ctype_configure_char.cc: ... this.
4019         * config/os/aix/ctype_noninline.h: Likewise.
4020         * config/os/aix/ctype_configure_char.cc: Likewise.
4021         * config/os/vxworks/ctype_noninline.h: Likewise.
4022         * config/os/vxworks/ctype_configure_char.cc
4023         * config/os/hpux/ctype_noninline.h: Likewise.
4024         * config/os/hpux/ctype_configure_char.cc: Likewise.
4025         * config/os/gnu-linux/ctype_noninline.h: Likewise.
4026         * config/os/gnu-linux/ctype_configure_char.cc: Likewise.
4027         * config/os/mingw32/ctype_noninline.h: Likewise.
4028         * config/os/mingw32/ctype_configure_char.cc: Likewise.
4029         * config/os/tpf/ctype_noninline.h: Likewise.
4030         * config/os/tpf/ctype_configure_char.cc: Likewise.
4031         * config/os/uclibc/ctype_noninline.h: Likewise.
4032         * config/os/uclibc/ctype_configure_char.cc: Likewise.
4033         * config/os/bionic/ctype_noninline.h: Likewise.
4034         * config/os/bionic/ctype_configure_char.cc: Likewise.
4035         * config/os/djgpp/ctype_noninline.h: Likewise.
4036         * config/os/djgpp/ctype_configure_char.cc: Likewise.
4037         * config/os/qnx/qnx6.1/ctype_noninline.h: Likewise.
4038         * config/os/qnx/qnx6.1/ctype_configure_char.cc: Likewise.
4039         * config/os/bsd/netbsd/ctype_noninline.h: Likewise.
4040         * config/os/bsd/netbsd/ctype_configure_char.cc: Likewise.
4041         * config/os/bsd/darwin/ctype_noninline.h: Likewise.
4042         * config/os/bsd/darwin/ctype_configure_char.cc: Likewise.
4043         * config/os/bsd/freebsd/ctype_noninline.h: Likewise.
4044         * config/os/bsd/freebsd/ctype_configure_char.cc: Likewise.
4045         * config/os/irix/irix6.5/ctype_noninline.h: Likewise.
4046         * config/os/irix/irix6.5/ctype_configure_char.cc: Likewise.
4047         * config/os/generic/ctype_noninline.h: Likewise.
4048         * config/os/generic/ctype_configure_char.cc: Likewise.
4049         * config/os/solaris/solaris2.7/ctype_noninline.h: Likewise.
4050         * config/os/solaris/solaris2.7/ctype_configure_char.cc: Likewise.
4051
4052 2011-03-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
4053
4054         * include/std/future (future::share): Add.
4055         (packaged_task::result_type): Remove as per LWG 2030.
4056         (packaged_task::packaged_task): Remove redundant constructors, as per
4057         LWG 1514.
4058         * testsuite/30_threads/future/members/share.cc: New.
4059         * testsuite/30_threads/packaged_task/requirements/typedefs.cc: Remove.
4060
4061 2011-03-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
4062
4063         * testsuite/28_regex/match_results/ctors/char/default.cc: Do not call
4064         members which require a fully established result state.
4065         * testsuite/28_regex/match_results/ctors/wchar_t/default.cc: Likewise.
4066
4067 2011-03-25  Paolo Carlini  <paolo.carlini@oracle.com>
4068
4069         * include/bits/random.h (negative_binomial_distribution<>::
4070         negative_binomial_distribution(_IntType, double),
4071         negative_binomial_distribution<>::
4072         negative_binomial_distribution(const param_type&)): Tweak
4073         construction of _M_gd.
4074         * include/bits/random.tcc (negative_binomial_distribution<>::
4075         operator()): Adjust.
4076
4077 2011-03-24  Paolo Carlini  <paolo.carlini@oracle.com>
4078
4079         * include/bits/random.h (negative_binomial_distribution<>::
4080         negative_binomial_distribution(_IntType, double),
4081         negative_binomial_distribution<>::
4082         negative_binomial_distribution(const param_type&)): Fix
4083         construction of _M_gd.
4084         * include/bits/random.tcc (negative_binomial_distribution<>::
4085         operator()): Fix computation, per Leger's algorithm.
4086         * testsuite/util/testsuite_random.h (discrete_pdf,
4087         negative_binomial_pdf, poisson_pdf, uniform_int_pdf): New.
4088         (binomial_pdf): Swap last two parameters.
4089         * testsuite/26_numerics/random/discrete_distribution/
4090         operators/values.cc: New.
4091         * testsuite/26_numerics/random/negative_binomial_distribution/
4092         operators/values.cc: Likewise.
4093         * testsuite/26_numerics/random/poisson_distribution/
4094         operators/values.cc: Likewise.
4095         * testsuite/26_numerics/random/uniform_int_distribution/
4096         operators/values.cc: Likewise.
4097         * testsuite/26_numerics/random/binomial_distribution/
4098         operators/values.cc: Adjust.
4099
4100 2011-03-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4101
4102         * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate.
4103         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
4104         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
4105         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
4106         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
4107
4108 2011-03-23  Matthias Klose  <doko@ubuntu.com>
4109
4110         * config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Regenerated.
4111
4112 2011-03-23  Uros Bizjak  <ubizjak@gmail.com>
4113
4114         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Regenerated.
4115
4116 2011-03-22  Joseph Myers  <joseph@codesourcery.com>
4117
4118         * configure.ac: Don't handle powerpc*-*-gnu*.
4119         * configure: Regenerate.
4120
4121 2011-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
4122
4123         * testsuite/21_strings/basic_string/cons/char/moveable2.cc: Tweak
4124         Copyright years.
4125         * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc:
4126         Likewise.
4127
4128 2011-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
4129
4130         * include/bits/shared_ptr.h (operator>, operator<=, operator>=): Add,
4131         per DR 1401.
4132         (operator==, operator!=, operator<): Fix per the letter of DR 1401.
4133         * include/bits/shared_ptr_base.h: Likewise for __shared_ptr.
4134         * include/bits/unique_ptr.h (operator==, operator!=, operator<,
4135         operator<=, operator>, operator>=): Fix per the letter of DR 1401.
4136         * testsuite/20_util/shared_ptr/comparison/dr1401.cc: New.
4137         * testsuite/20_util/unique_ptr/comparison/dr1401.cc: Likewise.
4138         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust.
4139
4140 2011-03-22  Jakub Jelinek  <jakub@redhat.com>
4141
4142         * config/abi/pre/gnu.ver (GLIBCXX_3.4.15): Export _ZNSsC2EOSs
4143         and _ZNSbIwSt11char_traitsIwESaIwEEC2EOS2_.
4144         * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerated.
4145         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
4146         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
4147         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
4148         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
4149         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
4150         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
4151         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
4152         Likewise.
4153         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
4154         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
4155         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
4156         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
4157         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
4158         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
4159         * testsuite/21_strings/basic_string/cons/char/moveable2.cc: New test.
4160         * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc: New
4161         test.
4162
4163 2011-03-21  Jack Howarth  <howarth@bromo.med.uc.edu>
4164
4165         * testsuite/lib/prune.exp (libstdc++-dg-prune): Prune "could not
4166         create compact unwind for" warnings.
4167
4168 2011-03-21  Jakub Jelinek  <jakub@redhat.com>
4169
4170         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
4171         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
4172         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
4173         Likewise.
4174         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
4175         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
4176         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
4177         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
4178         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
4179         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
4180         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
4181         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
4182         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
4183
4184         * testsuite/util/testsuite_abi.cc (check_version): Set incompatible
4185         even when adding symbols to CXXABI_1.3, GLIBCXX_LDBL_3.4 and
4186         CXXABI_LDBL_1.3 versions.
4187
4188 2011-03-21  Benjamin Kosnik  <bkoz@redhat.com>
4189
4190         * config/abi/pre/gnu.ver: Remove typeinfo name exports for C++0x types.
4191
4192 2011-03-21  Jakub Jelinek  <jakub@redhat.com>
4193
4194         * config/abi/pre/gnu.ver (CXXABI_1.3): Don't export _ZT[IS][PK]*[no].
4195         (CXXABI_1.3.5): Export _ZTI[PK]*[no].
4196
4197 2011-03-21  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4198
4199         * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on
4200         sparc*-sun-solaris2.10 && lp64.
4201
4202 2011-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
4203
4204         * testsuite/lib/libstdc++.exp (check_v3_target_c99_math): Rename
4205         to check_v3_target_cmath.
4206         * testsuite/lib/dg-options.exp (dg-require-c99_math): Rename
4207         to dg-require-cmath.
4208         * testsuite/26_numerics/random/binomial_distribution/
4209         operators/values.cc: Adjust.
4210
4211 2011-03-18  Diego Novillo  <dnovillo@google.com>
4212
4213         * testsuite/decimal/mixed-mode-arith_neg.cc: Rename from
4214         mixed-mode_neg.cc
4215         * testsuite/decimal/mixed-mode-cmp_neg.cc: Factor out of
4216         mixed-mode-arith_neg.cc
4217
4218 2011-03-18  Paolo Carlini  <paolo.carlini@oracle.com>
4219
4220         * testsuite/util/testsuite_random.h: New.
4221         * testsuite/lib/libstdc++.exp (check_v3_target_c99_math): Add.
4222         * testsuite/lib/dg-options.exp (dg-require-c99_math): Likewise.
4223         * testsuite/26_numerics/random/bernoulli_distribution/
4224         operators/values.cc: New.
4225         * testsuite/26_numerics/random/binomial_distribution/
4226         operators/values.cc: Likewise.
4227         * testsuite/26_numerics/random/geometric_distribution/
4228         operators/values.cc: Likewise.
4229
4230 2011-03-16  Benjamin Kosnik  <bkoz@redhat.com>
4231
4232         * config/abi/pre/gnu.ver: Add base destructors for stdexcept classes.
4233         * testsuite/19_diagnostics/stdexcept.cc: New.
4234
4235 2011-03-15  Benjamin Kosnik  <bkoz@redhat.com>
4236
4237         * include/std/thread: Revert.
4238         * src/thread.cc: Same.
4239         * config/abi/pre/gnu.ver: Same.
4240
4241 2011-03-15  Doug Kwan  <dougkwan@google.com>
4242
4243         PR libstdc++/48123
4244         * include/Makefile.am (install-freestanding-headers): Install
4245         cpu_defines.h
4246         * include/Makefile.in: Regenerate.
4247
4248 2011-03-15  Benjamin Kosnik  <bkoz@redhat.com>
4249
4250         * config/abi/pre/gnu.ver: Make nested_exception exports super clear.
4251         Move bad_function_call exports from CXXABI_1.3.5 to GLIBCXX_3.4.15.
4252
4253 2011-03-14  Benjamin Kosnik  <bkoz@redhat.com>
4254
4255         PR libstdc++/48130
4256         * src/future.cc: Guard definitions.
4257         * libsupc++/nested_exception.cc: Same.
4258
4259 2011-03-14  Benjamin Kosnik  <bkoz@redhat.com>
4260
4261         * src/Makefile.am: Add functional.cc, shared_ptr.cc.
4262         * src/Makefile.in: Regenerate.
4263         * libsupc++/Makefile.am: Add nested_exception.cc.
4264         * libsupc++/Makefile.in: Regenerate.
4265         * src/system_error.cc: Add ctor and dtor definitions for error_category.
4266         * src/functional.cc: New. Add dtor definition for bad_function_call.
4267         * src/stdexcept.cc: Add dtor definitions for domain_error,
4268         invalid_argument, length_error, out_of_range, range_error,
4269         overflow_error, underflow_error.
4270         * src/future.cc: Add dtor definition for __future_base::_Result_base.
4271         * src/shared_ptr.cc: New. Add dtor definition for bad_weak_ptr.
4272         * src/thread.cc: Add dtor for thread::_Impl_base.
4273         * include/std/system_error: Adjust.
4274         * include/std/stdexcept: Same.
4275         * include/std/future: Same.
4276         * include/std/functional: Same.
4277         * include/std/thread: Same.
4278         * include/bits/shared_ptr_base.h: Same.
4279         * libsupc++/nested_exception.cc: New. Add dtor for nested_exception.
4280         * libsupc++/nested_exception.h: Adjust.
4281         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
4282         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same.
4283         * config/abi/pre/gnu.ver: Add new exports.
4284
4285 2011-03-14  Benjamin Kosnik  <bkoz@redhat.com>
4286
4287         * include/bits/regex_compiler.h: Nest namespace versioning.
4288         * include/bits/regex_grep_matcher.tcc: Same.
4289         * include/bits/regex_grep_matcher.h: Same.
4290         * include/bits/regex_cursor.h: Same.
4291         * include/bits/regex_nfa.h: Same.
4292         * include/bits/regex_nfa.tcc: Same.
4293
4294         * include/bits/regex_grep_matcher.h: Version forward declarations.
4295         * include/bits/c++config: Add namespace association for __regex.
4296         * include/bits/regex.h: Make sub_match consistent.
4297
4298 2011-03-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4299
4300         * doc/xml/manual/abi.xml: Replace docs.sun.com URLs by their OTN
4301         equivalents.
4302         * doc/html/manual/abi.html: Regenerate.
4303
4304 2011-03-14  Tom Tromey  <tromey@redhat.com>
4305
4306         * python/libstdcxx/v6/printers.py (_use_gdb_pp): New global.
4307         Try to import `gdb.printing' module.
4308         (UniquePointerPrinter.__init__): Add 'typename' argument.
4309         (StdSlistPrinter.__init__): Likewise.
4310         (StdSlistIteratorPrinter.__init__): Likewise.
4311         (StdVectorIteratorPrinter.__init__): Likewise.
4312         (StdRbtreeIteratorPrinter.__init__): Likewise.
4313         (StdDebugIteratorPrinter.__init__): Likewise.
4314         (StdDequeIteratorPrinter.__init__): Likewise.
4315         (StdStringPrinter.__init__): Likewise.
4316         (RxPrinter, Printer): New class.
4317         (libstdcxx_printer): New global.
4318         (register_libstdcxx_printers): Rewrite.
4319         (build_libstdcxx_dictionary): Rewrite.
4320         (pretty_printers_dict): Remove.
4321
4322 2011-03-14  Andrey Zholos  <aaz@althenia.net>
4323
4324         PR libstdc++/48114
4325         * include/bits/random.h (geometric_distribution): Correct formula
4326         in comment, per C++0x.
4327         (geometric_distribution<>::param_type::param_type(double)): Fix check.
4328         (geometric_distribution<>::param_type::_M_initialize):
4329         Store log(1 - p).
4330         * include/bits/random.tcc (geometric_distribution<>::operator()):
4331         Fix computation.
4332         (binomial_distribution<>::operator()): Likewise.
4333
4334 2011-03-09  Paolo Carlini  <paolo.carlini@oracle.com>
4335
4336         * testsuite/util/testsuite_rvalref.h: Minor tweaks.
4337
4338 2011-03-09  Jonathan Wakely  <redi@gcc.gnu.org>
4339             Chris Jefferson  <chris@bubblescope.net>
4340             Paolo Carlini  <paolo.carlini@oracle.com>
4341
4342         * testsuite/util/testsuite_rvalref.h (rvalstruct_compare_by_value):
4343         New.
4344         * testsuite/25_algorithms/sort_heap/check_compare_by_value.cc:
4345         Likewise.
4346         * testsuite/25_algorithms/partial_sort/check_compare_by_value:
4347         Likewise.
4348         * testsuite/25_algorithms/stable_sort/check_compare_by_value.cc:
4349         Likewise.
4350         * testsuite/25_algorithms/sort/check_compare_by_value: Likewise.
4351
4352 2011-03-09  Chris Jefferson  <chris@bubblescope.net>
4353
4354         PR libstdc++/48038
4355         * include/bits/stl_algo.h (__merge_backward): Rename to
4356         __move_merge_backward and change to always move rather than copy.
4357         (__move_merge): New function similar to std::merge except values
4358         are moved instead of copied.
4359         (__merge_adaptive, __merge_sort_loop): Change from using std::merge
4360         and __merge_backward to __move_merge and __move_merge_backward.
4361
4362 2011-03-07  Jason Merrill  <jason@redhat.com>
4363
4364         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust
4365         expected errors.
4366
4367 2011-03-07  Benjamin Kosnik  <bkoz@redhat.com>
4368             Matthias Klose  <doko@ubuntu.com>
4369             Jonathan Wakely  <redi@gcc.gnu.org>
4370
4371         PR libstdc++/47145
4372         * acinclude.m4 (GLIBCXX_CONFIGURE_DOCBOOK): Define.
4373         * configure.ac: Use it.
4374         * doc/Makefile.am (XSL_STYLE_DIR): Set at configure time.
4375         * configure: Regenerate.
4376         * doc/Makefile.in: Regenerate.
4377
4378 2011-03-04  Benjamin Kosnik  <bkoz@chula>
4379
4380         * src/Makefile.am (inst_sources): Make source instantion files
4381         conditional.
4382         (XTEMPLATE_FLAGS): Make -fno-implicit-templates conditional.
4383         * src/Makefile.in: Regenerate.
4384         * src/valarray-inst.cc: Move to..
4385         * src/valarray.cc: ...this.
4386         * acinclude.m4 (GLIBCXX_ENABLE_EXTERN_TEMPLATE]): Define.
4387         * configure.ac (GLIBCXX_ENABLE_EXTERN_TEMPLATE): Use it.
4388         * configure: Regenerate.
4389         * include/Makefile.am (stamp-extern-template): Add.
4390         * include/Makefile.in: Regenerate.
4391
4392         * doc/xml/manual/configure.xml: Document --enable-extern-template.
4393
4394         * include/bits/locale_classes.tcc: Adjust comment.
4395         * include/bits/locale_facets.tcc: Same.
4396         * include/bits/basic_ios.tcc: Same.
4397         * include/bits/istream.tcc: Same.
4398         * include/bits/codecvt.h: Same.
4399         * include/bits/ostream.tcc: Same.
4400         * include/bits/sstream.tcc: Same.
4401         * include/bits/c++config: Same.
4402         * include/bits/basic_string.tcc: Same.
4403         * include/bits/ostream_insert.h: Same.
4404         * include/bits/locale_facets_nonio.tcc: Same.
4405         * include/bits/streambuf.tcc: Same.
4406         * include/bits/allocator.h: Same.
4407         * include/bits/fstream.tcc: Same.
4408
4409         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
4410
4411 2011-03-02  Benjamin Kosnik  <bkoz@redhat.com>
4412
4413         * testsuite/Makefile.am: Make clean fixups.
4414         * testsuite/Makefile.in: Regenerate.
4415
4416 2011-03-02  Marc Glisse  <marc.glisse@normalesup.org>
4417
4418         * include/std/ratio (ratio_less): Add comments.
4419
4420 2011-03-02  Marc Glisse  <marc.glisse@normalesup.org>
4421
4422         PR libstdc++/47913
4423         * include/std/ratio (ratio_add): Avoid denominator overflow.
4424         * testsuite/20_util/ratio/operations/47913.cc: New.
4425
4426 2011-02-28  Benjamin Kosnik  <bkoz@redhat.com>
4427
4428         * testsuite/20_util/hash/chi2_quality.cc: Use C++0x mode on simulators.
4429         * testsuite/20_util/hash/quality.cc: Same.
4430
4431 2011-02-28  Paolo Carlini  <paolo.carlini@oracle.com>
4432
4433         PR libstdc++/47921
4434         * include/std/streambuf (basic_streambuf<>::__safe_gbump,
4435         __safe_pbump): Add.
4436         * include/bits/streambuf.tcc (basic_streambuf<>::xgetn,
4437         xputn): Use the latter.
4438         * include/bits/streambuf_iterator.h: Likewise.
4439         * src/strstream.cc: Likewise.
4440         * src/streambuf.cc: Likewise.
4441         * src/compatibility.cc: Likewise.
4442         * src/istream.cc: Likewise.
4443         * include/bits/fstream.tcc (basic_filebuf<>::xsgetn): Use setg
4444         instead of gbump.
4445         * include/std/sstream (basic_stringbuf<>::_M_pbump): Add.
4446         * include/bits/sstream.tcc (basic_stringbuf<>::seekoff,
4447         seekpos, _M_sync): Use setg, setp, and _M_pbump.
4448         * config/abi/pre/gnu.ver: Tweak.
4449
4450 2011-02-28  Paolo Carlini  <paolo.carlini@oracle.com>
4451
4452         * testsuite/20_util/ratio/comparisons/comp3.cc: New.
4453
4454 2011-02-28  Marc Glisse  <marc.glisse@normalesup.org>
4455
4456         PR libstdc++/42622
4457         * include/std/ratio (ratio_less): Reimplement to never overflow.
4458         * testsuite/20_util/ratio/comparisons/comp2.cc: Extend.
4459
4460 2011-02-24  Benjamin Kosnik  <bkoz@redhat.com>
4461
4462         * testsuite/18_support/type_info/fundamental.cc: New.
4463
4464         * testsuite/Makefile.am: Make clean fixups.
4465         * testsuite/Makefile.in: Regenerate.
4466
4467 2011-02-19  François Dumont  <francois.cppdevs@free.fr>
4468
4469         * include/debug/string (basic_string::insert): Add iterator check and
4470         pass normal iterator to normal insert.
4471         * include/debug/macros.h (__glibcxx_check_heap,
4472         __glibcxx_check_heap_pred): Remove __glibcxx_check_valid_range,
4473         already done.
4474
4475 2011-02-17  Paolo Carlini  <paolo.carlini@oracle.com>
4476
4477         PR libstdc++/47776
4478         * testsuite/ext/vstring/hash/char/1.cc: Fix.
4479         * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
4480
4481 2011-02-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
4482
4483         * include/bits/regex.h (basic_regex::traits_type): Add typedef.
4484         (basic_regex::basic_regex(basic_regex&&)): Add noexcept.
4485         (basic_regex::operator=(basic_regex&&)): Likewise.
4486         (basic_regex::assign(basic_regex&&)): Likewise.
4487         (operator==(sub_match,...)): Implement DR 1181.
4488         (match_results::match_results(match_results&&)): Define.
4489         (match_results::operator=(const match_results&)): Fix parameter type.
4490         (match_results::operator=(match_results&&)): Define.
4491
4492 2011-02-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
4493
4494         PR libstdc++/47724
4495         * include/bits/regex_compiler.h (_Scanner::_M_advance): Do not treat
4496         line anchors as metacharacters.
4497         * testsuite/28_regex/basic_regex/ctors/47724.cc: New.
4498
4499 2011-02-16  Paolo Carlini  <paolo.carlini@oracle.com>
4500
4501         PR libstdc++/47773
4502         * include/ext/vstring.h (hash<__gnu_cxx::__vstring>,
4503         hash<__gnu_cxx::__wvstring>, hash<__gnu_cxx::__u16vstring>,
4504         hash<__gnu_cxx::__u32vstring>): Add.
4505         * testsuite/ext/vstring/hash/char/1.cc: New.
4506         * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
4507
4508 2011-02-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
4509
4510         * include/bits/regex.h (match_results::format): Use char_traits.
4511
4512 2011-02-16  Benjamin Kosnik  <bkoz@redhat.com>
4513
4514         * include/std/atomic: Remove atomic_address, uplift to N3225.
4515         * include/bits/atomic_0.h: Same.
4516         * include/bits/atomic_2.h: Same.
4517         * include/bits/atomic_base.h: Same.
4518         * testsuite/29_atomics/atomic_address/*: Delete.
4519
4520 2011-02-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
4521
4522         * include/bits/regex.h (sub_match::sub_match): Add.
4523         (match_results::ready): Add.
4524         (match_results::empty): Adjust.
4525         (match_results::length): Add missing dereference.
4526         (match_results::operator[],prefix,suffix): Add debug mode checks.
4527         (match_results::cend): Re-use end().
4528         (match_results::format): Adjust signatures.
4529         (operator==(match_results,match_results)): Implement.
4530         * include/bits/regex_compiler.h (_Scanner_base): Use constexpr.
4531         * include/bits/regex_constants.h (syntax_option_type): Likewise.
4532         * include/bits/regex_grep_matcher.h: Fix comment typo.
4533         (_SpecializedResults::_SpecializedResults): Simplify.
4534         * include/bits/regex_cursor.h: Fix comment typo.
4535         * include/bits/regex_nfa.h: Likewise.
4536         * testsuite/28_regex/basic_regex/ctors/basic/string_range_01_02_03.cc:
4537         Fix error code, remove xfail.
4538         * testsuite/28_regex/basic_regex/ctors/extended/
4539         string_range_01_02_03.cc: Likewise.
4540
4541 2011-02-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
4542
4543         * include/bits/regex_compiler.h: Remove unnecessary bind() calls.
4544         * include/bits/regex_nfa.h: Remove unnecessary base classes.
4545
4546 2011-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4547
4548         * configure: Regenerate.
4549
4550 2011-02-12  Paolo Carlini  <paolo.carlini@oracle.com>
4551
4552         PR libstdc++/47709
4553         * include/ext/algorithm (is_heap): In C++0x mode import from
4554         namespace std.
4555         * testsuite/ext/is_heap/47709.cc: New.
4556
4557 2011-02-12  Jakub Jelinek  <jakub@redhat.com>
4558             Jonathan Wakely  <jwakely.gcc@gmail.com>
4559
4560         PR libstdc++/47662
4561         * testsuite/17_intro/headers/c++200x/operator_names.cc: New.
4562         * testsuite/17_intro/headers/c++1998/operator_names.cc: Add comment.
4563
4564 2011-02-12  Paolo Carlini  <paolo.carlini@oracle.com>
4565
4566         * include/tr1/cmath (fabs): Define.
4567         * include/tr1/complex (acos, asin, atan): Avoid duplicate definitions
4568         in C++0x mode.
4569
4570 2011-02-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
4571
4572         * testsuite/tr1/headers/c++200x/complex.cc: New.
4573
4574 2011-02-11  Johannes Singler  <singler@kit.edu>
4575
4576         PR libstdc++/47433
4577         * include/parallel/losertree.h
4578         (_LoserTreeUnguarded<>::__delete_min_insert):
4579         Add missing "using std::swap;", as for other variants.
4580
4581 2011-02-10  Benjamin Kosnik  <bkoz@redhat.com>
4582
4583         * src/Makefile.am (sources): Add regex.cc.
4584         * src/Makefile.in: Regenerate.
4585         * src/regex.cc: New.
4586         * include/bits/regex_error.h (error_type): Use constexpr.
4587         (regex_error): Move ctor and dtor out of line.
4588
4589         * testsuite/28_regex/03_requirements: To...
4590         * testsuite/28_regex/requirements: ... this.
4591         * testsuite/28_regex/04_header: To...
4592         * testsuite/28_regex/headers: ... this.
4593         * testsuite/28_regex/05_constants: To...
4594         * testsuite/28_regex/constants: ... this.
4595         * testsuite/28_regex/06_exception_type: To...
4596         * testsuite/28_regex/regex_error: ... this.
4597         * testsuite/28_regex/07_traits: To...
4598         * testsuite/28_regex/traits: ... this.
4599         * testsuite/28_regex/08_basic_regex: To...
4600         * testsuite/28_regex/basic_regex: ... this.
4601         * testsuite/28_regex/09_sub_match: To...
4602         * testsuite/28_regex/sub_match: ... this.
4603         * testsuite/28_regex/10_match_results: To...
4604         * testsuite/28_regex/match_results: ... this.
4605         * testsuite/28_regex/11_algorithms: To...
4606         * testsuite/28_regex/algorithms: ... this.
4607         * testsuite/28_regex/12_iterators: To...
4608         * testsuite/28_regex/iterators: ... this.
4609
4610 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
4611
4612         PR libstdc++/47662
4613         * include/bits/c++config: Do not use alternative token.
4614         * testsuite/17_intro/headers/c++1998/operator_names.cc: New.
4615
4616 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
4617
4618         * src/future.cc (future_error_category::message): Handle no_state.
4619
4620 2011-02-10  Paolo Carlini  <paolo.carlini@oracle.com>
4621
4622         * testsuite/23_containers/multimap/modifiers/erase/47628.cc: Do
4623         not test in C++0x mode.
4624         * testsuite/23_containers/map/modifiers/erase/47628.cc: Likewise.
4625         * testsuite/20_util/headers/utility/synopsis.cc: Tweak to work
4626         in C++0x mode too.
4627
4628 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
4629
4630         * doc/xml/manual/status_cxx200x.xml: Update.
4631         * doc/html/*: Regenerate.
4632
4633 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
4634
4635         * doc/xml/manual/debug.xml: Improve data race docs.
4636
4637 2011-02-09  Paolo Carlini  <paolo.carlini@oracle.com>
4638
4639         PR libstdc++/47668
4640         * include/debug/map.h (map): Remove unnecessary using-declaration.
4641         * include/debug/multimap.h (multimap): Likewise.
4642         * include/profile/map.h (map): Likewise.
4643         * include/profile/multimap.h (multimap): Likewise.
4644
4645 2011-02-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
4646
4647         PR libstdc++/43863
4648         * libsupc++/guard.cc (recursive_init_error::~recursive_init_error):
4649         Move to ...
4650         * libsupc++/guard_error.cc: ... new file.
4651         * libsupc++/Makefile.am: Update.
4652         * libsupc++/Makefile.in: Regenerate.
4653
4654 2011-02-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
4655
4656         * include/std/future (packaged_task::operator bool): Rename to...
4657         (packaged_task::valid): ...this.
4658         * testsuite/30_threads/packaged_task/cons/1.cc: Adjust.
4659         * testsuite/30_threads/packaged_task/cons/2.cc: Adjust.
4660         * testsuite/30_threads/packaged_task/cons/move.cc: Adjust.
4661         * testsuite/30_threads/packaged_task/cons/move_assign.cc: Adjust.
4662         * testsuite/30_threads/packaged_task/cons/alloc.cc: Adjust.
4663         * testsuite/30_threads/packaged_task/members/invoke.cc: Adjust.
4664         * testsuite/30_threads/packaged_task/members/reset.cc: Adjust.
4665         * testsuite/30_threads/packaged_task/members/reset2.cc: Adjust.
4666         * testsuite/30_threads/packaged_task/members/swap.cc: Adjust.
4667         * testsuite/30_threads/packaged_task/members/boolconv.cc: Remove.
4668         * testsuite/30_threads/packaged_task/members/valid.cc: Add.
4669
4670 2011-02-09  Paolo Carlini  <paolo.carlini@oracle.com>
4671
4672         * doc/xml/manual/io.xml: Fix typo.
4673         * doc/html/manual/streambufs.html: Likewise.
4674
4675 2011-02-09  Paolo Carlini  <paolo.carlini@oracle.com>
4676
4677         * config/abi/pre/gnu.ver: Fix.
4678
4679 2011-02-08  Benjamin Kosnik  <bkoz@redhat.com>
4680
4681         * doc/xml/manual/appendix_porting.xml: Add doc section.
4682         * doc/xml/manual/appendix_contributing.xml: Split out doc bits to...
4683         * doc/xml/manual/documentation_hacking.xml: ...here.
4684
4685         * doc/xml/manual/debug_mode.xml: Adjust.
4686         * doc/xml/manual/prerequisites.xml: Adjust.
4687         * doc/Makefile.am (xml_sources): Add dot files,
4688         documentation_hacking.xml.
4689         * doc/Makefile.in: Regenerate.
4690
4691         * doc/xml/manual/build_hacking.xml: Use absolute paths for images.
4692         * doc/xml/images/confdeps.pdf: Add.
4693
4694         * doc/html/*: Regenerate.
4695
4696 2011-02-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
4697
4698         * doc/xml/gnu/fdl-1.2.xml: Remove.
4699         * doc/xml/gnu/gpl-2.0.xml: Remove.
4700         * doc/Makefile.am: Update.
4701         * doc/Makefile.in: Regenerate.
4702
4703 2011-02-07  Paolo Carlini  <paolo.carlini@oracle.com>
4704
4705         PR libstdc++/47628
4706         * include/bits/stl_tree.h (_Rb_tree::erase(iterator), erase(iterator,
4707         iterator)): Add back in C++03 mode.
4708         * testsuite/23_containers/map/modifiers/erase/47628.cc: New.
4709         * testsuite/23_containers/multimap/modifiers/erase/47628.cc: Likewise.
4710
4711 2011-02-07  Benjamin Kosnik  <bkoz@redhat.com>
4712
4713         PR libstdc++/47560 try two
4714         * config/os/hpux/os_defines.h: Guard for C++.
4715
4716 2011-02-07  Gerald Pfeifer  <gerald@pfeifer.com>
4717
4718         * doc/xml/faq.xml: Adjust link to bug database.
4719         Remove old item on broken header files.
4720
4721 2011-02-04  Benjamin Kosnik  <bkoz@redhat.com>
4722
4723         * include/bits/regex_error.h (__throw_regex_error): Not inline.
4724         * src/functexcept.cc: Add definition.
4725         * config/abi/pre/gnu.ver: Export.
4726
4727 2011-02-04  Ralf Corsépius <ralf.corsepius@rtems.org>
4728
4729         * crossconfig.m4 (GLIBCXX_CROSSCONFIG): Add *-rtems*.
4730         * configure: Regenerate.
4731
4732 2011-02-01  Paolo Carlini  <paolo.carlini@oracle.com>
4733
4734         PR libstdc++/46914
4735         * include/bits/atomic_0.h (_ATOMIC_STORE_, _ATOMIC_MODIFY_,
4736         _ATOMIC_CMPEXCHNG_): Rename __v -> __w, and __m -> __n, to
4737         avoid name conflicts.
4738
4739 2011-02-01  Benjamin Kosnik  <bkoz@redhat.com>
4740
4741         PR libstdc++/47560
4742         * config/os/hpux/os_defines.h: Remove use of macros on namespace.
4743
4744 2011-02-01  Benjamin Kosnik  <bkoz@redhat.com>
4745
4746         * scripts/run_doxygen: Allow doxygen 1.7.0 again.
4747         * doc/doxygen/user.cfg.in (PDF_HYPERLINKS): Re-enable.
4748         (COMPACT_LATEX): Enable.
4749
4750         * include/profile/impl/profiler_container_size.h: Adjust doxygen markup.
4751         * include/profile/impl/profiler_hash_func.h: Same.
4752         * include/bits/hashtable.h: Same.
4753         * include/backward/auto_ptr.h: Same.
4754         * include/backward/strstream: Same.
4755         * include/backward/backward_warning.h: Same.
4756         * include/backward/binders.h: Same.
4757
4758 2011-02-01  Gerald Pfeifer  <gerald@pfeifer.com>
4759
4760         * doc/xml/manual/debug.xml: Use GDB instead of gdb.
4761         Adjust link to GDB manual.
4762
4763 2011-01-31  Benjamin Kosnik  <bkoz@redhat.com>
4764
4765         * include/bits/c++config (_GLIBCXX_DEPRECATED): To
4766         _GLIBCXX_USE_DEPRECATED.
4767         (_GLIBCXX_DEPRECATED_ATTR): To _GLIBCXX_DEPRECATED.
4768         * doc/xml/manual/using.xml: Same.
4769         * include/std/memory: Same.
4770         * include/std/streambuf: Same.
4771         * include/bits/shared_ptr.h: Same.
4772         * include/bits/unique_ptr.h: Same.
4773         * include/bits/shared_ptr_base.h: Same.
4774         * include/bits/stl_function.h: Same.
4775         * include/tr1/shared_ptr.h: Same.
4776         * include/backward/auto_ptr.h: Same.
4777         * include/backward/binders.h: Same.
4778
4779 2011-01-31  Paolo Carlini  <paolo.carlini@oracle.com>
4780
4781         * doc/html/ext/lwg-active.html: Update to Revision D73.
4782         * doc/html/ext/lwg-closed.html: Likewise.
4783         * doc/html/ext/lwg-defects.html: Likewise.
4784         * doc/xml/manual/intro.xml: Update status of issues 408, 539, 865.
4785
4786 2011-01-30  Benjamin Kosnik  <bkoz@redhat.com>
4787
4788         PR libstdc++/36104 part four
4789         * include/bits/c++config (_GLIBCXX_STD): Remove.
4790         (_GLIBCXX_STD_D, _GLIBCXX_PR): Now _GLIBCXX_STD_C.
4791         (_GLIBCXX_P): Now _GLIBCXX_STD_A.
4792         (_GLIBCXX_NAMESPACE_DEBUG, _GLIBCXX_NAMESPACE_PARALLEL,
4793          _GLIBCXX_NAMESPACE_PROFILE, _GLIBCXX_NAMESPACE_VERSION): Remove.
4794         (_GLIBCXX_INLINE_DEBUG, _GLIBCXX_INLINE_PARALLEL,
4795          _GLIBCXX_INLINE_PROFILE): Remove.
4796         (_GLIBCXX_BEGIN_NAMESPACE(X)): Remove.
4797         (_GLIBCXX_END_NAMESPACE): Remove.
4798         (_GLIBCXX_BEGIN_NESTED_NAMESPACE(X, Y)): Remove.
4799         (_GLIBCXX_END_NESTED_NAMESPACE): Remove.
4800         (_GLIBCXX_BEGIN_NAMESPACE_ALGO): Add.
4801         (_GLIBCXX_END_NAMESPACE_ALGO): Add.
4802         (_GLIBCXX_BEGIN_NAMESPACE_CONTAINER): Add.
4803         (_GLIBCXX_END_NAMESPACE_CONTAINER): Add.
4804         (_GLIBCXX_BEGIN_NAMESPACE_VERSION): Add.
4805         (_GLIBCXX_END_NAMESPACE_VERSION): Add.
4806         (_GLIBCXX_BEGIN_LDBL_NAMESPACE): To _GLIBCXX_BEGIN_NAMESPACE_LDBL.
4807         (_GLIBCXX_END_LDBL_NAMESPACE): To _GLIBCXX_END_NAMESPACE_LDBL.
4808         (_GLIBCXX_VISIBILITY_ATTR): Revert to _GLIBCXX_VISIBILITY.
4809         * include/*: Use new macros for namespace scope.
4810         * config/*: Same.
4811         * src/*: Same.
4812
4813         * src/Makefile.am (sources): Remove debug_list.cc, add
4814         compatibility-debug_list-2.cc.
4815         (parallel_sources): Remove parallel_list.cc, add
4816         compatibility-parallel_list-2.cc.
4817         (compatibility-parallel_list-2.[o,lo]): New rule.
4818         * src/Makefile.in: Regenerate.
4819         * src/debug_list.cc: Remove.
4820         * src/parallel_list.cc: Remove.
4821         * src/compatibility-list-2.cc: New.
4822         * src/compatibility-debug_list-2.cc: New.
4823         * src/compatibility-parallel_list-2.cc: New.
4824
4825         * doc/doxygen/user.cfg.in: Adjust macros.
4826
4827         * testsuite/20_util/auto_ptr/assign_neg.cc: Adjust line numbers, macros.
4828         * testsuite/20_util/declval/requirements/1_neg.cc: Same.
4829         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Same.
4830         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same.
4831         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same.
4832         * testsuite/20_util/forward/c_neg.cc: Same.
4833         * testsuite/20_util/forward/f_neg.cc: Same.
4834         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same.
4835         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
4836         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Same.
4837         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Same.
4838         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Same.
4839         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same.
4840         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Same.
4841         * testsuite/23_containers/deque/requirements/dr438/
4842         constructor_1_neg.cc: Same.
4843         * testsuite/23_containers/deque/requirements/dr438/
4844         constructor_2_neg.cc: Same.
4845         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
4846         * testsuite/23_containers/forward_list/capacity/1.cc: Same.
4847         * testsuite/23_containers/forward_list/requirements/dr438/
4848         assign_neg.cc: Same.
4849         * testsuite/23_containers/forward_list/requirements/dr438/
4850         constructor_1_neg.cc: Same.
4851         * testsuite/23_containers/forward_list/requirements/dr438/
4852         constructor_2_neg.cc: Same.
4853         * testsuite/23_containers/forward_list/requirements/dr438/
4854         insert_neg.cc: Same.
4855         * testsuite/23_containers/list/capacity/29134.cc: Same.
4856         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Same.
4857         * testsuite/23_containers/list/requirements/dr438/
4858         constructor_1_neg.cc: Same.
4859         * testsuite/23_containers/list/requirements/dr438/
4860         constructor_2_neg.cc: Same.
4861         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
4862         * testsuite/23_containers/vector/bool/capacity/29134.cc: Same.
4863         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: Same.
4864         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Same.
4865         * testsuite/23_containers/vector/requirements/dr438/
4866         constructor_1_neg.cc: Same.
4867         * testsuite/23_containers/vector/requirements/dr438/
4868         constructor_2_neg.cc: Same.
4869         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same.
4870         * testsuite/25_algorithms/sort/35588.cc: Same.
4871         * testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
4872         * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
4873         * testsuite/ext/profile/mutex_extensions_neg.cc: Same.
4874         * testsuite/ext/profile/profiler_algos.cc: Same.
4875         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Same.
4876         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Same.
4877         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Same.
4878         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Same.
4879         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
4880
4881 2011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
4882
4883         * doc/xml/manual/abi.xml: Adjust link to C++ ABI specification.
4884         Improve description of one such reference.
4885
4886 2011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
4887
4888         * doc/xml/manual/codecvt.xml: Fix link to The Austin Common
4889         Standards Revision Group.
4890         * doc/xml/manual/locale.xml: Ditto.
4891         * doc/xml/manual/messages.xml: Ditto.
4892         * doc/xml/manual/using_exceptions.xml: Ditto.
4893
4894 2011-01-28  Paolo Carlini  <paolo.carlini@oracle.com>
4895
4896         * include/bits/atomic_base.h: Do not include <stddef.h>.
4897         (kill_dependency): Uglify ret.
4898
4899 2011-01-26  Johannes Singler  <singler@kit.edu>
4900
4901         * include/parallel/numeric (inner_product, partial_sum):
4902         Qualify subsequent call with __gnu_parallel instead of
4903         _GLIBCXX_STD_P to reenable parallel execution without ambiguity.
4904         * include/parallel/algobase.h (equal): Likewise.
4905         * include/parallel/algo.h (find_first_of, search_n, merge,
4906         nth_element, partial_sort, max_element, min_element): Likewise.
4907         * testsuite/25_algorithms/headers/algorithm/
4908         parallel_algorithm_mixed1.cc (main): Add respective test cases.
4909         * testsuite/25_algorithms/headers/algorithm/
4910         parallel_algorithm_mixed2.cc (main): Likewise.
4911         * testsuite/26_numerics/headers/numeric/
4912         parallel_numeric_mixed1.cc (main): Likewise.
4913         * testsuite/26_numerics/headers/numeric/
4914         parallel_numeric_mixed2.cc (main): Likewise.
4915
4916 2011-01-24  Graham Reed  <greed@pobox.com>
4917
4918         PR libstdc++/47387
4919         * config/os/aix/ctype_inline.h (ctype<char>::is): Use _M_table if
4920         provided.
4921
4922 2011-01-24  Johannes Singler  <singler@kit.edu>
4923
4924         PR libstdc++/47433
4925         * include/parallel/losertree.h
4926         (_LoserTree<>::__delete_min_insert):
4927         Do not qualify swap with std:: for value type,
4928         but include a using directive instead.
4929         (_LoserTreeUnguarded<>::__delete_min_insert): Likewise.
4930         * include/parallel/balanced_quicksort.h (__qsb_divide):
4931         Use std::iter_swap instead of std::swap.
4932         (__qsb_local_sort_with_helping): Likewise.
4933         * include/parallel/partition.h (__parallel_partition):
4934         Likewise. (__parallel_nth_element): Likewise.
4935
4936 2011-01-24  Johannes Singler  <singler@kit.edu>
4937
4938         PR libstdc++/47437
4939         * include/parallel/multiway_merge.h (_UnguardedIterator):
4940         Remove useless "mutable" from reference declaration.
4941
4942 2011-01-21  Benjamin Kosnik  <bkoz@redhat.com>
4943
4944         * include/bits/c++config (_GLIBCXX_EXPORT_TEMPLATE): Remove.
4945         * include/debug/safe_sequence.h: Same.
4946         * include/debug/safe_iterator.h: Same.
4947         * include/std/forward_list: Same.
4948         * include/std/deque: Same.
4949         * include/std/list: Same.
4950         * include/std/random: Same.
4951         * include/std/streambuf: Same.
4952         * include/std/fstream: Same.
4953         * include/std/istream: Same.
4954         * include/std/string: Same.
4955         * include/std/ostream: Same.
4956         * include/std/sstream: Same.
4957         * include/ext/vstring.h: Same.
4958         * include/bits/basic_ios.h: Same.
4959         * include/bits/locale_classes.h: Same.
4960         * include/bits/locale_facets.h: Same.
4961         * include/bits/valarray_array.h: Same.
4962         * include/bits/locale_facets_nonio.h: Same.
4963         * include/tr1/random: Same.
4964
4965 2011-01-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
4966
4967         * doc/xml/manual/diagnostics.xml: Replace note about C++0x concepts.
4968
4969 2011-01-20  Benjamin Kosnik  <bkoz@redhat.com>
4970
4971         PR libstdc++/36104 part three
4972         * src/hashtable_c++0x.cc: Adjust namespace macros.
4973         * testsuite/util/testsuite_rvalref.h: Don't forward declare hash.
4974         * config/abi/pre/gnu-versioned-namespace.ver: Update.
4975
4976 2011-01-20  Benjamin Kosnik  <bkoz@redhat.com>
4977
4978         * include/ext/pb_ds/detail/resize_policy/
4979         hash_load_check_resize_trigger_imp.hpp: Adjust assert condition.
4980         * include/ext/pb_ds/detail/pat_trie_/
4981         constructors_destructor_fn_imps.hpp: Same.
4982         * include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Format.
4983         * include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
4984         * include/ext/pb_ds/detail/debug_map_base.hpp: Use never_adjustor.
4985
4986         * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Adjust
4987         iterations downward when testing in debug mode.
4988         * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Same.
4989         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Same.
4990         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Same.
4991         * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Same.
4992         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Same.
4993         * testsuite/ext/pb_ds/example/hash_illegal_resize.cc: Use SIZE,
4994         reduce in debug mode.
4995
4996 2011-01-19  Benjamin Kosnik  <bkoz@redhat.com>
4997
4998         PR libstdc++/36104 part two
4999         * include/bits/hashtable.h: Revert to non-nested macro usage.
5000         * include/bits/hashtable_policy.h: Same.
5001
5002 2011-01-19  Graham Reed  <greed@pobox.com>
5003
5004         PR libstdc++/47354
5005         * src/bitmap_allocator.cc (free_list::_M_get): Lock mutex.
5006
5007 2011-01-18  Benjamin Kosnik  <bkoz@redhat.com>
5008
5009         * doc/xml/images/confdeps.png: Regenerate.
5010
5011         * include/std/chrono (duration): Mark copy constructor constexpr.
5012         * testsuite/20_util/duration/cons/constexpr.cc: Add test.
5013
5014 2011-01-18  Paolo Carlini  <paolo.carlini@oracle.com>
5015
5016         * include/bits/unique_ptr.h (default_delete<>::default_delete()):
5017         Declare defaulted per DR 1517.
5018         * testsuite/util/testsuite_common_types.h
5019         (constexpr_defaulted_default_constructible): Add.
5020         * testsuite/20_util/default_delete/cons/constexpr.cc: Use it.
5021
5022 2011-01-17  Paolo Carlini  <paolo.carlini@oracle.com>
5023
5024         * include/bits/stl_queue.h (queue<>::swap, priority_queue<>::swap):
5025         Implement DR 1198.
5026         * include/bits/stl_stack.h (stack<>::swap): Likewise.
5027
5028 2011-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
5029
5030         PR libstdc++/47323
5031         * testsuite/28_regex/08_basic_regex/requirements/constexpr_data.cc:
5032         Only test wregex when _GLIBCXX_USE_WCHAR_T is defined.
5033
5034 2011-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
5035
5036         PR libstdc++/47320
5037         * testsuite/18_support/numeric_limits/lowest.cc:
5038         Only test wchar_t when _GLIBCXX_USE_WCHAR_T is defined.
5039
5040 2011-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
5041
5042         PR libstdc++/47321
5043         * testsuite/21_strings/basic_string/requirements/typedefs.cc:
5044         Only test std::wstring when _GLIBCXX_USE_WCHAR_T is defined.
5045
5046 2011-01-16  François Dumont  <francois.cppdevs@free.fr>
5047
5048         * testsuite/23_containers/forward_list/debug/erase_after1_neg.cc: Move
5049         to this. Use _neg suffix.
5050         * testsuite/23_containers/forward_list/debug/erase_after1.cc: ...from
5051         this.
5052         * testsuite/23_containers/forward_list/debug/erase_after2_neg.cc:
5053         Same.
5054         * testsuite/23_containers/forward_list/debug/erase_after2.cc: Same.
5055         * testsuite/23_containers/forward_list/debug/erase_after3_neg.cc:
5056         Same.
5057         * testsuite/23_containers/forward_list/debug/erase_after3.cc: Same.
5058         * testsuite/23_containers/forward_list/debug/erase_after4_neg.cc:
5059         Same.
5060         * testsuite/23_containers/forward_list/debug/erase_after4.cc: Same.
5061         * testsuite/23_containers/forward_list/debug/erase_after5_neg.cc:
5062         Same.
5063         * testsuite/23_containers/forward_list/debug/erase_after5.cc: Same.
5064         * testsuite/23_containers/forward_list/debug/erase_after6_neg.cc:
5065         Same.
5066         * testsuite/23_containers/forward_list/debug/erase_after6.cc: Same.
5067         * testsuite/23_containers/forward_list/debug/erase_after7_neg.cc:
5068         Same.
5069         * testsuite/23_containers/forward_list/debug/erase_after7.cc: Same.
5070         * testsuite/23_containers/forward_list/debug/erase_after8_neg.cc:
5071         Same.
5072         * testsuite/23_containers/forward_list/debug/erase_after8.cc: Same.
5073         * testsuite/23_containers/forward_list/debug/erase_after9_neg.cc:
5074         Same.
5075         * testsuite/23_containers/forward_list/debug/erase_after9.cc: Same.
5076         * testsuite/23_containers/forward_list/debug/insert_after1_neg.cc:
5077         Same.
5078         * testsuite/23_containers/forward_list/debug/insert_after1.cc: Same.
5079         * testsuite/23_containers/forward_list/debug/insert_after2_neg.cc:
5080         Same.
5081         * testsuite/23_containers/forward_list/debug/insert_after2.cc: Same.
5082         * testsuite/23_containers/forward_list/debug/insert_after3_neg.cc:
5083         Same.
5084         * testsuite/23_containers/forward_list/debug/insert_after3.cc: Same.
5085         * testsuite/23_containers/forward_list/debug/splice_after1_neg.cc:
5086         Same.
5087         * testsuite/23_containers/forward_list/debug/splice_after1.cc: Same.
5088         * testsuite/23_containers/forward_list/debug/splice_after2_neg.cc:
5089         Same.
5090         * testsuite/23_containers/forward_list/debug/splice_after2.cc: Same.
5091         * testsuite/23_containers/forward_list/debug/splice_after3_neg.cc:
5092         Same.
5093         * testsuite/23_containers/forward_list/debug/splice_after3.cc: Same.
5094         * testsuite/23_containers/forward_list/debug/splice_after4_neg.cc:
5095         Same.
5096         * testsuite/23_containers/forward_list/debug/splice_after4.cc: Same.
5097
5098 2011-01-14  Benjamin Kosnik  <bkoz@redhat.com>
5099
5100         PR libstdc++/36104
5101         * include/Makefile.am (bits_sup_headers, stamp-bits-sup): New.
5102         * include/Makefile.in: Regenerate.
5103         * libsupc++/Makefile.am (std_HEADERS, bits_HEADERS): New.
5104         (install-stdHEADERS, install-bitsHEADERS): New.
5105         * libsupc++/Makefile.in: Regenerate.
5106
5107         * include/bits/c++config: Update for inline namespaces.
5108         * libsupc++/cxxabi-forced.h: To...
5109         * libsupc++/cxxabi_forced.h: ...this.
5110         * libsupc++/hash_bytes.h: Separate file.
5111         * libsupc++/typeinfo: Use it.
5112         * libsupc++/exception: Adjust for bits subdirectory.
5113         * libsupc++/eh_aux_runtime.cc: Same.
5114         * libsupc++/eh_ptr.cc: Same.
5115         * libsupc++/new_op.cc: Same.
5116         * libsupc++/exception_defines.h: Same.
5117         * libsupc++/nested_exception.h: Same.
5118         * libsupc++/eh_terminate.cc: Same.
5119         * libsupc++/vec.cc: Same.
5120         * libsupc++/vterminate.cc: Same.
5121         * libsupc++/exception_ptr.h: Same.
5122         * libsupc++/eh_personality.cc: Same.
5123         * libsupc++/eh_call.cc: Same.
5124         * libsupc++/new_opnt.cc: Same.
5125         * libsupc++/hash_bytes.cc: Same.
5126         * config/cpu/arm/cxxabi_tweaks.h: Same.
5127         * config/cpu/generic/cxxabi_tweaks.h: Same.
5128         * libsupc++/cxxabi.h: Same. Consolidate _GLIBCXX_NOTHROW defines.
5129         * include/std/bitset: Same.
5130         * include/ext/vstring.tcc: Same.
5131         * include/bits/hashtable.h: Same.
5132         * include/bits/functional_hash.h: Same.
5133         * include/bits/hashtable_policy.h: Same.
5134         * include/bits/basic_string.h: Same.
5135         * include/bits/istream.tcc: Same.
5136         * include/bits/ostream.tcc: Same.
5137         * include/bits/algorithmfwd.h: Same.
5138         * include/bits/basic_string.tcc: Same.
5139         * include/bits/ostream_insert.h: Same.
5140         * include/bits/fstream.tcc: Same.
5141         * include/bits/functexcept.h: Same.
5142
5143         * doc/doxygen/user.cfg.in: Adjust names.
5144
5145         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
5146
5147 2011-01-14  Paolo Carlini  <paolo.carlini@oracle.com>
5148
5149         * testsuite/25_algorithms/is_permutation/check_type.cc: Minor
5150         tweaks.
5151         * testsuite/25_algorithms/is_permutation/1.cc: Cosmetic changes.
5152
5153 2011-01-13  Paolo Carlini  <paolo.carlini@oracle.com>
5154
5155         * testsuite/25_algorithms/is_permutation/check_type.cc: New.
5156         * testsuite/25_algorithms/is_permutation/requirements/
5157         explicit_instantiation/2.cc: Likewise.
5158         * testsuite/25_algorithms/is_permutation/requirements/
5159         explicit_instantiation/pod.cc: Likewise.
5160         * testsuite/25_algorithms/is_permutation/1.cc: Likewise.
5161
5162 2011-01-13  John Lakos  <jlakos@bloomberg.net>
5163             Pablo Halpern  <phalpern@halpernwightsoftware.com>
5164             Paolo Carlini  <paolo.carlini@oracle.com>
5165
5166         * include/bits/stl_algo.h (is_permutation): Add, per N3068.
5167         * include/bits/algorithmfwd.h: Add.
5168
5169 2011-01-13  Jonathan Wakely  <jwakely.gcc@gmail.com>
5170
5171         PR libstdc++/47045
5172         * config/os/bsd/netbsd/ctype_base.h: Use new macros based on version.
5173
5174 2011-01-11  Paolo Carlini  <paolo.carlini@oracle.com>
5175
5176         * aclocal.m4: Regenerate.
5177
5178 2011-01-06  Paolo Carlini  <paolo.carlini@oracle.com>
5179
5180         PR libstdc++/47185
5181         * src/placeholders.cc: New.
5182         * src/Makefile.am: Adjust.
5183         * src/Makefile.in: Regenerate.
5184         * include/std/functional (placeholders::_1, _2, ..., _29): Declare
5185         extern.
5186         * config/abi/pre/gnu.ver: Export.
5187
5188 2011-01-05  François Dumont  <francois.cppdevs@free.fr>
5189
5190         * include/debug/safe_base.h (_Safe_iterator_base::_M_unlink): New.
5191         * include/src/debug.cc: Use latter
5192         * include/debug/forward_list (forward_list<>::_M_swap):  Fix to
5193         correctly handle before_begin iterators.
5194         * testsuite/23_containers/forward_list/debug/swap.cc: Remove now
5195         useless _GLIBCXX_DEBUG checks.
5196
5197 2011-01-04  Kai Tietz  <kai.tietz@onevision.com>
5198
5199         PR libstdc++/47145
5200         * configure.ac (AC_CHECK_FILE): Replaced by test -f.
5201         * configure: Regenerated.
5202
5203 2011-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
5204
5205         PR libstdc++/46922
5206         * config/abi/pre/gnu.ver: Export std::bad_function_call symbols.
5207
5208 \f
5209 Copyright (C) 2011 Free Software Foundation, Inc.
5210
5211 Copying and distribution of this file, with or without modification,
5212 are permitted in any medium without royalty provided the copyright
5213 notice and this notice are preserved.