OSDN Git Service

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