OSDN Git Service

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