OSDN Git Service

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