OSDN Git Service

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