OSDN Git Service

2011-11-23 François Dumont <fdumont@gcc.gnu.org>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2011-11-23  François Dumont <fdumont@gcc.gnu.org>
2
3         PR libstdc++/41975
4         * include/bits/hashtable.h (_Hashtable<>): Major data model
5         modification to limit performance impact of empty buckets in
6         erase(iterator) implementation.
7         * include/bits/hashtable_policy.h (_Hashtable_iterator,
8         _Hashtable_const_iterator): Remove not used anymore.
9         * include/bits/hashtable_policy.h (_Prime_rehash_policy): Remove
10         _M_grow_factor, just use natural evolution of prime numbers. Add
11         _M_prev_size to know when the number of buckets can be reduced.
12         * include/bits/unordered_set.h (__unordered_set<>,
13         __unordered_multiset<>), unordered_map.h (__unordered_map<>,
14         __unordered_multimap<>): Change default value of cache hash code
15         template parameter, false for integral types with noexcept hash
16         functor, true otherwise.
17         * include/debug/unordered_map, unordered_set: Adapt transformation
18         from iterator/const_iterator to respectively
19         local_iterator/const_local_iterator.
20         * testsuite/performance/23_containers/copy_construct/unordered_set.cc:
21         New.
22         * testsuite/23_containers/unordered_set/instantiation_neg.cc: New.
23         * testsuite/23_containers/unordered_set/hash_policy/rehash.cc: New.
24         * testsuite/23_containers/unordered_multiset/cons/copy.cc: New.
25         * testsuite/23_containers/unordered_multiset/erase/1.cc,
26         24061-multiset.cc: Add checks on the number of bucket elements.
27         * testsuite/23_containers/unordered_multiset/insert/multiset_range.cc,
28         multiset_single.cc, multiset_single_move.cc: Likewise.
29
30 2011-11-21  Jonathan Wakely  <jwakely.gcc@gmail.com>
31
32         * include/std/functional (is_placeholder, is_bind_expression): Add
33         partial specializations for cv-qualified types.
34         * include/tr1/functional (is_placeholder, is_bind_expression): Add
35         partial specializations for std::bind and std::placeholders and for
36         cv-qualified types.
37         * testsuite/20_util/bind/cv_quals_3.cc: New.
38         * testsuite/tr1/3_function_objects/bind/cv_quals.cc: New.
39         * testsuite/tr1/3_function_objects/bind/mixed.cc: New.
40
41 2011-11-21  Andreas Tobler  <andreast@fgznet.ch>
42
43         * configure: Regenerate.
44
45 2011-11-21  Daniel Krugler  <daniel.kruegler@googlemail.com>
46
47         PR libstdc++/51185
48         * include/std/type_traits (__is_base_to_derived_ref,
49         __is_lvalue_to_rvalue_ref): Fix.
50         * testsuite/20_util/is_constructible/51185.cc: New.
51         * testsuite/20_util/is_constructible/value-2.cc: Extend.
52         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
53         line number.
54         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
55         Likewise.
56         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc
57         Likewise.
58
59 2011-11-21  Paolo Carlini  <paolo.carlini@oracle.com>
60
61         * include/std/tuple (__conv_types, __one_by_one_convertible,
62         __all_convertible): Remove.
63         (tuple<>::tuple(_UElements&&...),
64         tuple<>::tuple(const tuple<_UElements...>&),
65         tuple<>::tuple(tuple<_UElements...>&&)): Remove wa for c++/48322.
66         * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error
67         line number.
68
69 2011-11-20  Jason Merrill  <jason@redhat.com>
70
71         PR c++/48322
72         * include/std/tuple (tuple(_UElements&&...)): Fix SFINAE.
73
74         * testsuite/20_util/bind/ref_neg.cc: Adjust error markings.
75
76 2011-11-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
77
78         * include/backward/binders.h: Fix examples in doxygen comments and
79         suggest using std::bind instead.
80
81 2011-11-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
82
83         * doc/xml/manual/status_cxx2011.xml: Fix docbook markup.
84
85 2011-11-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
86
87         * doc/xml/manual/appendix_contributing.xml: Do not use "here" as link
88         text.
89         * doc/xml/faq.xml: Likewise. Do not request standard library issues
90         to be reported to the libstdc++ mailing list.
91         * doc/xml/manual/status_cxx2011.xml: Document implementation-defined
92         behaviour.
93         * doc/xml/manual/status_cxxtr1.xml: Likewise.
94         * doc/xml/manual/utilities.xml: Fix grammar, probably caused by a
95         global search and replace of "part" by "chapter".
96         * doc/xml/manual/shared_ptr.xml: Remove outdated information.
97         * doc/xml/manual/messages.xml: Be more specific about systems where
98         using 'int' for catalog handle is not a problem, mention LWG issue.
99
100 2011-11-19  Paolo Carlini  <paolo.carlini@oracle.com>
101
102         * include/debug/bitset (operator[](size_t) const): Declare constexpr.
103         * include/profile/bitset: Likewise.
104         * testsuite/23_containers/bitset/operations/constexpr.cc: Split out
105         non portable bits to...
106         * testsuite/23_containers/bitset/operations/constexpr-2.cc: ... here.
107
108 2011-11-18  Harti Brandt  <hartmut.brandt@dlr.de>
109
110         PR libstdc++/51209
111         * include/bits/hashtable.h (_Hashtable<>::_M_find_node): Return
112         nullptr when no node is found.
113         * include/tr1/hashtable.h (_Hashtable<>::_M_find_node): Return
114         zero when no node is found.
115
116 2011-11-18  Paolo Carlini  <paolo.carlini@oracle.com>
117
118         * src/hash-long-double-aux.cc: Rename to...
119         * src/hash-long-double-tr1-aux.cc: ... this.
120         * src/compatibility-ldbl.cc: Adjust.
121         * src/hash_tr1.cc: Likewise.
122         * src/hash_c++0x.cc: Don't use src/hash-long-double-aux.cc.
123         * include/bits/functional_hash.h (hash<_Tp*>::operator(), specs
124         for integer types, hash<float>::operator(), hash<double>::operator(),
125         hash<long double>::operator()): Declare noexcept.
126         * include/debug/bitset (hash<__debug::bitset>::operator()): Likewise.
127         * include/debug/vector (hash<__debug::vector>::operator()): Likewise.
128         * include/std/system_error (hash<error_code>::operator()): Likewise.
129         * include/std/thread (hash<thread::id>::operator()): Likewise.
130         * include/std/bitset (hash<bitset>::operator()): Likewise.
131         * include/std/typeindex (hash<type_index>::operator()): Likewise.
132         * include/profile/bitset (hash<__profile::vector>::operator()):
133         Likewise.
134         * include/profile/vector (hash<__profile::vector>::operator()):
135         Likewise.
136         * include/ext/vstring.h (hash<__vstring>::operator(),
137         hash<__wvstring>::operator(), hash<__u16vstring>::operator(),
138         hash<__u32vstring>::operator()): Likewise.
139         * include/bits/shared_ptr.h (hash<shared_ptr>::operator()): Likewise.
140         * include/bits/shared_ptr_base.h (hash<__shared_ptr>::operator()):
141         Likewise.
142         * include/bits/unique_ptr.h (hash<unique_ptr>::operator()): Likewise.
143         * include/bits/basic_string.h (hash<string>::operator(),
144         hash<wstring>::operator(), hash<u16string>::operator(),
145         hash<u32string>::operator()): Likewise.
146         * include/bits/vector.tcc (hash<vector>::operator()): Likewise.
147         * include/bits/stl_bvector.h (hash<vector>::operator()): Likewise.
148         * libsupc++/typeinfo (type_info::hash_code): Use noexcept instead of
149         throw().
150
151 2011-11-17  Richard Henderson  <rth@redhat.com>
152
153         PR libstdc++/51181
154         * libsupc++/eh_tm.cc (free_any_cxa_exception): Protect the use
155         of __sync_sub_and_fetch with _GLIBCXX_ATOMIC_BUILTINS_4.
156
157 2011-11-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
158
159         * testsuite/30_threads/thread/native_handle/typesizes.cc: Do not run
160         on darwin.
161
162 2011-11-17  Jason Merrill  <jason@redhat.com>
163
164         * testsuite/21_strings/basic_string/cons/char/moveable2.cc
165         (tstring): Add defaulted move assignment.
166         * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc
167         (tstring): Add defaulted move assignment.
168         * testsuite/util/testsuite_tr1.h (NoexceptMoveConsClass): Add
169         defaulted move assignment operator.
170         (NoexceptMoveAssignClass): Add defaulted move constructor.
171
172 2011-11-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
173
174         * doc/xml/manual/status_cxx2011.xml: Status of piecewise construction
175         and ios_base::failure.
176         * doc/xml/manual/backwards_compatibility.xml: List headers in
177         alphabetical order.
178
179 2011-11-16  Andrew MacLeod  <amacleod@redhat.com>
180
181         PR libstdc++/51102
182         * include/bits/atomic_base.h (ATOMIC_BOOL_LOCK_FREE,
183         ATOMIC_POINTER_LOCK_FREE): New. Add missing macros.
184
185 2011-11-15  Paolo Carlini  <paolo.carlini@oracle.com>
186
187         PR libstdc++/51142
188         * include/debug/unordered_map (unordered_map<>::erase(iterator),
189         unordered_multimap<>::erase(iterator)): Add, consistently with
190         LWG 2059.
191         * include/debug/unordered_set (unordered_set<>::erase(iterator),
192         unordered_multiset<>::erase(iterator)): Likewise.
193         * include/debug/map.h (map<>::erase(iterator)): Likewise.
194         * include/debug/multimap.h (multimap<>::erase(iterator)): Likewise.
195         * include/profile/map.h (map<>::erase(iterator)): Likewise.
196         * include/profile/multimap.h (multimap<>::erase(iterator)): Likewise.
197         * include/bits/hashtable.h (_Hashtable<>::erase(iterator)): Likewise.
198         * include/bits/stl_map.h (map<>::erase(iterator)): Likewise.
199         * include/bits/stl_multimap.h (multimap<>::erase(iterator)): Likewise.
200         * include/bits/stl_tree.h (_Rb_tree<>::erase(iterator)): Likewise.
201         * testsuite/23_containers/unordered_map/erase/51142.cc: New.
202         * testsuite/23_containers/multimap/modifiers/erase/51142.cc: Likewise.
203         * testsuite/23_containers/set/modifiers/erase/51142.cc: Likewise.
204         * testsuite/23_containers/unordered_multimap/erase/51142.cc: Likewise.
205         * testsuite/23_containers/unordered_set/erase/51142.cc: Likewise.
206         * testsuite/23_containers/multiset/modifiers/erase/51142.cc: Likewise.
207         * testsuite/23_containers/unordered_multiset/erase/51142.cc: Likewise.
208         * testsuite/23_containers/map/modifiers/erase/51142.cc: Likewise.
209
210 2011-11-15  Jason Dick  <dickphd@gmail.com>
211
212         PR libstdc++/51133
213         * include/tr1/poly_hermite.tcc (__poly_hermite_recursion): Fix
214         wrong sign in recursion relation.
215
216 2011-11-14  Paolo Carlini  <paolo.carlini@oracle.com>
217
218         * include/c_global/cmath (frexp, modf, remquo): Do not mark constexpr,
219         not viable anyway due to the pointer parameter.
220
221 2011-11-13  Paolo Carlini  <paolo.carlini@oracle.com>
222
223         * include/c_global/cmath (atan2, fmod, pow, copysign, fdim,
224         fma, fmax, fmin, hypot, nextafter, remainder, remquo): Simplify
225         constraining on the return type.
226         * include/tr1/cmath (copysign, fdim, fma, fmax, fmin, hypot,
227         nextafter, remainder, remquo): Likewise.
228
229 2011-11-13  Gerald Pfeifer  <gerald@pfeifer.com>
230
231         * using.xml: Use GNU/Linux.
232
233 2011-11-12  Jason Merrill  <jason@redhat.com>
234
235         PR c++/51060
236         * testsuite/25_algorithms/max/1.cc (test01): Drop references.
237         * testsuite/25_algorithms/min/1.cc (test01): Drop references.
238         * testsuite/25_algorithms/minmax/1.cc (test01): Drop references.
239
240 2011-11-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
241
242         PR libstdc++/51083
243         * include/ext/type_traits.h (__promote): Only define __type member
244         for integral and floating point types, to prevent math functions
245         participating in overload resolution for other types.
246         (__promote_2, __promote_3, __promote_4): Use __promote in default
247         template argument values, so deduction only succeeds for integral and
248         floating point types.
249         * testsuite/26_numerics/cmath/51083.cc: New.
250         * testsuite/26_numerics/complex/51083.cc: New.
251         * testsuite/tr1/8_c_compatibility/cmath/51083.cc: New.
252         * testsuite/tr1/8_c_compatibility/complex/51083.cc: New.
253
254 2011-11-10  Andrew MacLeod  <amacleod@redhat.com>
255
256         PR middle-end/51038
257         * include/bits/atomic_base.h (atomic_thread_fence): Call built-in.
258         (atomic_signal_fence): Call built-in.
259         (test_and_set, clear): Call new atomic built-ins.
260
261 2011-11-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
262
263         * include/bits/allocator.h (__shrink_to_fit_aux::_S_do_it): Create
264         the new object with the same allocator.
265         * testsuite/23_containers/vector/capacity/shrink_to_fit2.cc: New.
266
267 2011-11-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
268
269         * include/profile/unordered_map: Add missing copy constructors.
270         * include/profile/unordered_set: Likewise.
271
272 2011-11-09  Dodji Seketeli  <dodji@redhat.com>
273
274         PR c++/51027
275         * include/ext/pointer.h (rebind): Append missing ';'.
276
277 2011-11-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
278
279         * include/bits/stl_vector.h (vector::_Alloc_traits): Make private.
280         * include/debug/vector: Add allocator-extended constructors, ensure
281         move assignment and swap have same allocator propagation semantics
282         and exceptions specification as base class.
283         * include/profile/vector: Likewise.
284         (vector::push_back(_Tp&&)): Forward argument as rvalue.
285         * testsuite/23_containers/vector/debug/alloc_prop.cc: New.
286         * doc/xml/manual/status_cxx2011.xml: Clarify status of container
287         requirements with respect to allocators.
288         (status.iso.200x): Add anchor for old ID to preserve existing links.
289
290 2011-11-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
291
292         * include/bits/shared_ptr_base.h (_Sp_counted_ptr): Make 'final'.
293         (_Sp_counted_deleter): Make 'final'. Use allocator_traits.
294         (_Sp_counted_ptr_inplace): Make 'final'. Use allocator_traits.
295         Derive from _Sp_counted_ptr instead of _Sp_counted_deleter to use EBO
296         for the allocator.
297         (__shared_count, __shared_ptr): Use allocator_traits.
298         * include/std/future (__future_base::_Result_alloc): Make 'final'. Use
299         allocator traits.
300         (__future_base::_Task_state): Make 'final'.
301         (__future_base::_Deferred_state): Likewise.
302         (__future_base::_Async_state): Likewise.
303         * testsuite/20_util/shared_ptr/cons/alloc_min.cc: New.
304         * testsuite/20_util/shared_ptr/creation/alloc_min.cc: New.
305         * testsuite/20_util/shared_ptr/creation/private.cc: New.
306         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
307         * testsuite/30_threads/packaged_task/cons/alloc_min.cc: New.
308         * testsuite/30_threads/promise/cons/alloc_min.cc: New.
309
310 2011-11-08  Paolo Carlini  <paolo.carlini@oracle.com>
311
312         * acinclude.m4 ([GLIBCXX_ENABLE_VISIBILITY]): Rename to
313         [GLIBCXX_ENABLE_LIBSTDCXX_VISIBILITY], likewise for the
314         option itself, to --enable-libstdcxx-visibility.
315         * configure.ac: Adjust call.
316         * doc/xml/manual/configure.xml: Update.
317         * configure: Regenerate.
318
319 2011-11-08  Paolo Carlini  <paolo.carlini@oracle.com>
320
321         * testsuite/29_atomics/headers/atomic/macros.cc: Avoid -Wall
322         warnings.
323         * testsuite/29_atomics/atomic/cons/user_pod.cc: Likewise.
324
325 2011-11-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
326
327         PR libstdc++/51018
328         * testsuite/30_threads/thread/native_handle/typesizes.cc: Do not run
329         on netbsd.
330
331 2011-11-07  Aldy Hernandez  <aldyh@redhat.com>
332             Richard Henderson  <rth@redhat.com>
333
334         Merged from transactional-memory.
335
336         * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_TM_1.
337         * libsupc++/eh_tm.cc: New file.
338         * libsupc++/unwind-cxx.h (__cxa_tm_cleanup): Declare.
339         * config/abi/pre/gnu.ver: Export __cxa_tm_cleanup.
340         * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
341         * libsupc++/Makefile.am (sources): Add eh_tm.cc.
342         * libsupc++/Makefile.in: Rebuild.
343
344 2011-11-07  Paolo Carlini  <paolo.carlini@oracle.com>
345
346         PR libstdc++/51018
347         * include/profile/impl/profiler_node.h (__stack_hash::
348         operator()(__stack_t)): Just use std::size_t everywhere.
349
350 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
351
352         * include/std/future (__future_base::_Ptr): Use alias-declaration.
353         (__is_same_pkgdtask): Rename to __constrain_pkgdtask and use decay
354         instead of remove_reference so that cv-quals are removed.
355
356 2011-11-07  Ed Smith-Rowland  <3dw4rd@verizon.net>
357
358         * include/precompiled/stdc++.h: Add cstdalign.
359
360 2011-11-07  Paolo Carlini  <paolo.carlini@oracle.com>
361
362         * include/std/complex (complex<>::real(), complex<>::imag()):
363         Remove redundant const qualifiers.
364
365 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
366
367         * include/bits/ptr_traits.h (__rebind): Replace with...
368         (rebind): Implement using alias-declaration.
369         * include/ext/pointer.h (__rebind): Replace with...
370         (rebind): Implement using alias-declaration.
371         * include/bits/alloc_traits.h (__rebind_alloc, __rebind_traits):
372         Replace with...
373         (rebind_alloc, rebind_traits): Implement using alias-declaration.
374         * include/ext/alloc_traits.h (rebind): Use rebind_alloc instead of
375         __rebind_alloc.
376         * include/std/scoped_allocator (rebind): Likewise.
377
378 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
379
380         * include/std/mutex (call_once): Store closure in __once_functor
381         as bound function wrapper might not be copyable.
382
383 2011-11-07  Andrew MacLeod  <amacleod@redhat.com>
384
385         * include/bits/atomic_base.h (atomic_thread_fence): Revert.
386         (atomic_signal_fence): Revert.
387
388 2011-11-07  Andrew MacLeod  <amacleod@redhat.com>
389
390         * include/bits/atomic_base.h (atomic_thread_fence): Call builtin.
391         (atomic_signal_fence): Call builtin.
392         (atomic_flag::test_and_set): Call __atomic_exchange when it is lockfree,
393         otherwise fall back to call __sync_lock_test_and_set.
394         (atomic_flag::clear): Call __atomic_store when it is lockfree,
395         otherwise fall back to call __sync_lock_release.
396
397 2011-11-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
398
399         PR bootstrap/50982
400         * include/Makefile.am (${host_builddir}/gthr-posix.h): Reflect
401         gthr-posix.h move.
402         * include/Makefile.in: Regenerate.
403
404 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
405
406         * acinclude.m4 (GLIBCXX_CHECK_SC_NPROC_ONLN): Define.
407         (GLIBCXX_CHECK_PTHREADS_NUM_PROCESSORS_NP): Define.
408         (GLIBCXX_CHECK_SYSCTL_HW_NCPU): Define.
409         * configure.ac: Use new checks.
410         * configure: Regenerate.
411         * config.h.in: Regenerate.
412         * src/thread.cc: Check new config macros.
413         * testsuite/lib/libstdc++.exp: Likewise.
414
415 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
416
417         * config/abi/pre/gnu.ver: Fix exports for string::pop_back.
418
419 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
420
421         * acinclude.m4: Check for <stdalign.h>
422         * configure: Regenerate.
423         * config.h.in: Likewise.
424         * include/Makefile.am: Add <cstdalign>.
425         * include/Makefile.in: Regenerate.
426         * include/c_global/cstdalign: New.
427         * testsuite/18_support/headers/cstdalign/std_c++0x_neg.cc: New.
428         * doc/xml/manual/backwards_compatibility.xml: Update.
429         * doc/xml/manual/status_cxx2011.xml: Update.
430
431 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
432
433         PR libstdc++/50982
434         * include/std/mutex (__once_proxy): Use void parameter list to
435         work on implicit extern "C" systems.
436
437 2011-11-07  Xinliang David Li  <davidxl@google.com>
438
439         * include/backward/hashtable.h: Make __stl_prime_list
440         in comdat section.
441
442 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
443
444         * include/bits/basic_string.h (basic_string::at): Move adjacent to other
445         overload.
446         (basic_string::pop_back): Define.
447         * include/debug/string (__gnu_debug::basic_string::pop_back): Likewise.
448         * include/ext/vstring.h (__versa_string::pop_back): Likewise.
449         * config/abi/pre/gnu.ver: Add new symbols.
450         * testsuite/21_strings/basic_string/modifiers/char/pop_back.cc: New.
451         * testsuite/21_strings/basic_string/modifiers/wchar_t/pop_back.cc: New.
452         * testsuite/21_strings/basic_string/range_access.cc: Split to ...
453         * testsuite/21_strings/basic_string/range_access/char/1.cc: Here and ...
454         * testsuite/21_strings/basic_string/range_access/wchar_t/1.cc: Here.
455         * testsuite/ext/vstring/modifiers/char/pop_back.cc: New.
456         * testsuite/ext/vstring/modifiers/wchar_t/pop_back.cc: New.
457
458 2011-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
459
460         * doc/xml/manual/backwards_compatibility.xml: Fix autoconf tests for
461         C++11 compiler features and library headers. Add stable id
462         attributes. Use <filename> element for headers and surround in angle
463         brackets. Use <classname> for classes.
464         * doc/html/*: Regenerate.
465
466 2011-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
467
468         * doc/xml/manual/status_cxx2011.xml: Document <cuchar> and
469         <cstdalign> as missing.
470
471 2011-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
472
473         * doc/xml/faq.xml: Replace references to C++0x with C++11.
474         * doc/xml/manual/intro.xml: Likewise.
475         * doc/xml/manual/backwards_compatibility.xml: Likewise.
476         * doc/xml/manual/shared_ptr.xml: Likewise.
477         * doc/xml/manual/configure.xml: Likewise.
478         * doc/xml/manual/evolution.xml: Likewise.
479         * doc/xml/manual/using.xml: Likewise.
480         * doc/xml/manual/strings.xml: Likewise.
481         * doc/xml/manual/debug_mode.xml: Likewise.
482         * doc/xml/manual/policy_data_structures.xml: Likewise.
483         * doc/xml/manual/extensions.xml: Likewise.
484         * doc/xml/manual/diagnostics.xml: Likewise.
485         * doc/xml/manual/test.xml: Likewise.
486         * doc/xml/manual/status_cxx200x.xml: Likewise, and rename to...
487         * doc/xml/manual/status_cxx2011.xml: Here.
488         * doc/Makefile.am: Rename status_cxx200x.xml.
489         * doc/Makefile.in: Regenerate.
490         * doc/html/*: Regenerate.
491
492 2011-11-06  François Dumont <fdumont@gcc.gnu.org>
493
494         * testsuite/performance/23_containers/insert_erase/41975.cc: Add
495         tests to check performance with or without cache of hash code and with
496         string type that has a costlier hash functor than int type.
497
498 2011-11-06  Benjamin Kosnik  <bkoz@redhat.com>
499             Andrew MacLeod  <amacleod@redhat.com>
500
501         Merged from cxx-mem-model.
502
503         * include/Makefile.am (bits_headers): Remove atomic_0.h, atomic_2.h.
504         * include/Makefile.in: Regenerate.
505         * src/Makefile.am (sources): Rename atomic.cc to
506         compatibility-atomic-c++0x.cc.
507         * src/Makefile.in: Regenerate.
508         * include/bits/atomic_0.h: Remove.
509         * include/bits/atomic_2.h: Incorporate into...
510         * include/bits/atomic_base.h: ...this.  Use new __atomic routines.
511         * include/std/atomic: Add generic atomic calls to basic atomic class.
512         * src/atomic.cc: Move...
513         * src/compatibility-atomic-c++0x.cc: ...here.
514         * src/compatibility-c++0x.cc: Tweak.
515         * testsuite/29_atomics/atomic/cons/user_pod.cc: Fix.
516         * testsuite/29_atomics/atomic/requirements/explicit_instantiation/1.cc:
517           Same.
518         * testsuite/29_atomics/headers/atomic/macros.cc: Same.
519
520 2011-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
521
522         * doc/xml/manual/test.xml: Fix dg-warning examples.
523
524 2011-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
525
526         PR libstdc++/44436
527         * doc/xml/manual/status_cxx200x.xml: Document emplace members are
528         missing.
529
530 2011-11-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
531
532         PR libstdc++/49894
533         PR bootstrap/50982
534         * include/std/mutex (once_flag): Use NSDMI.
535
536 2011-11-04  Benjamin Kosnik  <bkoz@redhat.com>
537
538         * scripts/run_doxygen: Fix sed quoting.
539
540 2011-11-03  Benjamin Kosnik  <bkoz@redhat.com>
541
542         * doc/doxygen/doxygroups.cc: Add markup for namespace tr2.
543         * include/tr2/bool_set: Adjust doxygen markup.
544         * include/tr2/dynamic_bitset: Same.
545         * include/tr2/type_traits: Same.
546
547 2011-11-03  Benjamin Kosnik  <bkoz@redhat.com>
548
549         * doc/html/*: Regenerate.
550
551 2011-11-02  Richard B. Kreckel  <kreckel@ginac.de>
552             Paolo Carlini  <paolo.carlini@oracle.com>
553
554         PR libstdc++/50880
555         * include/std/complex (__complex_acosh): Fix in a better way,
556         use Kahan's formula.
557         * include/tr1/complex (__complex_acosh): Likewise.
558
559 2011-11-02  Paolo Carlini  <paolo.carlini@oracle.com>
560
561         PR libstdc++/50951
562         * include/bits/random.tcc (operator<<(basic_ostream<>&,
563         const mersenne_twister_engine<>&): Output _M_p too.
564         (operator<<(basic_ostream<>&, const
565         subtract_with_carry_engine<>&): Likewise.
566         (operator>>(basic_istream<>&, mersenne_twister_engine<>&):
567         Reload it.
568         (operator>>(basic_istream<>&, subtract_with_carry_engine<>&):
569         Likewise.
570         * include/bits/random.h (mersenne_twister_engine<>::operator==):
571         Compare _M_p too.
572         (subtract_with_carry_engine<>::operator==): Compare _M_carry
573         and _M_p too.
574         (shuffle_order_engine<>::operator==): Compare _M_v(s) and _M_y too.
575         * testsuite/26_numerics/random/independent_bits_engine/
576         operators/serialize.cc: Extend.
577         * testsuite/26_numerics/random/subtract_with_carry_engine/
578         operators/serialize.cc: Likewise.
579         * testsuite/26_numerics/random/discard_block_engine/
580         operators/serialize.cc: Likewise.
581         * testsuite/26_numerics/random/mersenne_twister_engine/
582         operators/serialize.cc: Likewise.
583         * testsuite/26_numerics/random/linear_congruential_engine/
584         operators/serialize.cc: Likewise.
585         * testsuite/26_numerics/random/shuffle_order_engine/
586         operators/serialize.cc: Likewise.
587
588 2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
589
590         * acinclude.m4 (GLIBCXX_CONFIGURE): Determine and substitute
591         toplevel_builddir.
592         (GLIBCXX_ENABLE_THREADS): Remove glibcxx_thread_h,
593         HAVE_GTHR_DEFAULT, enable_thread.
594         (GLIBCXX_CHECK_GTHREADS): Reflect gthr move to libgcc.
595         * include/Makefile.am (thread_host_headers): Remove
596         ${host_builddir}/gthr-tpf.h.
597         (${host_builddir}/gthr.h): Reflect gthr move to libgcc.
598         Use $<.
599         (${host_builddir}/gthr-single.h): Likewise.
600         (${host_builddir}/gthr-posix.h): Likewise.
601         (${host_builddir}/gthr-tpf.h): Remove.
602         (${host_builddir}/gthr-default.h): Likewise.
603         * configure, config.h.in: Regenerate.
604         * Makefile.in, doc/Makefile.in, include/Makefile.in,
605         libsupc++/Makefile.in, po/Makefile.in, python/Makefile.in,
606         src/Makefile.intestsuite/Makefile.in: Regenerate.
607
608 2011-11-02  Benjamin Kosnik  <bkoz@redhat.com>
609
610         * include/bits/c++config: Add tr2 to versioned namespaces.
611         * scripts/run_doxygen: Adjust generated man files as well.
612         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
613
614 2011-11-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
615
616         * include/std/future (promise): Add constructors for uses-allocator
617         construction from rvalue promise.
618         (packaged_task): Implement LWG 2067. Add additional constructors for
619         uses-allocator construction.
620         * testsuite/30_threads/packaged_task/cons/3.cc: New.
621         * testsuite/30_threads/packaged_task/cons/alloc2.cc: New.
622         * testsuite/30_threads/promise/cons/alloc2.cc: New.
623
624 2011-10-31  Jason Merrill  <jason@redhat.com>
625
626         * include/Makefile.am (install-freestanding-headers): Install
627         c++0x_warning.h.
628         * libsupc++/initializer_list: Include it.
629
630 2011-10-31  Gerald Pfeifer  <gerald@pfeifer.com>
631
632         * acinclude.m4 (GLIBCXX_CONFIGURE): Refer to GNU/Linux.
633         * configure: Regenerate.
634
635 2011-10-31  Jason Merrill  <jason@redhat.com>
636
637         PR c++/50920
638         * include/bits/c++0x_warning.h: Change -std=c++0x to -std=c++11.
639
640 2011-10-30  Gerald Pfeifer  <gerald@pfeifer.com>
641
642         * prerequisites.xml: Refer to GCC (instead of gcc) and GNU/Linux.
643         Remove an obsolete reference to a Red Hat release we do not
644         support any longer.
645         Refer to Debian GNU/Linux.
646
647 2011-10-30  Gerald Pfeifer  <gerald@pfeifer.com>
648
649         * faq.xml (Who's in charge of it?): Refer to the Linux kernel
650         instead of just Linux.
651         (How do I install libstdc++?): Refer to GNU/Linux instead of
652         just Linux.
653
654 2011-10-28  Paolo Carlini  <paolo.carlini@oracle.com>
655
656         * testsuite/30_threads/condition_variable_any/50862.cc: Trivial
657         formatting fixes.
658
659 2011-10-28  Paolo Carlini  <paolo.carlini@oracle.com>
660
661         * testsuite/23_containers/unordered_map/operations/count.cc: New.
662         * testsuite/23_containers/multimap/operations/count.cc: Likewise.
663         * testsuite/23_containers/set/operations/count.cc: Likewise.
664         * testsuite/23_containers/unordered_multimap/operations/count.cc:
665         Likewise.
666         * testsuite/23_containers/unordered_set/operations/count.cc: Likewise.
667         * testsuite/23_containers/multiset/operations/count.cc: Likewise.
668         * testsuite/23_containers/unordered_multiset/operations/count.cc:
669         Likewise.
670         * testsuite/23_containers/map/operations/count.cc: Likewise.
671
672 2011-10-28  Richard B. Kreckel  <kreckel@ginac.de>
673
674         * include/std/complex (__complex_acosh): Just use '< _Tp()'.
675         * include/tr1/complex (__complex_acosh): Likewise.
676
677 2011-10-27  Richard B. Kreckel  <kreckel@ginac.de>
678             Paolo Carlini  <paolo.carlini@oracle.com>
679
680         PR libstdc++/50880
681         * include/std/complex (__complex_acosh): Fix for __z.real() < 0.
682         * include/tr1/complex (__complex_acosh): Likewise.
683         * testsuite/26_numerics/complex/50880.cc: New.
684         * testsuite/tr1/8_c_compatibility/complex/50880.cc: Likewise.
685
686 2011-10-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
687
688         PR libstdc++/50862
689         * include/std/condition_variable (condition_variable_any::wait): Avoid
690         terminating if relocking user mutex throws during stack-unwinding.
691         * testsuite/30_threads/condition_variable_any/50862.cc: Add dg-require.
692
693 2011-10-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
694
695         * include/std/condition_variable (condition_variable_any): Remove
696         unused native_handle_type typedef.
697         * src/condition_variable.cc (condition_variable): Add missing noexcept
698         specifications.
699         * testsuite/30_threads/condition_variable_any/requirements/
700         typedefs.cc: Remove.
701
702 2011-10-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
703
704         PR libstdc++/50862
705         * include/std/condition_variable (condition_variable_any::wait): Fix
706         deadlock and ensure _Lock::lock() is called on exit.
707         (condition_variable_any::native_handle): Remove, as per LWG 1500.
708         * testsuite/30_threads/condition_variable_any/50862.cc: New.
709
710 2011-10-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
711
712         PR libstdc++/49894
713         * include/std/mutex (__mutex_base,__recursive_mutex_base): Define new
714         base classes to manage construction/destruction of native mutexes,
715         using NSDMI when INIT macros are defined.
716         (mutex,recursive_mutex,timed_mutex,recursive_timed_mutex): Derive from
717         new base classes.
718         * include/std/condition_variable (condition_variable): Use NSDMI when
719         INIT macro is defined. Use noexcept.
720         * src/condition_variable.cc (condition_variable): Explicitly-default
721         constructor/destructor when using NSDMI. Use noexcept.
722         (condition_variable_any): Likewise.
723
724 2011-10-24  Jonathan Wakely  <jwakely.gcc@gmail.com>
725
726         * testsuite/30_threads/async/49668.cc: Add missing dg-require.
727         * testsuite/30_threads/packaged_task/49668.cc: Likewise.
728
729 2011-10-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
730
731         PR libstdc++/50834
732         * doc/xml/manual/using.xml: Update thread safety docs w.r.t. C++11.
733
734 2011-10-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
735
736         PR libstdc++/50196
737         * acinclude.m4 (GLIBCXX_HAS_GTHREADS): Don't depend on _POSIX_TIMEOUTS.
738         * configure: Regenerate.
739         * include/std/mutex (timed_mutex, recursive_timed_mutex): Define
740         conditionally on GTHREADS_HAS_MUTEX_TIMEDLOCK.
741         * testsuite/lib/libstdc++.exp (check_v3_target_gthreads_timed): Define.
742         * testsuite/lib/dg-options.exp (dg-require-gthreads-timed): Define.
743         * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
744         Use dg-require-gthreads-timed instead of dg-require-gthreads.
745         * testsuite/30_threads/recursive_timed_mutex/native_handle/
746         typesizes.cc: Likewise.
747         * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
748         Likewise.
749         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
750         Likewise.
751         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
752         Likewise.
753         * testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc:
754         Likewise.
755         * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
756         * testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc:
757         Likewise.
758         * testsuite/30_threads/recursive_timed_mutex/requirements/typedefs.cc:
759         Likewise.
760         * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
761         * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
762         * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
763         * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
764         * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
765         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
766         Likewise.
767         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
768         Likewise.
769         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
770         Likewise.
771         * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
772         * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc:
773         Likewise.
774         * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
775         * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
776         * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
777         * testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
778         * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
779         * testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Likewise.
780         * testsuite/30_threads/timed_mutex/requirements/standard_layout.cc:
781         Likewise.
782         * testsuite/30_threads/timed_mutex/requirements/typedefs.cc: Likewise.
783         * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
784         * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
785         * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
786         * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
787         * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
788         * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
789         * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
790         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
791         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
792         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
793         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
794
795 2011-10-19  Ed Smith-Rowland  <3dw4rd@verizon.net>
796
797         * include/tr2/bool_set (bool_set): New.
798         * include/tr2/bool_set.tcc: New.
799         * include/tr2/dynamic_bitset (dynamic_bitset): New.
800         * include/tr2/ratio (kibi, mebi, gibi, tebi, pebi, exbi): New.
801         * include/Makefile.am: Add files.
802         * include/Makefile.in: Regenerate.
803
804 2011-10-19  Benjamin Kosnik  <bkoz@redhat.com>
805
806         * doc/doxygen/user.cfg.in: Add tr2 files.
807         * testsuite/tr2/headers/all.cc: New.
808         * testsuite/tr2/headers/using_namespace_std_tr2.cc: New.
809
810         * include/tr2/type_traits: Tweak.
811
812 2011-10-18  Jason Merrill  <jason@redhat.com>
813
814         PR c++/50500
815         * include/bits/shared_ptr.h: Default copy ctor and assignment.
816         * testsuite/util/testsuite_allocator.h: Define copy assignment.
817         * testsuite/util/testsuite_rvalref.h: Default copy assignment.
818         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Remove note tags.
819
820 2011-10-17  Michael Spertus  <mike_spertus@symantec.com>
821
822         * include/tr2/type_traits (bases, direct_bases, typelist): New.
823
824 2011-10-17  Benjamin Kosnik  <bkoz@redhat.com>
825
826         * libstdc++-v3/include/Makefile.am: Add tr2 directory and includes.
827         * libstdc++-v3/include/Makefile.in: Regenerate.
828
829         * scripts/create_testsuite_files: Search tr2 directory.
830         * testsuite/libstdc++-dg/conformance.exp: Same.
831
832         * testsuite/tr2/bases/requirements/explicit_instantiation.cc: New.
833         * testsuite/tr2/bases/requirements/typedefs.cc: New.
834         * testsuite/tr2/bases/value.cc: New.
835         * testsuite/tr2/direct_bases/requirements/
836         explicit_instantiation.cc: New.
837         * testsuite/tr2/direct_bases/requirements/typedefs.cc: New.
838         * testsuite/tr2/direct_bases/value.cc: New.
839
840 2011-10-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
841
842         PR bootstrap/50715
843         * config/abi/pre/gnu.ver (CXXABI_1.3.6): Remove duplicate
844         __cxa_get_exception_ptr.
845
846 2011-10-14  François Dumont  <francois.cppdevs@free.fr>
847
848         * testsuite/performance/23_containers/insert_erase/41975.cc: New.
849
850 2011-10-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
851
852         * testsuite/22_locale/codecvt_byname/50714.cc: Fix mychar.
853
854 2011-10-14  Jonathan Yong  <jon_y@users.sourceforge.net>
855
856         * configure.host: Use config/os/mingw32-w64 instead of
857         config/os/mingw32 if vendor key is "w64".
858         * config/os/mingw32-w64: Duplicate from config/os/mingw32.
859         * config/os/mingw32-w64/os_defines.h: Enable
860         _GLIBCXX_FULLY_DYNAMIC_STRING if undefined.
861         * acinclude.m4: Set fully-dynamic-string to 1 when enabled,
862         0 when disabled or undefined if unset by user.
863         * include/bits/basic_string.h: Check if
864         _GLIBCXX_FULLY_DYNAMIC_STRING is set to 0 instead of undefined.
865         include/bits/basic_string.tcc: Likewise.
866         * configure: Regenerated.
867         * config.h.in: Likewise.
868
869 2011-10-13  Paolo Carlini  <paolo.carlini@oracle.com>
870
871         PR libstdc++/50714
872         * include/bits/codecvt.h (codecvt<>::codecvt(size_t)): Initialize
873         _M_c_locale_codecvt member.
874         * testsuite/22_locale/codecvt_byname/50714.cc: New.
875
876 2011-10-12  Paolo Carlini  <paolo.carlini@oracle.com>
877
878         PR c++/50594
879         * libsupc++/new (operator new, operator delete): Decorate with
880         __attribute__((__externally_visible__)).
881         * include/bits/c++config: Add _GLIBCXX_THROW.
882         * libsupc++/del_op.cc: Adjust.
883         * libsupc++/del_opv.cc: Likewise.
884         * libsupc++/del_opnt.cc: Likewise.
885         * libsupc++/del_opvnt.cc: Likewise.
886         * libsupc++/new_op.cc: Likewise.
887         * libsupc++/new_opv.cc: Likewise.
888         * libsupc++/new_opnt.cc: Likewise.
889         * libsupc++/new_opvnt.cc: Likewise.
890         * testsuite/18_support/50594.cc: New.
891         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
892         line number.
893
894 2011-10-11  Emil Wojak  <emil@wojak.eu>
895
896         PR c++/50661
897         * include/bits/stl_algobase.h (equal): Compare arrays of pointers
898         too with memcmp.
899
900 2011-10-10  Benjamin Kosnik  <bkoz@redhat.com>
901
902         PR libstdc++/49818
903         * config/abi/pre/gnu.ver (CXXABI_1.3.6): Add symbols.
904         * testsuite/util/testsuite_abi.cc: Same.
905         * libsupc++/unwind-cxx.h: Move required eh API...
906         * libsupc++/cxxabi.h: ... to here. Add required forward declarations.
907         Use _GLIBCXX_NOTHROW.
908         * libsupc++/pure.cc (__cxa_deleted_virtual): Add.
909         * libsupc++/eh_alloc.cc: Use _GLIBCXX_NOTHROW.
910         * libsupc++/eh_catch.cc: Same.
911         * libsupc++/eh_globals.cc: Same.
912         * libsupc++/eh_type.cc: Same.
913
914 2011-10-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
915
916         * testsuite/util/testsuite_allocator.h (uneq_allocator): Add
917         propagate_on_container_swap typedef for C++0x testing.
918
919 2011-10-06  Paolo Carlini  <paolo.carlini@oracle.com>
920
921         * testsuite/27_io/ios_base/cons/assign_neg.cc: Tidy dg- directives,
922         for C++0x testing too.
923         * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
924         * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Likewise.
925         * testsuite/24_iterators/istreambuf_iterator/requirements/
926         base_classes.cc: Adjust for C++0x testing.
927         * testsuite/ext/codecvt/char-1.cc: Avoid warnings in C++0x mode.
928         * testsuite/ext/codecvt/char-2.cc: Likewise.
929         * testsuite/ext/codecvt/wchar_t.cc: Likewise.
930
931 2011-10-05  Paolo Carlini  <paolo.carlini@oracle.com>
932
933         * include/ext/pod_char_traits.h: Avoid warnings in C++0x mode
934         when int_type is unsigned.
935
936 2011-10-04  Paolo Carlini  <paolo.carlini@oracle.com>
937
938         PR libstdc++/49561
939         * include/bits/stl_list.h (_List_base<>::_List_impl::_M_size):
940         Add in C++0x mode.
941         (_List_base<>::_List_impl, _List_base<>::_M_get_node,
942         _List_base<>::_M_put_node, _List_base<>::_List_base(_List_base&&),
943         list<>::size, list<>::swap, list<>::splice): Use it.
944         (operator==(const list<>&, const list<>&)): Rewrite in C++0x mode.
945         * include/bits/list.tcc (list<>::erase): Likewise.
946         (list<>::merge): Adjust in C++0x mode.
947         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
948         Adjust dg-error line number.
949         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
950         Likewise.
951         * testsuite/23_containers/list/requirements/dr438/
952         constructor_1_neg.cc: Likewise.
953         * testsuite/23_containers/list/requirements/dr438/
954         constructor_2_neg.cc: Likewise.
955
956 2011-10-04  Paolo Carlini  <paolo.carlini@oracle.com>
957
958         * testsuite/20_util/bind/48698.cc (g): Fix return type, avoid -Wall
959         warning.
960
961 2011-10-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
962
963         * include/ext/alloc_traits.h (__alloc_traits::max_size): Define.
964         (__alloc_traits::rebind): Define.
965         * include/bits/stl_vector.h: Use them.
966         * testsuite/util/testsuite_allocator.h (SimpleAllocator): Define.
967         * testsuite/23_containers/vector/allocator/minimal.cc: New.
968         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
969         Adjust dg-error line numbers.
970         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
971         Likewise.
972         * testsuite/23_containers/vector/requirements/dr438/
973         constructor_1_neg.cc: Likewise.
974         * testsuite/23_containers/vector/requirements/dr438/
975         constructor_2_neg.cc: Likewise.
976
977 2011-10-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
978
979         * testsuite/20_util/pointer_traits/pointer_to.cc: Define equality
980         operator and use.
981
982 2011-10-03  Paolo Carlini  <paolo.carlini@oracle.com>
983
984         * include/bits/hashtable.h (_Hashtable<>::insert(value_type&&),
985         insert(const_iterator, value_type&&)): Don't define here...
986         * include/bits/unordered_set.h (__unordered_set<>,
987         __unordered_multiset<>): ... define here instead.
988
989 2011-09-29  Jason Merrill  <jason@redhat.com>
990
991         * testsuite/util/testsuite_tr1.h (test_property): Avoid
992         ambiguity.
993
994 2011-10-01  François Dumont  <fdumont@gcc.gnu.org>
995
996         * include/debug/vector (vector<>::erase(iterator, iterator): Check
997         iterators equality using normal iterators.
998         * include/debug/deque (deque<>::erase(iterator, iterator): Likewise.
999
1000 2011-09-29  Paolo Carlini  <paolo.carlini@oracle.com>
1001
1002         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
1003         Remove noexcept from declaration too.
1004
1005 2011-09-27  Benjamin Kosnik  <bkoz@redhat.com>
1006
1007         * doc/html/*: Regenerate.
1008
1009         * doc/Makefile.am: Un-nest the ext output directory.
1010         * doc/Makefile.in: Regenerate.
1011         * spine.xml: Remove authors, add abstract for short
1012         contents. Rename to index.html for html output.
1013         * manual/spine.xml: Authors here, manual starts with index.html.
1014         * api.xml: Update.
1015         * faq.xml: Same.
1016
1017 2011-09-27  Marcus Shawcroft  <marcus.shawcroft@arm.com>
1018
1019         * libsupc++/tinfo.cc (type_info::operator==): Test __name instead
1020         of name().
1021
1022 2011-09-26  Paolo Carlini  <paolo.carlini@oracle.com>
1023
1024         PR libstdc++/50529
1025         * include/bits/vector.tcc (vector<>::erase(iterator, iterator)):
1026         Fix to do nothing if the range is empty.
1027         * include/bits/stl_bvector.h: Likewise.
1028         * include/bits/deque.tcc: Likewise.
1029         * include/debug/vector: Adjust.
1030         * include/debug/deque: Likewise.
1031         * testsuite/23_containers/vector/modifiers/erase/50529.cc: New.
1032         * testsuite/23_containers/deque/modifiers/erase/50529.cc: Likewise.
1033         * testsuite/23_containers/deque/modifiers/erase/3.cc: Adjust.
1034
1035 2011-09-25  Benjamin Kosnik  <bkoz@redhat.com>
1036             Jonathan Wakely  <jwakely.gcc@gmail.com>
1037
1038         PR libstdc++/48698
1039         * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Set libtool_VERSION here.
1040         * configure.ac: Move AC_SUBST of libtool_VERSION past call to
1041         GLIBCXX_ENABLE_SYMVERS.
1042         * configure: Regenerate.
1043         * include/bits/c++config: Use __7 as versioned namespace name.
1044         * config/abi/pre/gnu-versioned-namespace.ver: Change mangling as
1045         per above.
1046         * include/c_global/cwchar: Adjust nested namespaces.
1047         * testsuite/20_util/bind/48698.cc: Add test case.
1048         * testsuite/ext/profile/mutex_extensions_neg.cc: Change line number.
1049
1050 2011-09-25  Paolo Carlini  <paolo.carlini@oracle.com>
1051
1052         Revert (no longer necessary post r179130):
1053
1054         2010-04-27  Fabien Chêne  <fabien.chene@gmail.com>
1055
1056         * testsuite/util/testsuite_error.h: Add empty default constructor
1057         to __gnu_test::test_category and
1058         __gnu_test::test_derived_category.
1059         * src/future.cc: Add empty default constructor to
1060         future_error_category.
1061         * src/system_error.cc: Add default ctor to generic_error_category
1062         and system_error_category.
1063
1064 2011-09-24  John Salmon  <john.salmon@deshaw.com>
1065
1066         PR libstdc++/50510
1067         * include/bits/random.tcc (seed_seq::generate): Fix computation.
1068
1069 2011-09-24  John Salmon  <john.salmon@deshaw.com>
1070
1071         PR libstdc++/50509
1072         * include/bits/random.tcc (seed_seq::generate): Fix computation.
1073
1074 2011-09-21  Benjamin Kosnik  <bkoz@redhat.com
1075
1076         * doc/Makefile.am (stamp-epub-docbook): Fix image directory location.
1077         * doc/Makefile.in: Regenerate.
1078
1079 2011-09-21  Paolo Carlini  <paolo.carlini@oracle.com>
1080
1081         * src/limits.cc: Replace everywhere __int128_t -> __int128, and
1082         __uint128_t -> unsigned __int128.
1083         * include/std/type_traits: Likewise.
1084         * include/std/limits: Likewise.
1085         * testsuite/18_support/numeric_limits/dr559.cc: Likewise.
1086         * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
1087         * testsuite/18_support/numeric_limits/40856.cc: Likewise.
1088         * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
1089         * testsuite/util/testsuite_common_types.h: Likewise.
1090         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Likewise.
1091         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
1092         * testsuite/20_util/is_floating_point/value.cc: Likewise.
1093         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise.
1094         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
1095         * testsuite/20_util/is_signed/value.cc: Likewise.
1096         * testsuite/20_util/is_unsigned/value.cc: Likewise.
1097         * testsuite/20_util/is_integral/value.cc: Likewise.
1098         * config/abi/pre/gnu.ver: Likewise.
1099         * acinclude.m4: Likewise.
1100         * configure: Regenerate.
1101         * config.h.in: Likewise.
1102
1103 2011-09-19  Paolo Carlini  <paolo.carlini@oracle.com>
1104
1105         PR libstdc++/40856
1106         * include/std/limits (numeric_limits<__int128_t>,
1107         numeric_limits<__uint128_t>): Add.
1108         * src/limits.cc:Define.
1109         * config/abi/pre/gnu.ver: Export.
1110         * include/ext/typelist.h (_GLIBCXX_TYPELIST_CHAIN16, 20): Add.
1111         * testsuite/util/testsuite_common_types.h (integral_types_gnu): Add
1112         (limits_tl): Use it.
1113         * testsuite/18_support/numeric_limits/requirements/
1114         constexpr_functions.cc: Likewise.
1115         * testsuite/18_support/numeric_limits/40856.cc: New.
1116         * testsuite/18_support/numeric_limits/dr559.cc: Extend.
1117         * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
1118         * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
1119         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-error
1120         line numbers.
1121         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
1122         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Likewise.
1123         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
1124         * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
1125         Likewise.
1126         * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc:
1127         Likewise.
1128         * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
1129         Likewise.
1130
1131 2011-09-17  Paolo Carlini  <paolo.carlini@oracle.com>
1132
1133         PR libstdc++/50441
1134         * acinclude.m4 ([GLIBCXX_ENABLE_INT128_FLOAT128]): Add.
1135         * configure.ac: Call it.
1136         * include/std/type_traits (__is_integral_helper<__int128_t>,
1137         __is_integral_helper<__uint128_t>,
1138         __is_floating_point_helper<__float128>,
1139         __make_unsigned<__int128_t>, __make_signed<__uint128_t>): Add.
1140         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Extend.
1141         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
1142         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise.
1143         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
1144         * testsuite/20_util/is_signed/value.cc: Likewise.
1145         * testsuite/20_util/is_unsigned/value.cc: Likewise.
1146         * testsuite/20_util/is_integral/value.cc: Likewise.
1147         * testsuite/20_util/is_floating_point/value.cc: New.
1148         * testsuite/20_util/is_floating_point/requirements/typedefs.cc:
1149         Likewise.
1150         * testsuite/20_util/is_floating_point/requirements/
1151         explicit_instantiation.cc: Likewise.
1152         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
1153         dg-error line numbers.
1154         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1155         Likewise.
1156         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1157         * configure: Regenerate.
1158         * config.h.in: Likewise.
1159
1160 2011-09-17  François Dumont  <fdumont@gcc.gnu.org>
1161
1162         * include/bits/hashtable.h (_Hashtable<>::__rehash_policy(const
1163         _RehashPolicy&)): Commit the modification of the policy only if no
1164         exception occured.
1165         * testsuite/23_containers/unordered_set/max_load_factor/robustness.cc:
1166         New.
1167
1168 2011-09-16  Paolo Carlini  <paolo.carlini@oracle.com>
1169
1170         * testsuite/23_containers/array/comparison_operators/
1171         less_or_equal.cc: New.
1172         * testsuite/23_containers/array/comparison_operators/
1173         greater_or_equal.cc: Likewise.
1174         * testsuite/23_containers/array/comparison_operators/less.cc: Likewise.
1175         * testsuite/23_containers/array/comparison_operators/equal.cc: Likewise.
1176         * testsuite/23_containers/array/comparison_operators/not_equal.cc:
1177         Likewise.
1178         * testsuite/23_containers/array/comparison_operators/greater.cc:
1179         Likewise.
1180         * testsuite/23_containers/array/iterators/end_is_one_past.cc: Likewise.
1181         * testsuite/23_containers/array/capacity/empty.cc: Likewise.
1182         * testsuite/23_containers/array/capacity/max_size.cc: Likewise.
1183         * testsuite/23_containers/array/capacity/size.cc: Likewise.
1184         * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
1185         Likewise.
1186         * testsuite/23_containers/array/tuple_interface/tuple_size.cc:
1187         Likewise.
1188         * testsuite/23_containers/array/element_access/at_out_of_range.cc:
1189         Likewise.
1190         * testsuite/23_containers/array/element_access/back.cc: Likewise.
1191         * testsuite/23_containers/array/element_access/front.cc: Likewise.
1192         * testsuite/23_containers/array/element_access/data.cc: Likewise.
1193         * testsuite/23_containers/array/cons/aggregate_initialization.cc:
1194         Likewise.
1195         * testsuite/23_containers/array/requirements/zero_sized_arrays.cc:
1196         Likewise.
1197         * testsuite/23_containers/array/requirements/contiguous.cc: Likewise.
1198         * testsuite/23_containers/array/requirements/member_swap.cc: Likewise.
1199         * testsuite/23_containers/array/specialized_algorithms/swap.cc:
1200         Likewise.
1201         * testsuite/23_containers/array/constexpr_get.cc: Move...
1202         * testsuite/23_containers/array/tuple_interface/constexpr_get.cc:
1203         ... here.
1204         * testsuite/23_containers/array/requirements/get.cc: Move...
1205         * testsuite/23_containers/array/tuple_interface/get: ... here.
1206         * testsuite/23_containers/array/at_neg.cc: Move...
1207         * testsuite/23_containers/array/element_access: ... here.
1208         * testsuite/23_containers/array/requirements/constexpr_functions.cc:
1209         Move...
1210         * testsuite/23_containers/array/capacity: ... here.
1211         * testsuite/23_containers/array/requirements/
1212         constexpr_element_access.cc: Move...
1213         * testsuite/23_containers/array/element_access: ... here.
1214
1215         * testsuite/20_util/duration/cons/1_neg.cc: Avoid -Wall warnings.
1216         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Likewise.
1217         * testsuite/20_util/pair/make_pair/constexpr.cc: Likewise.
1218         * testsuite/20_util/time_point/nonmember/constexpr.cc: Likewise.
1219         * testsuite/23_containers/bitset/operations/constexpr.cc: Likewise.
1220
1221         * testsuite/20_util/duration/cons/1_neg.cc: Discard bogus warning.
1222         * testsuite/20_util/forward/1_neg.cc: Likewise.
1223
1224 2011-09-15  Paolo Carlini  <paolo.carlini@oracle.com>
1225
1226         * include/std/tuple (make_tuple, forward_as_tuple): Declare constexpr.
1227         (_Tuple_impl<>::_Tuple_impl(_Tuple_impl<>&&)): Likewise.
1228         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Enable
1229         make_tuple test.
1230         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
1231         line number.
1232
1233 2011-09-14  François Dumont  <fdumont@gcc.gnu.org>
1234             Paolo Carlini  <paolo.carlini@oracle.com>
1235
1236         * include/bits/hashtable.h (_Hashtable<>::_M_rehash): Take and restore
1237         hash policy _M_prev_resize on exception.
1238         (_Hashtable<>::_M_insert_bucket): Capture hash policy next resize
1239         before using it and use latter method to have it restored on exception.
1240         (_Hashtable<>::_M_insert(_Arg&& __v, std::false_type): Likewise.
1241         (_Hashtable<>::insert(_InputIterator, _InputIterator): Likewise.
1242         (_Hashtable<>::rehash): Likewise.
1243         * testsuite/23_containers/unordered_set/insert/hash_policy.cc: New.
1244         * testsuite/23_containers/unordered_multiset/insert/hash_policy.cc:
1245         Likewise.
1246
1247 2011-09-13  Paul Brook  <paul@codesourcery.com>
1248
1249         * libsupc++/eh_arm.cc (__cxa_end_cleanup): Add C6X implementation.
1250         * libsupc++/eh_call.cc (__cxa_call_unexpected): Set rtti_base.
1251         * libsupc++/eh_personality.cc (NO_SIZE_OF_ENCODED_VALUE): Remove
1252         __ARM_EABI_UNWINDER__ check.
1253         (parse_lsda_header): Check _GLIBCXX_OVERRIDE_TTYPE_ENCODING.
1254         (get_ttype_entry): Use generic implementation on ARM EABI.
1255         (check_exception_spec): Use _Unwind_decode_typeinfo_ptr and
1256         UNWIND_STACK_REG.
1257         (PERSONALITY_FUNCTION): Set ttype_base.
1258
1259 2011-09-12  Daniel Krugler  <daniel.kruegler@googlemail.com>
1260             Paolo Carlini  <paolo.carlini@oracle.com>
1261
1262         * include/std/tuple (_Head_base<>::_M_head, _Head_base<>::_M_tail,
1263         _Tuple_impl<>::_M_head, _Tuple_impl<>::_M_tail): Change to static
1264         constexpr functions; adjust everywhere.
1265         (__get_helper, get): Declare constexpr all three overloads.
1266         (tuple_cat): Declare constexpr; use late return type to improve
1267         error messages.
1268         * include/std/utility (__pair_get<>::__get, __pair_get<>::__move_get,
1269         __pair_get<>::__const_get, get): Declare all constexpr.
1270         * include/std/array (get): Likewise.
1271         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Re-enable
1272         tuple_cat test.
1273         * testsuite/23_containers/array/constexpr_get.cc: New.
1274         * testsuite/20_util/tuple/element_access/constexpr_get.cc: Likewise.
1275         * testsuite/20_util/pair/constexpr_get.cc: Likewise.
1276         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
1277         line number.
1278
1279 2011-09-12  Jason Merrill  <jason@redhat.com>
1280
1281         * testsuite/20_util/is_constructible/value-2.cc: Adjust
1282         expected values.
1283
1284 2011-09-11  Daniel Krugler  <daniel.kruegler@googlemail.com>
1285
1286         PR libstdc++/50159
1287         * include/std/tuple (tuple_cat): Reimplement according to the
1288         resolution of LWG 1385.
1289         * include/std/type_traits: Define __and_ and __or_ for zero
1290         arguments too; minor tweaks.
1291         * testsuite/20_util/tuple/creation_functions/tuple_cat.cc: New.
1292         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Disable
1293         for now tuple_cat test.
1294         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1295         line numbers.
1296         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
1297         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1298         Likewise.
1299         * doc/xml/manual/status_cxx200x.xml: Update.
1300
1301 2011-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
1302
1303         * include/std/tuple: Use everywhere std::size_t... instead of int...
1304         * include/std/functional: Likewise.
1305         * include/std/scoped_allocator: Likewise.
1306         * include/bits/stl_pair.h: Likewise.
1307
1308 2011-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
1309
1310         PR libstdc++/50336
1311         * include/bits/streambuf_iterator.h (class istreambuf_iterator):
1312         Implement LWG 445 in C++0x mode.
1313         * testsuite/24_iterators/istreambuf_iterator/requirements/dr445.cc:
1314         New.
1315
1316 2011-09-08  Dodji Seketeli  <dodji@redhat.com>
1317
1318         PR c++/33255 - Support -Wunused-local-typedefs warning
1319         * include/ext/bitmap_allocator.h
1320         (__detail::__mini_vector::__lower_bound): Remove unused typedef.
1321         * src/istream.cc (std::operator>>(basic_istream<char>& __in,
1322         basic_string<char>& __str)): Likewise.
1323         (std::getline): Likewise.
1324         * src/valarray.cc (__valarray_product): Likewise.
1325
1326 2011-09-07  François Dumont  <francois.cppdevs@free.fr>
1327
1328         * testsuite/23_containers/array/at.cc: Revert to...
1329         * testsuite/23_containers/array/at_neg.cc: ...this.
1330
1331 2011-09-07  Jason Merrill  <jason@redhat.com>
1332
1333         * testsuite/20_util/bind/ref_neg.cc: Adjust errors.
1334         * testsuite/20_util/duration/cons/1_neg.cc: Adjust errors.
1335
1336 2011-09-06  Benjamin Kosnik  <bkoz@redhat.com>
1337
1338         * include/std/tuple (_Tuple_impl::_M_head, _M_tail): Mark constexpr.
1339         (tuple(tuple&&)): Same.
1340         (tuple(const tuple<_UElements...>& __in)): Same.
1341         (tuple(tuple<_UElements...>&& __in)): Same.
1342         (tuple_cat(const tuple<_TElements...>&, const tuple<_UElements...>&)):
1343         Same.
1344         (get): Same.
1345         * include/std/array: Consolidate array::data usage.
1346         * testsuite/23_containers/array/requirements/constexpr_functions.cc:
1347         Remove extra include.
1348         * testsuite/20_util/tuple/creation_functions/constexpr.cc: New.
1349         * testsuite/20_util/tuple/cons/constexpr-2.cc: Add tests.
1350         * testsuite/20_util/tuple/cons/constexpr-3.cc: Same.
1351         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line numbers.
1352
1353 2011-09-06  François Dumont  <fdumont@gcc.gnu.org>
1354             Paolo Carlini  <paolo.carlini@oracle.com>
1355
1356         * include/bits/hashtable_policy.h (_Prime_rehash_policy::
1357         _M_next_bkt): Cast _M_max_load_factor to long double.
1358         (_Prime_rehash_policy::_M_bkt_for_elements): Use _M_next_bkt.
1359         (_Prime_rehash_policy::_M_need_rehash): Likewise; cast all
1360         float quantities to long double.
1361
1362 2011-09-06  Paolo Carlini  <paolo.carlini@oracle.com>
1363
1364         PR libstdc++/50257
1365         * include/bits/hashtable_policy.h (_Prime_rehash_policy::
1366         _M_next_bkt): Optimize for small argument.
1367
1368 2011-09-02  François Dumont  <fdumont@gcc.gnu.org>
1369
1370         * testsuite/util/testsuite_allocator.h (tracker_allocator_counter::
1371         allocate): Update allocation count only if allocation succeeded.
1372
1373 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
1374
1375         * include/std/bitset: Trivial formatting fixes.
1376
1377 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
1378             Marc Glisse  <marc.glisse@normalesup.org>
1379
1380         * include/std/bitset (_Base_bitset<>::_M_are_all_aux): Remove.
1381         (_Base_bitset<>::_M_are_all): Add.
1382         (bitset<>::all): Use the latter, improve implementation.
1383
1384 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
1385             Marc Glisse  <marc.glisse@normalesup.org>
1386
1387         PR libstdc++/50268
1388         * include/std/bitset (struct _Sanitize_val): Add.
1389         (bitset<>::bitset(unsigned long long)): Fix.
1390         * testsuite/23_containers/bitset/cons/50268.cc: New.
1391
1392 2011-09-01  Paolo Carlini  <paolo.carlini@oracle.com>
1393
1394         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
1395         Remove noexcept, the move constructor allocates memory; rearrange
1396         the code in the body to consistently update __ht._M_rehash_policy
1397         before using _M_next_bkt on it.
1398         * include/debug/unordered_map: Adjust.
1399         * include/debug/unordered_set: Likewise.
1400         * include/profile/unordered_map: Likewise.
1401         * include/profile/unordered_set: Likewise.
1402         * testsuite/23_containers/unordered_map/cons/
1403         noexcept_move_construct.cc: Remove.
1404         * testsuite/23_containers/unordered_set/cons/
1405         noexcept_move_construct.cc: Likewise.
1406         * testsuite/23_containers/unordered_multimap/cons/
1407         noexcept_move_construct.cc: Likewise.
1408         * testsuite/23_containers/unordered_multiset/cons/
1409         noexcept_move_construct.cc: Likewise.
1410
1411 2011-08-31  Paolo Carlini  <paolo.carlini@oracle.com>
1412
1413         * include/std/chrono (operator*(const _Rep1&, const duration<>&)):
1414         Fix order of template parameters per LWG 2004.
1415
1416 2011-08-30  Paolo Carlini  <paolo.carlini@oracle.com>
1417
1418         * include/bits/stl_iterator.h (make_move_iterator): Implement DR2061.
1419         * testsuite/24_iterators/move_iterator/dr2061.cc: New.
1420         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
1421         line numbers.
1422
1423 2011-08-30  Paolo Carlini  <paolo.carlini@oracle.com>
1424
1425         * config/os/mingw32/error_constants.h: Fix commas.
1426
1427 2011-08-29  Benjamin Kosnik  <bkoz@redhat.com>
1428
1429         * testsuite/20_util/duration/arithmetic/constexpr.cc: Add.
1430
1431 2011-08-29  Kai Tietz  <ktietz@redhat.com>
1432
1433         * configure: Regenerated.
1434         * config.h.in: Regenerated.
1435         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR)  Add
1436         checks for ECHILD, ENOSPC, EPERM, ETIMEDOUT, and
1437         EWOULDBLOCK.
1438         * config/os/mingw32/error_constants.h (errc): Add
1439         enumerator values no_child_process, no_space_on_device,
1440         not_supported, operation_not_permitted, operation_would_block,
1441         timed_out, and value_too_large,
1442
1443 2011-08-29  Paolo Carlini  <paolo.carlini@oracle.com>
1444
1445         PR libstdc++/50118
1446         * include/bits/stl_list.h (_List_base<>::
1447         _List_base(const allocator_type&)): Remove.
1448         (_List_base<>::_List_base(const _Node_alloc_type&)): Add.
1449         (list<>:list(const allocator_type&), list(size_type, const
1450         value_type&, const allocator_type&),
1451         list(initializer_list<, const allocator_type&),
1452         list(_InputIterator, _InputIterator, const allocator_type&),
1453         insert(iterator, size_type, const value_type&),
1454         insert(iterator, _InputIterator, _InputIterator)): Adjust.
1455         * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(const _Compare&,
1456         const allocator_type&)): Fix.
1457         * include/bits/stl_map.h (map<>::map(const _Compare&,
1458         const allocator_type&), map(initializer_list<>,
1459         const _Compare&, const allocator_type&), map(_InputIterator,
1460         _InputIterator, const _Compare&, const allocator_type&),
1461         get_allocator): Adjust.
1462         * include/bits/stl_set.h (set<>::set(const _Compare&,
1463         const allocator_type&), set(initializer_list<>,
1464         const _Compare&, const allocator_type&), set(_InputIterator,
1465         _InputIterator, const _Compare&, const allocator_type&),
1466         get_allocator): Likewise.
1467         * include/bits/stl_multimap.h (multimap<>::multimap(const _Compare&,
1468         const allocator_type&), multimap(initializer_list<>,
1469         const _Compare&, const allocator_type&), multimap(_InputIterator,
1470         _InputIterator, const _Compare&, const allocator_type&),
1471         get_allocator): Likewise.
1472         * include/bits/stl_multiset.h (multiset<>::multiset(const _Compare&,
1473         const allocator_type&), multiset(initializer_list<>,
1474         const _Compare&, const allocator_type&), multiset(_InputIterator,
1475         _InputIterator, const _Compare&, const allocator_type&),
1476         get_allocator): Likewise.
1477         * include/bits/forward_list.h (_Fwd_list_base<>::
1478         _Fwd_list_base(const _Alloc&), _Fwd_list_base(const _Fwd_list_base&,
1479         const _Alloc&), _Fwd_list_base(_Fwd_list_base&&, const _Alloc&)):
1480         Remove.
1481         (_Fwd_list_base<>::_Fwd_list_base(const _Node_alloc_type&),
1482         _Fwd_list_base(const _Fwd_list_base&,
1483         const _Node_alloc_type&), _Fwd_list_base(_Fwd_list_base&&,
1484         const _Node_alloc_type&)): Add.
1485         (forward_list<>::forward_list(const _Alloc&),
1486         forward_list(const forward_list&, const _Alloc&),
1487         forward_list(forward_list&&, const _Alloc&),
1488         forward_list(size_type, const _Tp&, const _Alloc&),
1489         forward_list(_InputIterator, _InputIterator, const _Alloc&),
1490         forward_list(std::initializer_list<>, const _Alloc&),
1491         get_allocator): Adjust.
1492         * include/bits/forward_list.tcc: Adjust.
1493         * testsuite/util/testsuite_allocator.h (ExplicitConsAlloc): Add.
1494         * testsuite/23_containers/unordered_map/requirements/
1495         explicit_instantiation/5.cc: New.
1496         * testsuite/23_containers/multimap/requirements/
1497         explicit_instantiation/5.cc: Likewise.
1498         * testsuite/23_containers/multimap/requirements/
1499         explicit_instantiation/5_c++0x.cc: Likewise.
1500         * testsuite/23_containers/set/requirements/explicit_instantiation/
1501         5.cc: Likewise.
1502         * testsuite/23_containers/set/requirements/explicit_instantiation/
1503         5_c++0x.cc: Likewise.
1504         * testsuite/23_containers/unordered_multimap/requirements/
1505         explicit_instantiation/5.cc: Likewise.
1506         * testsuite/23_containers/forward_list/requirements/
1507         explicit_instantiation/5.cc: Likewise.
1508         * testsuite/23_containers/unordered_set/requirements/
1509         explicit_instantiation/5.cc: Likewise.
1510         testsuite/23_containers/multiset/requirements/explicit_instantiation/
1511         5.cc: Likewise.
1512         * testsuite/23_containers/multiset/requirements/
1513         explicit_instantiation/5_c++0x.cc: Likewise.
1514         * testsuite/23_containers/list/requirements/explicit_instantiation/
1515         5_c++0x.cc: Likewise.
1516         * testsuite/23_containers/list/requirements/explicit_instantiation/
1517         5.cc: Likewise.
1518         * testsuite/23_containers/unordered_multiset/requirements/
1519         explicit_instantiation/5.cc: Likewise.
1520         * testsuite/23_containers/map/requirements/explicit_instantiation/
1521         5.cc: Likewise.
1522         * testsuite/23_containers/map/requirements/explicit_instantiation/
1523         5_c++0x.cc: Likewise.
1524         * testsuite/23_containers/forward_list/requirements/dr438/
1525         assign_neg.cc: Adjust dg-error line number.
1526         * testsuite/23_containers/forward_list/requirements/dr438/
1527         insert_neg.cc: Likewise.
1528         * testsuite/23_containers/forward_list/requirements/dr438/
1529         constructor_1_neg.cc: Likewise.
1530         * testsuite/23_containers/forward_list/requirements/dr438/
1531         constructor_2_neg.cc: Likewise.
1532         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1533         Likewise.
1534         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1535         Likewise.
1536         * testsuite/23_containers/list/requirements/dr438/
1537         constructor_1_neg.cc: Likewise.
1538         * testsuite/23_containers/list/requirements/dr438/
1539         constructor_2_neg.cc: Likewise.
1540
1541 2011-08-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1542
1543         * acinclude.m4 (GLIBCXX_CHECK_MATH_PROTO)
1544         (GLIBCXX_CHECK_STDLIB_PROTO): New tests.
1545         * configure.ac (GLIBCXX_CHECK_MATH_PROTO)
1546         (GLIBCXX_CHECK_STDLIB_PROTO): Call them.
1547         * configure: Regenerate.
1548         * config.h.in: Regenerate.
1549         * config/os/solaris/solaris2.8/os_defines.h
1550         (__CORRECT_ISO_CPP_MATH_H_PROTO2): Don't define.
1551         * config/os/solaris/solaris2.9: Remove.
1552         * configure.host (solaris2.8): Merge with ...
1553         (solaris2.9, solaris2.1[0-9]): ... this.
1554         Always use os/solaris/solaris2.8.
1555
1556 2011-08-28  Paolo Carlini  <paolo.carlini@oracle.com>
1557
1558         * include/bits/move.h (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Remove
1559         workaround for c++/49045.
1560         * include/bits/algorithmfwd.h: Likewise.
1561
1562 2011-08-25  Tom Tromey  <tromey@redhat.com>
1563
1564         * testsuite/libstdc++-prettyprinters/simple.cc: New file.
1565         * testsuite/lib/gdb-test.exp: New file.
1566         * testsuite/libstdc++-prettyprinters/prettyprinters.exp: New
1567         file.
1568
1569 2011-08-18  Marc Glisse  <marc.glisse@normalesup.org>
1570
1571         * include/tr1/cmath: Extend/update comment.
1572
1573 2011-08-18  Paolo Carlini  <paolo.carlini@oracle.com>
1574
1575         PR libstdc++/50119
1576         * include/bits/stl_algo.h (__copy_n(_InputIterator, _Size,
1577         _OutputIterator, input_iterator_tag)): Fix.
1578         * testsuite/25_algorithms/copy_n/50119.cc: New.
1579
1580 2011-08-18  Marc Glisse  <marc.glisse@normalesup.org>
1581             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1582
1583         PR libstdc++/1773
1584         * config/os/solaris2.7: Rename to config/os/solaris2.9.
1585         * config/os/solaris/solaris2.9/os_defines.h
1586         (__CORRECT_ISO_CPP_MATH_H_PROTO1)
1587         (__CORRECT_ISO_CPP_STDLIB_H_PROTO)
1588         (__CORRECT_ISO_CPP_STRING_H_PROTO)
1589         (__CORRECT_ISO_CPP_WCHAR_H_PROTO): Define.
1590         * config/os/solaris2.8/ctype_base.h,
1591         config/os/solaris2.8/ctype_configure_char.cc,
1592         config/solaris2.8/ctype_inline.h,
1593         config/os/solaris2.8/os_defines.h: New files.
1594
1595         * configure.host (solaris2.[89], solaris2.1[0-9]):
1596         Split into ...
1597         (solaris2.8): ... this.
1598         Use os/solaris/solaris2.8.
1599         (solaris2.9, solaris2.1[0-9]): ... and this.
1600         Use os/solaris/solaris2.9.
1601
1602         * include/c_global/cmath (double abs(double)): Wrap in
1603         !__CORRECT_ISO_CPP_MATH_H_PROTO1 &&
1604         !__CORRECT_ISO_CPP_MATH_H_PROTO2.
1605         (float abs(float), long double abs(long double): Wrap in
1606         !__CORRECT_ISO_CPP_MATH_H_PROTO1.
1607         (float acos(float), long double acos(long double)): Likewise.
1608         (float asin(float), long double asin(long double)): Likewise.
1609         (float atan(float), long double atan(long double)): Likewise.
1610         (float atan2(float, float), long double atan2(long double, long
1611         double)): Likewise.
1612         (float ceil(float), long double ceil(long double)): Likewise.
1613         (float cos(float), long double cos(long double)): Likewise.
1614         (float cosh(float), long double cosh(long double)): Likewise.
1615         (float exp(float), long double exp(long double)): Likewise.
1616         (float fabs(float), long double fabs(long double)): Likewise.
1617         (float floor(float), long double floor(long double)): Likewise.
1618         (float fmod(float, float), long double fmod(long double, long
1619         double)): Likewise.
1620         (float frexp(float, int*), long double frexp(long double, int*)):
1621         Likewise.
1622         (float ldexp(float, int), long double ldexp(long double, int)):
1623         Likewise.
1624         (float log(float), long double log(long double)): Likewise.
1625         (float log10(float), long double log10(long double)): Likewise.
1626         (float modf(float, float*), long double modf(long double, long
1627         double*))): Likewise.
1628         (float pow(float, float), long double pow(long double, long
1629         double)): Likewise.
1630         (float sin(float), long double sin(long double)): Likewise.
1631         (float sinh(float), long double sinh(long double)): Likewise.
1632         (float sqrt(float), long double sqrt(long double)): Likewise.
1633         (float tan(float), long double tan(long double)): Likewise.
1634         (float tanh(float), long double tanh(long double)): Likewise.
1635         * include/c_global/cstdlib (long abs(long), ldiv_t div(long,
1636         long)): Wrap in !__CORRECT_ISO_CPP_STDLIB_H_PROTO.
1637         * include/tr1/cmath (float fabs(float), long double fabs(long
1638         double)): Wrap in !__CORRECT_ISO_CPP_MATH_H_PROTO1.
1639
1640 2011-08-14  Benjamin Kosnik  <bkoz@redhat.com>
1641
1642         * doc/xml/images/*: Image and image filename changes.
1643
1644 2011-08-14  Benjamin Kosnik  <bkoz@redhat.com>
1645
1646         * testsuite/data/make_graph_test_infos.xml: Edit.
1647         * testsuite/data/make_graph_htmls.xml: Remove
1648         * scripts/make_graph.py: Edit, fix.
1649         * scripts/make_graphs.py: Remove.
1650
1651         * doc/Makefile.am (doc-svg-performance): New.
1652         (doc-html-performance): Remove.
1653         * doc/Makefile.in: Regenerate.
1654
1655         * doc/xml/manual/test_policy_data_structures.xml: Markup changes.
1656         * doc/xml/manual/policy_data_structures.xml: Same.
1657         * doc/xml/manual/locale.xml: Same.
1658
1659         Testsuite renames.
1660         * performance/ext/pb_ds/priority_queue_text_modify_down_timing.cc:
1661         Rename.
1662         * performance/ext/pb_ds/random_int_find_timing.cc: Same.
1663         * performance/ext/pb_ds/multimap_text_insert_mem_usage.hpp
1664         * performance/ext/pb_ds/multimap_text_find_timing.hpp
1665         * performance/ext/pb_ds/priority_queue_random_int_push_timing.cc: Same.
1666         * performance/ext/pb_ds/priority_queue_text_modify_timing.hpp
1667         * performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
1668         * performance/ext/pb_ds/multimap_text_insert_mem_usage_large.cc: Same.
1669         * performance/ext/pb_ds/priority_queue_text_push_pop_timing.cc: Same.
1670         * performance/ext/pb_ds/priority_queue_text_join_timing.cc: Same.
1671         * performance/ext/pb_ds/multimap_text_insert_timing_small.cc: Same.
1672         * performance/ext/pb_ds/random_int_subscript_insert_timing.cc: Same.
1673         * performance/ext/pb_ds/tree_text_lor_find_timing.cc: Same.
1674         * performance/ext/pb_ds/priority_queue_text_pop_mem_usage.cc: Same.
1675         * performance/ext/pb_ds/multimap_text_find_timing_small.cc: Same.
1676         * performance/ext/pb_ds/text_find_timing.cc: Same.
1677         * performance/ext/pb_ds/tree_text_insert_timing.cc: Same.
1678         * performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc: Same.
1679         * performance/ext/pb_ds/random_int_subscript_find_timing.cc: Same.
1680         * performance/ext/pb_ds/priority_queue_text_push_timing.cc: Same.
1681         * performance/ext/pb_ds/tree_split_join_timing.cc: Same.
1682         * performance/ext/pb_ds/multimap_text_insert_timing_large.cc: Same.
1683         * performance/ext/pb_ds/priority_queue_text_modify_up_timing.cc: Same.
1684         * performance/ext/pb_ds/multimap_text_find_timing_large.cc: Same.
1685         * performance/ext/pb_ds/priority_queue_random_int_push_pop_timing.cc:
1686         Same.
1687         * performance/ext/pb_ds/multimap_text_insert_timing.hpp
1688         * performance/ext/pb_ds/multimap_text_insert_mem_usage_small.cc: Same.
1689         * performance/ext/pb_ds/hash_zlob_random_int_find_timing.cc: Same.
1690
1691         * performance/ext/pb_ds/all_int_find.cc: To these new files...
1692         * performance/ext/pb_ds/all_int_subscript_find.cc: ...this.
1693         * performance/ext/pb_ds/all_int_subscript_insert.cc: ...this.
1694         * performance/ext/pb_ds/all_text_find.cc: ...this.
1695         * performance/ext/pb_ds/hash_int_erase_mem.cc: ...this.
1696         * performance/ext/pb_ds/hash_zlob_int_find.cc: ...this.
1697         * performance/ext/pb_ds/multimap_text_find.hpp
1698         * performance/ext/pb_ds/multimap_text_find_large.cc: ...this.
1699         * performance/ext/pb_ds/multimap_text_find_small.cc: ...this.
1700         * performance/ext/pb_ds/multimap_text_insert.hpp
1701         * performance/ext/pb_ds/multimap_text_insert_large.cc: ...this.
1702         * performance/ext/pb_ds/multimap_text_insert_mem.hpp
1703         * performance/ext/pb_ds/multimap_text_insert_mem_large.cc: ...this.
1704         * performance/ext/pb_ds/multimap_text_insert_mem_small.cc: ...this.
1705         * performance/ext/pb_ds/multimap_text_insert_small.cc: ...this.
1706         * performance/ext/pb_ds/priority_queue_int_push.cc: ...this.
1707         * performance/ext/pb_ds/priority_queue_int_push_pop.cc: ...this.
1708         * performance/ext/pb_ds/priority_queue_text_join.cc: ...this.
1709         * performance/ext/pb_ds/priority_queue_text_modify_down.cc: ...this.
1710         * performance/ext/pb_ds/priority_queue_text_modify.hpp
1711         * performance/ext/pb_ds/priority_queue_text_modify_up.cc: ...this.
1712         * performance/ext/pb_ds/priority_queue_text_pop_mem.cc: ...this.
1713         * performance/ext/pb_ds/priority_queue_text_push.cc: ...this.
1714         * performance/ext/pb_ds/priority_queue_text_push_pop.cc: ...this.
1715         * performance/ext/pb_ds/tree_order_statistics.cc: ...this.
1716         * performance/ext/pb_ds/tree_split_join.cc: ...this.
1717         * performance/ext/pb_ds/tree_text_insert.cc: ...this.
1718         * performance/ext/pb_ds/tree_text_lor_find.cc: ...this.
1719
1720         * doc/xml/images/*: Image and image filename changes.
1721
1722 2011-08-12  Paolo Carlini  <paolo.carlini@oracle.com>
1723
1724         * include/c_global/cmath (fmod(_Tp, _Up)): Add.
1725         * include/c_std/cmath: Likewise.
1726
1727 2011-08-11  Paolo Carlini  <paolo.carlini@oracle.com>
1728
1729         * include/std/future: constexpr functions are implicitly inline.
1730         * include/std/chrono: Likewise.
1731         * include/std/complex: Likewise.
1732         * include/bits/move.h: Likewise.
1733         * include/bits/stl_pair.h: Likewise.
1734
1735 2011-08-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
1736
1737         * include/bits/alloc_traits.h: Fix doxygen @headername.
1738
1739 2011-08-06  Benjamin Kosnik  <bkoz@redhat.com>
1740
1741         * doc/doxygen/user.cfg.in (PDF_HYPERLINKS): To NO.
1742
1743 2011-08-06  Benjamin Kosnik  <bkoz@redhat.com>
1744
1745         * doc/doxygen/user.cfg.in: Add scoped_allocator.
1746
1747         * include/debug/safe_sequence.h: Fix doxygen markup.
1748         * include/debug/safe_unordered_base.h: Same.
1749         * include/debug/safe_local_iterator.tcc: Same.
1750         * include/debug/safe_unordered_container.h: Same.
1751         * include/std/valarray: Same.
1752         * include/std/iomanip: Same.
1753         * include/std/streambuf: Same.
1754         * include/std/bitset: Same.
1755         * include/std/fstream: Same.
1756         * include/std/functional: Same.
1757         * include/std/istream: Same.
1758         * include/std/ostream: Same.
1759         * include/std/scoped_allocator: Same.
1760         * include/std/sstream: Same.
1761         * include/parallel/multiway_merge.h: Same.
1762         * include/parallel/base.h: Same.
1763         * include/parallel/for_each_selectors.h: Same.
1764         * include/parallel/multiway_mergesort.h: Same.
1765         * include/parallel/search.h: Same.
1766         * include/parallel/partial_sum.h: Same.
1767         * include/parallel/queue.h: Same.
1768         * include/parallel/sort.h: Same.
1769         * include/parallel/random_number.h: Same.
1770         * include/ext/vstring.h: Same.
1771         * include/ext/algorithm: Same.
1772         * include/ext/pb_ds/assoc_container.h: Same.
1773         * include/ext/bitmap_allocator.h: Same.
1774         * include/ext/stdio_filebuf.h: Same.
1775         * include/ext/memory: Same.
1776         * include/ext/functional: Same.
1777         * include/bits/basic_ios.h: Same.
1778         * include/bits/stl_list.h: Same.
1779         * include/bits/stl_map.h: Same.
1780         * include/bits/stl_algobase.h: Same.
1781         * include/bits/stl_queue.h: Same.
1782         * include/bits/gslice.h: Same.
1783         * include/bits/locale_classes.h: Same.
1784         * include/bits/stl_set.h: Same.
1785         * include/bits/locale_facets.h: Same.
1786         * include/bits/stl_stack.h: Same.
1787         * include/bits/stl_heap.h: Same.
1788         * include/bits/forward_list.h: Same.
1789         * include/bits/stream_iterator.h: Same.
1790         * include/bits/basic_string.h: Same.
1791         * include/bits/stl_multimap.h: Same.
1792         * include/bits/stl_pair.h: Same.
1793         * include/bits/ios_base.h: Same.
1794         * include/bits/stl_numeric.h: Same.
1795         * include/bits/stl_vector.h: Same.
1796         * include/bits/stl_deque.h: Same.
1797         * include/bits/codecvt.h: Same.
1798         * include/bits/stl_multiset.h: Same.
1799         * include/bits/stl_uninitialized.h: Same.
1800         * include/bits/ptr_traits.h: Same.
1801         * include/bits/slice_array.h: Same.
1802         * include/bits/stl_iterator_base_funcs.h: Same.
1803         * include/bits/stl_algo.h: Same.
1804         * include/bits/stl_iterator.h: Same.
1805         * include/bits/stl_tempbuf.h: Same.
1806         * include/bits/regex.h: Same.
1807         * include/bits/range_access.h: Same.
1808         * include/bits/random.h: Same.
1809         * include/bits/alloc_traits.h: Same.
1810         * include/bits/regex_error.h: Same.
1811         * include/bits/locale_facets_nonio.h: Same.
1812         * include/bits/stl_relops.h: Same.
1813         * include/backward/auto_ptr.h: Same.
1814         * libsupc++/initializer_list: Same.
1815
1816         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1817         Adjust line numbers.
1818         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
1819         * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1820         Same.
1821         * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1822         Same.
1823
1824 2011-08-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1825
1826         * acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Point TOPLEVEL_INCLUDES
1827         to $(toplevel_srcdir)/libgcc.
1828         * configure: Regenerate.
1829
1830 2011-08-04  Benjamin Kosnik  <bkoz@redhat.com>
1831
1832         * doc/xml/manual/build_hacking.xml: Use relative fileref for PNG
1833         imagedata.
1834         * doc/xml/manual/test_policy_data_structures.xml: Same.
1835         * doc/xml/manual/policy_data_structures.xml: Same.
1836
1837         * doc/Makefile.am (stamp-html-docbook-images)
1838         (stamp-html-docbook-lwg, stamp-html-docbook-data): New.
1839         (xml_extra): Add lwg html file dependencies.
1840         (xml_images): Add image html file dependencies.
1841         * doc/Makefile.in: Regenerate.
1842         (stamp-html): Change to stamp-html-docbook-data.
1843         (stamp-html-copy): Remove.
1844
1845 2011-08-04  Paolo Carlini  <paolo.carlini@oracle.com>
1846
1847         * src/atomic.cc: Use noexcept.
1848         * include/std/atomic: Likewise.
1849         * include/bits/atomic_0.h: Likewise.
1850         * include/bits/atomic_2.h: Likewise.
1851         * include/bits/atomic_base.h: Likewise.
1852
1853 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
1854
1855         * testsuite/performance/27_io/filebuf_sputn_unbuf.cc: Include
1856         unistd.h for unlink.
1857         * testsuite/performance/27_io/ofstream_insert_int.cc: Same.
1858         * testsuite/performance/27_io/ifstream_extract_int.cc: Same.
1859         * testsuite/performance/27_io/ifstream_getline-2.cc: Same.
1860         * testsuite/performance/27_io/fstream_seek_write.cc: Same.
1861         * testsuite/performance/27_io/ifstream_extract_chars.cc: Same.
1862         * testsuite/performance/27_io/ofstream_insert_float.cc: Same.
1863         * testsuite/performance/27_io/ifstream_extract_float.cc: Same.
1864         * testsuite/performance/27_io/filebuf_sputc.cc: Same.
1865
1866 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
1867
1868         * include/std/tuple: Mark more constructors constexpr.
1869         * testsuite/20_util/tuple/cons/constexpr.cc: Split into and extend as:
1870         * testsuite/20_util/tuple/cons/constexpr-2.cc: ...this.
1871         * testsuite/20_util/tuple/cons/constexpr-3.cc: ... and this.
1872         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line numbers.
1873
1874 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
1875             François Dumont  <francois.cppdevs@free.fr>
1876
1877         * testsuite/23_containers/array/at_neg.cc: Move...
1878         * testsuite/23_containers/array/at.cc: ...here. Remove
1879         -fno-exceptions, call const at member function.
1880
1881 2011-08-01  H.J. Lu  <hongjiu.lu@intel.com>
1882
1883         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Generated.
1884
1885 2011-08-01  Paolo Carlini  <paolo.carlini@oracle.com>
1886
1887         PR c++/49813
1888         * include/c_global/cmath (isinf): Remove workaround.
1889
1890 2011-07-31  Paolo Carlini  <paolo.carlini@oracle.com>
1891
1892         PR libstdc++/49925
1893         * include/bits/shared_ptr.h (make_shared): Qualify allocate_shared
1894         with std::.
1895         * include/bits/shared_ptr_base.h (__make_shared): Likewise.
1896
1897 2011-07-29  Benjamin Kosnik  <bkoz@redhat.com>
1898
1899         * doc/xml/manual/build_hacking.xml: Markup imagedata changes.
1900         * doc/xml/manual/policy_data_structures.xml: Same.
1901
1902         * doc/xml/class.txml: Remove biblioid.
1903         * doc/xml/manual/allocator.xml: Same.
1904         * doc/xml/manual/ctype.xml: Same.
1905         * doc/xml/manual/codecvt.xml: Same.
1906         * doc/xml/manual/backwards_compatibility.xml: Same.
1907         * doc/xml/manual/abi.xml: Same.
1908         * doc/xml/manual/shared_ptr.xml: Same.
1909         * doc/xml/manual/using_exceptions.xml: Same.
1910         * doc/xml/manual/messages.xml: Same.
1911
1912 2011-07-29  Benjamin Kosnik  <bkoz@redhat.com>
1913
1914         Docbook conversion of existing ext/pb_ds documentation.
1915         * doc/Makefile.am (xml_sources_manual): Add
1916         policy_data_structures.xml and
1917         test_policy_data_structures.xml.
1918         (stamp-html-copy): Remove special-case for ext/pb_ds directory.
1919         (XSLTPROC_FLAGS): Split into XSLT_FLAGS and XSLT_PARAM, use.
1920         * doc/Makefile.in: Regenerate.
1921         * doc/xml/manual/policy_data_structures.xml: New, adapted from
1922           previous html-only instance in doc/html/ext/pb_ds.
1923         * doc/xml/manual/test_policy_data_structures.xml: New, same as above.
1924
1925         * doc/xml/spine.xml: Update copyright.
1926         * doc/xml/manual/spine.xml: Same.
1927         * doc/xml/manual/extensions.xml: Adjust set, chapter, sections.
1928         * doc/xml/manual/bitmap_allocator.xml: Same.
1929         * doc/xml/manual/mt_allocator.xml: Same.
1930
1931         Populate image directory.
1932         * doc/xml/images/(pbds_balls_and_bins.png,
1933         pbds_binary_priority_queue_random_int_push_timing_test_local.pdf,
1934         pbds_binary_priority_queue_random_int_push_timing_test_local.png,
1935         pbds_binary_priority_queue_random_int_push_timing_test_local.svg,
1936         pbds_cc_hash_random_int_find_timing_test_local.pdf,
1937         pbds_cc_hash_random_int_find_timing_test_local.png,
1938         pbds_cc_hash_random_int_find_timing_test_local.svg,
1939         pbds_cc_hash_random_int_subscript_timing_test_find_local.pdf,
1940         pbds_cc_hash_random_int_subscript_timing_test_find_local.png,
1941         pbds_cc_hash_random_int_subscript_timing_test_find_local.svg,
1942         pbds_cc_hash_random_int_subscript_timing_test_insert_local.pdf,
1943         pbds_cc_hash_random_int_subscript_timing_test_insert_local.png,
1944         pbds_cc_hash_random_int_subscript_timing_test_insert_local.svg,
1945         pbds_container_tag_hierarchy.pdf,
1946         pbds_container_tag_hierarchy.png,
1947         pbds_container_tag_hierarchy.svg,
1948         pbds_different_underlying_dss_1.png,
1949         pbds_different_underlying_dss_2.png,
1950         pbds_embedded_lists_1.png, pbds_embedded_lists_2.png,
1951         pbds_embedded_lists_3.png, pbds_exception_hierarchy.pdf,
1952         pbds_exception_hierarchy.png, pbds_exception_hierarchy.svg,
1953         pbds_gp_hash_random_int_find_timing_test_local.pdf,
1954         pbds_gp_hash_random_int_find_timing_test_local.png,
1955         pbds_gp_hash_random_int_find_timing_test_local.svg,
1956         pbds_gp_hash_random_int_subscript_timing_test_find_local.pdf,
1957         pbds_gp_hash_random_int_subscript_timing_test_find_local.png,
1958         pbds_gp_hash_random_int_subscript_timing_test_find_local.svg,
1959         pbds_gp_hash_random_int_subscript_timing_test_insert_local.pdf,
1960         pbds_gp_hash_random_int_subscript_timing_test_insert_local.png,
1961         pbds_gp_hash_random_int_subscript_timing_test_insert_local.svg,
1962         pbds_hash_policy_cd.png,
1963         pbds_hash_random_int_erase_mem_usage_test_local.pdf,
1964         pbds_hash_random_int_erase_mem_usage_test_local.png,
1965         pbds_hash_random_int_erase_mem_usage_test_local.svg,
1966         pbds_hash_ranged_hash_range_hashing_fns.png,
1967         pbds_hash_range_hashing_seq_diagram2.png,
1968         pbds_hash_range_hashing_seq_diagram.png,
1969         pbds_hash_zlob_random_int_find_timing_test_local.pdf,
1970         pbds_hash_zlob_random_int_find_timing_test_local.png,
1971         pbds_hash_zlob_random_int_find_timing_test_local.svg,
1972         pbds_insert_resize_sequence_diagram1.png,
1973         pbds_insert_resize_sequence_diagram2.png,
1974         pbds_insert_resize_sequence_diagram3.png,
1975         pbds_invalidation_guarantee_erase.png,
1976         pbds_invalidation_tag_hierarchy.pdf,
1977         pbds_invalidation_tag_hierarchy.png,
1978         pbds_invalidation_tag_hierarchy.svg, pbds_list_update.png,
1979         pbds_multimap_text_find_timing_test_large_s2p_hash_local.pdf,
1980         pbds_multimap_text_find_timing_test_large_s2p_hash_local.png,
1981         pbds_multimap_text_find_timing_test_large_s2p_hash_local.svg,
1982         pbds_multimap_text_find_timing_test_large_s2p_tree_local.pdf,
1983         pbds_multimap_text_find_timing_test_large_s2p_tree_local.png,
1984         pbds_multimap_text_find_timing_test_large_s2p_tree_local.svg,
1985         pbds_multimap_text_find_timing_test_small_s2p_hash_local.pdf,
1986         pbds_multimap_text_find_timing_test_small_s2p_hash_local.png,
1987         pbds_multimap_text_find_timing_test_small_s2p_hash_local.svg,
1988         pbds_multimap_text_find_timing_test_small_s2p_tree_local.pdf,
1989         pbds_multimap_text_find_timing_test_small_s2p_tree_local.png,
1990         pbds_multimap_text_find_timing_test_small_s2p_tree_local.svg,
1991         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.pdf,
1992         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
1993         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.svg,
1994         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.pdf,
1995         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
1996         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.svg,
1997         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.pdf,
1998         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
1999         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.svg,
2000         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.pdf,
2001         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.png,
2002         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.svg,
2003         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.pdf,
2004         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.png,
2005         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.svg,
2006         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.pdf,
2007         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.png,
2008         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.svg,
2009         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.pdf,
2010         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.png,
2011         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.svg,
2012         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.pdf,
2013         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.png,
2014         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.svg,
2015         pbds_node_invariants.png,
2016         pbds_pairing_priority_queue_text_push_pop_timing_test_local.pdf,
2017         pbds_pairing_priority_queue_text_push_pop_timing_test_local.png,
2018         pbds_pairing_priority_queue_text_push_pop_timing_test_local.svg,
2019         pbds_pairing_priority_queue_text_push_timing_test_local.pdf,
2020         pbds_pairing_priority_queue_text_push_timing_test_local.png,
2021         pbds_pairing_priority_queue_text_push_timing_test_local.svg,
2022         pbds_pat_trie.png, pbds_point_iterator_hierarchy.png,
2023         pbds_point_iterators_range_ops_1.png,
2024         pbds_point_iterators_range_ops_2.png,
2025         pbds_priority_queue_different_underlying_dss.png,
2026         pbds_priority_queue_random_int_push_pop_timing_test_local.pdf,
2027         pbds_priority_queue_random_int_push_pop_timing_test_local.png,
2028         pbds_priority_queue_random_int_push_pop_timing_test_local.svg,
2029         pbds_priority_queue_random_int_push_timing_test_local.pdf,
2030         pbds_priority_queue_random_int_push_timing_test_local.png,
2031         pbds_priority_queue_random_int_push_timing_test_local.svg,
2032         pbds_priority_queue_tag_hierarchy.pdf,
2033         pbds_priority_queue_tag_hierarchy.png,
2034         pbds_priority_queue_tag_hierarchy.svg,
2035         pbds_priority_queue_text_join_timing_test_local.pdf,
2036         pbds_priority_queue_text_join_timing_test_local.png,
2037         pbds_priority_queue_text_join_timing_test_local.svg,
2038         pbds_priority_queue_text_modify_down_timing_test_local.pdf,
2039         pbds_priority_queue_text_modify_down_timing_test_local.png,
2040         pbds_priority_queue_text_modify_down_timing_test_local.svg,
2041         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.pdf,
2042         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
2043         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.svg,
2044         pbds_priority_queue_text_modify_up_timing_test_local.pdf,
2045         pbds_priority_queue_text_modify_up_timing_test_local.png,
2046         pbds_priority_queue_text_modify_up_timing_test_local.svg,
2047         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.pdf,
2048         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
2049         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.svg,
2050         pbds_priority_queue_text_pop_mem_usage_test_local.pdf,
2051         pbds_priority_queue_text_pop_mem_usage_test_local.png,
2052         pbds_priority_queue_text_pop_mem_usage_test_local.svg,
2053         pbds_priority_queue_text_push_pop_timing_test_local.pdf,
2054         pbds_priority_queue_text_push_pop_timing_test_local.png,
2055         pbds_priority_queue_text_push_pop_timing_test_local.svg,
2056         pbds_priority_queue_text_push_timing_test_local.pdf,
2057         pbds_priority_queue_text_push_timing_test_local.png,
2058         pbds_priority_queue_text_push_timing_test_local.svg,
2059         pbds_rationale_null_node_updator.png,
2060         pbds_resize_policy_cd.png, pbds_restoring_node_invariants.png,
2061         pbds_simple_list.png,
2062         pbds_text_find_timing_test_hash_local.pdf,
2063         pbds_text_find_timing_test_hash_local.png,
2064         pbds_text_find_timing_test_hash_local.svg,
2065         pbds_text_find_timing_test_tree_like_local.pdf,
2066         pbds_text_find_timing_test_tree_like_local.png,
2067         pbds_text_find_timing_test_tree_like_local.svg,
2068         pbds_tree_node_invalidations.png,
2069         pbds_tree_node_invariants.png,
2070         pbds_tree_node_updator_policy_cd.png,
2071         pbds_tree_order_statistics_timing_test_local.pdf,
2072         pbds_tree_order_statistics_timing_test_local.png,
2073         pbds_tree_order_statistics_timing_test_local.svg,
2074         pbds_tree_split_join_timing_test_local.pdf,
2075         pbds_tree_split_join_timing_test_local.png,
2076         pbds_tree_split_join_timing_test_local.svg,
2077         pbds_tree_text_insert_timing_test_node_tree_local.pdf,
2078         pbds_tree_text_insert_timing_test_node_tree_local.png,
2079         pbds_tree_text_insert_timing_test_node_tree_local.svg,
2080         pbds_tree_text_insert_timing_test_pat_trie_local.pdf,
2081         pbds_tree_text_insert_timing_test_pat_trie_local.png,
2082         pbds_tree_text_insert_timing_test_pat_trie_local.svg,
2083         pbds_tree_text_insert_timing_test_vector_tree_local.pdf,
2084         pbds_tree_text_insert_timing_test_vector_tree_local.png,
2085         pbds_tree_text_insert_timing_test_vector_tree_local.svg,
2086         pbds_tree_text_lor_find_timing_test_local.pdf,
2087         pbds_tree_text_lor_find_timing_test_local.png,
2088         pbds_tree_text_lor_find_timing_test_local.svg,
2089         pbds_trie_node_updator_policy_cd.png,
2090         pbds_update_seq_diagram.png): Add.
2091
2092         * doc/html/ext/pb_ds: Remove.
2093         * doc/html/ext/pb_ds/(acks.html, assoc_container_tag_cd.png,
2094         assoc_container_tag_cd.svg, assoc_container_traits.html,
2095         assoc_design.html, assoc_examples.html,
2096         associative_container_tag.html, assoc_performance_tests.html,
2097         assoc_regression_tests.html, assoc_tests.html,
2098         balls_and_bins.png, basic_hash_table.html,
2099         basic_hash_tag.html, basic_invalidation_guarantee.html,
2100         basic_tree_assoc_container_const_node_iterator.html,
2101         basic_tree.html, basic_tree_tag.html, binary_heap_tag.html,
2102         binary_priority_queue_random_int_push_timing_test_gcc.png,
2103         binary_priority_queue_random_int_push_timing_test_local.png,
2104         binary_priority_queue_random_int_push_timing_test_msvc.png,
2105         binomial_heap_tag.html,
2106         ccgp_hash_random_int_subscript_timing_test_insert_gcc.png,
2107         ccgp_hash_random_int_subscript_timing_test_insert_local.png,
2108         ccgp_hash_random_int_subscript_timing_test_insert_msvc.png,
2109         cc_hash_max_collision_check_resize_trigger.html,
2110         cc_hash_random_int_find_timing_test_gcc.png,
2111         cc_hash_random_int_find_timing_test_local.png,
2112         cc_hash_random_int_find_timing_test_msvc.png,
2113         cc_hash_random_int_subscript_timing_test_find_gcc.png,
2114         cc_hash_random_int_subscript_timing_test_find_local.png,
2115         cc_hash_random_int_subscript_timing_test_find_msvc.png,
2116         cc_hash_random_int_subscript_timing_test_insert_gcc.png,
2117         cc_hash_random_int_subscript_timing_test_insert_local.png,
2118         cc_hash_random_int_subscript_timing_test_insert_msvc.png,
2119         cc_hash_table.html, cc_hash_tag.html, checked_by_tidy.gif
2120         concepts.html, contact.html, container_base.html,
2121         container_cd.png, container_cd.svg, container_tag.html,
2122         counter_lu_policy.html, design.html,
2123         different_underlying_dss.png, direct_mask_range_hashing.html,
2124         direct_mod_range_hashing.html, disclaimer.html, ds_gen.html,
2125         embedded_lists_1.png, embedded_lists_2.png,
2126         embedded_lists_3.png, examples.html, exceptions.html,
2127         gp_hash_random_int_find_timing_test_gcc.png,
2128         gp_hash_random_int_find_timing_test_local.png,
2129         gp_hash_random_int_find_timing_test_msvc.png,
2130         gp_hash_random_int_subscript_timing_test_find_gcc.png,
2131         gp_hash_random_int_subscript_timing_test_find_local.png,
2132         gp_hash_random_int_subscript_timing_test_find_msvc.png,
2133         gp_hash_random_int_subscript_timing_test_insert_gcc.png,
2134         gp_hash_random_int_subscript_timing_test_insert_local.png,
2135         gp_hash_random_int_subscript_timing_test_insert_msvc.png,
2136         gp_hash_table.html, gp_hash_tag.html,
2137         hash_based_containers.html, hash_exponential_size_policy.html,
2138         hash_load_check_resize_trigger.html, hash_policy_cd.png,
2139         hash_prime_size_policy.html,
2140         hash_random_int_erase_mem_usage_test_gcc.png,
2141         hash_random_int_erase_mem_usage_test.html,
2142         hash_random_int_erase_mem_usage_test_local.png,
2143         hash_random_int_erase_mem_usage_test_msvc.png,
2144         hash_random_int_find_find_timing_test.html,
2145         hash_random_int_subscript_find_timing_test.html,
2146         hash_random_int_subscript_insert_timing_test.html,
2147         hash_ranged_hash_range_hashing_fns.png,
2148         hash_range_hashing_seq_diagram2.png,
2149         hash_range_hashing_seq_diagram.png,
2150         hash_standard_resize_policy.html,
2151         hash_text_find_find_timing_test.html,
2152         hash_zlob_random_int_find_find_timing_test.html,
2153         hash_zlob_random_int_find_timing_test_gcc.png,
2154         hash_zlob_random_int_find_timing_test_local.png,
2155         hash_zlob_random_int_find_timing_test_msvc.png, index.html,
2156         insert_error.html, insert_resize_sequence_diagram1.png,
2157         insert_resize_sequence_diagram2.png,
2158         insert_resize_sequence_diagram3.png, interface.html,
2159         introduction.html, invalidation_guarantee_cd.png,
2160         invalidation_guarantee_erase.png, join_error.html,
2161         linear_probe_fn.html, list_update.html, list_update_tag.html,
2162         lu_based_containers.html, lu.png, misc.html, motivation.html,
2163         move_to_front_lu_policy.html,
2164         multimap_text_find_timing_test_large.html,
2165         multimap_text_find_timing_test_large_s2p_hash_gcc.png,
2166         multimap_text_find_timing_test_large_s2p_hash_local.png,
2167         multimap_text_find_timing_test_large_s2p_hash_msvc.png,
2168         multimap_text_find_timing_test_large_s2p_tree_gcc.png,
2169         multimap_text_find_timing_test_large_s2p_tree_local.png,
2170         multimap_text_find_timing_test_large_s2p_tree_msvc.png,
2171         multimap_text_find_timing_test_small.html,
2172         multimap_text_find_timing_test_small_s2p_hash_gcc.png,
2173         multimap_text_find_timing_test_small_s2p_hash_local.png,
2174         multimap_text_find_timing_test_small_s2p_hash_msvc.png,
2175         multimap_text_find_timing_test_small_s2p_tree_gcc.png,
2176         multimap_text_find_timing_test_small_s2p_tree_local.png,
2177         multimap_text_find_timing_test_small_s2p_tree_msvc.png,
2178         multimap_text_insert_mem_usage_test_large.html,
2179         multimap_text_insert_mem_usage_test_large_s2p_hash_gcc.png,
2180         multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
2181         multimap_text_insert_mem_usage_test_large_s2p_hash_msvc.png,
2182         multimap_text_insert_mem_usage_test_large_s2p_tree_gcc.png,
2183         multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
2184         multimap_text_insert_mem_usage_test_large_s2p_tree_msvc.png,
2185         multimap_text_insert_mem_usage_test_small.html,
2186         multimap_text_insert_mem_usage_test_small_s2p_hash_gcc.png,
2187         multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
2188         multimap_text_insert_mem_usage_test_small_s2p_hash_msvc.png,
2189         multimap_text_insert_mem_usage_test_small_s2p_tree_gcc.png,
2190         multimap_text_insert_mem_usage_test_small_s2p_tree_local.png,
2191         multimap_text_insert_mem_usage_test_small_s2p_tree_msvc.png,
2192         multimap_text_insert_timing_test_large.html,
2193         multimap_text_insert_timing_test_large_s2p_hash_gcc.png,
2194         multimap_text_insert_timing_test_large_s2p_hash_local.png,
2195         multimap_text_insert_timing_test_large_s2p_hash_msvc.png,
2196         multimap_text_insert_timing_test_large_s2p_tree_gcc.png,
2197         multimap_text_insert_timing_test_large_s2p_tree_local.png,
2198         multimap_text_insert_timing_test_large_s2p_tree_msvc.png,
2199         multimap_text_insert_timing_test_small.html,
2200         multimap_text_insert_timing_test_small_s2p_hash_gcc.png,
2201         multimap_text_insert_timing_test_small_s2p_hash_local.png,
2202         multimap_text_insert_timing_test_small_s2p_hash_msvc.png,
2203         multimap_text_insert_timing_test_small_s2p_tree_gcc.png,
2204         multimap_text_insert_timing_test_small_s2p_tree_local.png,
2205         multimap_text_insert_timing_test_small_s2p_tree_msvc.png,
2206         node_invariant_invalidations.png, node_invariants.png,
2207         null_hash_fn.html, null_lu_metadata.html,
2208         null_mapped_type.html, null_probe_fn.html,
2209         null_tree_node_update.html, null_trie_node_update.html,
2210         ov_tree_tag.html, pairing_heap_tag.html,
2211         pairing_priority_queue_text_push_pop_timing_test_gcc.png,
2212         pairing_priority_queue_text_push_pop_timing_test_local.png,
2213         pairing_priority_queue_text_push_pop_timing_test_msvc.png,
2214         pairing_priority_queue_text_push_timing_test_gcc.png,
2215         pairing_priority_queue_text_push_timing_test_local.png,
2216         pairing_priority_queue_text_push_timing_test_msvc.png,
2217         pat_trie.png, pat_trie_tag.html,
2218         point_invalidation_guarantee.html, point_iterators_cd.png,
2219         point_iterators_range_ops_1.png,
2220         point_iterators_range_ops_2.png, pq_container_traits.html,
2221         pq_design.html, pq_different_underlying_dss.png,
2222         pq_examples.html, pq_performance_tests.html,
2223         pq_regression_tests.html, pq_tests.html, prerequisites.html,
2224         priority_queue.html,
2225         priority_queue_random_int_push_pop_timing_test_gcc.png,
2226         priority_queue_random_int_push_pop_timing_test.html,
2227         priority_queue_random_int_push_pop_timing_test_local.png,
2228         priority_queue_random_int_push_pop_timing_test_msvc.png,
2229         priority_queue_random_int_push_timing_test_gcc.png,
2230         priority_queue_random_int_push_timing_test.html,
2231         priority_queue_random_int_push_timing_test_local.png,
2232         priority_queue_random_int_push_timing_test_msvc.png,
2233         priority_queue_tag_cd.png, priority_queue_tag_cd.svg,
2234         priority_queue_tag.html,
2235         priority_queue_text_join_timing_test_gcc.png,
2236         priority_queue_text_join_timing_test.html,
2237         priority_queue_text_join_timing_test_local.png,
2238         priority_queue_text_join_timing_test_msvc.png,
2239         priority_queue_text_modify_down_timing_test_gcc.png,
2240         priority_queue_text_modify_down_timing_test.html,
2241         priority_queue_text_modify_down_timing_test_local.png,
2242         priority_queue_text_modify_down_timing_test_msvc.png,
2243         priority_queue_text_modify_down_timing_test_pairing_thin_gcc.png,
2244         priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
2245         priority_queue_text_modify_down_timing_test_pairing_thin_msvc.png,
2246         priority_queue_text_modify_up_timing_test_gcc.png,
2247         priority_queue_text_modify_up_timing_test.html,
2248         priority_queue_text_modify_up_timing_test_local.png,
2249         priority_queue_text_modify_up_timing_test_msvc.png,
2250         priority_queue_text_modify_up_timing_test_pairing_thin_gcc.png,
2251         priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
2252         priority_queue_text_modify_up_timing_test_pairing_thin_msvc.png,
2253         priority_queue_text_pop_mem_usage_test_gcc.png,
2254         priority_queue_text_pop_mem_usage_test.html,
2255         priority_queue_text_pop_mem_usage_test_local.png,
2256         priority_queue_text_pop_mem_usage_test_msvc.png,
2257         priority_queue_text_push_pop_timing_test_gcc.png,
2258         priority_queue_text_push_pop_timing_test.html,
2259         priority_queue_text_push_pop_timing_test_local.png,
2260         priority_queue_text_push_pop_timing_test_msvc.png,
2261         priority_queue_text_push_timing_test_gcc.png,
2262         priority_queue_text_push_timing_test.html,
2263         priority_queue_text_push_timing_test_local.png,
2264         priority_queue_text_push_timing_test_msvc.png,
2265         PythonPoweredSmall.gif quadratic_probe_fn.html,
2266         random_int_find_find_timing_test_tree_gcc.png,
2267         random_int_find_find_timing_test_tree_local.png,
2268         random_int_find_find_timing_test_tree_msvc.png,
2269         range_invalidation_guarantee.html,
2270         rationale_null_node_updator.png, rb_tree_tag.html,
2271         rc_binomial_heap_tag.html, references.html, resize_error.html,
2272         resize_policy_cd.png, restoring_node_invariants.png,
2273         sample_probe_fn.html, sample_ranged_hash_fn.html,
2274         sample_ranged_probe_fn.html, sample_range_hashing.html,
2275         sample_resize_policy.html, sample_resize_trigger.html,
2276         sample_size_policy.html, sample_tree_node_update.html,
2277         sample_trie_access_traits.html, sample_trie_node_update.html,
2278         sample_update_policy.html, simple_list.png,
2279         splay_tree_tag.html, tests.html,
2280         text_find_timing_test_hash_gcc.png,
2281         text_find_timing_test_hash_local.png,
2282         text_find_timing_test_hash_msvc.png,
2283         text_find_timing_test_tree_like_gcc.png,
2284         text_find_timing_test_tree_like_local.png,
2285         text_find_timing_test_tree_like_msvc.png, thin_heap_tag.html,
2286         tree_based_containers.html, tree.html,
2287         tree_node_iterator.html, tree_node_updator_policy_cd.png,
2288         tree_order_statistics_node_update.html,
2289         tree_order_statistics_timing_test_gcc.png,
2290         tree_order_statistics_timing_test.html,
2291         tree_order_statistics_timing_test_local.png,
2292         tree_order_statistics_timing_test_msvc.png,
2293         tree_random_int_find_find_timing_test.html,
2294         tree_split_join_timing_test_gcc.png,
2295         tree_split_join_timing_test.html,
2296         tree_split_join_timing_test_local.png,
2297         tree_split_join_timing_test_msvc.png, tree_tag.html,
2298         tree_text_find_find_timing_test.html,
2299         tree_text_insert_timing_test.html,
2300         tree_text_insert_timing_test_node_tree_gcc.png,
2301         tree_text_insert_timing_test_node_tree_local.png,
2302         tree_text_insert_timing_test_node_tree_msvc.png,
2303         tree_text_insert_timing_test_pat_trie_gcc.png,
2304         tree_text_insert_timing_test_pat_trie_local.png,
2305         tree_text_insert_timing_test_pat_trie_msvc.png,
2306         tree_text_insert_timing_test_vector_tree_gcc.png,
2307         tree_text_insert_timing_test_vector_tree_local.png,
2308         tree_text_insert_timing_test_vector_tree_msvc.png,
2309         tree_text_lor_find_find_timing_test.html,
2310         tree_text_lor_find_timing_test_gcc.png,
2311         tree_text_lor_find_timing_test_local.png,
2312         tree_text_lor_find_timing_test_msvc.png,
2313         trie_based_containers.html, trie_const_node_iterator.html,
2314         trie.html, trie_node_iterator.html,
2315         trie_node_updator_policy_cd.png,
2316         trie_order_statistics_node_update.html,
2317         trie_prefix_search_node_update.html,
2318         trie_string_access_traits.html, trie_tag.html,
2319         trivial_iterator_tag.html, tutorial.html,
2320         update_policy_cd.png, update_seq_diagram.png): Remove.
2321
2322 2011-07-27  Paolo Carlini  <paolo.carlini@oracle.com>
2323
2324         PR c++/49813
2325         * include/c_global/cmath: Use _GLIBCXX_CONSTEXPR and constexpr.
2326
2327 2011-07-27  Jeffrey Yasskin  <jyasskin@google.com>
2328
2329         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Updated.
2330
2331 2011-07-25  Benjamin Kosnik  <bkoz@redhat.com>
2332
2333         * include/std/array (at): Remove constexpr when -fno-exceptions.
2334         * testsuite/23_containers/array/at_neg.cc: Test.
2335
2336 2011-07-25  Paolo Carlini  <paolo.carlini@oracle.com>
2337             Nathan Ridge  <zeratul976@hotmail.com>
2338
2339         PR libstdc++/49836
2340         * include/bits/stl_vector.h (vector<>::_M_emplace_back_aux):
2341         Declare.
2342         (vector<>::push_back(const value_type&)): Use it.
2343         * include/bits/vector.tcc: Define.
2344         (vector<>::emplace_back(_Args&&...)): Use it.
2345         * testsuite/util/testsuite_tr1.h (CopyConsOnlyType, MoveConsOnlyType):
2346         Add.
2347         * testsuite/23_containers/vector/modifiers/push_back/49836.cc: New.
2348         * testsuite/23_containers/deque/modifiers/push_back/49836.cc:
2349         Likewise.
2350         * testsuite/23_containers/deque/modifiers/push_front/49836.cc:
2351         Likewise.
2352         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2353         Adjust dg-error line number.
2354         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2355         Likewise.
2356         * testsuite/23_containers/vector/requirements/dr438/
2357         constructor_1_neg.cc: Likewise.
2358         * testsuite/23_containers/vector/requirements/dr438/
2359         constructor_2_neg.cc: Likewise.
2360
2361 2011-07-24  Paolo Carlini  <paolo.carlini@oracle.com>
2362
2363         * include/bits/hashtable_policy.h (_Prime_rehash_policy::_M_next_bkt,
2364         _M_bkt_for_elements, _M_need_rehash): Fix typos in the last commit.
2365
2366 2011-07-24  François Dumont  <francois.cppdevs@free.fr>
2367
2368         * include/bits/hashtable_policy.h (_Prime_rehash_policy): Use
2369         __builtin_floor rather than __builtin_ceil to compute next resize
2370         value.
2371         * testsuite/23_containers/unordered_set/hash_policy/load_factor.cc:
2372         New.
2373
2374 2011-07-22  Benjamin Kosnik  <bkoz@redhat.com>
2375             Daniel Krugler  <daniel.kruegler@googlemail.com>
2376
2377         * include/bits/move.h (move, forward): Mark constexpr.
2378         * include/bits/stl_pair.h (pair): Mark move ctors constexpr.
2379         * testsuite/20_util/pair/make_pair/constexpr.cc: New.
2380         * testsuite/20_util/pair/cons/constexpr.cc: Add tests.
2381
2382 2011-07-22  Ian Lance Taylor  <iant@google.com>
2383
2384         * fragment.am (CONFIG_CXXFLAGS): Add -frandom-seed.
2385         * Makefile.in: Rebuild.
2386         * doc/Makefile.in: Rebuild.
2387         * include/Makefile.in: Rebuild.
2388         * libsupc++/Makefile.in: Rebuild.
2389         * po/Makefile.in: Rebuild.
2390         * python/Makefile.in: Rebuild.
2391         * src/Makefile.in: Rebuild.
2392         * testsuite/Makefile.in: Rebuild.
2393
2394 2011-07-21  Benjamin Kosnik  <bkoz@redhat.com>
2395
2396         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Move...
2397         * testsuite/ext/pb_ds/regression/tree_set_rand.cc: ... here.
2398         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: Move...
2399         * testsuite/ext/pb_ds/regression/tree_set_rand_debug.cc: ... here.
2400         * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Move...
2401         * testsuite/ext/pb_ds/regression/tree_map_rand.cc: ... here.
2402         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: Move...
2403         * testsuite/ext/pb_ds/regression/tree_map_rand_debug.cc: ... here.
2404
2405         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Move...
2406         * testsuite/ext/pb_ds/regression/trie_set_rand.cc: ... here.
2407         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: Move...
2408         * testsuite/ext/pb_ds/regression/trie_set_rand_debug.cc: ... here.
2409         * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Move...
2410         * testsuite/ext/pb_ds/regression/trie_map_rand.cc: ... here.
2411         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: Move...
2412         * testsuite/ext/pb_ds/regression/trie_map_rand_debug.cc: ... here.
2413
2414         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand.cc: Move.
2415         * testsuite/ext/pb_ds/regression/list_update_set_rand.cc: ...here.
2416         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
2417         Move...
2418         * testsuite/ext/pb_ds/regression/list_update_set_rand_debug.cc: ...here.
2419         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Move...
2420         * testsuite/ext/pb_ds/regression/list_update_map_rand.cc: ...here.
2421         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
2422         Move...
2423         * testsuite/ext/pb_ds/regression/list_update_map_rand_debug.cc: ...here.
2424
2425         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Move...
2426         * testsuite/ext/pb_ds/regression/hash_set_rand.cc: ...here.
2427         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: Move...
2428         * testsuite/ext/pb_ds/regression/hash_set_rand_debug.cc: ...here.
2429
2430         * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Move...
2431         * testsuite/ext/pb_ds/regression/hash_map_rand.cc: ...here.
2432         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: Move...
2433         * testsuite/ext/pb_ds/regression/hash_map_rand_debug.cc: ...here.
2434
2435 2011-07-21  François Dumont  <francois.cppdevs@free.fr>
2436
2437         * include/debug/safe_unordered_sequence.h,
2438         safe_unordered_sequence.tcc: Rename respectively in...
2439         * include/debug/safe_unordered_container.h,
2440         safe_unordered_container.tcc: ...those. _Safe_unordered_sequence
2441         rename _Safe_unordered_container.
2442         * include/debug/safe_unordered_base.h: _Safe_unordered_sequence_base
2443         rename _Safe_unordered_container_base.
2444         * include/debug/unordered_map, unordered_set: Adapt to previous
2445         modifications.
2446         * config/abi/pre/gnu.ver: Likewise.
2447         * src/debug.cc: Likewise.
2448         * include/Makefile.am: Likewise.
2449         * include/Makefile.in: Regenerate.
2450
2451 2011-07-21  Paolo Carlini  <paolo.carlini@oracle.com>
2452
2453         * include/std/mutex (timed_mutex, recursive_timed_mutex): Update
2454         to use steady_clock instead of monotonic_clock.
2455         * config/abi/pre/gnu.ver: Export steady_clock::now.
2456
2457 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
2458             Daniel Krugler  <daniel.kruegler@googlemail.com>
2459
2460         * include/std/array (array::at, array::operator[]): Mark constexpr.
2461         * testsuite/23_containers/array/requirements/
2462         constexpr_element_access.cc: Add.
2463
2464 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
2465             Daniel Krugler  <daniel.kruegler@googlemail.com>
2466
2467         * include/std/chrono: (system_clock::is_steady): Update to N3291
2468         from is_monotonic.
2469         (time_point): Mark nonmember arithmetic operators constexpr.
2470         * src/chrono.cc: Modify for above.
2471         * src/compatibility-c++0x.cc: Same.
2472         * testsuite/20_util/time_point/nonmember/constexpr.cc: New.
2473         * testsuite/20_util/time_point/1.cc: Modify.
2474         * testsuite/20_util/system_clock/constexpr_data.cc: Modify.
2475         * testsuite/20_util/system_clock/1.cc: Modify.
2476         * testsuite/20_util/monotonic_clock/constexpr_data.cc: Move to...
2477         * testsuite/20_util/steady_clock/constexpr_data.cc: ...here.
2478         * testsuite/30_threads/condition_variable/members/2.cc: Modify.
2479         * testsuite/30_threads/condition_variable_any/members/2.cc: Modify.
2480
2481 2011-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
2482
2483         * include/std/system_error: Use noexcept.
2484         * src/system_error.cc: Likewise.
2485         * testsuite/19_diagnostics/error_condition/modifiers/39881.cc: Adjust.
2486         * testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
2487         * testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
2488         * testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
2489         * testsuite/util/testsuite_error.h: Likewise.
2490
2491         * include/std/system_error (error_code::error_code(_ErrorCodeEnum)):
2492         Use enable_if on template parameter default.
2493         (error_condition::error_condition(_ErrorConditionEnum)): Likewise.
2494
2495 2011-07-20  Ed Smith-Rowland  <3dw4rd@verizon.net>
2496
2497         * include/precompiled/stdc++.h: Add scoped_allocator.
2498
2499 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
2500
2501         * include/std/bitset (operator[]): Make constexpr.
2502         * testsuite/23_containers/bitset/operations/constexpr.cc: New.
2503
2504 2011-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
2505
2506         * include/debug/safe_local_iterator.h (_Safe_local_iterator<>::
2507         _Safe_local_iterator(const _Iterator&, size_type, const _Sequence*)):
2508         Fix typo.
2509
2510 2011-07-19  François Dumont  <francois.cppdevs@free.fr>
2511
2512         * include/debug/safe_unordered_base.h, safe_unordered_sequence.h,
2513         safe_unordered_sequence.tcc, safe_local_iterator.h,
2514         safe_local_iterator.tcc: New, support for unordered sequence safe
2515         local iterators.
2516         * include/Makefile.am: Add previous files.
2517         * include/Makefile.in: Regenerate.
2518         * include/debug/unordered_map, unordered_set: Implement
2519         _Safe_unordered_sequence and expose _Safe_local_iterator.
2520         * include/debug/safe_iterator.h, safe_iterator.tcc: Refactor
2521         _Safe_iterator::_M_get_distance static method to expose it as
2522         __get_distance function and use it in _Safe_local_iterator type.
2523         * include/debug/formatter.h: Add __msg_local_iter_compare_bad
2524         _Debug_msg_id enum entry to notify invalid comparison between local
2525         iterators from different buckets. Add _Parameter constructor from
2526         _Safe_local_iterator.
2527         * include/debug/functions.h: Add __valid_range overload for
2528         _Safe_local_iterator.
2529         * src/debug.cc: Add _Safe_unordered_sequence_base and
2530         _Safe_local_iterator_base methods implementations.
2531         * config/abi/pre/gnu.ver: Add export of some
2532         _Safe_unordered_sequence_base and _Safe_local_iterator_base methods.
2533         * testsuite/util/debug/checks.h: Add use_invalid_iterator function to
2534         simulate use of a singular iterator.
2535         * testsuite/util/debug/unordered_checks.h: New, several functions
2536         to simulate classic invalid usage of unordered sequence local
2537         iterators.
2538         * testsuite/23_containers/unordered_map/debug/
2539         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2540         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2541         invalid_local_iterator_compare_neg.cc: New.
2542         * testsuite/23_containers/unordered_multimap/debug/
2543         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2544         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2545         invalid_local_iterator_compare_neg.cc: New.
2546         * testsuite/23_containers/unordered_set/debug/
2547         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2548         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2549         invalid_local_iterator_compare_neg.cc: New.
2550         * testsuite/23_containers/unordered_multiset/debug/
2551         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2552         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2553         invalid_local_iterator_compare_neg.cc: New.
2554
2555 2011-07-18  Paolo Carlini  <paolo.carlini@oracle.com>
2556
2557         PR libstdc++/48430
2558         * include/bits/shared_ptr.h (struct hash<shared_ptr<>>): Use
2559         __hash_base.
2560         * include/bits/unique_ptr.h (struct hash<unique_ptr<>>): Likewise.
2561
2562 2011-07-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2563
2564         * crossconfig.m4 (*-netware): Remove.
2565         * configure: Regenerate.
2566
2567 2011-07-15  Yufeng Zhang  <yufeng.zhang@arm.com>
2568
2569         * config/locale/newlib/ctype_members.cc: New file.
2570         * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add a new C locale
2571         kind: newlib.  Configure to use the newlib specific
2572         ctype_members.cc when with_newlib is enabled.
2573         * configure: Regenerate.
2574
2575 2011-07-15  Paolo Carlini  <paolo.carlini@oracle.com>
2576             Jakub Jelinek  <jakub@redhat.com>
2577
2578         PR libstdc++/49745
2579         * acinclude.m4 ([GLIBCXX_CHECK_GTHREADS]): Check separately for
2580         _POSIX_TIMEOUTS and define _GTHREADS_USE_MUTEX_TIMEDLOCK.
2581         * libsupc++/guard.cc: Include <unistd.h>.
2582         * testsuite/17_intro/headers/c++1998/49745.cc: New.
2583         * configure: Regenerate.
2584         * config.h.in: Likewise.
2585
2586 2011-07-11  Paolo Carlini  <paolo.carlini@oracle.com>
2587
2588         PR libstdc++/49559
2589         * include/bits/stl_algo.h (__move_merge_backward): Remove.
2590         (__move_merge_adaptive, __move_merge_adaptive_backward): New.
2591         (__merge_adaptive): Use the latter two.
2592         (__rotate_adaptive): Avoid self move-assignment.
2593         * include/bits/stl_algobase.h (move_backward): Fix comment.
2594         * testsuite/25_algorithms/stable_sort/49559.cc: New.
2595         * testsuite/25_algorithms/inplace_merge/49559.cc: Likewise.
2596         * testsuite/25_algorithms/inplace_merge/moveable.cc: Extend.
2597         * testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise.
2598         * testsuite/util/testsuite_rvalref.h (rvalstruct::operator=
2599         (rvalstruct&&)): Check for self move-assignment.
2600
2601 2011-07-11  Paolo Carlini  <paolo.carlini@oracle.com>
2602
2603         * testsuite/util/testsuite_allocator.h (propagating_allocator<>::
2604         operator=(const propagating_allocator<>&)): Retun *this.
2605
2606 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2607
2608         * include/Makefile.am: Add new header.
2609         * include/Makefile.in: Regenerate.
2610         * include/std/scoped_allocator: New.
2611         * doc/xml/manual/status_cxx200x.xml: Update.
2612         * testsuite/20_util/scoped_allocator/1.cc: New.
2613         * testsuite/20_util/scoped_allocator/propagation.cc: New.
2614         * testsuite/20_util/scoped_allocator/requirements/typedefs.cc: New.
2615         * testsuite/20_util/scoped_allocator/requirements/
2616         explicit_instantiation.cc: New.
2617
2618 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2619
2620         * include/bits/stl_vector.h: Use new allocator model in C++0x mode.
2621         * include/bits/vector.tcc: Likewise.
2622         * testsuite/util/testsuite_allocator.h (propagating_allocator): Define.
2623         * testsuite/23_containers/vector/allocator/copy_assign.cc: New.
2624         * testsuite/23_containers/vector/allocator/noexcept.cc: New.
2625         * testsuite/23_containers/vector/allocator/copy.cc: New.
2626         * testsuite/23_containers/vector/allocator/swap.cc: New.
2627         * testsuite/23_containers/vector/allocator/move_assign.cc: New.
2628         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2629         Adjust dg-error line numbers.
2630         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2631         Likewise.
2632         * testsuite/23_containers/vector/requirements/dr438/
2633         constructor_1_neg.cc: Likewise.
2634         * testsuite/23_containers/vector/requirements/dr438/
2635         constructor_2_neg.cc: Likewise.
2636
2637 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2638
2639         * include/ext/alloc_traits.h (__allocator_always_compares_equal): New
2640         trait, provide partial specializations for known allocators.
2641         (__alloc_traits::construct, __alloc_traits::destroy): Overload for
2642         non-standard pointer types.
2643         (__alloc_traits::_S_always_equal): New trait for use with noexcept.
2644         (__alloc_traits::_S_nothrow_move): Likewise.
2645         (__alloc_traits::_S_nothrow_swap): Likewise.
2646
2647 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2648
2649         * include/ext/cast.h: Fix typo in include guard.
2650         * include/ext/pointer.h (_Unqualified_type): Remove redundant
2651         partial specializations for volatile types. Fix typos in comments.
2652         (pointer_traits<_Pointer_adaptor<Tp>>::pointer_to): Define.
2653
2654 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2655
2656         PR libstdc++/49668
2657         * include/std/functional (__bind_simple): Define.
2658         * include/std/future (_Task_setter): Parameterize by type of result
2659         pointer instead of state object.
2660         (_S_task_setter): Type deduction helper.
2661         (_Task_state): Use _S_task_setter and __bind_simple.
2662         (_Deferred_state, _Async_state): Store call wrapper directly not as
2663         std::function. Use _S_task_setter and __bind_simple.
2664         (_S_make_deferred_state, _S_make_async_state): Type deduction helpers.
2665         (async): Use new functions and __bind_simple.
2666         * include/std/mutex (call_once): Use __bind_simple.
2667         * include/std/thread (thread): Likewise. Remove unused headers.
2668         * src/thread.cc: Add header.
2669         * testsuite/30_threads/async/49668.cc: New.
2670         * testsuite/30_threads/call_once/49668.cc: New.
2671         * testsuite/30_threads/thread/cons/49668.cc: New.
2672         * testsuite/30_threads/thread/cons/moveable.cc: Remove unused bool.
2673
2674 2011-07-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2675
2676         * configure.host (abi_baseline_subdir_switch): Describe.
2677         Provide default.
2678         (*-*-solaris2.[89], *-*-solaris2.1[0-9]): Override.
2679         * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Substitute
2680         baseline_subdir_switch.
2681         * testsuite/Makefile.am (site.exp): Emit it.
2682         (baseline_subdir): Use it.
2683         * testsuite/libstdc++-abi/abi.exp: Use it.
2684         * configure: Regenerate.
2685         * Makefile.in: Regenerate.
2686         * doc/Makefile.in: Regenerate.
2687         * include/Makefile.in: Regenerate.
2688         * libsupc++/Makefile.in: Regenerate.
2689         * po/Makefile.in: Regenerate.
2690         * python/Makefile.in: Regenerate.
2691         * src/Makefile.in: Regenerate.
2692         * testsuite/Makefile.in: Regenerate.
2693
2694 2011-06-29  François Dumont  <francois.cppdevs@free.fr>
2695
2696         * include/debug/set.h, unordered_map, multiset.h, forward_list,
2697         unordered_set, vector, deque, string, list, multimap.h: Remove
2698         base class default constructor calls.
2699         * include/debug/map.h: Likewise and cleanup several redefinition of
2700         base iterator typedef.
2701
2702 2011-06-29  Nathan Sidwell  <nathan@codesourcery.com>
2703
2704         * libsupc++/eh_arm.c (__cxa_type_match): Construct address of
2705         thrown object here.  Return succeded_with_ptr_to_base for all
2706         pointer cases.
2707
2708 2011-06-23  Jonathan Wakely  <jwakely.gcc@gmail.com>
2709
2710         * testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Fix for
2711         C++0x mode.
2712         * testsuite/25_algorithms/sort/35588.cc: Likewise.
2713         * testsuite/26_numerics/headers/complex/synopsis.cc: Likewise.
2714
2715 2011-06-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
2716
2717         * testsuite/20_util/bind/socket.cc: Use variable and remove attribute.
2718
2719 2011-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
2720
2721         * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Avoid -Wall
2722         warning.
2723
2724 2011-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
2725
2726         * testsuite/20_util/reference_wrapper/invoke.cc: Avoid -Wall warnings.
2727         * testsuite/20_util/reference_wrapper/typedefs-3.cc: Likewise.
2728         * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
2729         * testsuite/20_util/allocator_traits/members/allocate_hint.cc:
2730         Likewise.
2731         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2732         * testsuite/20_util/bind/socket.cc: Likewise.
2733         * testsuite/20_util/pointer_traits/pointer_to.cc: Likewise.
2734         * testsuite/util/testsuite_random.h: Likewise.
2735
2736 2011-06-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
2737
2738         * include/Makefile.am: Add alloc_traits.h headers.
2739         * include/Makefile.in: Regenerate.
2740         * include/std/memory: Include uses_allocator.h explicitly.
2741         * include/bits/allocator.h (allocator_traits): Move to ...
2742         * include/bits/alloc_traits.h: New header.
2743         * include/ext/alloc_traits.h (__alloc_traits): Extension to provide
2744         a common allocator interface for C++98 and C++0x.
2745         * include/bits/stl_construct.h: Use __alloc_traits.
2746         * include/bits/stl_uninitialized.h: Likewise.
2747
2748 2011-06-22  Daniel Krugler  <daniel.kruegler@googlemail.com>
2749             Paolo Carlini  <paolo.carlini@oracle.com>
2750
2751         * include/bits/move.h (__is_nothrow_swappable): Add.
2752         (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Use noexcept.
2753         * include/bits/algorithmfwd.h: Adjust.
2754         * testsuite/25_algorithms/swap/noexcept.cc: New.
2755
2756 2011-06-21  Jakub Jelinek  <jakub@redhat.com>
2757
2758         * testsuite/Makefile.am (check_DEJAGNU_normal_targets): Add
2759         check-DEJAGNUnormal[4-9].
2760         (check-DEJAGNU): Split into 10 jobs for parallel testing instead of 4.
2761         * testsuite/Makefile.in: Regenerated.
2762
2763 2011-06-20  Daniel Krugler  <daniel.kruegler@googlemail.com>
2764             Paolo Carlini  <paolo.carlini@oracle.com>
2765
2766         * include/std/tuple (__conv_types, __one_by_one_convertible,
2767         __all_convertible): Add.
2768         (tuple): Use the latter.
2769         (tuple<_T1>): Remove.
2770         * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error
2771         line number.
2772         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
2773
2774 2011-06-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
2775
2776         * include/bits/ptr_traits.h (pointer_traits<T*>::pointer_to): Use
2777         noexcept.
2778
2779 2011-06-14  Paolo Carlini  <paolo.carlini@oracle.com>
2780
2781         * include/std/valarray (~valarray): Use noexcept.
2782         * include/bits/unique_ptr.h (~unique_ptr): Likewise.
2783         * testsuite/26_numerics/valarray/noexcept_move_construct.cc: New.
2784         * testsuite/20_util/shared_ptr/cons/noexcept_move_construct.cc:
2785         Likewise.
2786         * testsuite/20_util/unique_ptr/cons/noexcept_move_construct.cc:
2787         Likewise.
2788         * testsuite/20_util/weak_ptr/cons/noexcept_move_construct.cc:
2789         Likewise.
2790
2791 2011-06-14  Paolo Carlini  <paolo.carlini@oracle.com>
2792
2793         * include/std/functional: Use noexcept.
2794         * include/bits/stl_tempbuf.h: Likewise.
2795
2796 2011-06-12  François Dumont  <francois.cppdevs@free.fr>
2797             Paolo Carlini  <paolo.carlini@oracle.com>
2798
2799         * include/bits/allocator.h (__shrink_to_fit): Rename to
2800         __shrink_to_fit_aux, fix.
2801         * include/bits/stl_vector.h (_M_shrink_to_fit): Declare.
2802         (shrink_to_fit): Use the latter.
2803         * include/debug/vector (shrink_to_fit): Likewise.
2804         * include/bits/vector.tcc (_M_shrink_to_fit): Define.
2805         * include/bits/stl_deque.h (_M_shrink_to_fit): Declare.
2806         (shrink_to_fit): Use the latter.
2807         * include/debug/deque (shrink_to_fit): Likewise.
2808         * include/bits/deque.tcc (_M_shrink_to_fit): Define.
2809         * include/bits/vector.tcc (vector<bool>::_M_reallocate): Add.
2810         * include/bits/stl_bvector.h (_M_shrink_to_fit): Declare.
2811         (shrink_to_fit): Use the latter.
2812         (reserve): Use _M_reallocate, move inline.
2813         (_Bvector_base<>::_S_nword): Add, use it throughout.
2814         * include/debug/string (shrink_to_fit): Redo.
2815         * include/ext/vstring.h (shrink_to_fit): Optimize.
2816         * include/bits/basic_string.h (shrink_to_fit): Likewise.
2817         * testsuite/21_strings/debug/shrink_to_fit.cc: New.
2818         * testsuite/23_containers/vector/debug/shrink_to_fit.cc: Likewise.
2819         * testsuite/23_containers/vector/debug/bool/shrink_to_fit.cc:
2820         Likewise.
2821         * testsuite/23_containers/vector/bool/capacity/shrink_to_fit.cc:
2822         Likewise.
2823         * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
2824
2825 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2826
2827         * include/ext/extptr_allocator.h (construct, destroy): Fix for C++0x
2828         mode by overloading to take allocator's pointer type.
2829         * testsuite/23_containers/vector/ext_pointer/types/2.cc: New.
2830         * testsuite/23_containers/vector/ext_pointer/explicit_instantiation/
2831         2.cc: New.
2832
2833 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2834
2835         * testsuite/20_util/allocator_traits/requirements/
2836         explicit_instantiation.cc: Add another instantiation.
2837
2838 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2839
2840         * testsuite/20_util/allocator_traits/requirements/typedefs.cc: Check
2841         for allocator_type and value_type.
2842
2843 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2844
2845         * testsuite/30_threads/packaged_task/uses_allocator.cc: New.
2846         * testsuite/30_threads/promise/uses_allocator.cc: Likewise.
2847
2848 2011-06-10  Paolo Carlini  <paolo.carlini@oracle.com>
2849
2850         * include/ext/throw_allocator.h: Use noexcept.
2851         * include/ext/pool_allocator.h: Likewise.
2852         * include/ext/bitmap_allocator.h: Likewise.
2853         * include/ext/new_allocator.h: Likewise.
2854         * include/ext/malloc_allocator.h: Likewise.
2855         * include/ext/array_allocator.h: Likewise.
2856         * include/ext/mt_allocator.h: Likewise.
2857         * include/ext/extptr_allocator.h: Likewise.
2858         * testsuite/util/testsuite_allocator.h: Likewise; do not include
2859         <cassert> directly, include <testsuite_hooks.h> instead.
2860
2861 2011-06-10  Benjamin Kosnik  <bkoz@redhat.com>
2862
2863         * include/ext/pb_ds/*: Doxygen markup redo.
2864         * include/Makefile.am: Fold in constructors_destructor_fn_imps.hpp.
2865         * include/Makefile.in: Regenerate.
2866
2867 2011-06-10  Jason Merrill  <jason@redhat.com>
2868
2869         * testsuite/20_util/bind/ref_neg.cc: Remove wrong test lines.
2870
2871         * testsuite/20_util/bind/ref_neg.cc: Remove dg-excess-errors,
2872         fix dg-error markup.
2873
2874 2011-06-09  Jason Merrill  <jason@redhat.com>
2875
2876         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust.
2877
2878         * testsuite/lib/prune.exp (libstdc++-dg-prune): Prune notes.
2879         * testsuite/20_util/duration/cons/1_neg.cc: Remove dg-excess-errors.
2880         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
2881         * testsuite/20_util/forward/1_neg.cc: Likewise.
2882         * testsuite/20_util/function/cmp/cmp_neg.cc: Likewise.
2883         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2884         * testsuite/20_util/reference_wrapper/ref_neg.cc: Likewise.
2885         * testsuite/20_util/tuple/comparison_operators/35480_neg.cc: Likewise.
2886         * testsuite/tr1/6_containers/tuple/comparison_operators/35480_neg.cc:
2887         Likewise.
2888         * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
2889         * testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise.
2890         * testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc:
2891         Likewise.
2892         * testsuite/20_util/unique_ptr/cons/auto_ptr_neg.cc: Likewise.
2893         * testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: Likewise.
2894         * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc:
2895         Likewise.
2896         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
2897         auto_ptr_rvalue_neg.cc: Likewise.
2898         * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc:
2899         Likewise.
2900         * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
2901         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
2902         Likewise.
2903         * testsuite/23_containers/deque/requirements/dr438/
2904         constructor_1_neg.cc: Likewise.
2905         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
2906         Likewise.
2907         * testsuite/23_containers/forward_list/requirements/dr438/
2908         assign_neg.cc: Likewise.
2909         * testsuite/23_containers/forward_list/requirements/dr438/
2910         constructor_1_neg.cc: Likewise.
2911         * testsuite/23_containers/forward_list/requirements/dr438/
2912         constructor_2_neg.cc: Likewise.
2913         * testsuite/23_containers/forward_list/requirements/dr438/
2914         insert_neg.cc: Likewise.
2915         * testsuite/23_containers/list/requirements/dr438/
2916         assign_neg.cc: Likewise.
2917         * testsuite/23_containers/list/requirements/dr438/
2918         constructor_1_neg.cc: Likewise.
2919         * testsuite/23_containers/list/requirements/dr438/
2920         constructor_2_neg.cc: Likewise.
2921         * testsuite/23_containers/list/requirements/dr438/
2922         insert_neg.cc: Likewise.
2923         * testsuite/23_containers/vector/requirements/dr438/
2924         assign_neg.cc: Likewise.
2925         * testsuite/23_containers/vector/requirements/dr438/
2926         constructor_1_neg.cc: Likewise.
2927         * testsuite/23_containers/vector/requirements/dr438/
2928         constructor_2_neg.cc: Likewise.
2929         * testsuite/23_containers/vector/requirements/dr438/
2930         insert_neg.cc: Likewise.
2931         * testsuite/23_containers/map/operators/1_neg.cc: Likewise.
2932         * testsuite/29_atomics/atomic_integral/operators/
2933         bitwise_neg.cc: Likewise.
2934         * testsuite/decimal/mixed-mode-arith_neg.cc: Likewise.
2935         * testsuite/decimal/mixed-mode-cmp_neg.cc: Likewise.
2936         * testsuite/decimal/operator_neg.cc: Likewise.
2937
2938 2011-06-09  Simon Baldwin  <simonb@google.com>
2939
2940         * scripts/extract_symvers.in: Handle processor/OS specific or
2941         unknown symbol binding strings from readelf.
2942
2943 2011-06-09  Paolo Carlini  <paolo.carlini@oracle.com>
2944
2945         * include/std/type_traits (__is_copy_assignable_impl,
2946         __is_nt_copy_assignable_impl): Fix typo.
2947
2948 2011-06-08  Paolo Carlini  <paolo.carlini@oracle.com>
2949
2950         * include/ext/extptr_allocator.h: Include <ext/numeric_traits.h>
2951         instead of <limits>.
2952         * include/bits/allocator.h: Likewise.
2953
2954         * include/std/chrono (duration_values<>::min): Call lowest, not min.
2955
2956 2011-06-08  Paolo Carlini  <paolo.carlini@oracle.com>
2957
2958         * include/bits/allocator.h (__shrink_to_fit): Simplify.
2959         * include/bits/stl_vector.h (vector<>::shrink_to_fit): Adjust.
2960         * include/bits/stl_deque.h: Likewise.
2961         * include/bits/stl_bvector.h: Likewise.
2962
2963 2011-06-07  Jason Merrill  <jason@redhat.com>
2964
2965         * testsuite/lib/prune.exp: s/required/instantiated/.
2966         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2967         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
2968         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
2969         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
2970         * testsuite/20_util/forward/1_neg.cc: Likewise.
2971         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
2972         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2973         Likewise.
2974         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
2975         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2976         * testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Likewise.
2977         * testsuite/ext/ext_pointer/1_neg.cc: Likewise.
2978         * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Likewise.
2979         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Likewise.
2980         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
2981         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
2982         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
2983         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
2984         shared_ptr_neg.cc: Likewise.
2985
2986 2011-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
2987
2988         * include/bits/move.h (struct __move_if_noexcept_cond): Add.
2989         (move_if_noexcept): Use the latter.
2990         * include/bits/stl_iterator.h (__make_move_if_noexcept_iterator,
2991         _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR): Add.
2992         * include/bits/stl_uninitialized.h
2993         (__uninitialized_move_if_noexcept_a): Add.
2994         * include/bits/vector.tcc (vector<>::reserve): Use
2995         _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR.
2996         (vector<>::_M_insert_aux, _M_fill_insert, _M_default_append,
2997         _M_range_insert): Use __uninitialized_move_if_noexcept_a.
2998         * testsuite/util/testsuite_rvalref.h (throwing_move_constructor):
2999         Add.
3000         (copycounter::copycounter(copycounter&&)): Use noexcept.
3001         * testsuite/23_containers/vector/modifiers/moveable2.cc: New.
3002         * testsuite/23_containers/vector/capacity/resize/moveable2.cc:
3003         Likewise.
3004         * testsuite/23_containers/vector/capacity/reserve/moveable2.cc:
3005         Likewise.
3006
3007 2011-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
3008
3009         PR libstdc++/49293
3010         * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: Tweak
3011         for glibc 2.14.
3012         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
3013
3014 2011-06-06  Paolo Carlini  <paolo.carlini@oracle.com>
3015
3016         * include/bits/move.h (move_if_noexcept): Use __and_ and __not_.
3017
3018 2011-06-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
3019
3020         * include/bits/ptr_traits.h (pointer_traits): Fix typos.
3021         * include/ext/pointer.h (pointer_traits): Add partial specialization
3022         for _Pointer_adapter.
3023
3024 2011-06-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
3025
3026         * testsuite/util/testsuite_allocator.h (tracker_allocator::construct):
3027         Update to C++0x definition using type to construct as template
3028         parameter.
3029         (tracker_allocator::destroy): Likewise for type to destroy.
3030         (uneq_allocator::construct, uneq_allocator::destroy): Likewise.
3031
3032 2011-06-01  Paolo Carlini  <paolo.carlini@oracle.com>
3033
3034         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
3035         Use std::move on the allocator, use noexcept.
3036         (_Hashtable<>::~_Hashtable): Use noexcept.
3037         * include/bits/stl_list.h: Likewise.
3038         * include/bits/forward_list.h: Likewise.
3039         * include/bits/stl_vector.h: Likewise.
3040         * include/bits/stl_bvector.h: Likewise.
3041         * include/bits/stl_map.h (map<>::map(map&&)): Use noexcept.
3042         * include/bits/stl_set.h: Likewise.
3043         * include/bits/stl_multimap.h: Likewise.
3044         * include/bits/stl_multiset.h: Likewise.
3045         * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(_Rb_tree&&)): Use
3046         std::move on the allocator.
3047         (_Rb_tree<>::~_Rb_tree): Use noexcept.
3048         * include/bits/stl_deque.h: Likewise.
3049         * include/bits/basic_string.h (basic_string<>::~basic_string): Use
3050         noexcept.
3051         * include/ext/vstring.h (__versa_string<>::~__versa_string): Likewise.
3052         * include/debug/set.h: Adjust.
3053         * include/debug/unordered_map: Likewise.
3054         * include/debug/multiset.h: Likewise.
3055         * include/debug/forward_list: Likewise.
3056         * include/debug/vector: Likewise.
3057         * include/debug/unordered_set: Likewise.
3058         * include/debug/deque: Likewise.
3059         * include/debug/map.h: Likewise.
3060         * include/debug/string: Likewise.
3061         * include/debug/list: Likewise.
3062         * include/debug/multimap.h: Likewise.
3063         * include/profile/set.h: Likewise.
3064         * include/profile/unordered_map: Likewise.
3065         * include/profile/multiset.h: Likewise.
3066         * include/profile/forward_list: Likewise.
3067         * include/profile/unordered_set: Likewise.
3068         * include/profile/vector: Likewise.
3069         * include/profile/deque: Likewise.
3070         * include/profile/map.h: Likewise.
3071         * include/profile/list: Likewise.
3072         * include/profile/multimap.h: Likewise.
3073         * testsuite/21_strings/basic_string/cons/wchar_t/
3074         noexcept_move_construct.cc: New.
3075         * testsuite/21_strings/basic_string/cons/char/
3076         noexcept_move_construct.cc: Likewise.
3077         * testsuite/ext/vstring/cons/noexcept_move_construct.cc: Likewise.
3078         * testsuite/23_containers/unordered_map/cons/
3079         noexcept_move_construct.cc: Likewise.
3080         * testsuite/23_containers/multimap/cons/
3081         noexcept_move_construct.cc: Likewise.
3082         * testsuite/23_containers/set/cons/
3083         noexcept_move_construct.cc: Likewise.
3084         * testsuite/23_containers/unordered_multimap/cons/
3085         noexcept_move_construct.cc: Likewise.
3086         * testsuite/23_containers/forward_list/cons/
3087         noexcept_move_construct.cc: Likewise.
3088         * testsuite/23_containers/unordered_set/cons/
3089         noexcept_move_construct.cc: Likewise.
3090         * testsuite/23_containers/vector/bool/cons/
3091         noexcept_move_construct.cc: Likewise.
3092         * testsuite/23_containers/vector/cons/
3093         noexcept_move_construct.cc: Likewise.
3094         * testsuite/23_containers/multiset/cons/
3095         noexcept_move_construct.cc: Likewise.
3096         * testsuite/23_containers/list/cons/
3097         noexcept_move_construct.cc: Likewise.
3098         * testsuite/23_containers/unordered_multiset/cons/
3099         noexcept_move_construct.cc: Likewise.
3100         * testsuite/23_containers/map/cons/noexcept_move_construct.cc
3101         * testsuite/23_containers/forward_list/requirements/dr438/
3102         assign_neg.cc: Adjust dg-error line numbers.
3103         * testsuite/23_containers/forward_list/requirements/dr438/
3104         insert_neg.cc: Likewise.
3105         * testsuite/23_containers/forward_list/requirements/dr438/
3106         constructor_1_neg.cc: Likewise.
3107         * testsuite/23_containers/forward_list/requirements/dr438/
3108         constructor_2_neg.cc: Likewise.
3109         * testsuite/23_containers/vector/requirements/dr438/
3110         assign_neg.cc: Likewise.
3111         * testsuite/23_containers/vector/requirements/dr438/
3112         insert_neg.cc: Likewise.
3113         * testsuite/23_containers/vector/requirements/dr438/
3114         constructor_1_neg.cc: Likewise.
3115         * testsuite/23_containers/vector/requirements/dr438/
3116         constructor_2_neg.cc: Likewise.
3117         * testsuite/23_containers/deque/requirements/dr438/
3118         assign_neg.cc: Likewise.
3119         * testsuite/23_containers/deque/requirements/dr438/
3120         insert_neg.cc: Likewise.
3121         * testsuite/23_containers/deque/requirements/dr438/
3122         constructor_1_neg.cc: Likewise.
3123         * testsuite/23_containers/deque/requirements/dr438/
3124         constructor_2_neg.cc: Likewise.
3125         * testsuite/23_containers/list/requirements/dr438/
3126         assign_neg.cc: Likewise.
3127         * testsuite/23_containers/list/requirements/dr438/
3128         insert_neg.cc: Likewise.
3129         * testsuite/23_containers/list/requirements/dr438/
3130         constructor_1_neg.cc: Likewise.
3131         * testsuite/23_containers/list/requirements/dr438/
3132         constructor_2_neg.cc: Likewise.
3133
3134         * include/bits/move.h (swap): Use __and_ in the noexcept.
3135         * include/bits/algorithmfwd.h: Adjust.
3136
3137 2011-05-31  Paolo Carlini  <paolo.carlini@oracle.com>
3138
3139         * include/bits/basic_string.h: Use noexcept per the FDIS (minus
3140         compare(const string&), which uses char_traits::compare, which
3141         isn't noexcept; also no noexcept in the move assignment operator
3142         and move assign, see c++std-lib-30855).
3143         * include/bits/basic_string.tcc: Likewise.
3144         * include/ext/vstring.h: Likewise.
3145         * include/ext/vstring.tcc: Likewise.
3146         * include/debug/string: Likewise.
3147
3148 2011-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
3149
3150         * doc/xml/manual/status_cxx200x.xml: Update.
3151         * doc/html/*: Regenerate.
3152
3153 2011-05-30  Paolo Carlini  <paolo.carlini@oracle.com>
3154
3155         * include/std/type_traits (__or_, __and_): Add trivial definitions
3156         for a single element.
3157         * include/bits/stl_pair.h: Use __and_ in noexcept specs and
3158         constraints.
3159         (pair<>::pair(pair&&)): Define.
3160         (pair<>::pair(const pair<>&)): Constrain with is_convertible.
3161         (pair<>::pair(pair<>&&)): Likewise, remove noexcept.
3162         * include/std/tuple: Use __and_ in noexcept specs and constraints.
3163         (_Tuple_impl<>::_Tuple_impl(allocator_arg_t, const _Alloc&,
3164         _Tuple_impl&&)): Remove noexcept.
3165         (tuple<>::tuple(_UElements&&...), tuple(const tuple<_UElements...>&),
3166         tuple(tuple<_UElements...>&&), tuple(const pair<_U1, _U2>&),
3167         tuple(pair<_U1, _U2>&&)): Constrain with is_convertible.
3168         * testsuite/20_util/tuple/moveable2.cc: Use = delete.
3169         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
3170         Adjust dg-error line numbers.
3171         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3172         Likewise.
3173         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
3174         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
3175         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
3176
3177 2011-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
3178
3179         * include/std/tuple: Restore is_convertible constraint.
3180         * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: Remove.
3181
3182 2011-05-30  Paolo Carlini  <paolo.carlini@oracle.com>
3183
3184         PR libstdc++/49236
3185         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
3186         line number.
3187
3188 2011-05-30  Jonathan Wakely  <jwakely.gcc@gmail.com>
3189
3190         * include/std/tuple: Implement uses-allocator construction.
3191         * include/bits/allocator.h (uses_allocator): Move to ...
3192         * include/bits/uses_allocator.h: New file.
3193         * include/Makefile.am: Add new header.
3194         * include/Makefile.in: Regenerate.
3195         * testsuite/20_util/uses_allocator/cons_neg.cc: New.
3196         * testsuite/20_util/uses_allocator/construction.cc: New.
3197         * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: New.
3198         * testsuite/20_util/tuple/cons/allocators.cc: New.
3199
3200 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
3201
3202         * testsuite/20_util/pointer_traits/pointer_to.cc: Fix.
3203
3204 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
3205
3206         * acinclude.m4: Define GLIBCXX_CHECK_GET_NPROCS and
3207         GLIBCXX_CHECK_SC_NPROCESSORS_ONLN.
3208         * configure.ac: Use them. Increase minor version.
3209         * configure: Regenerate.
3210         * config.h.in: Regenerate.
3211         * include/std/thread (thread::hardware_concurrency): Remove inline
3212         definition.
3213         * src/thread.cc (thread::hardware_concurrency): Define.
3214         * config/abi/pre/gnu.ver: Export new symbol @3.4.17
3215         * testsuite/util/testsuite_abi.cc: Add new version.
3216         * testsuite/lib/libstdc++.exp (check_v3_target_nprocs): Add.
3217         * testsuite/lib/dg-options.exp (dg-require-nprocs): Add.
3218         * testsuite/30_threads/thread/members/hardware_concurrency.cc: Use
3219         dg-require-nprocs and verify hardware_concurrency returns non-zero.
3220
3221 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
3222
3223         * testsuite/20_util/pointer_traits/pointer_to.cc: New.
3224
3225 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
3226
3227         * include/Makefile.am: Add new ptr_traits.h header.
3228         * include/Makefile.in: Regenerate.
3229         * include/bits/ptr_traits.h (pointer_traits): New.
3230         * include/bits/allocator.h (allocator_traits): Add.
3231         * include/ext/array_allocator.h (construct, destroy): Update C++0x
3232         versions.
3233         * include/ext/bitmap_allocator.h (construct, destroy): Likewise.
3234         * include/ext/extptr_allocator.h (construct, destroy): Likewise.
3235         * include/ext/malloc_allocator.h (construct, destroy): Likewise.
3236         * include/ext/mt_allocator.h (construct, destroy): Likewise.
3237         * include/ext/new_allocator.h (construct, destroy): Likewise.
3238         * include/ext/pool_allocator.h (construct, destroy): Likewise.
3239         * include/ext/throw_allocator.h (construct, destroy): Likewise.
3240         * testsuite/20_util/allocator_traits/requirements/typedefs.cc: New.
3241         * testsuite/20_util/allocator_traits/requirements/
3242         explicit_instantiation.cc: New.
3243         * testsuite/20_util/allocator_traits/members/max_size.cc: New.
3244         * testsuite/20_util/allocator_traits/members/select.cc: New.
3245         * testsuite/20_util/allocator_traits/members/construct.cc: New.
3246         * testsuite/20_util/allocator_traits/members/allocate_hint.cc: New.
3247         * testsuite/20_util/allocator_traits/members/destroy.cc: New.
3248         * testsuite/20_util/pointer_traits/requirements/typedefs.cc: New.
3249         * testsuite/20_util/pointer_traits/requirements/
3250         explicit_instantiation.cc: New.
3251
3252 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
3253
3254         * include/std/future (launch): Update enumerators and define
3255         operators required for bitmask type. Remove trailing whitespace.
3256         * src/future.cc: Remove trailing whitespace.
3257         * testsuite/30_threads/async/any.cc: Adjust.
3258         * testsuite/30_threads/async/sync.cc: Adjust.
3259         * testsuite/30_threads/async/launch.cc: New.
3260
3261 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
3262
3263         * include/std/future: Use noexcept.