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: