OSDN Git Service

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