OSDN Git Service

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