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.