OSDN Git Service

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