OSDN Git Service

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