OSDN Git Service

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