OSDN Git Service

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