OSDN Git Service

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