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