OSDN Git Service

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