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