OSDN Git Service

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