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