OSDN Git Service

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