OSDN Git Service

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