OSDN Git Service

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