OSDN Git Service

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