OSDN Git Service

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