OSDN Git Service

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