OSDN Git Service

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