OSDN Git Service

bb1d554d34e7fe5ca576019ab4e10538ea4dc24c
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2011-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
2
3         PR libstdc++/44436
4         * doc/xml/manual/status_cxx200x.xml: Document emplace members are
5         missing.
6
7 2011-11-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
8
9         PR libstdc++/49894
10         PR bootstrap/50982
11         * include/std/mutex (once_flag): Use NSDMI.
12
13 2011-11-04  Benjamin Kosnik  <bkoz@redhat.com>
14
15         * scripts/run_doxygen: Fix sed quoting.
16
17 2011-11-03  Benjamin Kosnik  <bkoz@redhat.com>
18
19         * doc/doxygen/doxygroups.cc: Add markup for namespace tr2.
20         * include/tr2/bool_set: Adjust doxygen markup.
21         * include/tr2/dynamic_bitset: Same.
22         * include/tr2/type_traits: Same.
23
24 2011-11-03  Benjamin Kosnik  <bkoz@redhat.com>
25
26         * doc/html/*: Regenerate.
27
28 2011-11-02  Richard B. Kreckel  <kreckel@ginac.de>
29             Paolo Carlini  <paolo.carlini@oracle.com>
30
31         PR libstdc++/50880
32         * include/std/complex (__complex_acosh): Fix in a better way,
33         use Kahan's formula.
34         * include/tr1/complex (__complex_acosh): Likewise.
35
36 2011-11-02  Paolo Carlini  <paolo.carlini@oracle.com>
37
38         PR libstdc++/50951
39         * include/bits/random.tcc (operator<<(basic_ostream<>&,
40         const mersenne_twister_engine<>&): Output _M_p too.
41         (operator<<(basic_ostream<>&, const
42         subtract_with_carry_engine<>&): Likewise.
43         (operator>>(basic_istream<>&, mersenne_twister_engine<>&):
44         Reload it.
45         (operator>>(basic_istream<>&, subtract_with_carry_engine<>&):
46         Likewise.
47         * include/bits/random.h (mersenne_twister_engine<>::operator==):
48         Compare _M_p too.
49         (subtract_with_carry_engine<>::operator==): Compare _M_carry
50         and _M_p too.
51         (shuffle_order_engine<>::operator==): Compare _M_v(s) and _M_y too.
52         * testsuite/26_numerics/random/independent_bits_engine/
53         operators/serialize.cc: Extend.
54         * testsuite/26_numerics/random/subtract_with_carry_engine/
55         operators/serialize.cc: Likewise.
56         * testsuite/26_numerics/random/discard_block_engine/
57         operators/serialize.cc: Likewise.
58         * testsuite/26_numerics/random/mersenne_twister_engine/
59         operators/serialize.cc: Likewise.
60         * testsuite/26_numerics/random/linear_congruential_engine/
61         operators/serialize.cc: Likewise.
62         * testsuite/26_numerics/random/shuffle_order_engine/
63         operators/serialize.cc: Likewise.
64
65 2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
66
67         * acinclude.m4 (GLIBCXX_CONFIGURE): Determine and substitute
68         toplevel_builddir.
69         (GLIBCXX_ENABLE_THREADS): Remove glibcxx_thread_h,
70         HAVE_GTHR_DEFAULT, enable_thread.
71         (GLIBCXX_CHECK_GTHREADS): Reflect gthr move to libgcc.
72         * include/Makefile.am (thread_host_headers): Remove
73         ${host_builddir}/gthr-tpf.h.
74         (${host_builddir}/gthr.h): Reflect gthr move to libgcc.
75         Use $<.
76         (${host_builddir}/gthr-single.h): Likewise.
77         (${host_builddir}/gthr-posix.h): Likewise.
78         (${host_builddir}/gthr-tpf.h): Remove.
79         (${host_builddir}/gthr-default.h): Likewise.
80         * configure, config.h.in: Regenerate.
81         * Makefile.in, doc/Makefile.in, include/Makefile.in,
82         libsupc++/Makefile.in, po/Makefile.in, python/Makefile.in,
83         src/Makefile.intestsuite/Makefile.in: Regenerate.
84
85 2011-11-02  Benjamin Kosnik  <bkoz@redhat.com>
86
87         * include/bits/c++config: Add tr2 to versioned namespaces.
88         * scripts/run_doxygen: Adjust generated man files as well.
89         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
90
91 2011-11-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
92
93         * include/std/future (promise): Add constructors for uses-allocator
94         construction from rvalue promise.
95         (packaged_task): Implement LWG 2067. Add additional constructors for
96         uses-allocator construction.
97         * testsuite/30_threads/packaged_task/cons/3.cc: New.
98         * testsuite/30_threads/packaged_task/cons/alloc2.cc: New.
99         * testsuite/30_threads/promise/cons/alloc2.cc: New.
100
101 2011-10-31  Jason Merrill  <jason@redhat.com>
102
103         * include/Makefile.am (install-freestanding-headers): Install
104         c++0x_warning.h.
105         * libsupc++/initializer_list: Include it.
106
107 2011-10-31  Gerald Pfeifer  <gerald@pfeifer.com>
108
109         * acinclude.m4 (GLIBCXX_CONFIGURE): Refer to GNU/Linux.
110         * configure: Regenerate.
111
112 2011-10-31  Jason Merrill  <jason@redhat.com>
113
114         PR c++/50920
115         * include/bits/c++0x_warning.h: Change -std=c++0x to -std=c++11.
116
117 2011-10-30  Gerald Pfeifer  <gerald@pfeifer.com>
118
119         * prerequisites.xml: Refer to GCC (instead of gcc) and GNU/Linux.
120         Remove an obsolete reference to a Red Hat release we do not
121         support any longer.
122         Refer to Debian GNU/Linux.
123
124 2011-10-30  Gerald Pfeifer  <gerald@pfeifer.com>
125
126         * faq.xml (Who's in charge of it?): Refer to the Linux kernel
127         instead of just Linux.
128         (How do I install libstdc++?): Refer to GNU/Linux instead of
129         just Linux.
130
131 2011-10-28  Paolo Carlini  <paolo.carlini@oracle.com>
132
133         * testsuite/30_threads/condition_variable_any/50862.cc: Trivial
134         formatting fixes.
135
136 2011-10-28  Paolo Carlini  <paolo.carlini@oracle.com>
137
138         * testsuite/23_containers/unordered_map/operations/count.cc: New.
139         * testsuite/23_containers/multimap/operations/count.cc: Likewise.
140         * testsuite/23_containers/set/operations/count.cc: Likewise.
141         * testsuite/23_containers/unordered_multimap/operations/count.cc:
142         Likewise.
143         * testsuite/23_containers/unordered_set/operations/count.cc: Likewise.
144         * testsuite/23_containers/multiset/operations/count.cc: Likewise.
145         * testsuite/23_containers/unordered_multiset/operations/count.cc:
146         Likewise.
147         * testsuite/23_containers/map/operations/count.cc: Likewise.
148
149 2011-10-28  Richard B. Kreckel  <kreckel@ginac.de>
150
151         * include/std/complex (__complex_acosh): Just use '< _Tp()'.
152         * include/tr1/complex (__complex_acosh): Likewise.
153
154 2011-10-27  Richard B. Kreckel  <kreckel@ginac.de>
155             Paolo Carlini  <paolo.carlini@oracle.com>
156
157         PR libstdc++/50880
158         * include/std/complex (__complex_acosh): Fix for __z.real() < 0.
159         * include/tr1/complex (__complex_acosh): Likewise.
160         * testsuite/26_numerics/complex/50880.cc: New.
161         * testsuite/tr1/8_c_compatibility/complex/50880.cc: Likewise.
162
163 2011-10-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
164
165         PR libstdc++/50862
166         * include/std/condition_variable (condition_variable_any::wait): Avoid
167         terminating if relocking user mutex throws during stack-unwinding.
168         * testsuite/30_threads/condition_variable_any/50862.cc: Add dg-require.
169
170 2011-10-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
171
172         * include/std/condition_variable (condition_variable_any): Remove
173         unused native_handle_type typedef.
174         * src/condition_variable.cc (condition_variable): Add missing noexcept
175         specifications.
176         * testsuite/30_threads/condition_variable_any/requirements/
177         typedefs.cc: Remove.
178
179 2011-10-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
180
181         PR libstdc++/50862
182         * include/std/condition_variable (condition_variable_any::wait): Fix
183         deadlock and ensure _Lock::lock() is called on exit.
184         (condition_variable_any::native_handle): Remove, as per LWG 1500.
185         * testsuite/30_threads/condition_variable_any/50862.cc: New.
186
187 2011-10-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
188
189         PR libstdc++/49894
190         * include/std/mutex (__mutex_base,__recursive_mutex_base): Define new
191         base classes to manage construction/destruction of native mutexes,
192         using NSDMI when INIT macros are defined.
193         (mutex,recursive_mutex,timed_mutex,recursive_timed_mutex): Derive from
194         new base classes.
195         * include/std/condition_variable (condition_variable): Use NSDMI when
196         INIT macro is defined. Use noexcept.
197         * src/condition_variable.cc (condition_variable): Explicitly-default
198         constructor/destructor when using NSDMI. Use noexcept.
199         (condition_variable_any): Likewise.
200
201 2011-10-24  Jonathan Wakely  <jwakely.gcc@gmail.com>
202
203         * testsuite/30_threads/async/49668.cc: Add missing dg-require.
204         * testsuite/30_threads/packaged_task/49668.cc: Likewise.
205
206 2011-10-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
207
208         PR libstdc++/50834
209         * doc/xml/manual/using.xml: Update thread safety docs w.r.t. C++11.
210
211 2011-10-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
212
213         PR libstdc++/50196
214         * acinclude.m4 (GLIBCXX_HAS_GTHREADS): Don't depend on _POSIX_TIMEOUTS.
215         * configure: Regenerate.
216         * include/std/mutex (timed_mutex, recursive_timed_mutex): Define
217         conditionally on GTHREADS_HAS_MUTEX_TIMEDLOCK.
218         * testsuite/lib/libstdc++.exp (check_v3_target_gthreads_timed): Define.
219         * testsuite/lib/dg-options.exp (dg-require-gthreads-timed): Define.
220         * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
221         Use dg-require-gthreads-timed instead of dg-require-gthreads.
222         * testsuite/30_threads/recursive_timed_mutex/native_handle/
223         typesizes.cc: Likewise.
224         * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
225         Likewise.
226         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
227         Likewise.
228         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
229         Likewise.
230         * testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc:
231         Likewise.
232         * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
233         * testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc:
234         Likewise.
235         * testsuite/30_threads/recursive_timed_mutex/requirements/typedefs.cc:
236         Likewise.
237         * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
238         * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
239         * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
240         * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
241         * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
242         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
243         Likewise.
244         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
245         Likewise.
246         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
247         Likewise.
248         * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
249         * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc:
250         Likewise.
251         * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
252         * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
253         * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
254         * testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
255         * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
256         * testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Likewise.
257         * testsuite/30_threads/timed_mutex/requirements/standard_layout.cc:
258         Likewise.
259         * testsuite/30_threads/timed_mutex/requirements/typedefs.cc: Likewise.
260         * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
261         * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
262         * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
263         * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
264         * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
265         * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
266         * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
267         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
268         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
269         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
270         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
271
272 2011-10-19  Ed Smith-Rowland  <3dw4rd@verizon.net>
273
274         * include/tr2/bool_set (bool_set): New.
275         * include/tr2/bool_set.tcc: New.
276         * include/tr2/dynamic_bitset (dynamic_bitset): New.
277         * include/tr2/ratio (kibi, mebi, gibi, tebi, pebi, exbi): New.
278         * include/Makefile.am: Add files.
279         * include/Makefile.in: Regenerate.
280
281 2011-10-19  Benjamin Kosnik  <bkoz@redhat.com>
282
283         * doc/doxygen/user.cfg.in: Add tr2 files.
284         * testsuite/tr2/headers/all.cc: New.
285         * testsuite/tr2/headers/using_namespace_std_tr2.cc: New.
286
287         * include/tr2/type_traits: Tweak.
288
289 2011-10-18  Jason Merrill  <jason@redhat.com>
290
291         PR c++/50500
292         * include/bits/shared_ptr.h: Default copy ctor and assignment.
293         * testsuite/util/testsuite_allocator.h: Define copy assignment.
294         * testsuite/util/testsuite_rvalref.h: Default copy assignment.
295         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Remove note tags.
296
297 2011-10-17  Michael Spertus  <mike_spertus@symantec.com>
298
299         * include/tr2/type_traits (bases, direct_bases, typelist): New.
300
301 2011-10-17  Benjamin Kosnik  <bkoz@redhat.com>
302
303         * libstdc++-v3/include/Makefile.am: Add tr2 directory and includes.
304         * libstdc++-v3/include/Makefile.in: Regenerate.
305
306         * scripts/create_testsuite_files: Search tr2 directory.
307         * testsuite/libstdc++-dg/conformance.exp: Same.
308
309         * testsuite/tr2/bases/requirements/explicit_instantiation.cc: New.
310         * testsuite/tr2/bases/requirements/typedefs.cc: New.
311         * testsuite/tr2/bases/value.cc: New.
312         * testsuite/tr2/direct_bases/requirements/
313         explicit_instantiation.cc: New.
314         * testsuite/tr2/direct_bases/requirements/typedefs.cc: New.
315         * testsuite/tr2/direct_bases/value.cc: New.
316
317 2011-10-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
318
319         PR bootstrap/50715
320         * config/abi/pre/gnu.ver (CXXABI_1.3.6): Remove duplicate
321         __cxa_get_exception_ptr.
322
323 2011-10-14  François Dumont  <francois.cppdevs@free.fr>
324
325         * testsuite/performance/23_containers/insert_erase/41975.cc: New.
326
327 2011-10-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
328
329         * testsuite/22_locale/codecvt_byname/50714.cc: Fix mychar.
330
331 2011-10-14  Jonathan Yong  <jon_y@users.sourceforge.net>
332
333         * configure.host: Use config/os/mingw32-w64 instead of
334         config/os/mingw32 if vendor key is "w64".
335         * config/os/mingw32-w64: Duplicate from config/os/mingw32.
336         * config/os/mingw32-w64/os_defines.h: Enable
337         _GLIBCXX_FULLY_DYNAMIC_STRING if undefined.
338         * acinclude.m4: Set fully-dynamic-string to 1 when enabled,
339         0 when disabled or undefined if unset by user.
340         * include/bits/basic_string.h: Check if
341         _GLIBCXX_FULLY_DYNAMIC_STRING is set to 0 instead of undefined.
342         include/bits/basic_string.tcc: Likewise.
343         * configure: Regenerated.
344         * config.h.in: Likewise.
345
346 2011-10-13  Paolo Carlini  <paolo.carlini@oracle.com>
347
348         PR libstdc++/50714
349         * include/bits/codecvt.h (codecvt<>::codecvt(size_t)): Initialize
350         _M_c_locale_codecvt member.
351         * testsuite/22_locale/codecvt_byname/50714.cc: New.
352
353 2011-10-12  Paolo Carlini  <paolo.carlini@oracle.com>
354
355         PR c++/50594
356         * libsupc++/new (operator new, operator delete): Decorate with
357         __attribute__((__externally_visible__)).
358         * include/bits/c++config: Add _GLIBCXX_THROW.
359         * libsupc++/del_op.cc: Adjust.
360         * libsupc++/del_opv.cc: Likewise.
361         * libsupc++/del_opnt.cc: Likewise.
362         * libsupc++/del_opvnt.cc: Likewise.
363         * libsupc++/new_op.cc: Likewise.
364         * libsupc++/new_opv.cc: Likewise.
365         * libsupc++/new_opnt.cc: Likewise.
366         * libsupc++/new_opvnt.cc: Likewise.
367         * testsuite/18_support/50594.cc: New.
368         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
369         line number.
370
371 2011-10-11  Emil Wojak  <emil@wojak.eu>
372
373         PR c++/50661
374         * include/bits/stl_algobase.h (equal): Compare arrays of pointers
375         too with memcmp.
376
377 2011-10-10  Benjamin Kosnik  <bkoz@redhat.com>
378
379         PR libstdc++/49818
380         * config/abi/pre/gnu.ver (CXXABI_1.3.6): Add symbols.
381         * testsuite/util/testsuite_abi.cc: Same.
382         * libsupc++/unwind-cxx.h: Move required eh API...
383         * libsupc++/cxxabi.h: ... to here. Add required forward declarations.
384         Use _GLIBCXX_NOTHROW.
385         * libsupc++/pure.cc (__cxa_deleted_virtual): Add.
386         * libsupc++/eh_alloc.cc: Use _GLIBCXX_NOTHROW.
387         * libsupc++/eh_catch.cc: Same.
388         * libsupc++/eh_globals.cc: Same.
389         * libsupc++/eh_type.cc: Same.
390
391 2011-10-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
392
393         * testsuite/util/testsuite_allocator.h (uneq_allocator): Add
394         propagate_on_container_swap typedef for C++0x testing.
395
396 2011-10-06  Paolo Carlini  <paolo.carlini@oracle.com>
397
398         * testsuite/27_io/ios_base/cons/assign_neg.cc: Tidy dg- directives,
399         for C++0x testing too.
400         * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
401         * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Likewise.
402         * testsuite/24_iterators/istreambuf_iterator/requirements/
403         base_classes.cc: Adjust for C++0x testing.
404         * testsuite/ext/codecvt/char-1.cc: Avoid warnings in C++0x mode.
405         * testsuite/ext/codecvt/char-2.cc: Likewise.
406         * testsuite/ext/codecvt/wchar_t.cc: Likewise.
407
408 2011-10-05  Paolo Carlini  <paolo.carlini@oracle.com>
409
410         * include/ext/pod_char_traits.h: Avoid warnings in C++0x mode
411         when int_type is unsigned.
412
413 2011-10-04  Paolo Carlini  <paolo.carlini@oracle.com>
414
415         PR libstdc++/49561
416         * include/bits/stl_list.h (_List_base<>::_List_impl::_M_size):
417         Add in C++0x mode.
418         (_List_base<>::_List_impl, _List_base<>::_M_get_node,
419         _List_base<>::_M_put_node, _List_base<>::_List_base(_List_base&&),
420         list<>::size, list<>::swap, list<>::splice): Use it.
421         (operator==(const list<>&, const list<>&)): Rewrite in C++0x mode.
422         * include/bits/list.tcc (list<>::erase): Likewise.
423         (list<>::merge): Adjust in C++0x mode.
424         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
425         Adjust dg-error line number.
426         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
427         Likewise.
428         * testsuite/23_containers/list/requirements/dr438/
429         constructor_1_neg.cc: Likewise.
430         * testsuite/23_containers/list/requirements/dr438/
431         constructor_2_neg.cc: Likewise.
432
433 2011-10-04  Paolo Carlini  <paolo.carlini@oracle.com>
434
435         * testsuite/20_util/bind/48698.cc (g): Fix return type, avoid -Wall
436         warning.
437
438 2011-10-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
439
440         * include/ext/alloc_traits.h (__alloc_traits::max_size): Define.
441         (__alloc_traits::rebind): Define.
442         * include/bits/stl_vector.h: Use them.
443         * testsuite/util/testsuite_allocator.h (SimpleAllocator): Define.
444         * testsuite/23_containers/vector/allocator/minimal.cc: New.
445         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
446         Adjust dg-error line numbers.
447         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
448         Likewise.
449         * testsuite/23_containers/vector/requirements/dr438/
450         constructor_1_neg.cc: Likewise.
451         * testsuite/23_containers/vector/requirements/dr438/
452         constructor_2_neg.cc: Likewise.
453
454 2011-10-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
455
456         * testsuite/20_util/pointer_traits/pointer_to.cc: Define equality
457         operator and use.
458
459 2011-10-03  Paolo Carlini  <paolo.carlini@oracle.com>
460
461         * include/bits/hashtable.h (_Hashtable<>::insert(value_type&&),
462         insert(const_iterator, value_type&&)): Don't define here...
463         * include/bits/unordered_set.h (__unordered_set<>,
464         __unordered_multiset<>): ... define here instead.
465
466 2011-09-29  Jason Merrill  <jason@redhat.com>
467
468         * testsuite/util/testsuite_tr1.h (test_property): Avoid
469         ambiguity.
470
471 2011-10-01  François Dumont  <fdumont@gcc.gnu.org>
472
473         * include/debug/vector (vector<>::erase(iterator, iterator): Check
474         iterators equality using normal iterators.
475         * include/debug/deque (deque<>::erase(iterator, iterator): Likewise.
476
477 2011-09-29  Paolo Carlini  <paolo.carlini@oracle.com>
478
479         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
480         Remove noexcept from declaration too.
481
482 2011-09-27  Benjamin Kosnik  <bkoz@redhat.com>
483
484         * doc/html/*: Regenerate.
485
486         * doc/Makefile.am: Un-nest the ext output directory.
487         * doc/Makefile.in: Regenerate.
488         * spine.xml: Remove authors, add abstract for short
489         contents. Rename to index.html for html output.
490         * manual/spine.xml: Authors here, manual starts with index.html.
491         * api.xml: Update.
492         * faq.xml: Same.
493
494 2011-09-27  Marcus Shawcroft  <marcus.shawcroft@arm.com>
495
496         * libsupc++/tinfo.cc (type_info::operator==): Test __name instead
497         of name().
498
499 2011-09-26  Paolo Carlini  <paolo.carlini@oracle.com>
500
501         PR libstdc++/50529
502         * include/bits/vector.tcc (vector<>::erase(iterator, iterator)):
503         Fix to do nothing if the range is empty.
504         * include/bits/stl_bvector.h: Likewise.
505         * include/bits/deque.tcc: Likewise.
506         * include/debug/vector: Adjust.
507         * include/debug/deque: Likewise.
508         * testsuite/23_containers/vector/modifiers/erase/50529.cc: New.
509         * testsuite/23_containers/deque/modifiers/erase/50529.cc: Likewise.
510         * testsuite/23_containers/deque/modifiers/erase/3.cc: Adjust.
511
512 2011-09-25  Benjamin Kosnik  <bkoz@redhat.com>
513             Jonathan Wakely  <jwakely.gcc@gmail.com>
514
515         PR libstdc++/48698
516         * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Set libtool_VERSION here.
517         * configure.ac: Move AC_SUBST of libtool_VERSION past call to
518         GLIBCXX_ENABLE_SYMVERS.
519         * configure: Regenerate.
520         * include/bits/c++config: Use __7 as versioned namespace name.
521         * config/abi/pre/gnu-versioned-namespace.ver: Change mangling as
522         per above.
523         * include/c_global/cwchar: Adjust nested namespaces.
524         * testsuite/20_util/bind/48698.cc: Add test case.
525         * testsuite/ext/profile/mutex_extensions_neg.cc: Change line number.
526
527 2011-09-25  Paolo Carlini  <paolo.carlini@oracle.com>
528
529         Revert (no longer necessary post r179130):
530
531         2010-04-27  Fabien Chêne  <fabien.chene@gmail.com>
532
533         * testsuite/util/testsuite_error.h: Add empty default constructor
534         to __gnu_test::test_category and
535         __gnu_test::test_derived_category.
536         * src/future.cc: Add empty default constructor to
537         future_error_category.
538         * src/system_error.cc: Add default ctor to generic_error_category
539         and system_error_category.
540
541 2011-09-24  John Salmon  <john.salmon@deshaw.com>
542
543         PR libstdc++/50510
544         * include/bits/random.tcc (seed_seq::generate): Fix computation.
545
546 2011-09-24  John Salmon  <john.salmon@deshaw.com>
547
548         PR libstdc++/50509
549         * include/bits/random.tcc (seed_seq::generate): Fix computation.
550
551 2011-09-21  Benjamin Kosnik  <bkoz@redhat.com
552
553         * doc/Makefile.am (stamp-epub-docbook): Fix image directory location.
554         * doc/Makefile.in: Regenerate.
555
556 2011-09-21  Paolo Carlini  <paolo.carlini@oracle.com>
557
558         * src/limits.cc: Replace everywhere __int128_t -> __int128, and
559         __uint128_t -> unsigned __int128.
560         * include/std/type_traits: Likewise.
561         * include/std/limits: Likewise.
562         * testsuite/18_support/numeric_limits/dr559.cc: Likewise.
563         * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
564         * testsuite/18_support/numeric_limits/40856.cc: Likewise.
565         * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
566         * testsuite/util/testsuite_common_types.h: Likewise.
567         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Likewise.
568         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
569         * testsuite/20_util/is_floating_point/value.cc: Likewise.
570         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise.
571         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
572         * testsuite/20_util/is_signed/value.cc: Likewise.
573         * testsuite/20_util/is_unsigned/value.cc: Likewise.
574         * testsuite/20_util/is_integral/value.cc: Likewise.
575         * config/abi/pre/gnu.ver: Likewise.
576         * acinclude.m4: Likewise.
577         * configure: Regenerate.
578         * config.h.in: Likewise.
579
580 2011-09-19  Paolo Carlini  <paolo.carlini@oracle.com>
581
582         PR libstdc++/40856
583         * include/std/limits (numeric_limits<__int128_t>,
584         numeric_limits<__uint128_t>): Add.
585         * src/limits.cc:Define.
586         * config/abi/pre/gnu.ver: Export.
587         * include/ext/typelist.h (_GLIBCXX_TYPELIST_CHAIN16, 20): Add.
588         * testsuite/util/testsuite_common_types.h (integral_types_gnu): Add
589         (limits_tl): Use it.
590         * testsuite/18_support/numeric_limits/requirements/
591         constexpr_functions.cc: Likewise.
592         * testsuite/18_support/numeric_limits/40856.cc: New.
593         * testsuite/18_support/numeric_limits/dr559.cc: Extend.
594         * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
595         * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
596         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-error
597         line numbers.
598         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
599         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Likewise.
600         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
601         * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
602         Likewise.
603         * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc:
604         Likewise.
605         * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
606         Likewise.
607
608 2011-09-17  Paolo Carlini  <paolo.carlini@oracle.com>
609
610         PR libstdc++/50441
611         * acinclude.m4 ([GLIBCXX_ENABLE_INT128_FLOAT128]): Add.
612         * configure.ac: Call it.
613         * include/std/type_traits (__is_integral_helper<__int128_t>,
614         __is_integral_helper<__uint128_t>,
615         __is_floating_point_helper<__float128>,
616         __make_unsigned<__int128_t>, __make_signed<__uint128_t>): Add.
617         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Extend.
618         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
619         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise.
620         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
621         * testsuite/20_util/is_signed/value.cc: Likewise.
622         * testsuite/20_util/is_unsigned/value.cc: Likewise.
623         * testsuite/20_util/is_integral/value.cc: Likewise.
624         * testsuite/20_util/is_floating_point/value.cc: New.
625         * testsuite/20_util/is_floating_point/requirements/typedefs.cc:
626         Likewise.
627         * testsuite/20_util/is_floating_point/requirements/
628         explicit_instantiation.cc: Likewise.
629         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
630         dg-error line numbers.
631         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
632         Likewise.
633         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
634         * configure: Regenerate.
635         * config.h.in: Likewise.
636
637 2011-09-17  François Dumont  <fdumont@gcc.gnu.org>
638
639         * include/bits/hashtable.h (_Hashtable<>::__rehash_policy(const
640         _RehashPolicy&)): Commit the modification of the policy only if no
641         exception occured.
642         * testsuite/23_containers/unordered_set/max_load_factor/robustness.cc:
643         New.
644
645 2011-09-16  Paolo Carlini  <paolo.carlini@oracle.com>
646
647         * testsuite/23_containers/array/comparison_operators/
648         less_or_equal.cc: New.
649         * testsuite/23_containers/array/comparison_operators/
650         greater_or_equal.cc: Likewise.
651         * testsuite/23_containers/array/comparison_operators/less.cc: Likewise.
652         * testsuite/23_containers/array/comparison_operators/equal.cc: Likewise.
653         * testsuite/23_containers/array/comparison_operators/not_equal.cc:
654         Likewise.
655         * testsuite/23_containers/array/comparison_operators/greater.cc:
656         Likewise.
657         * testsuite/23_containers/array/iterators/end_is_one_past.cc: Likewise.
658         * testsuite/23_containers/array/capacity/empty.cc: Likewise.
659         * testsuite/23_containers/array/capacity/max_size.cc: Likewise.
660         * testsuite/23_containers/array/capacity/size.cc: Likewise.
661         * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
662         Likewise.
663         * testsuite/23_containers/array/tuple_interface/tuple_size.cc:
664         Likewise.
665         * testsuite/23_containers/array/element_access/at_out_of_range.cc:
666         Likewise.
667         * testsuite/23_containers/array/element_access/back.cc: Likewise.
668         * testsuite/23_containers/array/element_access/front.cc: Likewise.
669         * testsuite/23_containers/array/element_access/data.cc: Likewise.
670         * testsuite/23_containers/array/cons/aggregate_initialization.cc:
671         Likewise.
672         * testsuite/23_containers/array/requirements/zero_sized_arrays.cc:
673         Likewise.
674         * testsuite/23_containers/array/requirements/contiguous.cc: Likewise.
675         * testsuite/23_containers/array/requirements/member_swap.cc: Likewise.
676         * testsuite/23_containers/array/specialized_algorithms/swap.cc:
677         Likewise.
678         * testsuite/23_containers/array/constexpr_get.cc: Move...
679         * testsuite/23_containers/array/tuple_interface/constexpr_get.cc:
680         ... here.
681         * testsuite/23_containers/array/requirements/get.cc: Move...
682         * testsuite/23_containers/array/tuple_interface/get: ... here.
683         * testsuite/23_containers/array/at_neg.cc: Move...
684         * testsuite/23_containers/array/element_access: ... here.
685         * testsuite/23_containers/array/requirements/constexpr_functions.cc:
686         Move...
687         * testsuite/23_containers/array/capacity: ... here.
688         * testsuite/23_containers/array/requirements/
689         constexpr_element_access.cc: Move...
690         * testsuite/23_containers/array/element_access: ... here.
691
692         * testsuite/20_util/duration/cons/1_neg.cc: Avoid -Wall warnings.
693         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Likewise.
694         * testsuite/20_util/pair/make_pair/constexpr.cc: Likewise.
695         * testsuite/20_util/time_point/nonmember/constexpr.cc: Likewise.
696         * testsuite/23_containers/bitset/operations/constexpr.cc: Likewise.
697
698         * testsuite/20_util/duration/cons/1_neg.cc: Discard bogus warning.
699         * testsuite/20_util/forward/1_neg.cc: Likewise.
700
701 2011-09-15  Paolo Carlini  <paolo.carlini@oracle.com>
702
703         * include/std/tuple (make_tuple, forward_as_tuple): Declare constexpr.
704         (_Tuple_impl<>::_Tuple_impl(_Tuple_impl<>&&)): Likewise.
705         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Enable
706         make_tuple test.
707         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
708         line number.
709
710 2011-09-14  François Dumont  <fdumont@gcc.gnu.org>
711             Paolo Carlini  <paolo.carlini@oracle.com>
712
713         * include/bits/hashtable.h (_Hashtable<>::_M_rehash): Take and restore
714         hash policy _M_prev_resize on exception.
715         (_Hashtable<>::_M_insert_bucket): Capture hash policy next resize
716         before using it and use latter method to have it restored on exception.
717         (_Hashtable<>::_M_insert(_Arg&& __v, std::false_type): Likewise.
718         (_Hashtable<>::insert(_InputIterator, _InputIterator): Likewise.
719         (_Hashtable<>::rehash): Likewise.
720         * testsuite/23_containers/unordered_set/insert/hash_policy.cc: New.
721         * testsuite/23_containers/unordered_multiset/insert/hash_policy.cc:
722         Likewise.
723
724 2011-09-13  Paul Brook  <paul@codesourcery.com>
725
726         * libsupc++/eh_arm.cc (__cxa_end_cleanup): Add C6X implementation.
727         * libsupc++/eh_call.cc (__cxa_call_unexpected): Set rtti_base.
728         * libsupc++/eh_personality.cc (NO_SIZE_OF_ENCODED_VALUE): Remove
729         __ARM_EABI_UNWINDER__ check.
730         (parse_lsda_header): Check _GLIBCXX_OVERRIDE_TTYPE_ENCODING.
731         (get_ttype_entry): Use generic implementation on ARM EABI.
732         (check_exception_spec): Use _Unwind_decode_typeinfo_ptr and
733         UNWIND_STACK_REG.
734         (PERSONALITY_FUNCTION): Set ttype_base.
735
736 2011-09-12  Daniel Krugler  <daniel.kruegler@googlemail.com>
737             Paolo Carlini  <paolo.carlini@oracle.com>
738
739         * include/std/tuple (_Head_base<>::_M_head, _Head_base<>::_M_tail,
740         _Tuple_impl<>::_M_head, _Tuple_impl<>::_M_tail): Change to static
741         constexpr functions; adjust everywhere.
742         (__get_helper, get): Declare constexpr all three overloads.
743         (tuple_cat): Declare constexpr; use late return type to improve
744         error messages.
745         * include/std/utility (__pair_get<>::__get, __pair_get<>::__move_get,
746         __pair_get<>::__const_get, get): Declare all constexpr.
747         * include/std/array (get): Likewise.
748         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Re-enable
749         tuple_cat test.
750         * testsuite/23_containers/array/constexpr_get.cc: New.
751         * testsuite/20_util/tuple/element_access/constexpr_get.cc: Likewise.
752         * testsuite/20_util/pair/constexpr_get.cc: Likewise.
753         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
754         line number.
755
756 2011-09-12  Jason Merrill  <jason@redhat.com>
757
758         * testsuite/20_util/is_constructible/value-2.cc: Adjust
759         expected values.
760
761 2011-09-11  Daniel Krugler  <daniel.kruegler@googlemail.com>
762
763         PR libstdc++/50159
764         * include/std/tuple (tuple_cat): Reimplement according to the
765         resolution of LWG 1385.
766         * include/std/type_traits: Define __and_ and __or_ for zero
767         arguments too; minor tweaks.
768         * testsuite/20_util/tuple/creation_functions/tuple_cat.cc: New.
769         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Disable
770         for now tuple_cat test.
771         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
772         line numbers.
773         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
774         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
775         Likewise.
776         * doc/xml/manual/status_cxx200x.xml: Update.
777
778 2011-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
779
780         * include/std/tuple: Use everywhere std::size_t... instead of int...
781         * include/std/functional: Likewise.
782         * include/std/scoped_allocator: Likewise.
783         * include/bits/stl_pair.h: Likewise.
784
785 2011-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
786
787         PR libstdc++/50336
788         * include/bits/streambuf_iterator.h (class istreambuf_iterator):
789         Implement LWG 445 in C++0x mode.
790         * testsuite/24_iterators/istreambuf_iterator/requirements/dr445.cc:
791         New.
792
793 2011-09-08  Dodji Seketeli  <dodji@redhat.com>
794
795         PR c++/33255 - Support -Wunused-local-typedefs warning
796         * include/ext/bitmap_allocator.h
797         (__detail::__mini_vector::__lower_bound): Remove unused typedef.
798         * src/istream.cc (std::operator>>(basic_istream<char>& __in,
799         basic_string<char>& __str)): Likewise.
800         (std::getline): Likewise.
801         * src/valarray.cc (__valarray_product): Likewise.
802
803 2011-09-07  François Dumont  <francois.cppdevs@free.fr>
804
805         * testsuite/23_containers/array/at.cc: Revert to...
806         * testsuite/23_containers/array/at_neg.cc: ...this.
807
808 2011-09-07  Jason Merrill  <jason@redhat.com>
809
810         * testsuite/20_util/bind/ref_neg.cc: Adjust errors.
811         * testsuite/20_util/duration/cons/1_neg.cc: Adjust errors.
812
813 2011-09-06  Benjamin Kosnik  <bkoz@redhat.com>
814
815         * include/std/tuple (_Tuple_impl::_M_head, _M_tail): Mark constexpr.
816         (tuple(tuple&&)): Same.
817         (tuple(const tuple<_UElements...>& __in)): Same.
818         (tuple(tuple<_UElements...>&& __in)): Same.
819         (tuple_cat(const tuple<_TElements...>&, const tuple<_UElements...>&)):
820         Same.
821         (get): Same.
822         * include/std/array: Consolidate array::data usage.
823         * testsuite/23_containers/array/requirements/constexpr_functions.cc:
824         Remove extra include.
825         * testsuite/20_util/tuple/creation_functions/constexpr.cc: New.
826         * testsuite/20_util/tuple/cons/constexpr-2.cc: Add tests.
827         * testsuite/20_util/tuple/cons/constexpr-3.cc: Same.
828         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line numbers.
829
830 2011-09-06  François Dumont  <fdumont@gcc.gnu.org>
831             Paolo Carlini  <paolo.carlini@oracle.com>
832
833         * include/bits/hashtable_policy.h (_Prime_rehash_policy::
834         _M_next_bkt): Cast _M_max_load_factor to long double.
835         (_Prime_rehash_policy::_M_bkt_for_elements): Use _M_next_bkt.
836         (_Prime_rehash_policy::_M_need_rehash): Likewise; cast all
837         float quantities to long double.
838
839 2011-09-06  Paolo Carlini  <paolo.carlini@oracle.com>
840
841         PR libstdc++/50257
842         * include/bits/hashtable_policy.h (_Prime_rehash_policy::
843         _M_next_bkt): Optimize for small argument.
844
845 2011-09-02  François Dumont  <fdumont@gcc.gnu.org>
846
847         * testsuite/util/testsuite_allocator.h (tracker_allocator_counter::
848         allocate): Update allocation count only if allocation succeeded.
849
850 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
851
852         * include/std/bitset: Trivial formatting fixes.
853
854 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
855             Marc Glisse  <marc.glisse@normalesup.org>
856
857         * include/std/bitset (_Base_bitset<>::_M_are_all_aux): Remove.
858         (_Base_bitset<>::_M_are_all): Add.
859         (bitset<>::all): Use the latter, improve implementation.
860
861 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
862             Marc Glisse  <marc.glisse@normalesup.org>
863
864         PR libstdc++/50268
865         * include/std/bitset (struct _Sanitize_val): Add.
866         (bitset<>::bitset(unsigned long long)): Fix.
867         * testsuite/23_containers/bitset/cons/50268.cc: New.
868
869 2011-09-01  Paolo Carlini  <paolo.carlini@oracle.com>
870
871         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
872         Remove noexcept, the move constructor allocates memory; rearrange
873         the code in the body to consistently update __ht._M_rehash_policy
874         before using _M_next_bkt on it.
875         * include/debug/unordered_map: Adjust.
876         * include/debug/unordered_set: Likewise.
877         * include/profile/unordered_map: Likewise.
878         * include/profile/unordered_set: Likewise.
879         * testsuite/23_containers/unordered_map/cons/
880         noexcept_move_construct.cc: Remove.
881         * testsuite/23_containers/unordered_set/cons/
882         noexcept_move_construct.cc: Likewise.
883         * testsuite/23_containers/unordered_multimap/cons/
884         noexcept_move_construct.cc: Likewise.
885         * testsuite/23_containers/unordered_multiset/cons/
886         noexcept_move_construct.cc: Likewise.
887
888 2011-08-31  Paolo Carlini  <paolo.carlini@oracle.com>
889
890         * include/std/chrono (operator*(const _Rep1&, const duration<>&)):
891         Fix order of template parameters per LWG 2004.
892
893 2011-08-30  Paolo Carlini  <paolo.carlini@oracle.com>
894
895         * include/bits/stl_iterator.h (make_move_iterator): Implement DR2061.
896         * testsuite/24_iterators/move_iterator/dr2061.cc: New.
897         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
898         line numbers.
899
900 2011-08-30  Paolo Carlini  <paolo.carlini@oracle.com>
901
902         * config/os/mingw32/error_constants.h: Fix commas.
903
904 2011-08-29  Benjamin Kosnik  <bkoz@redhat.com>
905
906         * testsuite/20_util/duration/arithmetic/constexpr.cc: Add.
907
908 2011-08-29  Kai Tietz  <ktietz@redhat.com>
909
910         * configure: Regenerated.
911         * config.h.in: Regenerated.
912         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR)  Add
913         checks for ECHILD, ENOSPC, EPERM, ETIMEDOUT, and
914         EWOULDBLOCK.
915         * config/os/mingw32/error_constants.h (errc): Add
916         enumerator values no_child_process, no_space_on_device,
917         not_supported, operation_not_permitted, operation_would_block,
918         timed_out, and value_too_large,
919
920 2011-08-29  Paolo Carlini  <paolo.carlini@oracle.com>
921
922         PR libstdc++/50118
923         * include/bits/stl_list.h (_List_base<>::
924         _List_base(const allocator_type&)): Remove.
925         (_List_base<>::_List_base(const _Node_alloc_type&)): Add.
926         (list<>:list(const allocator_type&), list(size_type, const
927         value_type&, const allocator_type&),
928         list(initializer_list<, const allocator_type&),
929         list(_InputIterator, _InputIterator, const allocator_type&),
930         insert(iterator, size_type, const value_type&),
931         insert(iterator, _InputIterator, _InputIterator)): Adjust.
932         * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(const _Compare&,
933         const allocator_type&)): Fix.
934         * include/bits/stl_map.h (map<>::map(const _Compare&,
935         const allocator_type&), map(initializer_list<>,
936         const _Compare&, const allocator_type&), map(_InputIterator,
937         _InputIterator, const _Compare&, const allocator_type&),
938         get_allocator): Adjust.
939         * include/bits/stl_set.h (set<>::set(const _Compare&,
940         const allocator_type&), set(initializer_list<>,
941         const _Compare&, const allocator_type&), set(_InputIterator,
942         _InputIterator, const _Compare&, const allocator_type&),
943         get_allocator): Likewise.
944         * include/bits/stl_multimap.h (multimap<>::multimap(const _Compare&,
945         const allocator_type&), multimap(initializer_list<>,
946         const _Compare&, const allocator_type&), multimap(_InputIterator,
947         _InputIterator, const _Compare&, const allocator_type&),
948         get_allocator): Likewise.
949         * include/bits/stl_multiset.h (multiset<>::multiset(const _Compare&,
950         const allocator_type&), multiset(initializer_list<>,
951         const _Compare&, const allocator_type&), multiset(_InputIterator,
952         _InputIterator, const _Compare&, const allocator_type&),
953         get_allocator): Likewise.
954         * include/bits/forward_list.h (_Fwd_list_base<>::
955         _Fwd_list_base(const _Alloc&), _Fwd_list_base(const _Fwd_list_base&,
956         const _Alloc&), _Fwd_list_base(_Fwd_list_base&&, const _Alloc&)):
957         Remove.
958         (_Fwd_list_base<>::_Fwd_list_base(const _Node_alloc_type&),
959         _Fwd_list_base(const _Fwd_list_base&,
960         const _Node_alloc_type&), _Fwd_list_base(_Fwd_list_base&&,
961         const _Node_alloc_type&)): Add.
962         (forward_list<>::forward_list(const _Alloc&),
963         forward_list(const forward_list&, const _Alloc&),
964         forward_list(forward_list&&, const _Alloc&),
965         forward_list(size_type, const _Tp&, const _Alloc&),
966         forward_list(_InputIterator, _InputIterator, const _Alloc&),
967         forward_list(std::initializer_list<>, const _Alloc&),
968         get_allocator): Adjust.
969         * include/bits/forward_list.tcc: Adjust.
970         * testsuite/util/testsuite_allocator.h (ExplicitConsAlloc): Add.
971         * testsuite/23_containers/unordered_map/requirements/
972         explicit_instantiation/5.cc: New.
973         * testsuite/23_containers/multimap/requirements/
974         explicit_instantiation/5.cc: Likewise.
975         * testsuite/23_containers/multimap/requirements/
976         explicit_instantiation/5_c++0x.cc: Likewise.
977         * testsuite/23_containers/set/requirements/explicit_instantiation/
978         5.cc: Likewise.
979         * testsuite/23_containers/set/requirements/explicit_instantiation/
980         5_c++0x.cc: Likewise.
981         * testsuite/23_containers/unordered_multimap/requirements/
982         explicit_instantiation/5.cc: Likewise.
983         * testsuite/23_containers/forward_list/requirements/
984         explicit_instantiation/5.cc: Likewise.
985         * testsuite/23_containers/unordered_set/requirements/
986         explicit_instantiation/5.cc: Likewise.
987         testsuite/23_containers/multiset/requirements/explicit_instantiation/
988         5.cc: Likewise.
989         * testsuite/23_containers/multiset/requirements/
990         explicit_instantiation/5_c++0x.cc: Likewise.
991         * testsuite/23_containers/list/requirements/explicit_instantiation/
992         5_c++0x.cc: Likewise.
993         * testsuite/23_containers/list/requirements/explicit_instantiation/
994         5.cc: Likewise.
995         * testsuite/23_containers/unordered_multiset/requirements/
996         explicit_instantiation/5.cc: Likewise.
997         * testsuite/23_containers/map/requirements/explicit_instantiation/
998         5.cc: Likewise.
999         * testsuite/23_containers/map/requirements/explicit_instantiation/
1000         5_c++0x.cc: Likewise.
1001         * testsuite/23_containers/forward_list/requirements/dr438/
1002         assign_neg.cc: Adjust dg-error line number.
1003         * testsuite/23_containers/forward_list/requirements/dr438/
1004         insert_neg.cc: Likewise.
1005         * testsuite/23_containers/forward_list/requirements/dr438/
1006         constructor_1_neg.cc: Likewise.
1007         * testsuite/23_containers/forward_list/requirements/dr438/
1008         constructor_2_neg.cc: Likewise.
1009         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1010         Likewise.
1011         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1012         Likewise.
1013         * testsuite/23_containers/list/requirements/dr438/
1014         constructor_1_neg.cc: Likewise.
1015         * testsuite/23_containers/list/requirements/dr438/
1016         constructor_2_neg.cc: Likewise.
1017
1018 2011-08-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1019
1020         * acinclude.m4 (GLIBCXX_CHECK_MATH_PROTO)
1021         (GLIBCXX_CHECK_STDLIB_PROTO): New tests.
1022         * configure.ac (GLIBCXX_CHECK_MATH_PROTO)
1023         (GLIBCXX_CHECK_STDLIB_PROTO): Call them.
1024         * configure: Regenerate.
1025         * config.h.in: Regenerate.
1026         * config/os/solaris/solaris2.8/os_defines.h
1027         (__CORRECT_ISO_CPP_MATH_H_PROTO2): Don't define.
1028         * config/os/solaris/solaris2.9: Remove.
1029         * configure.host (solaris2.8): Merge with ...
1030         (solaris2.9, solaris2.1[0-9]): ... this.
1031         Always use os/solaris/solaris2.8.
1032
1033 2011-08-28  Paolo Carlini  <paolo.carlini@oracle.com>
1034
1035         * include/bits/move.h (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Remove
1036         workaround for c++/49045.
1037         * include/bits/algorithmfwd.h: Likewise.
1038
1039 2011-08-25  Tom Tromey  <tromey@redhat.com>
1040
1041         * testsuite/libstdc++-prettyprinters/simple.cc: New file.
1042         * testsuite/lib/gdb-test.exp: New file.
1043         * testsuite/libstdc++-prettyprinters/prettyprinters.exp: New
1044         file.
1045
1046 2011-08-18  Marc Glisse  <marc.glisse@normalesup.org>
1047
1048         * include/tr1/cmath: Extend/update comment.
1049
1050 2011-08-18  Paolo Carlini  <paolo.carlini@oracle.com>
1051
1052         PR libstdc++/50119
1053         * include/bits/stl_algo.h (__copy_n(_InputIterator, _Size,
1054         _OutputIterator, input_iterator_tag)): Fix.
1055         * testsuite/25_algorithms/copy_n/50119.cc: New.
1056
1057 2011-08-18  Marc Glisse  <marc.glisse@normalesup.org>
1058             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1059
1060         PR libstdc++/1773
1061         * config/os/solaris2.7: Rename to config/os/solaris2.9.
1062         * config/os/solaris/solaris2.9/os_defines.h
1063         (__CORRECT_ISO_CPP_MATH_H_PROTO1)
1064         (__CORRECT_ISO_CPP_STDLIB_H_PROTO)
1065         (__CORRECT_ISO_CPP_STRING_H_PROTO)
1066         (__CORRECT_ISO_CPP_WCHAR_H_PROTO): Define.
1067         * config/os/solaris2.8/ctype_base.h,
1068         config/os/solaris2.8/ctype_configure_char.cc,
1069         config/solaris2.8/ctype_inline.h,
1070         config/os/solaris2.8/os_defines.h: New files.
1071
1072         * configure.host (solaris2.[89], solaris2.1[0-9]):
1073         Split into ...
1074         (solaris2.8): ... this.
1075         Use os/solaris/solaris2.8.
1076         (solaris2.9, solaris2.1[0-9]): ... and this.
1077         Use os/solaris/solaris2.9.
1078
1079         * include/c_global/cmath (double abs(double)): Wrap in
1080         !__CORRECT_ISO_CPP_MATH_H_PROTO1 &&
1081         !__CORRECT_ISO_CPP_MATH_H_PROTO2.
1082         (float abs(float), long double abs(long double): Wrap in
1083         !__CORRECT_ISO_CPP_MATH_H_PROTO1.
1084         (float acos(float), long double acos(long double)): Likewise.
1085         (float asin(float), long double asin(long double)): Likewise.
1086         (float atan(float), long double atan(long double)): Likewise.
1087         (float atan2(float, float), long double atan2(long double, long
1088         double)): Likewise.
1089         (float ceil(float), long double ceil(long double)): Likewise.
1090         (float cos(float), long double cos(long double)): Likewise.
1091         (float cosh(float), long double cosh(long double)): Likewise.
1092         (float exp(float), long double exp(long double)): Likewise.
1093         (float fabs(float), long double fabs(long double)): Likewise.
1094         (float floor(float), long double floor(long double)): Likewise.
1095         (float fmod(float, float), long double fmod(long double, long
1096         double)): Likewise.
1097         (float frexp(float, int*), long double frexp(long double, int*)):
1098         Likewise.
1099         (float ldexp(float, int), long double ldexp(long double, int)):
1100         Likewise.
1101         (float log(float), long double log(long double)): Likewise.
1102         (float log10(float), long double log10(long double)): Likewise.
1103         (float modf(float, float*), long double modf(long double, long
1104         double*))): Likewise.
1105         (float pow(float, float), long double pow(long double, long
1106         double)): Likewise.
1107         (float sin(float), long double sin(long double)): Likewise.
1108         (float sinh(float), long double sinh(long double)): Likewise.
1109         (float sqrt(float), long double sqrt(long double)): Likewise.
1110         (float tan(float), long double tan(long double)): Likewise.
1111         (float tanh(float), long double tanh(long double)): Likewise.
1112         * include/c_global/cstdlib (long abs(long), ldiv_t div(long,
1113         long)): Wrap in !__CORRECT_ISO_CPP_STDLIB_H_PROTO.
1114         * include/tr1/cmath (float fabs(float), long double fabs(long
1115         double)): Wrap in !__CORRECT_ISO_CPP_MATH_H_PROTO1.
1116
1117 2011-08-14  Benjamin Kosnik  <bkoz@redhat.com>
1118
1119         * doc/xml/images/*: Image and image filename changes.
1120
1121 2011-08-14  Benjamin Kosnik  <bkoz@redhat.com>
1122
1123         * testsuite/data/make_graph_test_infos.xml: Edit.
1124         * testsuite/data/make_graph_htmls.xml: Remove
1125         * scripts/make_graph.py: Edit, fix.
1126         * scripts/make_graphs.py: Remove.
1127
1128         * doc/Makefile.am (doc-svg-performance): New.
1129         (doc-html-performance): Remove.
1130         * doc/Makefile.in: Regenerate.
1131
1132         * doc/xml/manual/test_policy_data_structures.xml: Markup changes.
1133         * doc/xml/manual/policy_data_structures.xml: Same.
1134         * doc/xml/manual/locale.xml: Same.
1135
1136         Testsuite renames.
1137         * performance/ext/pb_ds/priority_queue_text_modify_down_timing.cc:
1138         Rename.
1139         * performance/ext/pb_ds/random_int_find_timing.cc: Same.
1140         * performance/ext/pb_ds/multimap_text_insert_mem_usage.hpp
1141         * performance/ext/pb_ds/multimap_text_find_timing.hpp
1142         * performance/ext/pb_ds/priority_queue_random_int_push_timing.cc: Same.
1143         * performance/ext/pb_ds/priority_queue_text_modify_timing.hpp
1144         * performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
1145         * performance/ext/pb_ds/multimap_text_insert_mem_usage_large.cc: Same.
1146         * performance/ext/pb_ds/priority_queue_text_push_pop_timing.cc: Same.
1147         * performance/ext/pb_ds/priority_queue_text_join_timing.cc: Same.
1148         * performance/ext/pb_ds/multimap_text_insert_timing_small.cc: Same.
1149         * performance/ext/pb_ds/random_int_subscript_insert_timing.cc: Same.
1150         * performance/ext/pb_ds/tree_text_lor_find_timing.cc: Same.
1151         * performance/ext/pb_ds/priority_queue_text_pop_mem_usage.cc: Same.
1152         * performance/ext/pb_ds/multimap_text_find_timing_small.cc: Same.
1153         * performance/ext/pb_ds/text_find_timing.cc: Same.
1154         * performance/ext/pb_ds/tree_text_insert_timing.cc: Same.
1155         * performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc: Same.
1156         * performance/ext/pb_ds/random_int_subscript_find_timing.cc: Same.
1157         * performance/ext/pb_ds/priority_queue_text_push_timing.cc: Same.
1158         * performance/ext/pb_ds/tree_split_join_timing.cc: Same.
1159         * performance/ext/pb_ds/multimap_text_insert_timing_large.cc: Same.
1160         * performance/ext/pb_ds/priority_queue_text_modify_up_timing.cc: Same.
1161         * performance/ext/pb_ds/multimap_text_find_timing_large.cc: Same.
1162         * performance/ext/pb_ds/priority_queue_random_int_push_pop_timing.cc:
1163         Same.
1164         * performance/ext/pb_ds/multimap_text_insert_timing.hpp
1165         * performance/ext/pb_ds/multimap_text_insert_mem_usage_small.cc: Same.
1166         * performance/ext/pb_ds/hash_zlob_random_int_find_timing.cc: Same.
1167
1168         * performance/ext/pb_ds/all_int_find.cc: To these new files...
1169         * performance/ext/pb_ds/all_int_subscript_find.cc: ...this.
1170         * performance/ext/pb_ds/all_int_subscript_insert.cc: ...this.
1171         * performance/ext/pb_ds/all_text_find.cc: ...this.
1172         * performance/ext/pb_ds/hash_int_erase_mem.cc: ...this.
1173         * performance/ext/pb_ds/hash_zlob_int_find.cc: ...this.
1174         * performance/ext/pb_ds/multimap_text_find.hpp
1175         * performance/ext/pb_ds/multimap_text_find_large.cc: ...this.
1176         * performance/ext/pb_ds/multimap_text_find_small.cc: ...this.
1177         * performance/ext/pb_ds/multimap_text_insert.hpp
1178         * performance/ext/pb_ds/multimap_text_insert_large.cc: ...this.
1179         * performance/ext/pb_ds/multimap_text_insert_mem.hpp
1180         * performance/ext/pb_ds/multimap_text_insert_mem_large.cc: ...this.
1181         * performance/ext/pb_ds/multimap_text_insert_mem_small.cc: ...this.
1182         * performance/ext/pb_ds/multimap_text_insert_small.cc: ...this.
1183         * performance/ext/pb_ds/priority_queue_int_push.cc: ...this.
1184         * performance/ext/pb_ds/priority_queue_int_push_pop.cc: ...this.
1185         * performance/ext/pb_ds/priority_queue_text_join.cc: ...this.
1186         * performance/ext/pb_ds/priority_queue_text_modify_down.cc: ...this.
1187         * performance/ext/pb_ds/priority_queue_text_modify.hpp
1188         * performance/ext/pb_ds/priority_queue_text_modify_up.cc: ...this.
1189         * performance/ext/pb_ds/priority_queue_text_pop_mem.cc: ...this.
1190         * performance/ext/pb_ds/priority_queue_text_push.cc: ...this.
1191         * performance/ext/pb_ds/priority_queue_text_push_pop.cc: ...this.
1192         * performance/ext/pb_ds/tree_order_statistics.cc: ...this.
1193         * performance/ext/pb_ds/tree_split_join.cc: ...this.
1194         * performance/ext/pb_ds/tree_text_insert.cc: ...this.
1195         * performance/ext/pb_ds/tree_text_lor_find.cc: ...this.
1196
1197         * doc/xml/images/*: Image and image filename changes.
1198
1199 2011-08-12  Paolo Carlini  <paolo.carlini@oracle.com>
1200
1201         * include/c_global/cmath (fmod(_Tp, _Up)): Add.
1202         * include/c_std/cmath: Likewise.
1203
1204 2011-08-11  Paolo Carlini  <paolo.carlini@oracle.com>
1205
1206         * include/std/future: constexpr functions are implicitly inline.
1207         * include/std/chrono: Likewise.
1208         * include/std/complex: Likewise.
1209         * include/bits/move.h: Likewise.
1210         * include/bits/stl_pair.h: Likewise.
1211
1212 2011-08-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
1213
1214         * include/bits/alloc_traits.h: Fix doxygen @headername.
1215
1216 2011-08-06  Benjamin Kosnik  <bkoz@redhat.com>
1217
1218         * doc/doxygen/user.cfg.in (PDF_HYPERLINKS): To NO.
1219
1220 2011-08-06  Benjamin Kosnik  <bkoz@redhat.com>
1221
1222         * doc/doxygen/user.cfg.in: Add scoped_allocator.
1223
1224         * include/debug/safe_sequence.h: Fix doxygen markup.
1225         * include/debug/safe_unordered_base.h: Same.
1226         * include/debug/safe_local_iterator.tcc: Same.
1227         * include/debug/safe_unordered_container.h: Same.
1228         * include/std/valarray: Same.
1229         * include/std/iomanip: Same.
1230         * include/std/streambuf: Same.
1231         * include/std/bitset: Same.
1232         * include/std/fstream: Same.
1233         * include/std/functional: Same.
1234         * include/std/istream: Same.
1235         * include/std/ostream: Same.
1236         * include/std/scoped_allocator: Same.
1237         * include/std/sstream: Same.
1238         * include/parallel/multiway_merge.h: Same.
1239         * include/parallel/base.h: Same.
1240         * include/parallel/for_each_selectors.h: Same.
1241         * include/parallel/multiway_mergesort.h: Same.
1242         * include/parallel/search.h: Same.
1243         * include/parallel/partial_sum.h: Same.
1244         * include/parallel/queue.h: Same.
1245         * include/parallel/sort.h: Same.
1246         * include/parallel/random_number.h: Same.
1247         * include/ext/vstring.h: Same.
1248         * include/ext/algorithm: Same.
1249         * include/ext/pb_ds/assoc_container.h: Same.
1250         * include/ext/bitmap_allocator.h: Same.
1251         * include/ext/stdio_filebuf.h: Same.
1252         * include/ext/memory: Same.
1253         * include/ext/functional: Same.
1254         * include/bits/basic_ios.h: Same.
1255         * include/bits/stl_list.h: Same.
1256         * include/bits/stl_map.h: Same.
1257         * include/bits/stl_algobase.h: Same.
1258         * include/bits/stl_queue.h: Same.
1259         * include/bits/gslice.h: Same.
1260         * include/bits/locale_classes.h: Same.
1261         * include/bits/stl_set.h: Same.
1262         * include/bits/locale_facets.h: Same.
1263         * include/bits/stl_stack.h: Same.
1264         * include/bits/stl_heap.h: Same.
1265         * include/bits/forward_list.h: Same.
1266         * include/bits/stream_iterator.h: Same.
1267         * include/bits/basic_string.h: Same.
1268         * include/bits/stl_multimap.h: Same.
1269         * include/bits/stl_pair.h: Same.
1270         * include/bits/ios_base.h: Same.
1271         * include/bits/stl_numeric.h: Same.
1272         * include/bits/stl_vector.h: Same.
1273         * include/bits/stl_deque.h: Same.
1274         * include/bits/codecvt.h: Same.
1275         * include/bits/stl_multiset.h: Same.
1276         * include/bits/stl_uninitialized.h: Same.
1277         * include/bits/ptr_traits.h: Same.
1278         * include/bits/slice_array.h: Same.
1279         * include/bits/stl_iterator_base_funcs.h: Same.
1280         * include/bits/stl_algo.h: Same.
1281         * include/bits/stl_iterator.h: Same.
1282         * include/bits/stl_tempbuf.h: Same.
1283         * include/bits/regex.h: Same.
1284         * include/bits/range_access.h: Same.
1285         * include/bits/random.h: Same.
1286         * include/bits/alloc_traits.h: Same.
1287         * include/bits/regex_error.h: Same.
1288         * include/bits/locale_facets_nonio.h: Same.
1289         * include/bits/stl_relops.h: Same.
1290         * include/backward/auto_ptr.h: Same.
1291         * libsupc++/initializer_list: Same.
1292
1293         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1294         Adjust line numbers.
1295         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
1296         * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1297         Same.
1298         * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1299         Same.
1300
1301 2011-08-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1302
1303         * acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Point TOPLEVEL_INCLUDES
1304         to $(toplevel_srcdir)/libgcc.
1305         * configure: Regenerate.
1306
1307 2011-08-04  Benjamin Kosnik  <bkoz@redhat.com>
1308
1309         * doc/xml/manual/build_hacking.xml: Use relative fileref for PNG
1310         imagedata.
1311         * doc/xml/manual/test_policy_data_structures.xml: Same.
1312         * doc/xml/manual/policy_data_structures.xml: Same.
1313
1314         * doc/Makefile.am (stamp-html-docbook-images)
1315         (stamp-html-docbook-lwg, stamp-html-docbook-data): New.
1316         (xml_extra): Add lwg html file dependencies.
1317         (xml_images): Add image html file dependencies.
1318         * doc/Makefile.in: Regenerate.
1319         (stamp-html): Change to stamp-html-docbook-data.
1320         (stamp-html-copy): Remove.
1321
1322 2011-08-04  Paolo Carlini  <paolo.carlini@oracle.com>
1323
1324         * src/atomic.cc: Use noexcept.
1325         * include/std/atomic: Likewise.
1326         * include/bits/atomic_0.h: Likewise.
1327         * include/bits/atomic_2.h: Likewise.
1328         * include/bits/atomic_base.h: Likewise.
1329
1330 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
1331
1332         * testsuite/performance/27_io/filebuf_sputn_unbuf.cc: Include
1333         unistd.h for unlink.
1334         * testsuite/performance/27_io/ofstream_insert_int.cc: Same.
1335         * testsuite/performance/27_io/ifstream_extract_int.cc: Same.
1336         * testsuite/performance/27_io/ifstream_getline-2.cc: Same.
1337         * testsuite/performance/27_io/fstream_seek_write.cc: Same.
1338         * testsuite/performance/27_io/ifstream_extract_chars.cc: Same.
1339         * testsuite/performance/27_io/ofstream_insert_float.cc: Same.
1340         * testsuite/performance/27_io/ifstream_extract_float.cc: Same.
1341         * testsuite/performance/27_io/filebuf_sputc.cc: Same.
1342
1343 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
1344
1345         * include/std/tuple: Mark more constructors constexpr.
1346         * testsuite/20_util/tuple/cons/constexpr.cc: Split into and extend as:
1347         * testsuite/20_util/tuple/cons/constexpr-2.cc: ...this.
1348         * testsuite/20_util/tuple/cons/constexpr-3.cc: ... and this.
1349         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line numbers.
1350
1351 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
1352             François Dumont  <francois.cppdevs@free.fr>
1353
1354         * testsuite/23_containers/array/at_neg.cc: Move...
1355         * testsuite/23_containers/array/at.cc: ...here. Remove
1356         -fno-exceptions, call const at member function.
1357
1358 2011-08-01  H.J. Lu  <hongjiu.lu@intel.com>
1359
1360         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Generated.
1361
1362 2011-08-01  Paolo Carlini  <paolo.carlini@oracle.com>
1363
1364         PR c++/49813
1365         * include/c_global/cmath (isinf): Remove workaround.
1366
1367 2011-07-31  Paolo Carlini  <paolo.carlini@oracle.com>
1368
1369         PR libstdc++/49925
1370         * include/bits/shared_ptr.h (make_shared): Qualify allocate_shared
1371         with std::.
1372         * include/bits/shared_ptr_base.h (__make_shared): Likewise.
1373
1374 2011-07-29  Benjamin Kosnik  <bkoz@redhat.com>
1375
1376         * doc/xml/manual/build_hacking.xml: Markup imagedata changes.
1377         * doc/xml/manual/policy_data_structures.xml: Same.
1378
1379         * doc/xml/class.txml: Remove biblioid.
1380         * doc/xml/manual/allocator.xml: Same.
1381         * doc/xml/manual/ctype.xml: Same.
1382         * doc/xml/manual/codecvt.xml: Same.
1383         * doc/xml/manual/backwards_compatibility.xml: Same.
1384         * doc/xml/manual/abi.xml: Same.
1385         * doc/xml/manual/shared_ptr.xml: Same.
1386         * doc/xml/manual/using_exceptions.xml: Same.
1387         * doc/xml/manual/messages.xml: Same.
1388
1389 2011-07-29  Benjamin Kosnik  <bkoz@redhat.com>
1390
1391         Docbook conversion of existing ext/pb_ds documentation.
1392         * doc/Makefile.am (xml_sources_manual): Add
1393         policy_data_structures.xml and
1394         test_policy_data_structures.xml.
1395         (stamp-html-copy): Remove special-case for ext/pb_ds directory.
1396         (XSLTPROC_FLAGS): Split into XSLT_FLAGS and XSLT_PARAM, use.
1397         * doc/Makefile.in: Regenerate.
1398         * doc/xml/manual/policy_data_structures.xml: New, adapted from
1399           previous html-only instance in doc/html/ext/pb_ds.
1400         * doc/xml/manual/test_policy_data_structures.xml: New, same as above.
1401
1402         * doc/xml/spine.xml: Update copyright.
1403         * doc/xml/manual/spine.xml: Same.
1404         * doc/xml/manual/extensions.xml: Adjust set, chapter, sections.
1405         * doc/xml/manual/bitmap_allocator.xml: Same.
1406         * doc/xml/manual/mt_allocator.xml: Same.
1407
1408         Populate image directory.
1409         * doc/xml/images/(pbds_balls_and_bins.png,
1410         pbds_binary_priority_queue_random_int_push_timing_test_local.pdf,
1411         pbds_binary_priority_queue_random_int_push_timing_test_local.png,
1412         pbds_binary_priority_queue_random_int_push_timing_test_local.svg,
1413         pbds_cc_hash_random_int_find_timing_test_local.pdf,
1414         pbds_cc_hash_random_int_find_timing_test_local.png,
1415         pbds_cc_hash_random_int_find_timing_test_local.svg,
1416         pbds_cc_hash_random_int_subscript_timing_test_find_local.pdf,
1417         pbds_cc_hash_random_int_subscript_timing_test_find_local.png,
1418         pbds_cc_hash_random_int_subscript_timing_test_find_local.svg,
1419         pbds_cc_hash_random_int_subscript_timing_test_insert_local.pdf,
1420         pbds_cc_hash_random_int_subscript_timing_test_insert_local.png,
1421         pbds_cc_hash_random_int_subscript_timing_test_insert_local.svg,
1422         pbds_container_tag_hierarchy.pdf,
1423         pbds_container_tag_hierarchy.png,
1424         pbds_container_tag_hierarchy.svg,
1425         pbds_different_underlying_dss_1.png,
1426         pbds_different_underlying_dss_2.png,
1427         pbds_embedded_lists_1.png, pbds_embedded_lists_2.png,
1428         pbds_embedded_lists_3.png, pbds_exception_hierarchy.pdf,
1429         pbds_exception_hierarchy.png, pbds_exception_hierarchy.svg,
1430         pbds_gp_hash_random_int_find_timing_test_local.pdf,
1431         pbds_gp_hash_random_int_find_timing_test_local.png,
1432         pbds_gp_hash_random_int_find_timing_test_local.svg,
1433         pbds_gp_hash_random_int_subscript_timing_test_find_local.pdf,
1434         pbds_gp_hash_random_int_subscript_timing_test_find_local.png,
1435         pbds_gp_hash_random_int_subscript_timing_test_find_local.svg,
1436         pbds_gp_hash_random_int_subscript_timing_test_insert_local.pdf,
1437         pbds_gp_hash_random_int_subscript_timing_test_insert_local.png,
1438         pbds_gp_hash_random_int_subscript_timing_test_insert_local.svg,
1439         pbds_hash_policy_cd.png,
1440         pbds_hash_random_int_erase_mem_usage_test_local.pdf,
1441         pbds_hash_random_int_erase_mem_usage_test_local.png,
1442         pbds_hash_random_int_erase_mem_usage_test_local.svg,
1443         pbds_hash_ranged_hash_range_hashing_fns.png,
1444         pbds_hash_range_hashing_seq_diagram2.png,
1445         pbds_hash_range_hashing_seq_diagram.png,
1446         pbds_hash_zlob_random_int_find_timing_test_local.pdf,
1447         pbds_hash_zlob_random_int_find_timing_test_local.png,
1448         pbds_hash_zlob_random_int_find_timing_test_local.svg,
1449         pbds_insert_resize_sequence_diagram1.png,
1450         pbds_insert_resize_sequence_diagram2.png,
1451         pbds_insert_resize_sequence_diagram3.png,
1452         pbds_invalidation_guarantee_erase.png,
1453         pbds_invalidation_tag_hierarchy.pdf,
1454         pbds_invalidation_tag_hierarchy.png,
1455         pbds_invalidation_tag_hierarchy.svg, pbds_list_update.png,
1456         pbds_multimap_text_find_timing_test_large_s2p_hash_local.pdf,
1457         pbds_multimap_text_find_timing_test_large_s2p_hash_local.png,
1458         pbds_multimap_text_find_timing_test_large_s2p_hash_local.svg,
1459         pbds_multimap_text_find_timing_test_large_s2p_tree_local.pdf,
1460         pbds_multimap_text_find_timing_test_large_s2p_tree_local.png,
1461         pbds_multimap_text_find_timing_test_large_s2p_tree_local.svg,
1462         pbds_multimap_text_find_timing_test_small_s2p_hash_local.pdf,
1463         pbds_multimap_text_find_timing_test_small_s2p_hash_local.png,
1464         pbds_multimap_text_find_timing_test_small_s2p_hash_local.svg,
1465         pbds_multimap_text_find_timing_test_small_s2p_tree_local.pdf,
1466         pbds_multimap_text_find_timing_test_small_s2p_tree_local.png,
1467         pbds_multimap_text_find_timing_test_small_s2p_tree_local.svg,
1468         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.pdf,
1469         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
1470         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.svg,
1471         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.pdf,
1472         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
1473         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.svg,
1474         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.pdf,
1475         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
1476         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.svg,
1477         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.pdf,
1478         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.png,
1479         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.svg,
1480         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.pdf,
1481         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.png,
1482         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.svg,
1483         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.pdf,
1484         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.png,
1485         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.svg,
1486         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.pdf,
1487         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.png,
1488         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.svg,
1489         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.pdf,
1490         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.png,
1491         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.svg,
1492         pbds_node_invariants.png,
1493         pbds_pairing_priority_queue_text_push_pop_timing_test_local.pdf,
1494         pbds_pairing_priority_queue_text_push_pop_timing_test_local.png,
1495         pbds_pairing_priority_queue_text_push_pop_timing_test_local.svg,
1496         pbds_pairing_priority_queue_text_push_timing_test_local.pdf,
1497         pbds_pairing_priority_queue_text_push_timing_test_local.png,
1498         pbds_pairing_priority_queue_text_push_timing_test_local.svg,
1499         pbds_pat_trie.png, pbds_point_iterator_hierarchy.png,
1500         pbds_point_iterators_range_ops_1.png,
1501         pbds_point_iterators_range_ops_2.png,
1502         pbds_priority_queue_different_underlying_dss.png,
1503         pbds_priority_queue_random_int_push_pop_timing_test_local.pdf,
1504         pbds_priority_queue_random_int_push_pop_timing_test_local.png,
1505         pbds_priority_queue_random_int_push_pop_timing_test_local.svg,
1506         pbds_priority_queue_random_int_push_timing_test_local.pdf,
1507         pbds_priority_queue_random_int_push_timing_test_local.png,
1508         pbds_priority_queue_random_int_push_timing_test_local.svg,
1509         pbds_priority_queue_tag_hierarchy.pdf,
1510         pbds_priority_queue_tag_hierarchy.png,
1511         pbds_priority_queue_tag_hierarchy.svg,
1512         pbds_priority_queue_text_join_timing_test_local.pdf,
1513         pbds_priority_queue_text_join_timing_test_local.png,
1514         pbds_priority_queue_text_join_timing_test_local.svg,
1515         pbds_priority_queue_text_modify_down_timing_test_local.pdf,
1516         pbds_priority_queue_text_modify_down_timing_test_local.png,
1517         pbds_priority_queue_text_modify_down_timing_test_local.svg,
1518         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.pdf,
1519         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
1520         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.svg,
1521         pbds_priority_queue_text_modify_up_timing_test_local.pdf,
1522         pbds_priority_queue_text_modify_up_timing_test_local.png,
1523         pbds_priority_queue_text_modify_up_timing_test_local.svg,
1524         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.pdf,
1525         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
1526         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.svg,
1527         pbds_priority_queue_text_pop_mem_usage_test_local.pdf,
1528         pbds_priority_queue_text_pop_mem_usage_test_local.png,
1529         pbds_priority_queue_text_pop_mem_usage_test_local.svg,
1530         pbds_priority_queue_text_push_pop_timing_test_local.pdf,
1531         pbds_priority_queue_text_push_pop_timing_test_local.png,
1532         pbds_priority_queue_text_push_pop_timing_test_local.svg,
1533         pbds_priority_queue_text_push_timing_test_local.pdf,
1534         pbds_priority_queue_text_push_timing_test_local.png,
1535         pbds_priority_queue_text_push_timing_test_local.svg,
1536         pbds_rationale_null_node_updator.png,
1537         pbds_resize_policy_cd.png, pbds_restoring_node_invariants.png,
1538         pbds_simple_list.png,
1539         pbds_text_find_timing_test_hash_local.pdf,
1540         pbds_text_find_timing_test_hash_local.png,
1541         pbds_text_find_timing_test_hash_local.svg,
1542         pbds_text_find_timing_test_tree_like_local.pdf,
1543         pbds_text_find_timing_test_tree_like_local.png,
1544         pbds_text_find_timing_test_tree_like_local.svg,
1545         pbds_tree_node_invalidations.png,
1546         pbds_tree_node_invariants.png,
1547         pbds_tree_node_updator_policy_cd.png,
1548         pbds_tree_order_statistics_timing_test_local.pdf,
1549         pbds_tree_order_statistics_timing_test_local.png,
1550         pbds_tree_order_statistics_timing_test_local.svg,
1551         pbds_tree_split_join_timing_test_local.pdf,
1552         pbds_tree_split_join_timing_test_local.png,
1553         pbds_tree_split_join_timing_test_local.svg,
1554         pbds_tree_text_insert_timing_test_node_tree_local.pdf,
1555         pbds_tree_text_insert_timing_test_node_tree_local.png,
1556         pbds_tree_text_insert_timing_test_node_tree_local.svg,
1557         pbds_tree_text_insert_timing_test_pat_trie_local.pdf,
1558         pbds_tree_text_insert_timing_test_pat_trie_local.png,
1559         pbds_tree_text_insert_timing_test_pat_trie_local.svg,
1560         pbds_tree_text_insert_timing_test_vector_tree_local.pdf,
1561         pbds_tree_text_insert_timing_test_vector_tree_local.png,
1562         pbds_tree_text_insert_timing_test_vector_tree_local.svg,
1563         pbds_tree_text_lor_find_timing_test_local.pdf,
1564         pbds_tree_text_lor_find_timing_test_local.png,
1565         pbds_tree_text_lor_find_timing_test_local.svg,
1566         pbds_trie_node_updator_policy_cd.png,
1567         pbds_update_seq_diagram.png): Add.
1568
1569         * doc/html/ext/pb_ds: Remove.
1570         * doc/html/ext/pb_ds/(acks.html, assoc_container_tag_cd.png,
1571         assoc_container_tag_cd.svg, assoc_container_traits.html,
1572         assoc_design.html, assoc_examples.html,
1573         associative_container_tag.html, assoc_performance_tests.html,
1574         assoc_regression_tests.html, assoc_tests.html,
1575         balls_and_bins.png, basic_hash_table.html,
1576         basic_hash_tag.html, basic_invalidation_guarantee.html,
1577         basic_tree_assoc_container_const_node_iterator.html,
1578         basic_tree.html, basic_tree_tag.html, binary_heap_tag.html,
1579         binary_priority_queue_random_int_push_timing_test_gcc.png,
1580         binary_priority_queue_random_int_push_timing_test_local.png,
1581         binary_priority_queue_random_int_push_timing_test_msvc.png,
1582         binomial_heap_tag.html,
1583         ccgp_hash_random_int_subscript_timing_test_insert_gcc.png,
1584         ccgp_hash_random_int_subscript_timing_test_insert_local.png,
1585         ccgp_hash_random_int_subscript_timing_test_insert_msvc.png,
1586         cc_hash_max_collision_check_resize_trigger.html,
1587         cc_hash_random_int_find_timing_test_gcc.png,
1588         cc_hash_random_int_find_timing_test_local.png,
1589         cc_hash_random_int_find_timing_test_msvc.png,
1590         cc_hash_random_int_subscript_timing_test_find_gcc.png,
1591         cc_hash_random_int_subscript_timing_test_find_local.png,
1592         cc_hash_random_int_subscript_timing_test_find_msvc.png,
1593         cc_hash_random_int_subscript_timing_test_insert_gcc.png,
1594         cc_hash_random_int_subscript_timing_test_insert_local.png,
1595         cc_hash_random_int_subscript_timing_test_insert_msvc.png,
1596         cc_hash_table.html, cc_hash_tag.html, checked_by_tidy.gif
1597         concepts.html, contact.html, container_base.html,
1598         container_cd.png, container_cd.svg, container_tag.html,
1599         counter_lu_policy.html, design.html,
1600         different_underlying_dss.png, direct_mask_range_hashing.html,
1601         direct_mod_range_hashing.html, disclaimer.html, ds_gen.html,
1602         embedded_lists_1.png, embedded_lists_2.png,
1603         embedded_lists_3.png, examples.html, exceptions.html,
1604         gp_hash_random_int_find_timing_test_gcc.png,
1605         gp_hash_random_int_find_timing_test_local.png,
1606         gp_hash_random_int_find_timing_test_msvc.png,
1607         gp_hash_random_int_subscript_timing_test_find_gcc.png,
1608         gp_hash_random_int_subscript_timing_test_find_local.png,
1609         gp_hash_random_int_subscript_timing_test_find_msvc.png,
1610         gp_hash_random_int_subscript_timing_test_insert_gcc.png,
1611         gp_hash_random_int_subscript_timing_test_insert_local.png,
1612         gp_hash_random_int_subscript_timing_test_insert_msvc.png,
1613         gp_hash_table.html, gp_hash_tag.html,
1614         hash_based_containers.html, hash_exponential_size_policy.html,
1615         hash_load_check_resize_trigger.html, hash_policy_cd.png,
1616         hash_prime_size_policy.html,
1617         hash_random_int_erase_mem_usage_test_gcc.png,
1618         hash_random_int_erase_mem_usage_test.html,
1619         hash_random_int_erase_mem_usage_test_local.png,
1620         hash_random_int_erase_mem_usage_test_msvc.png,
1621         hash_random_int_find_find_timing_test.html,
1622         hash_random_int_subscript_find_timing_test.html,
1623         hash_random_int_subscript_insert_timing_test.html,
1624         hash_ranged_hash_range_hashing_fns.png,
1625         hash_range_hashing_seq_diagram2.png,
1626         hash_range_hashing_seq_diagram.png,
1627         hash_standard_resize_policy.html,
1628         hash_text_find_find_timing_test.html,
1629         hash_zlob_random_int_find_find_timing_test.html,
1630         hash_zlob_random_int_find_timing_test_gcc.png,
1631         hash_zlob_random_int_find_timing_test_local.png,
1632         hash_zlob_random_int_find_timing_test_msvc.png, index.html,
1633         insert_error.html, insert_resize_sequence_diagram1.png,
1634         insert_resize_sequence_diagram2.png,
1635         insert_resize_sequence_diagram3.png, interface.html,
1636         introduction.html, invalidation_guarantee_cd.png,
1637         invalidation_guarantee_erase.png, join_error.html,
1638         linear_probe_fn.html, list_update.html, list_update_tag.html,
1639         lu_based_containers.html, lu.png, misc.html, motivation.html,
1640         move_to_front_lu_policy.html,
1641         multimap_text_find_timing_test_large.html,
1642         multimap_text_find_timing_test_large_s2p_hash_gcc.png,
1643         multimap_text_find_timing_test_large_s2p_hash_local.png,
1644         multimap_text_find_timing_test_large_s2p_hash_msvc.png,
1645         multimap_text_find_timing_test_large_s2p_tree_gcc.png,
1646         multimap_text_find_timing_test_large_s2p_tree_local.png,
1647         multimap_text_find_timing_test_large_s2p_tree_msvc.png,
1648         multimap_text_find_timing_test_small.html,
1649         multimap_text_find_timing_test_small_s2p_hash_gcc.png,
1650         multimap_text_find_timing_test_small_s2p_hash_local.png,
1651         multimap_text_find_timing_test_small_s2p_hash_msvc.png,
1652         multimap_text_find_timing_test_small_s2p_tree_gcc.png,
1653         multimap_text_find_timing_test_small_s2p_tree_local.png,
1654         multimap_text_find_timing_test_small_s2p_tree_msvc.png,
1655         multimap_text_insert_mem_usage_test_large.html,
1656         multimap_text_insert_mem_usage_test_large_s2p_hash_gcc.png,
1657         multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
1658         multimap_text_insert_mem_usage_test_large_s2p_hash_msvc.png,
1659         multimap_text_insert_mem_usage_test_large_s2p_tree_gcc.png,
1660         multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
1661         multimap_text_insert_mem_usage_test_large_s2p_tree_msvc.png,
1662         multimap_text_insert_mem_usage_test_small.html,
1663         multimap_text_insert_mem_usage_test_small_s2p_hash_gcc.png,
1664         multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
1665         multimap_text_insert_mem_usage_test_small_s2p_hash_msvc.png,
1666         multimap_text_insert_mem_usage_test_small_s2p_tree_gcc.png,
1667         multimap_text_insert_mem_usage_test_small_s2p_tree_local.png,
1668         multimap_text_insert_mem_usage_test_small_s2p_tree_msvc.png,
1669         multimap_text_insert_timing_test_large.html,
1670         multimap_text_insert_timing_test_large_s2p_hash_gcc.png,
1671         multimap_text_insert_timing_test_large_s2p_hash_local.png,
1672         multimap_text_insert_timing_test_large_s2p_hash_msvc.png,
1673         multimap_text_insert_timing_test_large_s2p_tree_gcc.png,
1674         multimap_text_insert_timing_test_large_s2p_tree_local.png,
1675         multimap_text_insert_timing_test_large_s2p_tree_msvc.png,
1676         multimap_text_insert_timing_test_small.html,
1677         multimap_text_insert_timing_test_small_s2p_hash_gcc.png,
1678         multimap_text_insert_timing_test_small_s2p_hash_local.png,
1679         multimap_text_insert_timing_test_small_s2p_hash_msvc.png,
1680         multimap_text_insert_timing_test_small_s2p_tree_gcc.png,
1681         multimap_text_insert_timing_test_small_s2p_tree_local.png,
1682         multimap_text_insert_timing_test_small_s2p_tree_msvc.png,
1683         node_invariant_invalidations.png, node_invariants.png,
1684         null_hash_fn.html, null_lu_metadata.html,
1685         null_mapped_type.html, null_probe_fn.html,
1686         null_tree_node_update.html, null_trie_node_update.html,
1687         ov_tree_tag.html, pairing_heap_tag.html,
1688         pairing_priority_queue_text_push_pop_timing_test_gcc.png,
1689         pairing_priority_queue_text_push_pop_timing_test_local.png,
1690         pairing_priority_queue_text_push_pop_timing_test_msvc.png,
1691         pairing_priority_queue_text_push_timing_test_gcc.png,
1692         pairing_priority_queue_text_push_timing_test_local.png,
1693         pairing_priority_queue_text_push_timing_test_msvc.png,
1694         pat_trie.png, pat_trie_tag.html,
1695         point_invalidation_guarantee.html, point_iterators_cd.png,
1696         point_iterators_range_ops_1.png,
1697         point_iterators_range_ops_2.png, pq_container_traits.html,
1698         pq_design.html, pq_different_underlying_dss.png,
1699         pq_examples.html, pq_performance_tests.html,
1700         pq_regression_tests.html, pq_tests.html, prerequisites.html,
1701         priority_queue.html,
1702         priority_queue_random_int_push_pop_timing_test_gcc.png,
1703         priority_queue_random_int_push_pop_timing_test.html,
1704         priority_queue_random_int_push_pop_timing_test_local.png,
1705         priority_queue_random_int_push_pop_timing_test_msvc.png,
1706         priority_queue_random_int_push_timing_test_gcc.png,
1707         priority_queue_random_int_push_timing_test.html,
1708         priority_queue_random_int_push_timing_test_local.png,
1709         priority_queue_random_int_push_timing_test_msvc.png,
1710         priority_queue_tag_cd.png, priority_queue_tag_cd.svg,
1711         priority_queue_tag.html,
1712         priority_queue_text_join_timing_test_gcc.png,
1713         priority_queue_text_join_timing_test.html,
1714         priority_queue_text_join_timing_test_local.png,
1715         priority_queue_text_join_timing_test_msvc.png,
1716         priority_queue_text_modify_down_timing_test_gcc.png,
1717         priority_queue_text_modify_down_timing_test.html,
1718         priority_queue_text_modify_down_timing_test_local.png,
1719         priority_queue_text_modify_down_timing_test_msvc.png,
1720         priority_queue_text_modify_down_timing_test_pairing_thin_gcc.png,
1721         priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
1722         priority_queue_text_modify_down_timing_test_pairing_thin_msvc.png,
1723         priority_queue_text_modify_up_timing_test_gcc.png,
1724         priority_queue_text_modify_up_timing_test.html,
1725         priority_queue_text_modify_up_timing_test_local.png,
1726         priority_queue_text_modify_up_timing_test_msvc.png,
1727         priority_queue_text_modify_up_timing_test_pairing_thin_gcc.png,
1728         priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
1729         priority_queue_text_modify_up_timing_test_pairing_thin_msvc.png,
1730         priority_queue_text_pop_mem_usage_test_gcc.png,
1731         priority_queue_text_pop_mem_usage_test.html,
1732         priority_queue_text_pop_mem_usage_test_local.png,
1733         priority_queue_text_pop_mem_usage_test_msvc.png,
1734         priority_queue_text_push_pop_timing_test_gcc.png,
1735         priority_queue_text_push_pop_timing_test.html,
1736         priority_queue_text_push_pop_timing_test_local.png,
1737         priority_queue_text_push_pop_timing_test_msvc.png,
1738         priority_queue_text_push_timing_test_gcc.png,
1739         priority_queue_text_push_timing_test.html,
1740         priority_queue_text_push_timing_test_local.png,
1741         priority_queue_text_push_timing_test_msvc.png,
1742         PythonPoweredSmall.gif quadratic_probe_fn.html,
1743         random_int_find_find_timing_test_tree_gcc.png,
1744         random_int_find_find_timing_test_tree_local.png,
1745         random_int_find_find_timing_test_tree_msvc.png,
1746         range_invalidation_guarantee.html,
1747         rationale_null_node_updator.png, rb_tree_tag.html,
1748         rc_binomial_heap_tag.html, references.html, resize_error.html,
1749         resize_policy_cd.png, restoring_node_invariants.png,
1750         sample_probe_fn.html, sample_ranged_hash_fn.html,
1751         sample_ranged_probe_fn.html, sample_range_hashing.html,
1752         sample_resize_policy.html, sample_resize_trigger.html,
1753         sample_size_policy.html, sample_tree_node_update.html,
1754         sample_trie_access_traits.html, sample_trie_node_update.html,
1755         sample_update_policy.html, simple_list.png,
1756         splay_tree_tag.html, tests.html,
1757         text_find_timing_test_hash_gcc.png,
1758         text_find_timing_test_hash_local.png,
1759         text_find_timing_test_hash_msvc.png,
1760         text_find_timing_test_tree_like_gcc.png,
1761         text_find_timing_test_tree_like_local.png,
1762         text_find_timing_test_tree_like_msvc.png, thin_heap_tag.html,
1763         tree_based_containers.html, tree.html,
1764         tree_node_iterator.html, tree_node_updator_policy_cd.png,
1765         tree_order_statistics_node_update.html,
1766         tree_order_statistics_timing_test_gcc.png,
1767         tree_order_statistics_timing_test.html,
1768         tree_order_statistics_timing_test_local.png,
1769         tree_order_statistics_timing_test_msvc.png,
1770         tree_random_int_find_find_timing_test.html,
1771         tree_split_join_timing_test_gcc.png,
1772         tree_split_join_timing_test.html,
1773         tree_split_join_timing_test_local.png,
1774         tree_split_join_timing_test_msvc.png, tree_tag.html,
1775         tree_text_find_find_timing_test.html,
1776         tree_text_insert_timing_test.html,
1777         tree_text_insert_timing_test_node_tree_gcc.png,
1778         tree_text_insert_timing_test_node_tree_local.png,
1779         tree_text_insert_timing_test_node_tree_msvc.png,
1780         tree_text_insert_timing_test_pat_trie_gcc.png,
1781         tree_text_insert_timing_test_pat_trie_local.png,
1782         tree_text_insert_timing_test_pat_trie_msvc.png,
1783         tree_text_insert_timing_test_vector_tree_gcc.png,
1784         tree_text_insert_timing_test_vector_tree_local.png,
1785         tree_text_insert_timing_test_vector_tree_msvc.png,
1786         tree_text_lor_find_find_timing_test.html,
1787         tree_text_lor_find_timing_test_gcc.png,
1788         tree_text_lor_find_timing_test_local.png,
1789         tree_text_lor_find_timing_test_msvc.png,
1790         trie_based_containers.html, trie_const_node_iterator.html,
1791         trie.html, trie_node_iterator.html,
1792         trie_node_updator_policy_cd.png,
1793         trie_order_statistics_node_update.html,
1794         trie_prefix_search_node_update.html,
1795         trie_string_access_traits.html, trie_tag.html,
1796         trivial_iterator_tag.html, tutorial.html,
1797         update_policy_cd.png, update_seq_diagram.png): Remove.
1798
1799 2011-07-27  Paolo Carlini  <paolo.carlini@oracle.com>
1800
1801         PR c++/49813
1802         * include/c_global/cmath: Use _GLIBCXX_CONSTEXPR and constexpr.
1803
1804 2011-07-27  Jeffrey Yasskin  <jyasskin@google.com>
1805
1806         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Updated.
1807
1808 2011-07-25  Benjamin Kosnik  <bkoz@redhat.com>
1809
1810         * include/std/array (at): Remove constexpr when -fno-exceptions.
1811         * testsuite/23_containers/array/at_neg.cc: Test.
1812
1813 2011-07-25  Paolo Carlini  <paolo.carlini@oracle.com>
1814             Nathan Ridge  <zeratul976@hotmail.com>
1815
1816         PR libstdc++/49836
1817         * include/bits/stl_vector.h (vector<>::_M_emplace_back_aux):
1818         Declare.
1819         (vector<>::push_back(const value_type&)): Use it.
1820         * include/bits/vector.tcc: Define.
1821         (vector<>::emplace_back(_Args&&...)): Use it.
1822         * testsuite/util/testsuite_tr1.h (CopyConsOnlyType, MoveConsOnlyType):
1823         Add.
1824         * testsuite/23_containers/vector/modifiers/push_back/49836.cc: New.
1825         * testsuite/23_containers/deque/modifiers/push_back/49836.cc:
1826         Likewise.
1827         * testsuite/23_containers/deque/modifiers/push_front/49836.cc:
1828         Likewise.
1829         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1830         Adjust dg-error line number.
1831         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1832         Likewise.
1833         * testsuite/23_containers/vector/requirements/dr438/
1834         constructor_1_neg.cc: Likewise.
1835         * testsuite/23_containers/vector/requirements/dr438/
1836         constructor_2_neg.cc: Likewise.
1837
1838 2011-07-24  Paolo Carlini  <paolo.carlini@oracle.com>
1839
1840         * include/bits/hashtable_policy.h (_Prime_rehash_policy::_M_next_bkt,
1841         _M_bkt_for_elements, _M_need_rehash): Fix typos in the last commit.
1842
1843 2011-07-24  François Dumont  <francois.cppdevs@free.fr>
1844
1845         * include/bits/hashtable_policy.h (_Prime_rehash_policy): Use
1846         __builtin_floor rather than __builtin_ceil to compute next resize
1847         value.
1848         * testsuite/23_containers/unordered_set/hash_policy/load_factor.cc:
1849         New.
1850
1851 2011-07-22  Benjamin Kosnik  <bkoz@redhat.com>
1852             Daniel Krugler  <daniel.kruegler@googlemail.com>
1853
1854         * include/bits/move.h (move, forward): Mark constexpr.
1855         * include/bits/stl_pair.h (pair): Mark move ctors constexpr.
1856         * testsuite/20_util/pair/make_pair/constexpr.cc: New.
1857         * testsuite/20_util/pair/cons/constexpr.cc: Add tests.
1858
1859 2011-07-22  Ian Lance Taylor  <iant@google.com>
1860
1861         * fragment.am (CONFIG_CXXFLAGS): Add -frandom-seed.
1862         * Makefile.in: Rebuild.
1863         * doc/Makefile.in: Rebuild.
1864         * include/Makefile.in: Rebuild.
1865         * libsupc++/Makefile.in: Rebuild.
1866         * po/Makefile.in: Rebuild.
1867         * python/Makefile.in: Rebuild.
1868         * src/Makefile.in: Rebuild.
1869         * testsuite/Makefile.in: Rebuild.
1870
1871 2011-07-21  Benjamin Kosnik  <bkoz@redhat.com>
1872
1873         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Move...
1874         * testsuite/ext/pb_ds/regression/tree_set_rand.cc: ... here.
1875         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: Move...
1876         * testsuite/ext/pb_ds/regression/tree_set_rand_debug.cc: ... here.
1877         * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Move...
1878         * testsuite/ext/pb_ds/regression/tree_map_rand.cc: ... here.
1879         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: Move...
1880         * testsuite/ext/pb_ds/regression/tree_map_rand_debug.cc: ... here.
1881
1882         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Move...
1883         * testsuite/ext/pb_ds/regression/trie_set_rand.cc: ... here.
1884         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: Move...
1885         * testsuite/ext/pb_ds/regression/trie_set_rand_debug.cc: ... here.
1886         * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Move...
1887         * testsuite/ext/pb_ds/regression/trie_map_rand.cc: ... here.
1888         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: Move...
1889         * testsuite/ext/pb_ds/regression/trie_map_rand_debug.cc: ... here.
1890
1891         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand.cc: Move.
1892         * testsuite/ext/pb_ds/regression/list_update_set_rand.cc: ...here.
1893         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
1894         Move...
1895         * testsuite/ext/pb_ds/regression/list_update_set_rand_debug.cc: ...here.
1896         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Move...
1897         * testsuite/ext/pb_ds/regression/list_update_map_rand.cc: ...here.
1898         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
1899         Move...
1900         * testsuite/ext/pb_ds/regression/list_update_map_rand_debug.cc: ...here.
1901
1902         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Move...
1903         * testsuite/ext/pb_ds/regression/hash_set_rand.cc: ...here.
1904         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: Move...
1905         * testsuite/ext/pb_ds/regression/hash_set_rand_debug.cc: ...here.
1906
1907         * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Move...
1908         * testsuite/ext/pb_ds/regression/hash_map_rand.cc: ...here.
1909         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: Move...
1910         * testsuite/ext/pb_ds/regression/hash_map_rand_debug.cc: ...here.
1911
1912 2011-07-21  François Dumont  <francois.cppdevs@free.fr>
1913
1914         * include/debug/safe_unordered_sequence.h,
1915         safe_unordered_sequence.tcc: Rename respectively in...
1916         * include/debug/safe_unordered_container.h,
1917         safe_unordered_container.tcc: ...those. _Safe_unordered_sequence
1918         rename _Safe_unordered_container.
1919         * include/debug/safe_unordered_base.h: _Safe_unordered_sequence_base
1920         rename _Safe_unordered_container_base.
1921         * include/debug/unordered_map, unordered_set: Adapt to previous
1922         modifications.
1923         * config/abi/pre/gnu.ver: Likewise.
1924         * src/debug.cc: Likewise.
1925         * include/Makefile.am: Likewise.
1926         * include/Makefile.in: Regenerate.
1927
1928 2011-07-21  Paolo Carlini  <paolo.carlini@oracle.com>
1929
1930         * include/std/mutex (timed_mutex, recursive_timed_mutex): Update
1931         to use steady_clock instead of monotonic_clock.
1932         * config/abi/pre/gnu.ver: Export steady_clock::now.
1933
1934 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
1935             Daniel Krugler  <daniel.kruegler@googlemail.com>
1936
1937         * include/std/array (array::at, array::operator[]): Mark constexpr.
1938         * testsuite/23_containers/array/requirements/
1939         constexpr_element_access.cc: Add.
1940
1941 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
1942             Daniel Krugler  <daniel.kruegler@googlemail.com>
1943
1944         * include/std/chrono: (system_clock::is_steady): Update to N3291
1945         from is_monotonic.
1946         (time_point): Mark nonmember arithmetic operators constexpr.
1947         * src/chrono.cc: Modify for above.
1948         * src/compatibility-c++0x.cc: Same.
1949         * testsuite/20_util/time_point/nonmember/constexpr.cc: New.
1950         * testsuite/20_util/time_point/1.cc: Modify.
1951         * testsuite/20_util/system_clock/constexpr_data.cc: Modify.
1952         * testsuite/20_util/system_clock/1.cc: Modify.
1953         * testsuite/20_util/monotonic_clock/constexpr_data.cc: Move to...
1954         * testsuite/20_util/steady_clock/constexpr_data.cc: ...here.
1955         * testsuite/30_threads/condition_variable/members/2.cc: Modify.
1956         * testsuite/30_threads/condition_variable_any/members/2.cc: Modify.
1957
1958 2011-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
1959
1960         * include/std/system_error: Use noexcept.
1961         * src/system_error.cc: Likewise.
1962         * testsuite/19_diagnostics/error_condition/modifiers/39881.cc: Adjust.
1963         * testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
1964         * testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
1965         * testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
1966         * testsuite/util/testsuite_error.h: Likewise.
1967
1968         * include/std/system_error (error_code::error_code(_ErrorCodeEnum)):
1969         Use enable_if on template parameter default.
1970         (error_condition::error_condition(_ErrorConditionEnum)): Likewise.
1971
1972 2011-07-20  Ed Smith-Rowland  <3dw4rd@verizon.net>
1973
1974         * include/precompiled/stdc++.h: Add scoped_allocator.
1975
1976 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
1977
1978         * include/std/bitset (operator[]): Make constexpr.
1979         * testsuite/23_containers/bitset/operations/constexpr.cc: New.
1980
1981 2011-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
1982
1983         * include/debug/safe_local_iterator.h (_Safe_local_iterator<>::
1984         _Safe_local_iterator(const _Iterator&, size_type, const _Sequence*)):
1985         Fix typo.
1986
1987 2011-07-19  François Dumont  <francois.cppdevs@free.fr>
1988
1989         * include/debug/safe_unordered_base.h, safe_unordered_sequence.h,
1990         safe_unordered_sequence.tcc, safe_local_iterator.h,
1991         safe_local_iterator.tcc: New, support for unordered sequence safe
1992         local iterators.
1993         * include/Makefile.am: Add previous files.
1994         * include/Makefile.in: Regenerate.
1995         * include/debug/unordered_map, unordered_set: Implement
1996         _Safe_unordered_sequence and expose _Safe_local_iterator.
1997         * include/debug/safe_iterator.h, safe_iterator.tcc: Refactor
1998         _Safe_iterator::_M_get_distance static method to expose it as
1999         __get_distance function and use it in _Safe_local_iterator type.
2000         * include/debug/formatter.h: Add __msg_local_iter_compare_bad
2001         _Debug_msg_id enum entry to notify invalid comparison between local
2002         iterators from different buckets. Add _Parameter constructor from
2003         _Safe_local_iterator.
2004         * include/debug/functions.h: Add __valid_range overload for
2005         _Safe_local_iterator.
2006         * src/debug.cc: Add _Safe_unordered_sequence_base and
2007         _Safe_local_iterator_base methods implementations.
2008         * config/abi/pre/gnu.ver: Add export of some
2009         _Safe_unordered_sequence_base and _Safe_local_iterator_base methods.
2010         * testsuite/util/debug/checks.h: Add use_invalid_iterator function to
2011         simulate use of a singular iterator.
2012         * testsuite/util/debug/unordered_checks.h: New, several functions
2013         to simulate classic invalid usage of unordered sequence local
2014         iterators.
2015         * testsuite/23_containers/unordered_map/debug/
2016         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2017         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2018         invalid_local_iterator_compare_neg.cc: New.
2019         * testsuite/23_containers/unordered_multimap/debug/
2020         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2021         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2022         invalid_local_iterator_compare_neg.cc: New.
2023         * testsuite/23_containers/unordered_set/debug/
2024         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2025         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2026         invalid_local_iterator_compare_neg.cc: New.
2027         * testsuite/23_containers/unordered_multiset/debug/
2028         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2029         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2030         invalid_local_iterator_compare_neg.cc: New.
2031
2032 2011-07-18  Paolo Carlini  <paolo.carlini@oracle.com>
2033
2034         PR libstdc++/48430
2035         * include/bits/shared_ptr.h (struct hash<shared_ptr<>>): Use
2036         __hash_base.
2037         * include/bits/unique_ptr.h (struct hash<unique_ptr<>>): Likewise.
2038
2039 2011-07-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2040
2041         * crossconfig.m4 (*-netware): Remove.
2042         * configure: Regenerate.
2043
2044 2011-07-15  Yufeng Zhang  <yufeng.zhang@arm.com>
2045
2046         * config/locale/newlib/ctype_members.cc: New file.
2047         * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add a new C locale
2048         kind: newlib.  Configure to use the newlib specific
2049         ctype_members.cc when with_newlib is enabled.
2050         * configure: Regenerate.
2051
2052 2011-07-15  Paolo Carlini  <paolo.carlini@oracle.com>
2053             Jakub Jelinek  <jakub@redhat.com>
2054
2055         PR libstdc++/49745
2056         * acinclude.m4 ([GLIBCXX_CHECK_GTHREADS]): Check separately for
2057         _POSIX_TIMEOUTS and define _GTHREADS_USE_MUTEX_TIMEDLOCK.
2058         * libsupc++/guard.cc: Include <unistd.h>.
2059         * testsuite/17_intro/headers/c++1998/49745.cc: New.
2060         * configure: Regenerate.
2061         * config.h.in: Likewise.
2062
2063 2011-07-11  Paolo Carlini  <paolo.carlini@oracle.com>
2064
2065         PR libstdc++/49559
2066         * include/bits/stl_algo.h (__move_merge_backward): Remove.
2067         (__move_merge_adaptive, __move_merge_adaptive_backward): New.
2068         (__merge_adaptive): Use the latter two.
2069         (__rotate_adaptive): Avoid self move-assignment.
2070         * include/bits/stl_algobase.h (move_backward): Fix comment.
2071         * testsuite/25_algorithms/stable_sort/49559.cc: New.
2072         * testsuite/25_algorithms/inplace_merge/49559.cc: Likewise.
2073         * testsuite/25_algorithms/inplace_merge/moveable.cc: Extend.
2074         * testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise.
2075         * testsuite/util/testsuite_rvalref.h (rvalstruct::operator=
2076         (rvalstruct&&)): Check for self move-assignment.
2077
2078 2011-07-11  Paolo Carlini  <paolo.carlini@oracle.com>
2079
2080         * testsuite/util/testsuite_allocator.h (propagating_allocator<>::
2081         operator=(const propagating_allocator<>&)): Retun *this.
2082
2083 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2084
2085         * include/Makefile.am: Add new header.
2086         * include/Makefile.in: Regenerate.
2087         * include/std/scoped_allocator: New.
2088         * doc/xml/manual/status_cxx200x.xml: Update.
2089         * testsuite/20_util/scoped_allocator/1.cc: New.
2090         * testsuite/20_util/scoped_allocator/propagation.cc: New.
2091         * testsuite/20_util/scoped_allocator/requirements/typedefs.cc: New.
2092         * testsuite/20_util/scoped_allocator/requirements/
2093         explicit_instantiation.cc: New.
2094
2095 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2096
2097         * include/bits/stl_vector.h: Use new allocator model in C++0x mode.
2098         * include/bits/vector.tcc: Likewise.
2099         * testsuite/util/testsuite_allocator.h (propagating_allocator): Define.
2100         * testsuite/23_containers/vector/allocator/copy_assign.cc: New.
2101         * testsuite/23_containers/vector/allocator/noexcept.cc: New.
2102         * testsuite/23_containers/vector/allocator/copy.cc: New.
2103         * testsuite/23_containers/vector/allocator/swap.cc: New.
2104         * testsuite/23_containers/vector/allocator/move_assign.cc: New.
2105         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2106         Adjust dg-error line numbers.
2107         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2108         Likewise.
2109         * testsuite/23_containers/vector/requirements/dr438/
2110         constructor_1_neg.cc: Likewise.
2111         * testsuite/23_containers/vector/requirements/dr438/
2112         constructor_2_neg.cc: Likewise.
2113
2114 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2115
2116         * include/ext/alloc_traits.h (__allocator_always_compares_equal): New
2117         trait, provide partial specializations for known allocators.
2118         (__alloc_traits::construct, __alloc_traits::destroy): Overload for
2119         non-standard pointer types.
2120         (__alloc_traits::_S_always_equal): New trait for use with noexcept.
2121         (__alloc_traits::_S_nothrow_move): Likewise.
2122         (__alloc_traits::_S_nothrow_swap): Likewise.
2123
2124 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2125
2126         * include/ext/cast.h: Fix typo in include guard.
2127         * include/ext/pointer.h (_Unqualified_type): Remove redundant
2128         partial specializations for volatile types. Fix typos in comments.
2129         (pointer_traits<_Pointer_adaptor<Tp>>::pointer_to): Define.
2130
2131 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2132
2133         PR libstdc++/49668
2134         * include/std/functional (__bind_simple): Define.
2135         * include/std/future (_Task_setter): Parameterize by type of result
2136         pointer instead of state object.
2137         (_S_task_setter): Type deduction helper.
2138         (_Task_state): Use _S_task_setter and __bind_simple.
2139         (_Deferred_state, _Async_state): Store call wrapper directly not as
2140         std::function. Use _S_task_setter and __bind_simple.
2141         (_S_make_deferred_state, _S_make_async_state): Type deduction helpers.
2142         (async): Use new functions and __bind_simple.
2143         * include/std/mutex (call_once): Use __bind_simple.
2144         * include/std/thread (thread): Likewise. Remove unused headers.
2145         * src/thread.cc: Add header.
2146         * testsuite/30_threads/async/49668.cc: New.
2147         * testsuite/30_threads/call_once/49668.cc: New.
2148         * testsuite/30_threads/thread/cons/49668.cc: New.
2149         * testsuite/30_threads/thread/cons/moveable.cc: Remove unused bool.
2150
2151 2011-07-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2152
2153         * configure.host (abi_baseline_subdir_switch): Describe.
2154         Provide default.
2155         (*-*-solaris2.[89], *-*-solaris2.1[0-9]): Override.
2156         * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Substitute
2157         baseline_subdir_switch.
2158         * testsuite/Makefile.am (site.exp): Emit it.
2159         (baseline_subdir): Use it.
2160         * testsuite/libstdc++-abi/abi.exp: Use it.
2161         * configure: Regenerate.
2162         * Makefile.in: Regenerate.
2163         * doc/Makefile.in: Regenerate.
2164         * include/Makefile.in: Regenerate.
2165         * libsupc++/Makefile.in: Regenerate.
2166         * po/Makefile.in: Regenerate.
2167         * python/Makefile.in: Regenerate.
2168         * src/Makefile.in: Regenerate.
2169         * testsuite/Makefile.in: Regenerate.
2170
2171 2011-06-29  François Dumont  <francois.cppdevs@free.fr>
2172
2173         * include/debug/set.h, unordered_map, multiset.h, forward_list,
2174         unordered_set, vector, deque, string, list, multimap.h: Remove
2175         base class default constructor calls.
2176         * include/debug/map.h: Likewise and cleanup several redefinition of
2177         base iterator typedef.
2178
2179 2011-06-29  Nathan Sidwell  <nathan@codesourcery.com>
2180
2181         * libsupc++/eh_arm.c (__cxa_type_match): Construct address of
2182         thrown object here.  Return succeded_with_ptr_to_base for all
2183         pointer cases.
2184
2185 2011-06-23  Jonathan Wakely  <jwakely.gcc@gmail.com>
2186
2187         * testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Fix for
2188         C++0x mode.
2189         * testsuite/25_algorithms/sort/35588.cc: Likewise.
2190         * testsuite/26_numerics/headers/complex/synopsis.cc: Likewise.
2191
2192 2011-06-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
2193
2194         * testsuite/20_util/bind/socket.cc: Use variable and remove attribute.
2195
2196 2011-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
2197
2198         * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Avoid -Wall
2199         warning.
2200
2201 2011-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
2202
2203         * testsuite/20_util/reference_wrapper/invoke.cc: Avoid -Wall warnings.
2204         * testsuite/20_util/reference_wrapper/typedefs-3.cc: Likewise.
2205         * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
2206         * testsuite/20_util/allocator_traits/members/allocate_hint.cc:
2207         Likewise.
2208         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2209         * testsuite/20_util/bind/socket.cc: Likewise.
2210         * testsuite/20_util/pointer_traits/pointer_to.cc: Likewise.
2211         * testsuite/util/testsuite_random.h: Likewise.
2212
2213 2011-06-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
2214
2215         * include/Makefile.am: Add alloc_traits.h headers.
2216         * include/Makefile.in: Regenerate.
2217         * include/std/memory: Include uses_allocator.h explicitly.
2218         * include/bits/allocator.h (allocator_traits): Move to ...
2219         * include/bits/alloc_traits.h: New header.
2220         * include/ext/alloc_traits.h (__alloc_traits): Extension to provide
2221         a common allocator interface for C++98 and C++0x.
2222         * include/bits/stl_construct.h: Use __alloc_traits.
2223         * include/bits/stl_uninitialized.h: Likewise.
2224
2225 2011-06-22  Daniel Krugler  <daniel.kruegler@googlemail.com>
2226             Paolo Carlini  <paolo.carlini@oracle.com>
2227
2228         * include/bits/move.h (__is_nothrow_swappable): Add.
2229         (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Use noexcept.
2230         * include/bits/algorithmfwd.h: Adjust.
2231         * testsuite/25_algorithms/swap/noexcept.cc: New.
2232
2233 2011-06-21  Jakub Jelinek  <jakub@redhat.com>
2234
2235         * testsuite/Makefile.am (check_DEJAGNU_normal_targets): Add
2236         check-DEJAGNUnormal[4-9].
2237         (check-DEJAGNU): Split into 10 jobs for parallel testing instead of 4.
2238         * testsuite/Makefile.in: Regenerated.
2239
2240 2011-06-20  Daniel Krugler  <daniel.kruegler@googlemail.com>
2241             Paolo Carlini  <paolo.carlini@oracle.com>
2242
2243         * include/std/tuple (__conv_types, __one_by_one_convertible,
2244         __all_convertible): Add.
2245         (tuple): Use the latter.
2246         (tuple<_T1>): Remove.
2247         * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error
2248         line number.
2249         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
2250
2251 2011-06-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
2252
2253         * include/bits/ptr_traits.h (pointer_traits<T*>::pointer_to): Use
2254         noexcept.
2255
2256 2011-06-14  Paolo Carlini  <paolo.carlini@oracle.com>
2257
2258         * include/std/valarray (~valarray): Use noexcept.
2259         * include/bits/unique_ptr.h (~unique_ptr): Likewise.
2260         * testsuite/26_numerics/valarray/noexcept_move_construct.cc: New.
2261         * testsuite/20_util/shared_ptr/cons/noexcept_move_construct.cc:
2262         Likewise.
2263         * testsuite/20_util/unique_ptr/cons/noexcept_move_construct.cc:
2264         Likewise.
2265         * testsuite/20_util/weak_ptr/cons/noexcept_move_construct.cc:
2266         Likewise.
2267
2268 2011-06-14  Paolo Carlini  <paolo.carlini@oracle.com>
2269
2270         * include/std/functional: Use noexcept.
2271         * include/bits/stl_tempbuf.h: Likewise.
2272
2273 2011-06-12  François Dumont  <francois.cppdevs@free.fr>
2274             Paolo Carlini  <paolo.carlini@oracle.com>
2275
2276         * include/bits/allocator.h (__shrink_to_fit): Rename to
2277         __shrink_to_fit_aux, fix.
2278         * include/bits/stl_vector.h (_M_shrink_to_fit): Declare.
2279         (shrink_to_fit): Use the latter.
2280         * include/debug/vector (shrink_to_fit): Likewise.
2281         * include/bits/vector.tcc (_M_shrink_to_fit): Define.
2282         * include/bits/stl_deque.h (_M_shrink_to_fit): Declare.
2283         (shrink_to_fit): Use the latter.
2284         * include/debug/deque (shrink_to_fit): Likewise.
2285         * include/bits/deque.tcc (_M_shrink_to_fit): Define.
2286         * include/bits/vector.tcc (vector<bool>::_M_reallocate): Add.
2287         * include/bits/stl_bvector.h (_M_shrink_to_fit): Declare.
2288         (shrink_to_fit): Use the latter.
2289         (reserve): Use _M_reallocate, move inline.
2290         (_Bvector_base<>::_S_nword): Add, use it throughout.
2291         * include/debug/string (shrink_to_fit): Redo.
2292         * include/ext/vstring.h (shrink_to_fit): Optimize.
2293         * include/bits/basic_string.h (shrink_to_fit): Likewise.
2294         * testsuite/21_strings/debug/shrink_to_fit.cc: New.
2295         * testsuite/23_containers/vector/debug/shrink_to_fit.cc: Likewise.
2296         * testsuite/23_containers/vector/debug/bool/shrink_to_fit.cc:
2297         Likewise.
2298         * testsuite/23_containers/vector/bool/capacity/shrink_to_fit.cc:
2299         Likewise.
2300         * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
2301
2302 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2303
2304         * include/ext/extptr_allocator.h (construct, destroy): Fix for C++0x
2305         mode by overloading to take allocator's pointer type.
2306         * testsuite/23_containers/vector/ext_pointer/types/2.cc: New.
2307         * testsuite/23_containers/vector/ext_pointer/explicit_instantiation/
2308         2.cc: New.
2309
2310 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2311
2312         * testsuite/20_util/allocator_traits/requirements/
2313         explicit_instantiation.cc: Add another instantiation.
2314
2315 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2316
2317         * testsuite/20_util/allocator_traits/requirements/typedefs.cc: Check
2318         for allocator_type and value_type.
2319
2320 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2321
2322         * testsuite/30_threads/packaged_task/uses_allocator.cc: New.
2323         * testsuite/30_threads/promise/uses_allocator.cc: Likewise.
2324
2325 2011-06-10  Paolo Carlini  <paolo.carlini@oracle.com>
2326
2327         * include/ext/throw_allocator.h: Use noexcept.
2328         * include/ext/pool_allocator.h: Likewise.
2329         * include/ext/bitmap_allocator.h: Likewise.
2330         * include/ext/new_allocator.h: Likewise.
2331         * include/ext/malloc_allocator.h: Likewise.
2332         * include/ext/array_allocator.h: Likewise.
2333         * include/ext/mt_allocator.h: Likewise.
2334         * include/ext/extptr_allocator.h: Likewise.
2335         * testsuite/util/testsuite_allocator.h: Likewise; do not include
2336         <cassert> directly, include <testsuite_hooks.h> instead.
2337
2338 2011-06-10  Benjamin Kosnik  <bkoz@redhat.com>
2339
2340         * include/ext/pb_ds/*: Doxygen markup redo.
2341         * include/Makefile.am: Fold in constructors_destructor_fn_imps.hpp.
2342         * include/Makefile.in: Regenerate.
2343
2344 2011-06-10  Jason Merrill  <jason@redhat.com>
2345
2346         * testsuite/20_util/bind/ref_neg.cc: Remove wrong test lines.
2347
2348         * testsuite/20_util/bind/ref_neg.cc: Remove dg-excess-errors,
2349         fix dg-error markup.
2350
2351 2011-06-09  Jason Merrill  <jason@redhat.com>
2352
2353         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust.
2354
2355         * testsuite/lib/prune.exp (libstdc++-dg-prune): Prune notes.
2356         * testsuite/20_util/duration/cons/1_neg.cc: Remove dg-excess-errors.
2357         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
2358         * testsuite/20_util/forward/1_neg.cc: Likewise.
2359         * testsuite/20_util/function/cmp/cmp_neg.cc: Likewise.
2360         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2361         * testsuite/20_util/reference_wrapper/ref_neg.cc: Likewise.
2362         * testsuite/20_util/tuple/comparison_operators/35480_neg.cc: Likewise.
2363         * testsuite/tr1/6_containers/tuple/comparison_operators/35480_neg.cc:
2364         Likewise.
2365         * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
2366         * testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise.
2367         * testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc:
2368         Likewise.
2369         * testsuite/20_util/unique_ptr/cons/auto_ptr_neg.cc: Likewise.
2370         * testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: Likewise.
2371         * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc:
2372         Likewise.
2373         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
2374         auto_ptr_rvalue_neg.cc: Likewise.
2375         * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc:
2376         Likewise.
2377         * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
2378         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
2379         Likewise.
2380         * testsuite/23_containers/deque/requirements/dr438/
2381         constructor_1_neg.cc: Likewise.
2382         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
2383         Likewise.
2384         * testsuite/23_containers/forward_list/requirements/dr438/
2385         assign_neg.cc: Likewise.
2386         * testsuite/23_containers/forward_list/requirements/dr438/
2387         constructor_1_neg.cc: Likewise.
2388         * testsuite/23_containers/forward_list/requirements/dr438/
2389         constructor_2_neg.cc: Likewise.
2390         * testsuite/23_containers/forward_list/requirements/dr438/
2391         insert_neg.cc: Likewise.
2392         * testsuite/23_containers/list/requirements/dr438/
2393         assign_neg.cc: Likewise.
2394         * testsuite/23_containers/list/requirements/dr438/
2395         constructor_1_neg.cc: Likewise.
2396         * testsuite/23_containers/list/requirements/dr438/
2397         constructor_2_neg.cc: Likewise.
2398         * testsuite/23_containers/list/requirements/dr438/
2399         insert_neg.cc: Likewise.
2400         * testsuite/23_containers/vector/requirements/dr438/
2401         assign_neg.cc: Likewise.
2402         * testsuite/23_containers/vector/requirements/dr438/
2403         constructor_1_neg.cc: Likewise.
2404         * testsuite/23_containers/vector/requirements/dr438/
2405         constructor_2_neg.cc: Likewise.
2406         * testsuite/23_containers/vector/requirements/dr438/
2407         insert_neg.cc: Likewise.
2408         * testsuite/23_containers/map/operators/1_neg.cc: Likewise.
2409         * testsuite/29_atomics/atomic_integral/operators/
2410         bitwise_neg.cc: Likewise.
2411         * testsuite/decimal/mixed-mode-arith_neg.cc: Likewise.
2412         * testsuite/decimal/mixed-mode-cmp_neg.cc: Likewise.
2413         * testsuite/decimal/operator_neg.cc: Likewise.
2414
2415 2011-06-09  Simon Baldwin  <simonb@google.com>
2416
2417         * scripts/extract_symvers.in: Handle processor/OS specific or
2418         unknown symbol binding strings from readelf.
2419
2420 2011-06-09  Paolo Carlini  <paolo.carlini@oracle.com>
2421
2422         * include/std/type_traits (__is_copy_assignable_impl,
2423         __is_nt_copy_assignable_impl): Fix typo.
2424
2425 2011-06-08  Paolo Carlini  <paolo.carlini@oracle.com>
2426
2427         * include/ext/extptr_allocator.h: Include <ext/numeric_traits.h>
2428         instead of <limits>.
2429         * include/bits/allocator.h: Likewise.
2430
2431         * include/std/chrono (duration_values<>::min): Call lowest, not min.
2432
2433 2011-06-08  Paolo Carlini  <paolo.carlini@oracle.com>
2434
2435         * include/bits/allocator.h (__shrink_to_fit): Simplify.
2436         * include/bits/stl_vector.h (vector<>::shrink_to_fit): Adjust.
2437         * include/bits/stl_deque.h: Likewise.
2438         * include/bits/stl_bvector.h: Likewise.
2439
2440 2011-06-07  Jason Merrill  <jason@redhat.com>
2441
2442         * testsuite/lib/prune.exp: s/required/instantiated/.
2443         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2444         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
2445         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
2446         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
2447         * testsuite/20_util/forward/1_neg.cc: Likewise.
2448         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
2449         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2450         Likewise.
2451         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
2452         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2453         * testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Likewise.
2454         * testsuite/ext/ext_pointer/1_neg.cc: Likewise.
2455         * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Likewise.
2456         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Likewise.
2457         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
2458         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
2459         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
2460         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
2461         shared_ptr_neg.cc: Likewise.
2462
2463 2011-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
2464
2465         * include/bits/move.h (struct __move_if_noexcept_cond): Add.
2466         (move_if_noexcept): Use the latter.
2467         * include/bits/stl_iterator.h (__make_move_if_noexcept_iterator,
2468         _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR): Add.
2469         * include/bits/stl_uninitialized.h
2470         (__uninitialized_move_if_noexcept_a): Add.
2471         * include/bits/vector.tcc (vector<>::reserve): Use
2472         _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR.
2473         (vector<>::_M_insert_aux, _M_fill_insert, _M_default_append,
2474         _M_range_insert): Use __uninitialized_move_if_noexcept_a.
2475         * testsuite/util/testsuite_rvalref.h (throwing_move_constructor):
2476         Add.
2477         (copycounter::copycounter(copycounter&&)): Use noexcept.
2478         * testsuite/23_containers/vector/modifiers/moveable2.cc: New.
2479         * testsuite/23_containers/vector/capacity/resize/moveable2.cc:
2480         Likewise.
2481         * testsuite/23_containers/vector/capacity/reserve/moveable2.cc:
2482         Likewise.
2483
2484 2011-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
2485
2486         PR libstdc++/49293
2487         * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: Tweak
2488         for glibc 2.14.
2489         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
2490
2491 2011-06-06  Paolo Carlini  <paolo.carlini@oracle.com>
2492
2493         * include/bits/move.h (move_if_noexcept): Use __and_ and __not_.
2494
2495 2011-06-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
2496
2497         * include/bits/ptr_traits.h (pointer_traits): Fix typos.
2498         * include/ext/pointer.h (pointer_traits): Add partial specialization
2499         for _Pointer_adapter.
2500
2501 2011-06-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
2502
2503         * testsuite/util/testsuite_allocator.h (tracker_allocator::construct):
2504         Update to C++0x definition using type to construct as template
2505         parameter.
2506         (tracker_allocator::destroy): Likewise for type to destroy.
2507         (uneq_allocator::construct, uneq_allocator::destroy): Likewise.
2508
2509 2011-06-01  Paolo Carlini  <paolo.carlini@oracle.com>
2510
2511         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
2512         Use std::move on the allocator, use noexcept.
2513         (_Hashtable<>::~_Hashtable): Use noexcept.
2514         * include/bits/stl_list.h: Likewise.
2515         * include/bits/forward_list.h: Likewise.
2516         * include/bits/stl_vector.h: Likewise.
2517         * include/bits/stl_bvector.h: Likewise.
2518         * include/bits/stl_map.h (map<>::map(map&&)): Use noexcept.
2519         * include/bits/stl_set.h: Likewise.
2520         * include/bits/stl_multimap.h: Likewise.
2521         * include/bits/stl_multiset.h: Likewise.
2522         * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(_Rb_tree&&)): Use
2523         std::move on the allocator.
2524         (_Rb_tree<>::~_Rb_tree): Use noexcept.
2525         * include/bits/stl_deque.h: Likewise.
2526         * include/bits/basic_string.h (basic_string<>::~basic_string): Use
2527         noexcept.
2528         * include/ext/vstring.h (__versa_string<>::~__versa_string): Likewise.
2529         * include/debug/set.h: Adjust.
2530         * include/debug/unordered_map: Likewise.
2531         * include/debug/multiset.h: Likewise.
2532         * include/debug/forward_list: Likewise.
2533         * include/debug/vector: Likewise.
2534         * include/debug/unordered_set: Likewise.
2535         * include/debug/deque: Likewise.
2536         * include/debug/map.h: Likewise.
2537         * include/debug/string: Likewise.
2538         * include/debug/list: Likewise.
2539         * include/debug/multimap.h: Likewise.
2540         * include/profile/set.h: Likewise.
2541         * include/profile/unordered_map: Likewise.
2542         * include/profile/multiset.h: Likewise.
2543         * include/profile/forward_list: Likewise.
2544         * include/profile/unordered_set: Likewise.
2545         * include/profile/vector: Likewise.
2546         * include/profile/deque: Likewise.
2547         * include/profile/map.h: Likewise.
2548         * include/profile/list: Likewise.
2549         * include/profile/multimap.h: Likewise.
2550         * testsuite/21_strings/basic_string/cons/wchar_t/
2551         noexcept_move_construct.cc: New.
2552         * testsuite/21_strings/basic_string/cons/char/
2553         noexcept_move_construct.cc: Likewise.
2554         * testsuite/ext/vstring/cons/noexcept_move_construct.cc: Likewise.
2555         * testsuite/23_containers/unordered_map/cons/
2556         noexcept_move_construct.cc: Likewise.
2557         * testsuite/23_containers/multimap/cons/
2558         noexcept_move_construct.cc: Likewise.
2559         * testsuite/23_containers/set/cons/
2560         noexcept_move_construct.cc: Likewise.
2561         * testsuite/23_containers/unordered_multimap/cons/
2562         noexcept_move_construct.cc: Likewise.
2563         * testsuite/23_containers/forward_list/cons/
2564         noexcept_move_construct.cc: Likewise.
2565         * testsuite/23_containers/unordered_set/cons/
2566         noexcept_move_construct.cc: Likewise.
2567         * testsuite/23_containers/vector/bool/cons/
2568         noexcept_move_construct.cc: Likewise.
2569         * testsuite/23_containers/vector/cons/
2570         noexcept_move_construct.cc: Likewise.
2571         * testsuite/23_containers/multiset/cons/
2572         noexcept_move_construct.cc: Likewise.
2573         * testsuite/23_containers/list/cons/
2574         noexcept_move_construct.cc: Likewise.
2575         * testsuite/23_containers/unordered_multiset/cons/
2576         noexcept_move_construct.cc: Likewise.
2577         * testsuite/23_containers/map/cons/noexcept_move_construct.cc
2578         * testsuite/23_containers/forward_list/requirements/dr438/
2579         assign_neg.cc: Adjust dg-error line numbers.
2580         * testsuite/23_containers/forward_list/requirements/dr438/
2581         insert_neg.cc: Likewise.
2582         * testsuite/23_containers/forward_list/requirements/dr438/
2583         constructor_1_neg.cc: Likewise.
2584         * testsuite/23_containers/forward_list/requirements/dr438/
2585         constructor_2_neg.cc: Likewise.
2586         * testsuite/23_containers/vector/requirements/dr438/
2587         assign_neg.cc: Likewise.
2588         * testsuite/23_containers/vector/requirements/dr438/
2589         insert_neg.cc: Likewise.
2590         * testsuite/23_containers/vector/requirements/dr438/
2591         constructor_1_neg.cc: Likewise.
2592         * testsuite/23_containers/vector/requirements/dr438/
2593         constructor_2_neg.cc: Likewise.
2594         * testsuite/23_containers/deque/requirements/dr438/
2595         assign_neg.cc: Likewise.
2596         * testsuite/23_containers/deque/requirements/dr438/
2597         insert_neg.cc: Likewise.
2598         * testsuite/23_containers/deque/requirements/dr438/
2599         constructor_1_neg.cc: Likewise.
2600         * testsuite/23_containers/deque/requirements/dr438/
2601         constructor_2_neg.cc: Likewise.
2602         * testsuite/23_containers/list/requirements/dr438/
2603         assign_neg.cc: Likewise.
2604         * testsuite/23_containers/list/requirements/dr438/
2605         insert_neg.cc: Likewise.
2606         * testsuite/23_containers/list/requirements/dr438/
2607         constructor_1_neg.cc: Likewise.
2608         * testsuite/23_containers/list/requirements/dr438/
2609         constructor_2_neg.cc: Likewise.
2610
2611         * include/bits/move.h (swap): Use __and_ in the noexcept.
2612         * include/bits/algorithmfwd.h: Adjust.
2613
2614 2011-05-31  Paolo Carlini  <paolo.carlini@oracle.com>
2615
2616         * include/bits/basic_string.h: Use noexcept per the FDIS (minus
2617         compare(const string&), which uses char_traits::compare, which
2618         isn't noexcept; also no noexcept in the move assignment operator
2619         and move assign, see c++std-lib-30855).
2620         * include/bits/basic_string.tcc: Likewise.
2621         * include/ext/vstring.h: Likewise.
2622         * include/ext/vstring.tcc: Likewise.
2623         * include/debug/string: Likewise.
2624
2625 2011-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
2626
2627         * doc/xml/manual/status_cxx200x.xml: Update.
2628         * doc/html/*: Regenerate.
2629
2630 2011-05-30  Paolo Carlini  <paolo.carlini@oracle.com>
2631
2632         * include/std/type_traits (__or_, __and_): Add trivial definitions
2633         for a single element.
2634         * include/bits/stl_pair.h: Use __and_ in noexcept specs and
2635         constraints.
2636         (pair<>::pair(pair&&)): Define.
2637         (pair<>::pair(const pair<>&)): Constrain with is_convertible.
2638         (pair<>::pair(pair<>&&)): Likewise, remove noexcept.
2639         * include/std/tuple: Use __and_ in noexcept specs and constraints.
2640         (_Tuple_impl<>::_Tuple_impl(allocator_arg_t, const _Alloc&,
2641         _Tuple_impl&&)): Remove noexcept.
2642         (tuple<>::tuple(_UElements&&...), tuple(const tuple<_UElements...>&),
2643         tuple(tuple<_UElements...>&&), tuple(const pair<_U1, _U2>&),
2644         tuple(pair<_U1, _U2>&&)): Constrain with is_convertible.
2645         * testsuite/20_util/tuple/moveable2.cc: Use = delete.
2646         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
2647         Adjust dg-error line numbers.
2648         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2649         Likewise.
2650         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2651         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
2652         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
2653
2654 2011-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
2655
2656         * include/std/tuple: Restore is_convertible constraint.
2657         * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: Remove.
2658
2659 2011-05-30  Paolo Carlini  <paolo.carlini@oracle.com>
2660
2661         PR libstdc++/49236
2662         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
2663         line number.
2664
2665 2011-05-30  Jonathan Wakely  <jwakely.gcc@gmail.com>
2666
2667         * include/std/tuple: Implement uses-allocator construction.
2668         * include/bits/allocator.h (uses_allocator): Move to ...
2669         * include/bits/uses_allocator.h: New file.
2670         * include/Makefile.am: Add new header.
2671         * include/Makefile.in: Regenerate.
2672         * testsuite/20_util/uses_allocator/cons_neg.cc: New.
2673         * testsuite/20_util/uses_allocator/construction.cc: New.
2674         * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: New.
2675         * testsuite/20_util/tuple/cons/allocators.cc: New.
2676
2677 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2678
2679         * testsuite/20_util/pointer_traits/pointer_to.cc: Fix.
2680
2681 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2682
2683         * acinclude.m4: Define GLIBCXX_CHECK_GET_NPROCS and
2684         GLIBCXX_CHECK_SC_NPROCESSORS_ONLN.
2685         * configure.ac: Use them. Increase minor version.
2686         * configure: Regenerate.
2687         * config.h.in: Regenerate.
2688         * include/std/thread (thread::hardware_concurrency): Remove inline
2689         definition.
2690         * src/thread.cc (thread::hardware_concurrency): Define.
2691         * config/abi/pre/gnu.ver: Export new symbol @3.4.17
2692         * testsuite/util/testsuite_abi.cc: Add new version.
2693         * testsuite/lib/libstdc++.exp (check_v3_target_nprocs): Add.
2694         * testsuite/lib/dg-options.exp (dg-require-nprocs): Add.
2695         * testsuite/30_threads/thread/members/hardware_concurrency.cc: Use
2696         dg-require-nprocs and verify hardware_concurrency returns non-zero.
2697
2698 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2699
2700         * testsuite/20_util/pointer_traits/pointer_to.cc: New.
2701
2702 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2703
2704         * include/Makefile.am: Add new ptr_traits.h header.
2705         * include/Makefile.in: Regenerate.
2706         * include/bits/ptr_traits.h (pointer_traits): New.
2707         * include/bits/allocator.h (allocator_traits): Add.
2708         * include/ext/array_allocator.h (construct, destroy): Update C++0x
2709         versions.
2710         * include/ext/bitmap_allocator.h (construct, destroy): Likewise.
2711         * include/ext/extptr_allocator.h (construct, destroy): Likewise.
2712         * include/ext/malloc_allocator.h (construct, destroy): Likewise.
2713         * include/ext/mt_allocator.h (construct, destroy): Likewise.
2714         * include/ext/new_allocator.h (construct, destroy): Likewise.
2715         * include/ext/pool_allocator.h (construct, destroy): Likewise.
2716         * include/ext/throw_allocator.h (construct, destroy): Likewise.
2717         * testsuite/20_util/allocator_traits/requirements/typedefs.cc: New.
2718         * testsuite/20_util/allocator_traits/requirements/
2719         explicit_instantiation.cc: New.
2720         * testsuite/20_util/allocator_traits/members/max_size.cc: New.
2721         * testsuite/20_util/allocator_traits/members/select.cc: New.
2722         * testsuite/20_util/allocator_traits/members/construct.cc: New.
2723         * testsuite/20_util/allocator_traits/members/allocate_hint.cc: New.
2724         * testsuite/20_util/allocator_traits/members/destroy.cc: New.
2725         * testsuite/20_util/pointer_traits/requirements/typedefs.cc: New.
2726         * testsuite/20_util/pointer_traits/requirements/
2727         explicit_instantiation.cc: New.
2728
2729 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2730
2731         * include/std/future (launch): Update enumerators and define
2732         operators required for bitmask type. Remove trailing whitespace.
2733         * src/future.cc: Remove trailing whitespace.
2734         * testsuite/30_threads/async/any.cc: Adjust.
2735         * testsuite/30_threads/async/sync.cc: Adjust.
2736         * testsuite/30_threads/async/launch.cc: New.
2737
2738 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2739
2740         * include/std/future: Use noexcept.
2741         * src/future.cc: Likewise.
2742
2743 2011-05-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
2744
2745         * include/std/thread (this_thread::sleep_until): Move after sleep_for.
2746
2747 2011-05-27  Paolo Carlini  <paolo.carlini@oracle.com>
2748
2749         PR libstdc++/49187
2750         * include/parallel/losertree.h: Add missing using declarations
2751         of _Base::_M_comp.
2752         * include/parallel/algobase.h: Include <parallel/algorithmfwd.h>.
2753         * include/parallel/multiway_merge.h: Include <parallel/
2754         multiseq_selection.h>, forward declare __merge_advance.
2755         * include/parallel/multiseq_selection.h: Don't include <parallel/
2756         sort.h> here.
2757         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Fix
2758         qualification of upper_bound.
2759
2760         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc:
2761         Use dg-require-debug-mode.
2762         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc:
2763         Likewise.
2764         * testsuite/ext/pb_ds/regression/priority_queue_rand_debug.cc:
2765         Likewise.
2766         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc:
2767         Likewise.
2768         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc:
2769         Likewise.
2770         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
2771         Likewise.
2772         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
2773         Likewise.
2774         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc:
2775         Likewise.
2776         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc:
2777         Likewise.
2778
2779         * include/parallel/algo.h: Minor uglification fixes.
2780
2781 2011-05-26  Paolo Carlini  <paolo.carlini@oracle.com>
2782
2783         * src/list.cc: Use noexcept per the FDIS.
2784         * src/compatibility-list-2.cc: Likewise.
2785         * include/debug/set.h: Likewise.
2786         * include/debug/unordered_map: Likewise.
2787         * include/debug/multiset.h: Likewise.
2788         * include/debug/forward_list: Likewise.
2789         * include/debug/unordered_set: Likewise.
2790         * include/debug/vector: Likewise.
2791         * include/debug/map.h: Likewise.
2792         * include/debug/deque: Likewise.
2793         * include/debug/list: Likewise.
2794         * include/debug/multimap.h: Likewise.
2795         * include/profile/set.h: Likewise.
2796         * include/profile/unordered_map: Likewise.
2797         * include/profile/multiset.h: Likewise.
2798         * include/profile/forward_list: Likewise.
2799         * include/profile/vector: Likewise.
2800         * include/profile/unordered_set: Likewise.
2801         * include/profile/map.h: Likewise.
2802         * include/profile/deque: Likewise.
2803         * include/profile/list: Likewise.
2804         * include/profile/multimap.h: Likewise.
2805         * include/bits/hashtable.h: Likewise.
2806         * include/bits/stl_list.h: Likewise.
2807         * include/bits/stl_map.h: Likewise.
2808         * include/bits/hashtable_policy.h: Likewise.
2809         * include/bits/stl_set.h: Likewise.
2810         * include/bits/forward_list.h: Likewise.
2811         * include/bits/stl_multimap.h: Likewise.
2812         * include/bits/stl_vector.h: Likewise.
2813         * include/bits/stl_deque.h: Likewise.
2814         * include/bits/stl_multiset.h: Likewise.
2815         * include/bits/stl_bvector.h: Likewise.
2816         * include/bits/stl_tree.h: Likewise.
2817
2818 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2819
2820         * include/bits/stl_queue.h: Use noexcept per the FDIS.
2821         * include/bits/stl_stack.h: Likewise.
2822
2823 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2824
2825         * config/abi/pre/gnu.ver: Correct last change, export instead
2826         at the existing @3.4.16.
2827         * configure.ac: Revert last change.
2828         * testsuite/util/testsuite_abi.cc: Likewise.
2829         * configure: Regenerate.
2830
2831 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
2832
2833         * doc/xml/manual/documentation_hacking.xml: Minor corrections.
2834
2835 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
2836
2837         * include/std/mutex: Add doxygen comments.
2838
2839 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2840
2841         * config/abi/pre/gnu.ver: Export recently added  basic_streambuf
2842         and basic_stringbuf symbols @3.4.17.
2843         * configure.ac: Update.
2844         * testsuite/util/testsuite_abi.cc: Likewise.
2845         * configure: Regenerate.
2846
2847 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
2848
2849         * libsupc++/guard.cc: Fix comments.
2850
2851 2011-05-25  Ian Lance Taylor  <iant@google.com>
2852
2853         PR libstdc++/49060
2854         * include/backward/hashtable.h (hashtable::erase): Don't crash if
2855         erasing first and another element with a reference to the other
2856         element.
2857         * testsuite/backward/hash_set/49060.cc: New.
2858
2859 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2860
2861         * include/bits/random.h (random_device::min, max): Specify constexpr.
2862
2863 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2864
2865         * include/std/thread: Use noexcept throughout per the FDIS.
2866         * include/std/mutex: Likewise.
2867
2868 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
2869
2870         * testsuite/20_util/duration/arithmetic/dr2020.cc: Fix typo.
2871
2872 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
2873
2874         PR libstdc++/49151
2875         * include/std/chrono (operator+, operator-, operator*, operator/,
2876         operator&): Implement LWG 2020 [WP]; specify constexpr.
2877         * testsuite/20_util/duration/arithmetic/dr2020.cc: New.
2878
2879 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
2880
2881         PR libstdc++/49141
2882         * testsuite/26_numerics/complex/cons/48760.cc: Use dg-require-c-std.
2883         * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
2884         * testsuite/26_numerics/headers/cmath/19322.cc: Likewise.
2885
2886 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
2887
2888         * include/bits/c++config (_GLIBCXX_NOTHROW): Update for noexcept.
2889         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
2890         line number.
2891
2892 2011-05-23  Benjamin Kosnik  <bkoz@redhat.com>
2893
2894         PR libstdc++/37144
2895         PR libstdc++/28457
2896         Interface changes for ext/pb_ds.
2897         PB_DS_BASE_C_DEC to unique PB_DS_*_BASE macros.
2898         * include/ext/pb_ds/assoc_container.hpp (container_base): Remove.
2899         (basic_hash_table, basic_branch, list_update): Derive from
2900         container_base_dispatch.
2901         * include/ext/pb_ds/list_update_policy.hpp (null_lu_metadata): Remove.
2902         (move_to_front_lu_policy): To lu_move_to_front_policy.
2903         (counter_lu_policy): To lu_counter_policy.
2904         * include/ext/pb_ds/tree_policy.hpp (null_tree_node_update): Remove.
2905         * include/ext/pb_ds/tag_and_trait.hpp (container_base_dispatch): Adjust
2906         template parameters, declare here.
2907         (null_mapped_type) Remove.
2908         (null_type): Just use this for template tricks everywhere.
2909         * include/ext/pb_ds/hash_policy.hpp (null_hash_fn, null_probe_fn):
2910         Remove.
2911         * include/ext/pb_ds/trie_policy.hpp (null_trie_node_update): Remove.
2912         (string_trie_e_access_traits): To trie_string_access_traits.
2913         * include/ext/pb_ds/priority_queue.hpp: Use container_base_dispatch.
2914
2915         File changes.
2916         * include/Makefile.am (pb_headers): Removed and changed file names.
2917         * include/Makefile.in: Regenerated.
2918         * include/ext/pb_ds/detail/basic_types.hpp: Remove.
2919         * include/ext/pb_ds/detail/bin_search_tree_/
2920           cond_dtor_entry_dealtor.hpp: Remove.
2921         * include/ext/pb_ds/detail/bin_search_tree_/
2922           cond_key_dtor_entry_dealtor.hpp: Remove.
2923         * include/ext/pb_ds/detail/binary_heap_/const_point_iterator.hpp: Move..
2924         * include/ext/pb_ds/detail/binary_heap_/
2925           point_const_iterator.hpp: ..here.
2926         * include/ext/pb_ds/detail/basic_tree_policy: Move to...
2927         * include/ext/pb_ds/detail/branch_policy: This.
2928         * include/ext/pb_ds/detail/branch_policy/
2929           basic_tree_policy_base.hpp: Move...
2930         * include/ext/pb_ds/detail/branch_policy/branch_policy.hpp: ...here.
2931         * include/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp: Add.
2932         * include/ext/pb_ds/detail/branch_policy/traits.hpp: Add.
2933         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2934         null_metadata.hpp: Remove.
2935         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2936         const_point_iterator.hpp: Move...
2937         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2938         point_const_iterator.hpp: ...here.
2939         * include/ext/pb_ds/detail/list_update_policy/
2940         counter_lu_metadata.hpp: Move..
2941         * include/ext/pb_ds/detail/list_update_policy/
2942         lu_counter_metadata.hpp: ...here.
2943         * include/ext/pb_ds/detail/list_update_policy/
2944         counter_lu_policy_imp.hpp: Remove.
2945         * include/ext/pb_ds/detail/list_update_policy/
2946         mtf_lu_policy_imp.hpp: Remove.
2947         * include/ext/pb_ds/detail/trie_policy/
2948         string_trie_e_access_traits_imp.hpp: Move...
2949         * include/ext/pb_ds/detail/trie_policy/
2950         sample_trie_access_traits.hpp: ...here.
2951         * include/ext/pb_ds/detail/trie_policy/
2952         sample_trie_e_access_traits.hpp: Move...
2953         * include/ext/pb_ds/detail/trie_policy/
2954         trie_string_access_traits_imp.hpp: ...here.
2955         * include/ext/pb_ds/detail/trie_policy/null_node_update_imp.hpp: Remove.
2956         * include/ext/pb_ds/detail/tree_policy/null_node_update_imp.hpp: Remove.
2957         * include/ext/pb_ds/detail/ov_tree_map_/cond_dtor.hpp: Remove.
2958         * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: New, fold all
2959         types found in the following files into pat_trie_base.
2960         * include/ext/pb_ds/detail/pat_trie_/const_child_iterator.hpp: Folded.
2961         * include/ext/pb_ds/detail/pat_trie_/
2962           cond_dtor_entry_dealtor.hpp: Folded.
2963         * include/ext/pb_ds/detail/pat_trie_/child_iterator.hpp: Folded.
2964         * include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp: Folded.
2965         * include/ext/pb_ds/detail/pat_trie_/head.hpp: Folded.
2966         * include/ext/pb_ds/detail/pat_trie_/leaf.hpp: Folded.
2967         * include/ext/pb_ds/detail/pat_trie_/node_base.hpp: Folded.
2968         * include/ext/pb_ds/detail/pat_trie_/node_metadata_base.hpp: Folded.
2969         * include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Folded.
2970         * include/ext/pb_ds/detail/pat_trie_/node_iterators.hpp: Folded.
2971         * include/ext/pb_ds/detail/pat_trie_/point_iterators.hpp: Folded.
2972         * include/ext/pb_ds/detail/pat_trie_/synth_e_access_traits.hpp: Move...
2973         * include/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp: ...here.
2974         * include/ext/pb_ds/detail/unordered_iterator/
2975         const_point_iterator.hpp: Move...
2976         * include/ext/pb_ds/detail/unordered_iterator/
2977         point_const_iterator.hpp: ...here.
2978
2979
2980         Adjust for above changes.
2981         * include/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp: Same.
2982         * include/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp: Same.
2983         * include/ext/pb_ds/detail/resize_policy/
2984           sample_resize_trigger.hpp: Same.
2985         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp: Same.
2986         * include/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp: Same.
2987         * include/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp: Same.
2988         * include/ext/pb_ds/detail/binomial_heap_base_/
2989           binomial_heap_base_.hpp: Same.
2990         * include/ext/pb_ds/detail/binomial_heap_base_/
2991           constructors_destructor_fn_imps.hpp: Same.
2992         * include/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp: Same.
2993         * include/ext/pb_ds/detail/binomial_heap_base_/
2994           split_join_fn_imps.hpp: Same.
2995         * include/ext/pb_ds/detail/container_base_dispatch.hpp: Same. Adjust
2996           for template parameter ordering change.
2997         * include/ext/pb_ds/detail/cc_hash_table_map_/
2998           erase_store_hash_fn_imps.hpp: Same.
2999         * include/ext/pb_ds/detail/cc_hash_table_map_/
3000           constructor_destructor_no_store_hash_fn_imps.hpp: Same.
3001         * include/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp: Same.
3002         * include/ext/pb_ds/detail/cc_hash_table_map_/
3003           insert_no_store_hash_fn_imps.hpp: Same.
3004         * include/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp: Same.
3005         * include/ext/pb_ds/detail/cc_hash_table_map_/
3006           policy_access_fn_imps.hpp: Same.
3007         * include/ext/pb_ds/detail/cc_hash_table_map_/
3008           resize_store_hash_fn_imps.hpp: Same.
3009         * include/ext/pb_ds/detail/cc_hash_table_map_/
3010           constructor_destructor_store_hash_fn_imps.hpp: Same.
3011         * include/ext/pb_ds/detail/cc_hash_table_map_/
3012           insert_store_hash_fn_imps.hpp: Same.
3013         * include/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp: Same.
3014         * include/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp: Same.
3015         * include/ext/pb_ds/detail/cc_hash_table_map_/
3016           entry_list_fn_imps.hpp: Same.
3017         * include/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp: Same.
3018         * include/ext/pb_ds/detail/cc_hash_table_map_/
3019           find_store_hash_fn_imps.hpp: Same.
3020         * include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp: Same.
3021         * include/ext/pb_ds/detail/cc_hash_table_map_/
3022           debug_no_store_hash_fn_imps.hpp: Same.
3023         * include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same.
3024         * include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp: Same.
3025         * include/ext/pb_ds/detail/cc_hash_table_map_/
3026           constructor_destructor_fn_imps.hpp: Same.
3027         * include/ext/pb_ds/detail/cc_hash_table_map_/
3028           cond_key_dtor_entry_dealtor.hpp: Same.
3029         * include/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp: Same.
3030         * include/ext/pb_ds/detail/cc_hash_table_map_/
3031           debug_store_hash_fn_imps.hpp: Same.
3032         * include/ext/pb_ds/detail/cc_hash_table_map_/
3033           erase_no_store_hash_fn_imps.hpp: Same.
3034         * include/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp: Same.
3035         * include/ext/pb_ds/detail/cc_hash_table_map_/
3036           iterators_fn_imps.hpp: Same.
3037         * include/ext/pb_ds/detail/cc_hash_table_map_/
3038           resize_no_store_hash_fn_imps.hpp: Same.
3039         * include/ext/pb_ds/detail/cc_hash_table_map_/
3040           standard_policies.hpp: Same.
3041         * include/ext/pb_ds/detail/tree_trace_base.hpp: Same.
3042         * include/ext/pb_ds/detail/unordered_iterator/iterator.hpp: Same.
3043         * include/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp: Same.
3044         * include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp: Same.
3045         * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp: Same.
3046         * include/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp: Same.
3047         * include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp: Same.
3048         * include/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp: Same.
3049         * include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp: Same.
3050         * include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp: Same.
3051         * include/ext/pb_ds/detail/pat_trie_/
3052           constructors_destructor_fn_imps.hpp: Same.
3053         * include/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp: Same.
3054         * include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp: Same.
3055         * include/ext/pb_ds/detail/pat_trie_/traits.hpp: Same.
3056         * include/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp: Same.
3057         * include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp: Same.
3058         * include/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp: Same.
3059         * include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp: Same.
3060         * include/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp: Same.
3061         * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp: Same.
3062         * include/ext/pb_ds/detail/bin_search_tree_/
3063           policy_access_fn_imps.hpp: Same.
3064         * include/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp: Same.
3065         * include/ext/pb_ds/detail/bin_search_tree_/
3066           constructors_destructor_fn_imps.hpp: Same.
3067         * include/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp: Same.
3068         * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp: Same.
3069         * include/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp: Same.
3070         * include/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp: Same.
3071         * include/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp: Same.
3072         * include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp: Same.
3073         * include/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp: Same.
3074         * include/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp: Same.
3075         * include/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp: Same.
3076         * include/ext/pb_ds/detail/bin_search_tree_/
3077           split_join_fn_imps.hpp: Same.
3078         * include/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp: Same.
3079         * include/ext/pb_ds/detail/list_update_policy/
3080           sample_update_policy.hpp: Same.
3081         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3082           trace_fn_imps.hpp: Same.
3083         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3084           erase_fn_imps.hpp: Same.
3085         * include/ext/pb_ds/detail/gp_hash_table_map_/
3086           erase_store_hash_fn_imps.hpp: Same.
3087         * include/ext/pb_ds/detail/gp_hash_table_map_/
3088           constructor_destructor_no_store_hash_fn_imps.hpp: Same.
3089         * include/ext/pb_ds/detail/gp_hash_table_map_/
3090           insert_no_store_hash_fn_imps.hpp: Same.
3091         * include/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp: Same.
3092         * include/ext/pb_ds/detail/gp_hash_table_map_/
3093           policy_access_fn_imps.hpp: Same.
3094         * include/ext/pb_ds/detail/gp_hash_table_map_/
3095           resize_store_hash_fn_imps.hpp: Same.
3096         * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
3097         * include/ext/pb_ds/detail/gp_hash_table_map_/
3098           constructor_destructor_store_hash_fn_imps.hpp: Same.
3099         * include/ext/pb_ds/detail/gp_hash_table_map_/
3100           insert_store_hash_fn_imps.hpp: Same.
3101         * include/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp: Same.
3102         * include/ext/pb_ds/detail/gp_hash_table_map_/
3103           iterator_fn_imps.hpp: Same.
3104         * include/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp: Same.
3105         * include/ext/pb_ds/detail/gp_hash_table_map_/
3106           find_no_store_hash_fn_imps.hpp: Same.
3107         * include/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp: Same.
3108         * include/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp: Same.
3109         * include/ext/pb_ds/detail/gp_hash_table_map_/
3110           find_store_hash_fn_imps.hpp: Same.
3111         * include/ext/pb_ds/detail/gp_hash_table_map_/
3112           debug_no_store_hash_fn_imps.hpp: Same.
3113         * include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
3114         * include/ext/pb_ds/detail/gp_hash_table_map_/
3115           constructor_destructor_fn_imps.hpp: Same.
3116         * include/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp: Same.
3117         * include/ext/pb_ds/detail/gp_hash_table_map_/
3118           debug_store_hash_fn_imps.hpp: Same.
3119         * include/ext/pb_ds/detail/gp_hash_table_map_/
3120           erase_no_store_hash_fn_imps.hpp: Same.
3121         * include/ext/pb_ds/detail/gp_hash_table_map_/
3122           resize_no_store_hash_fn_imps.hpp: Same.
3123         * include/ext/pb_ds/detail/gp_hash_table_map_/
3124           standard_policies.hpp: Same.
3125         * include/ext/pb_ds/detail/standard_policies.hpp: Same.
3126         * include/ext/pb_ds/detail/types_traits.hpp: Same.
3127         * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp: Same.
3128         * include/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp: Same.
3129         * include/ext/pb_ds/detail/binary_heap_/const_iterator.hpp: Same.
3130         * include/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp: Same.
3131         * include/ext/pb_ds/detail/binary_heap_/
3132           constructors_destructor_fn_imps.hpp: Same.
3133         * include/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp: Same.
3134         * include/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp: Same.
3135         * include/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp: Same.
3136         * include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Same.
3137         * include/ext/pb_ds/detail/binary_heap_/entry_pred.hpp: Same.
3138         * include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp: Same.
3139         * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp: Same.
3140         * include/ext/pb_ds/detail/binary_heap_/resize_policy.hpp: Same.
3141         * include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same.
3142         * include/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp: Same.
3143         * include/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp: Same.
3144         * include/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp: Same.
3145         * include/ext/pb_ds/detail/tree_policy/
3146           sample_tree_node_update.hpp: Same.
3147         * include/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp: Same.
3148         * include/ext/pb_ds/detail/trie_policy/
3149           sample_trie_node_update.hpp: Same.
3150         * include/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp: Same.
3151         * include/ext/pb_ds/detail/trie_policy/
3152           prefix_search_node_update_imp.hpp: Same.
3153         * include/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp: Same.
3154         * include/ext/pb_ds/detail/cond_dealtor.hpp: Same.
3155         * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp: Same.
3156           Adjust for template parameter change, fold into
3157           container_base_dispatch.
3158         * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp: Same.
3159         * include/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp: Same.
3160         * include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp: Same.
3161         * include/ext/pb_ds/detail/pairing_heap_/
3162           constructors_destructor_fn_imps.hpp: Same.
3163         * include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp: Same.
3164         * include/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp: Same.
3165         * include/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp: Same.
3166         * include/ext/pb_ds/detail/binomial_heap_/
3167           constructors_destructor_fn_imps.hpp: Same.
3168         * include/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp: Same.
3169         * include/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp: Same.
3170         * include/ext/pb_ds/detail/constructors_destructor_fn_imps.hpp: Same.
3171         * include/ext/pb_ds/detail/type_utils.hpp: Same.
3172         * include/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp: Same.
3173         * include/ext/pb_ds/detail/eq_fn/eq_by_less.hpp: Same.
3174         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3175           policy_access_fn_imps.hpp: Same.
3176         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3177           left_child_next_sibling_heap_.hpp: Same.
3178         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3179           const_iterator.hpp: Same.
3180         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3181           insert_fn_imps.hpp: Same.
3182         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3183           constructors_destructor_fn_imps.hpp: Same.
3184         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3185           debug_fn_imps.hpp: Same.
3186         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3187           node.hpp: Same.
3188         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3189           info_fn_imps.hpp: Same.
3190         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3191           iterators_fn_imps.hpp: Same.
3192         * include/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp: Same.
3193         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Same.
3194         * include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp: Same.
3195         * include/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp: Same.
3196         * include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp: Same.
3197         * include/ext/pb_ds/detail/thin_heap_/
3198           constructors_destructor_fn_imps.hpp: Same.
3199         * include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp: Same.
3200         * include/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp: Same.
3201         * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp: Same.
3202         * include/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp: Same.
3203         * include/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp: Same.
3204         * include/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp: Same.
3205         * include/ext/pb_ds/detail/ov_tree_map_/
3206           constructors_destructor_fn_imps.hpp: Same.
3207         * include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
3208         * include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Same.
3209         * include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp: Same.
3210         * include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp: Same.
3211         * include/ext/pb_ds/detail/ov_tree_map_/traits.hpp: Same.
3212         * include/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp: Same.
3213         * include/ext/pb_ds/detail/debug_map_base.hpp: Same.
3214         * include/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp: Same.
3215         * include/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp: Same.
3216         * include/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp: Same.
3217         * include/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp: Same.
3218         * include/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp: Same.
3219         * include/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp: Same.
3220         * include/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp: Same.
3221         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Same.
3222         * include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp: Same.
3223         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Same.
3224         * include/ext/pb_ds/detail/splay_tree_/
3225           constructors_destructor_fn_imps.hpp: Same.
3226         * include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp: Same.
3227         * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Same.
3228         * include/ext/pb_ds/detail/splay_tree_/node.hpp: Same.
3229         * include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp: Same.
3230         * include/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp: Same.
3231         * include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same.
3232         * include/ext/pb_ds/detail/splay_tree_/traits.hpp: Same.
3233         * include/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp: Same.
3234         * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp: Same.
3235         * include/ext/pb_ds/detail/list_update_map_/
3236           entry_metadata_base.hpp: Same.
3237         * include/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp: Same.
3238         * include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Same.
3239         * include/ext/pb_ds/detail/list_update_map_/
3240           constructor_destructor_fn_imps.hpp: Same.
3241         * include/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp: Same.
3242         * include/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp: Same.
3243         * include/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp: Same.
3244         * include/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp: Same.
3245         * include/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp: Same.
3246         * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp: Same.
3247         * include/ext/pb_ds/detail/rc_binomial_heap_/
3248           rc_binomial_heap_.hpp: Same.
3249         * include/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp: Same.
3250         * include/ext/pb_ds/detail/rc_binomial_heap_/
3251           constructors_destructor_fn_imps.hpp: Same.
3252         * include/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp: Same.
3253         * include/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp: Same.
3254         * include/ext/pb_ds/detail/rc_binomial_heap_/
3255           split_join_fn_imps.hpp: Same.
3256         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Same.
3257         * include/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp: Same.
3258         * include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp: Same.
3259         * include/ext/pb_ds/detail/rb_tree_map_/
3260           constructors_destructor_fn_imps.hpp: Same.
3261         * include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp: Same.
3262         * include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
3263         * include/ext/pb_ds/detail/rb_tree_map_/node.hpp: Same.
3264         * include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp: Same.
3265         * include/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp: Same.
3266         * include/ext/pb_ds/detail/rb_tree_map_/traits.hpp: Same.
3267
3268
3269         Documentation changes.
3270         * include/ext/pb_ds/*: Add doxygen markup.
3271         * doc/doxygen/user.cfg.in: Add details for extracting comments
3272         from pb_ds.
3273         * scripts/run_doxygen: Fixup __gnu_pb_ds::detail.
3274         * scripts/make_graph.py: Move to svg output. Re-format generated tables.
3275
3276         * doc/Makefile.am (stamp-html-copy): New rule.
3277         (stamp-html): Use it to copy non-generated files into html docs.
3278         * doc/Makefile.in: Regenerated.
3279
3280         * doc/html/ext/pb_ds/sample_trie_e_access_traits.html: Move...
3281         * doc/html/ext/pb_ds/trie_string_access_traits.html: ...here.
3282         * doc/html/ext/pb_ds/string_trie_e_access_traits.html: Move..
3283         * doc/html/ext/pb_ds/sample_trie_access_traits.html: ...here.
3284
3285         * doc/html/ext/pb_ds/tree_text_lor_find_timing_test_local.png,
3286         hash_random_int_erase_mem_usage_test_local.png,
3287         multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
3288         tree_text_insert_timing_test_pat_trie_local.png ,
3289         multimap_text_insert_mem_usage_test_small_s2p_tree_local.png ,
3290         priority_queue_text_modify_down_timing_test_local.png,
3291         gp_hash_random_int_subscript_timing_test_find_local.png,
3292         text_find_timing_test_hash_local.png,
3293         multimap_text_insert_timing_test_small_s2p_hash_local.png,
3294         multimap_text_insert_timing_test_small_s2p_tree_local.png,
3295         multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
3296         multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
3297         multimap_text_insert_timing_test_large_s2p_hash_local.png,
3298         hash_zlob_random_int_find_timing_test_local.png,
3299         multimap_text_insert_timing_test_large_s2p_tree_local.png,
3300         binary_priority_queue_random_int_push_timing_test_local.png,
3301         priority_queue_text_pop_mem_usage_test_local.png,
3302         priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
3303         tree_split_join_timing_test_local.png,
3304         multimap_text_find_timing_test_small_s2p_hash_local.png,
3305         ccgp_hash_random_int_subscript_timing_test_insert_local.png,
3306         priority_queue_random_int_push_pop_timing_test_local.png,
3307         multimap_text_find_timing_test_small_s2p_tree_local.png,
3308         gp_hash_random_int_subscript_timing_test_insert_local.png,
3309         priority_queue_text_push_timing_test_local.png,
3310         cc_hash_random_int_subscript_timing_test_find_local.png,
3311         tree_text_insert_timing_test_vector_tree_local.png,
3312         multimap_text_find_timing_test_large_s2p_hash_local.png,
3313         pairing_priority_queue_text_push_timing_test_local.png,
3314         tree_order_statistics_timing_test_local.png,
3315         priority_queue_text_push_pop_timing_test_local.png,
3316         text_find_timing_test_tree_like_local.png,
3317         multimap_text_find_timing_test_large_s2p_tree_local.png,
3318         priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
3319         cc_hash_random_int_subscript_timing_test_insert_local.png,
3320         priority_queue_text_modify_up_timing_test_local.png,
3321         random_int_find_find_timing_test_tree_local.png,
3322         priority_queue_random_int_push_timing_test_local.png,
3323         tree_text_insert_timing_test_node_tree_local.png,
3324         pairing_priority_queue_text_push_pop_timing_test_local.png,
3325         gp_hash_random_int_find_timing_test_local.png,
3326         cc_hash_random_int_find_timing_test_local.png,
3327         priority_queue_text_join_timing_test_local.png: Update local pngs.
3328
3329
3330         Testsuite changes.
3331         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: New.
3332         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: New.
3333         * testsuite/ext/pb_ds/regression/priority_queue_rand_debug.cc: New.
3334         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: New.
3335         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: New.
3336         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
3337         New.
3338         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
3339         New.
3340         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: New.
3341         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: New.
3342
3343         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Fix typo.
3344
3345         * testsuite/ext/pb_ds/example/basic_set.cc: Update.
3346         * testsuite/ext/pb_ds/example/ranged_hash.cc: Same.
3347         * testsuite/ext/pb_ds/example/tree_order_statistics.cc: Same.
3348         * testsuite/ext/pb_ds/example/trie_prefix_search.cc: Same.
3349         * testsuite/ext/pb_ds/example/trie_dna.cc: Same.
3350         * testsuite/ext/pb_ds/example/tree_intervals.cc: Same.
3351         * testsuite/ext/pb_ds/example/basic_multimap.cc: Same.
3352         * testsuite/performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc:
3353           Same.
3354         * testsuite/performance/ext/pb_ds/tree_split_join_timing.cc: Same.
3355         * testsuite/performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
3356         * testsuite/data/make_graph_test_infos.xml: Same.
3357         * testsuite/util/regression/common_type.hpp: Same.
3358         * testsuite/util/regression/trait/assoc/native_type_trait.hpp: Same.
3359         * testsuite/util/regression/trait/assoc/trait.hpp: Same.
3360         * testsuite/util/regression/trait/assoc/type_trait.hpp: Same.
3361         * testsuite/util/regression/rand/priority_queue/
3362           rand_regression_test.hpp: Same.
3363         * testsuite/util/regression/rand/priority_queue/
3364           container_rand_regression_test.tcc: Same.
3365         * testsuite/util/regression/rand/assoc/rand_regression_test.hpp: Same.
3366         * testsuite/util/regression/rand/assoc/container_rand_regression_test.h
3367         * testsuite/util/regression/rand/assoc/
3368           container_rand_regression_test.tcc: Same.
3369         * testsuite/util/native_type/native_priority_queue.hpp: Same.
3370         * testsuite/util/native_type/native_multimap.hpp: Same.
3371         * testsuite/util/native_type/native_hash_multimap.hpp: Same.
3372         * testsuite/util/native_type/native_set.hpp: Same.
3373         * testsuite/util/native_type/native_map.hpp: Same.
3374         * testsuite/util/native_type/native_hash_set.hpp: Same.
3375         * testsuite/util/native_type/native_hash_map.hpp: Same.
3376         * testsuite/util/testsuite_containers.h
3377         * testsuite/util/common_type/priority_queue/common_type.hpp: Same.
3378         * testsuite/util/common_type/assoc/common_type.hpp: Same.
3379         * testsuite/util/common_type/assoc/string_form.hpp: Same.
3380         * testsuite/util/common_type/assoc/template_policy.hpp: Same.
3381         * testsuite/util/common_type/assoc/detail/
3382           trigger_policy_string_form.hpp: Same.
3383         * testsuite/util/common_type/assoc/detail/ds_string_form.hpp: Same.
3384         * testsuite/util/common_type/assoc/detail/
3385           size_policy_string_form.hpp: Same.
3386         * testsuite/util/common_type/assoc/detail/
3387           probe_fn_string_form.hpp: Same.
3388         * testsuite/util/common_type/assoc/detail/
3389           tree_supports_order_statistics.hpp: Same.
3390         * testsuite/util/common_type/assoc/detail/
3391           trie_supports_prefix_search.hpp: Same.
3392         * testsuite/util/common_type/assoc/detail/
3393           list_update_policy_string_form.hpp: Same.
3394         * testsuite/util/common_type/assoc/detail/
3395           trie_supports_order_statistics.hpp: Same.
3396         * testsuite/util/common_type/assoc/native_set.hpp: Same.
3397         * testsuite/util/performance/assoc/timing/common_type.hpp: Same.
3398         * testsuite/util/performance/assoc/timing/multimap_find_test.hpp: Same.
3399         * testsuite/util/performance/assoc/multimap_common_type.hpp: Same.
3400
3401 2011-05-23  Paolo Carlini  <paolo.carlini@oracle.com>
3402
3403         * include/bits/streambuf_iterator.h: Use noexcept per the FDIS.
3404         (istreambuf_iterator<>::istreambuf_iterator(const
3405         istreambuf_iterator&),  ~istreambuf_iterator()): Add defaulted
3406         in C++0x mode.
3407
3408 2011-05-23  Jason Merrill  <jason@redhat.com>
3409
3410         * libsupc++/exception_ptr.h: Fix compilation in C++0x mode.
3411
3412 2011-05-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
3413
3414         * testsuite/20_util/bind/cv_quals_2.cc: New.
3415
3416 2011-05-22  Paolo Carlini  <paolo.carlini@oracle.com>
3417
3418         PR libstdc++/49058
3419         * include/std/functional (_Bind<_Functor(_Bound_args...)>::
3420         operator()(_Args&&...)): Don't cv qualify _Functor directly
3421         in the default template argument, SFINAE doesn't apply when
3422         the functor has no arguments.
3423         * testsuite/20_util/bind/49058_1.cc: New.
3424         * testsuite/20_util/bind/49058_2.cc: Likewise.
3425
3426 2011-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
3427
3428         * include/bits/unique_ptr.h: Use noexcept per the FDIS.
3429
3430 2011-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
3431
3432         * testsuite/21_strings/basic_string/requirements/exception/
3433         propagation_consistent.cc: Fix vs POD-ness of value_type.
3434         * testsuite/21_strings/basic_string/requirements/exception/
3435         basic.cc: Likewise.
3436         * testsuite/ext/vstring/requirements/exception/
3437         propagation_consistent.cc: Likewise.
3438         * testsuite/ext/vstring/requirements/exception/basic.cc: Likewise.
3439
3440 2011-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
3441
3442         * include/bits/char_traits.h: Use noexcept throughout.
3443         * include/std/typeindex: Likewise.
3444
3445         * include/std/tuple (_Tuple_impl<>_Tuple_impl(_Tuple_impl&&)): Use
3446         noexcept; adjust callers.
3447         * include/bits/stl_pair.h (pair<>::pair(pair<>&&)): Use noexcept.
3448         * testsuite/20_util/tuple/cons/noexcept_move_construct.cc: New.
3449         * testsuite/20_util/pair/cons/noexcept_move_construct.cc: Likewise.
3450         * testsuite/20_util/pair/noexcept_swap.cc: Likewise.
3451         * testsuite/20_util/pair/noexcept_move_assign.cc: Likewise.
3452         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
3453         line numbers.
3454
3455 2011-05-20  Jason Merrill  <jason@redhat.com>
3456
3457         * include/ext/pb_ds/assoc_container.hpp: Explicitly qualify calls to
3458         functions from dependent bases.
3459         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Likewise.
3460         * include/ext/pb_ds/detail/rb_tree_map_/
3461         split_join_fn_imps.hpp: Likewise.
3462         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Likewise.
3463         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Likewise.
3464         * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Likewise.
3465         * include/ext/pb_ds/detail/splay_tree_/
3466         split_join_fn_imps.hpp: Likewise.
3467         * include/ext/pb_ds/detail/tree_policy/
3468         order_statistics_imp.hpp: Likewise.
3469         * include/ext/pb_ds/detail/trie_policy/
3470         prefix_search_node_update_imp.hpp: Likewise.
3471         * include/ext/rc_string_base.h: Likewise.
3472         * include/ext/rope: Likewise.
3473         * include/ext/ropeimpl.h: Likewise.
3474         * testsuite/util/exception/safety.h: Likewise.
3475         * testsuite/util/native_type/native_priority_queue.hpp: Likewise.
3476         * testsuite/util/testsuite_io.h: Likewise.
3477         * include/std/functional: Declare mem_fn earlier.
3478         * include/tr1/functional: Likewise.
3479         * include/tr1/exp_integral.tcc: Declare __expint_E1 earlier.
3480
3481 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
3482
3483         * include/std/tuple (tuple_element<__i, const _Tp>,
3484         tuple_element<__i, volatile _Tp>, tuple_element<__i,
3485         const volatile _Tp>, tuple_size<const _Tp>, tuple_size<volatile _Tp>,
3486         tuple_size<const volatile _Tp>): Add.
3487         * include/std/utility (tuple_size<std::pair<_Tp1, _Tp2>>): Tweak.
3488         * include/std/array (tuple_size<array<_Tp, _Nm>>): Likewise.
3489         * testsuite/20_util/tuple/cv_tuple_size.cc: New.
3490         * testsuite/20_util/tuple/cv_tuple_element.cc: Likewise.
3491         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-warning
3492         line number.
3493
3494 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
3495
3496         * include/std/tuple (tuple<>::operator=(tuple&&)): Specify as
3497         noexcept.
3498         (__get_helper): Likewise.
3499         (_Head_base<>::_M_head, _Tuple_impl<>::_M_head, _M_tail): Likewise.
3500         * include/bits/move.h (swap): Likewise.
3501         * include/bits/algorithmfwd.h (swap): Adjust.
3502         * include/bits/stl_pair.h (pair<>::operator=(pair&&)): Spec noexcept.
3503         * testsuite/util/testsuite_allocator.h (uneq_allocator): In C++0x
3504         mode, prefer delete to access control to make the type not copy
3505         assignable.
3506         * testsuite/util/testsuite_tr1.h: Add test classes.
3507         * testsuite/20_util/tuple/noexcept_swap.cc: New.
3508         * testsuite/20_util/tuple/noexcept_move_assign.cc: Likewise.
3509         * testsuite/25_algorithms/reverse/moveable.cc: Likewise, prefer
3510         delete to access control.
3511         * testsuite/25_algorithms/swap_ranges/moveable.cc: Likewise.
3512         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
3513         line numbers.
3514
3515 2011-05-19  Daniel Krugler  <daniel.kruegler@googlemail.com>
3516
3517         * testsuite/util/testsuite_tr1.h: Add test classes.
3518         * testsuite/20_util/is_nothrow_assignable/value.cc: Add.
3519
3520 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
3521
3522         * include/std/type_traits (is_assignable, is_copy_assignable,
3523         is_move_assignable, is_nothrow_assignable, is_nothrow_copy_assignable,
3524         is_nothrow_move_assignable): Add; minor tweaks elsewhere.
3525         (has_nothrow_copy_assign): Remove.
3526         * testsuite/util/testsuite_tr1.h: Add test classes.
3527         * testsuite/20_util/is_assignable/requirements/typedefs.cc: Add.
3528         * testsuite/20_util/is_assignable/requirements/
3529         explicit_instantiation.cc: Likewise.
3530         * testsuite/20_util/is_nothrow_assignable/value.cc: Likewise.
3531         * testsuite/20_util/is_nothrow_assignable/requirements/typedefs.cc:
3532         Likewise.
3533         * testsuite/20_util/is_nothrow_assignable/requirements/
3534         explicit_instantiation.cc: Likewise.
3535         * testsuite/20_util/is_move_assignable/value.cc: Likewise.
3536         * testsuite/20_util/is_move_assignable/requirements/typedefs.cc:
3537         Likewise.
3538         * testsuite/20_util/is_move_assignable/requirements/
3539         explicit_instantiation.cc: Likewise.
3540         * testsuite/20_util/is_copy_assignable/value.cc: Likewise.
3541         * testsuite/20_util/is_copy_assignable/requirements/typedefs.cc:
3542         Likewise.
3543         * testsuite/20_util/is_copy_assignable/requirements/
3544         explicit_instantiation.cc: Likewise.
3545         * testsuite/20_util/is_nothrow_move_assignable/value.cc: Likewise.
3546         * testsuite/20_util/is_nothrow_move_assignable/requirements/
3547         typedefs.cc: Likewise.
3548         * testsuite/20_util/is_nothrow_move_assignable/requirements/
3549         explicit_instantiation.cc: Likewise.
3550         * testsuite/20_util/is_nothrow_copy_assignable/value.cc: Likewise.
3551         * testsuite/20_util/is_nothrow_copy_assignable/requirements/
3552         typedefs.cc: Likewise.
3553         * testsuite/20_util/is_nothrow_copy_assignable/requirements/
3554         explicit_instantiation.cc: Likewise.
3555         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
3556         dg-error line numbers.
3557         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3558         Likewise.
3559         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
3560
3561 2011-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
3562
3563         * include/bits/shared_ptr_base.h: Use noexcept. Define special member
3564         functions as defaulted/deleted.
3565         * include/bits/shared_ptr.h: Use noexcept.
3566         * 20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line numbers.
3567         * 20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
3568
3569 2011-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
3570
3571         * doc/xml/manual/bitmap_allocator.xml: Fix typos.
3572
3573 2011-05-18  Paolo Carlini  <paolo.carlini@oracle.com>
3574
3575         * libsupc++/initializer_list: Use noexcept specifier.
3576         (initializer_list<>::size, begin, end): Qualify as const.
3577         * include/bits/move.h (__addressof, forward, move, addressof): Specify
3578         as noexcept.
3579         * include/std/bitset: Use noexcept specifier throughout.
3580         * include/debug/bitset: Update.
3581         * include/profile/bitset: Likewise.
3582
3583 2011-05-17  Paolo Carlini  <paolo.carlini@oracle.com>
3584
3585         * include/std/tuple: Use noexcept where appropriate.
3586         (tuple<>::swap): Rework implementation.
3587         (_Head_base<>::_M_swap_impl): Remove.
3588         (get(std::tuple<>&&)): Add.
3589         * testsuite/20_util/tuple/element_access/get2.cc: New.
3590         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
3591         line number.
3592
3593 2011-05-16  Paolo Carlini  <paolo.carlini@oracle.com>
3594
3595         * include/std/utility: Simplify the last commit, the whole
3596         std::get code is C++0x only.
3597
3598 2011-05-16  Paolo Carlini  <paolo.carlini@oracle.com>
3599
3600         * include/std/utility (get(std::pair<>&&)): Add.
3601         * include/bits/stl_pair.h (pair::swap(pair&),
3602         swap(pair<>&, pair<>&)): Use noexcept.
3603         * include/bits/random.h (discard_block_engine<>::base,
3604         independent_bits_engine<>::base, shuffle_order_engine<>::base,
3605         random_device::entropy): Use noexcept.
3606         * include/std/array: Use noexcept where appropriate.
3607         (get(array<>&&)): Add.
3608         * testsuite/23_containers/array/requirements/get.cc: New.
3609         * testsuite/20_util/pair/get.cc: Likewise.
3610         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-error
3611         line number.
3612
3613 2011-05-15  Paolo Carlini  <paolo.carlini@oracle.com>
3614
3615         * include/bits/c++config (_GLIBCXX_NOEXCEPT, _GLIBCXX_USE_NOEXCEPT):
3616         Add.
3617         * include/std/limits: Use the latter everywhere.
3618         (numeric_limits<char16_t>, numeric_limits<char32_t>): Simplify
3619         macro usages, the specializations exist only in C++0x mode.
3620         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
3621         line number.
3622
3623 2011-05-11  Paolo Carlini  <paolo.carlini@oracle.com>
3624
3625         * testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: Use
3626         dg-require-cmath.
3627         * testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise.
3628
3629 2011-05-11  François Dumont  <francois.cppdevs@free.fr>
3630
3631         * include/ext/pb_ds/detail/resize_policy/
3632         hash_load_check_resize_trigger_imp.hpp (assert_valid): Replace
3633         _GLIBCXX_DEBUG_ASSERT calls with PB_DS_DEBUG_VERIFY.
3634         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
3635         find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
3636         constructors_destructor_fn_imps.hpp, split_join_fn_imps.hpp
3637         (PB_DS_ASSERT_VALID): Rename in PB_DS_ASSERT_VALID_COND.
3638         * include/ext/pb_ds/detail/debug_map_base.hpp,
3639         splay_tree_/splay_tree_.hpp, ov_tree_map_/ov_tree_map_.hpp,
3640         cc_hash_table_map_/cc_ht_map_.hpp, pat_trie_/pat_trie_.hpp,
3641         leaf.hpp, internal_node.hpp, gp_hash_table_map_/gp_ht_map_.hpp,
3642         bin_search_tree_/bin_search_tree_.hpp, list_update_map_/lu_map_.hpp,
3643         rb_tree_map_/rb_tree_.hpp (PB_DS_ASSERT_VALID, PB_DS_DEBUG_VERIFY,
3644         PB_DS_CHECK_KEY_EXISTS, PB_DS_CHECK_KEY_DOES_NOT_EXIST): Duplicate
3645         macro definitions move...
3646         * include/ext/pb_ds/detail/container_base_dispatch.hpp: ... here...
3647         * include/ext/pb_ds/detail/basic_tree_policy/traits.hpp: ... and here.
3648         * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp,
3649         resize_policy.hpp, pairing_heap_/pairing_heap_.hpp,
3650         left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp,
3651         binomial_heap_/binomial_heap_.hpp, thin_heap_/thin_heap_.hpp,
3652         rc_binomial_heap_/rc_binomial_heap_.hpp, rc.hpp (PB_DS_ASSERT_VALID,
3653         PB_DS_DEBUG_VERIFY): Duplicate macro definitions move...
3654         * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp:
3655         ...here.
3656
3657 2011-05-09  Paolo Carlini  <paolo.carlini@oracle.com>
3658
3659         PR libstdc++/48933
3660         * include/c_global/cmath (acosh, asinh, atanh, cbrt, copysign,
3661         erf, erfc, exp2, expm1, fdim, fma, fmax, hypot, ilogb, lgamma,
3662         llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
3663         nextafter, nexttoward, remainder, remquo, rint, round, scalbln,
3664         scalbn, tgamma, trunc): Use __enable_if on the return type.
3665         * include/tr1/cmath: Likewise.
3666         * testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: New.
3667         * testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise.
3668
3669 2011-05-07  François Dumont  <francois.cppdevs@free.fr>
3670
3671         * include/debug/macro.h (_GLIBCXX_DEBUG_VERIFY_AT): New.
3672         (_GLICXX_DEBUG_VERIFY): Use latter.
3673         * include/ext/pb_ds/detail/resize_policy/
3674         hash_load_check_resize_trigger_imp.hpp: Emit assertion on the line
3675         containing the original assert call.
3676         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
3677         find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
3678         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3679         split_join_fn_imps.hpp: Likewise.
3680         * include/ext/pb_ds/detail/cc_hash_table_map_/
3681         erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
3682         find_fn_imps.hpp, insert_store_hash_fn_imps.hpp, debug_fn_imps.hpp,
3683         debug_no_store_hash_fn_imps.hpp, cc_ht_map_.hpp, resize_fn_imps.hpp,
3684         constructor_destructor_fn_imps.hpp, debug_store_hash_fn_imps.hpp,
3685         erase_no_store_hash_fn_imps.hpp: Likewise.
3686         * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp,
3687         insert_join_fn_imps.hpp, pat_trie_/head.hpp, debug_fn_imps.hpp,
3688         constructors_destructor_fn_imps.hpp, pat_trie_.hpp, split_fn_imps.hpp,
3689         leaf.hpp, erase_fn_imps.hpp, node_base.hpp, internal_node.hpp:
3690         Likewise.
3691         * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp,
3692         r_erase_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
3693         debug_fn_imps.hpp, rotate_fn_imps.hpp, erase_fn_imps.hpp,
3694         bin_search_tree_.hpp, insert_fn_imps.hpp, split_join_fn_imps.hpp:
3695         Likewise.
3696         * include/ext/pb_ds/detail/gp_hash_table_map_/
3697         erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
3698         find_fn_imps.hpp, gp_ht_map_.hpp, insert_store_hash_fn_imps.hpp,
3699         debug_fn_imps.hpp, erase_fn_imps.hpp, debug_no_store_hash_fn_imps.hpp,
3700         resize_fn_imps.hpp, constructor_destructor_fn_imps.hpp,
3701         debug_store_hash_fn_imps.hpp, erase_no_store_hash_fn_imps.hpp:
3702         Likewise.
3703         * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp,
3704         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3705         erase_fn_imps.hpp, insert_fn_imps.hpp, binary_heap_.hpp,
3706         resize_policy.hpp, split_join_fn_imps.hpp: Likewise.
3707         * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp,
3708         find_fn_imps.hpp, insert_fn_imps.hpp,
3709         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3710         pairing_heap_.hpp, split_join_fn_imps.hpp: Likewise.
3711         * include/ext/pb_ds/detail/binomial_heap_/
3712         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3713         binomial_heap_.hpp: Likewise.
3714         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3715         erase_fn_imps.hpp, left_child_next_sibling_heap_.hpp,
3716         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
3717         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp,
3718         find_fn_imps.hpp, thin_heap_.hpp, insert_fn_imps.hpp,
3719         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3720         split_join_fn_imps.hpp: Likewise.
3721         * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp,
3722         ov_tree_map_.hpp, constructors_destructor_fn_imps.hpp,
3723         debug_fn_imps.hpp, split_join_fn_imps.hpp, info_fn_imps.hpp: Likewise.
3724         * include/ext/pb_ds/detail/debug_map_base.hpp: Likewise.
3725         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp,
3726         find_fn_imps.hpp, insert_fn_imps.hpp,
3727         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3728         splay_fn_imps.hpp, split_join_fn_imps.hpp, splay_tree_.hpp: Likewise.
3729         * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp,
3730         find_fn_imps.hpp, lu_map_.hpp, constructor_destructor_fn_imps.hpp,
3731         insert_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
3732         * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp,
3733         rc_binomial_heap_.hpp, insert_fn_imps.hpp,
3734         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp, rc.hpp,
3735         split_join_fn_imps.hpp: Likewise.
3736         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp,
3737         insert_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
3738         debug_fn_imps.hpp, rb_tree_.hpp, split_join_fn_imps.hpp: Likewise.
3739         * include/ext/pb_ds/hash_policy.hpp: Likewise.
3740
3741 2011-05-06  Paolo Carlini  <paolo.carlini@oracle.com>
3742
3743         * testsuite/22_locale/messages_byname/named_equivalence.cc: Fix.
3744
3745 2011-05-04  Marc Glisse  <marc.glisse@normalesup.org>
3746
3747         PR libstdc++/47913 (again)
3748         * include/std/ratio (ratio_add, ratio_less): Rewrite.
3749         * testsuite/20_util/ratio/operations/47913.cc: Extend.
3750         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust dg-error
3751         line numbers.