OSDN Git Service

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