OSDN Git Service

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