OSDN Git Service

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