OSDN Git Service

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