OSDN Git Service

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