OSDN Git Service

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