OSDN Git Service

2011-10-03 Jonathan Wakely <jwakely.gcc@gmail.com>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2011-10-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
2
3         * testsuite/20_util/pointer_traits/pointer_to.cc: Define equality
4         operator and use.
5
6 2011-10-03  Paolo Carlini  <paolo.carlini@oracle.com>
7
8         * include/bits/hashtable.h (_Hashtable<>::insert(value_type&&),
9         insert(const_iterator, value_type&&)): Don't define here...
10         * include/bits/unordered_set.h (__unordered_set<>,
11         __unordered_multiset<>): ... define here instead.
12
13 2011-09-29  Jason Merrill  <jason@redhat.com>
14
15         * testsuite/util/testsuite_tr1.h (test_property): Avoid
16         ambiguity.
17
18 2011-10-01  François Dumont  <fdumont@gcc.gnu.org>
19
20         * include/debug/vector (vector<>::erase(iterator, iterator): Check
21         iterators equality using normal iterators.
22         * include/debug/deque (deque<>::erase(iterator, iterator): Likewise.
23
24 2011-09-29  Paolo Carlini  <paolo.carlini@oracle.com>
25
26         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
27         Remove noexcept from declaration too.
28
29 2011-09-27  Benjamin Kosnik  <bkoz@redhat.com>
30
31         * doc/html/*: Regenerate.
32
33         * doc/Makefile.am: Un-nest the ext output directory.
34         * doc/Makefile.in: Regenerate.
35         * spine.xml: Remove authors, add abstract for short
36         contents. Rename to index.html for html output.
37         * manual/spine.xml: Authors here, manual starts with index.html.
38         * api.xml: Update.
39         * faq.xml: Same.
40
41 2011-09-27  Marcus Shawcroft  <marcus.shawcroft@arm.com>
42
43         * libsupc++/tinfo.cc (type_info::operator==): Test __name instead
44         of name().
45
46 2011-09-26  Paolo Carlini  <paolo.carlini@oracle.com>
47
48         PR libstdc++/50529
49         * include/bits/vector.tcc (vector<>::erase(iterator, iterator)):
50         Fix to do nothing if the range is empty.
51         * include/bits/stl_bvector.h: Likewise.
52         * include/bits/deque.tcc: Likewise.
53         * include/debug/vector: Adjust.
54         * include/debug/deque: Likewise.
55         * testsuite/23_containers/vector/modifiers/erase/50529.cc: New.
56         * testsuite/23_containers/deque/modifiers/erase/50529.cc: Likewise.
57         * testsuite/23_containers/deque/modifiers/erase/3.cc: Adjust.
58
59 2011-09-25  Benjamin Kosnik  <bkoz@redhat.com>
60             Jonathan Wakely  <jwakely.gcc@gmail.com>
61
62         PR libstdc++/48698
63         * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Set libtool_VERSION here.
64         * configure.ac: Move AC_SUBST of libtool_VERSION past call to
65         GLIBCXX_ENABLE_SYMVERS.
66         * configure: Regenerate.
67         * include/bits/c++config: Use __7 as versioned namespace name.
68         * config/abi/pre/gnu-versioned-namespace.ver: Change mangling as
69         per above.
70         * include/c_global/cwchar: Adjust nested namespaces.
71         * testsuite/20_util/bind/48698.cc: Add test case.
72         * testsuite/ext/profile/mutex_extensions_neg.cc: Change line number.
73
74 2011-09-25  Paolo Carlini  <paolo.carlini@oracle.com>
75
76         Revert (no longer necessary post r179130):
77
78         2010-04-27  Fabien Chêne  <fabien.chene@gmail.com>
79
80         * testsuite/util/testsuite_error.h: Add empty default constructor
81         to __gnu_test::test_category and
82         __gnu_test::test_derived_category.
83         * src/future.cc: Add empty default constructor to
84         future_error_category.
85         * src/system_error.cc: Add default ctor to generic_error_category
86         and system_error_category.
87
88 2011-09-24  John Salmon  <john.salmon@deshaw.com>
89
90         PR libstdc++/50510
91         * include/bits/random.tcc (seed_seq::generate): Fix computation.
92
93 2011-09-24  John Salmon  <john.salmon@deshaw.com>
94
95         PR libstdc++/50509
96         * include/bits/random.tcc (seed_seq::generate): Fix computation.
97
98 2011-09-21  Benjamin Kosnik  <bkoz@redhat.com
99
100         * doc/Makefile.am (stamp-epub-docbook): Fix image directory location.
101         * doc/Makefile.in: Regenerate.
102
103 2011-09-21  Paolo Carlini  <paolo.carlini@oracle.com>
104
105         * src/limits.cc: Replace everywhere __int128_t -> __int128, and
106         __uint128_t -> unsigned __int128.
107         * include/std/type_traits: Likewise.
108         * include/std/limits: Likewise.
109         * testsuite/18_support/numeric_limits/dr559.cc: Likewise.
110         * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
111         * testsuite/18_support/numeric_limits/40856.cc: Likewise.
112         * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
113         * testsuite/util/testsuite_common_types.h: Likewise.
114         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Likewise.
115         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
116         * testsuite/20_util/is_floating_point/value.cc: Likewise.
117         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise.
118         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
119         * testsuite/20_util/is_signed/value.cc: Likewise.
120         * testsuite/20_util/is_unsigned/value.cc: Likewise.
121         * testsuite/20_util/is_integral/value.cc: Likewise.
122         * config/abi/pre/gnu.ver: Likewise.
123         * acinclude.m4: Likewise.
124         * configure: Regenerate.
125         * config.h.in: Likewise.
126
127 2011-09-19  Paolo Carlini  <paolo.carlini@oracle.com>
128
129         PR libstdc++/40856
130         * include/std/limits (numeric_limits<__int128_t>,
131         numeric_limits<__uint128_t>): Add.
132         * src/limits.cc:Define.
133         * config/abi/pre/gnu.ver: Export.
134         * include/ext/typelist.h (_GLIBCXX_TYPELIST_CHAIN16, 20): Add.
135         * testsuite/util/testsuite_common_types.h (integral_types_gnu): Add
136         (limits_tl): Use it.
137         * testsuite/18_support/numeric_limits/requirements/
138         constexpr_functions.cc: Likewise.
139         * testsuite/18_support/numeric_limits/40856.cc: New.
140         * testsuite/18_support/numeric_limits/dr559.cc: Extend.
141         * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
142         * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
143         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-error
144         line numbers.
145         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
146         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Likewise.
147         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
148         * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
149         Likewise.
150         * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc:
151         Likewise.
152         * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
153         Likewise.
154
155 2011-09-17  Paolo Carlini  <paolo.carlini@oracle.com>
156
157         PR libstdc++/50441
158         * acinclude.m4 ([GLIBCXX_ENABLE_INT128_FLOAT128]): Add.
159         * configure.ac: Call it.
160         * include/std/type_traits (__is_integral_helper<__int128_t>,
161         __is_integral_helper<__uint128_t>,
162         __is_floating_point_helper<__float128>,
163         __make_unsigned<__int128_t>, __make_signed<__uint128_t>): Add.
164         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Extend.
165         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
166         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise.
167         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
168         * testsuite/20_util/is_signed/value.cc: Likewise.
169         * testsuite/20_util/is_unsigned/value.cc: Likewise.
170         * testsuite/20_util/is_integral/value.cc: Likewise.
171         * testsuite/20_util/is_floating_point/value.cc: New.
172         * testsuite/20_util/is_floating_point/requirements/typedefs.cc:
173         Likewise.
174         * testsuite/20_util/is_floating_point/requirements/
175         explicit_instantiation.cc: Likewise.
176         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
177         dg-error line numbers.
178         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
179         Likewise.
180         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
181         * configure: Regenerate.
182         * config.h.in: Likewise.
183
184 2011-09-17  François Dumont  <fdumont@gcc.gnu.org>
185
186         * include/bits/hashtable.h (_Hashtable<>::__rehash_policy(const
187         _RehashPolicy&)): Commit the modification of the policy only if no
188         exception occured.
189         * testsuite/23_containers/unordered_set/max_load_factor/robustness.cc:
190         New.
191
192 2011-09-16  Paolo Carlini  <paolo.carlini@oracle.com>
193
194         * testsuite/23_containers/array/comparison_operators/
195         less_or_equal.cc: New.
196         * testsuite/23_containers/array/comparison_operators/
197         greater_or_equal.cc: Likewise.
198         * testsuite/23_containers/array/comparison_operators/less.cc: Likewise.
199         * testsuite/23_containers/array/comparison_operators/equal.cc: Likewise.
200         * testsuite/23_containers/array/comparison_operators/not_equal.cc:
201         Likewise.
202         * testsuite/23_containers/array/comparison_operators/greater.cc:
203         Likewise.
204         * testsuite/23_containers/array/iterators/end_is_one_past.cc: Likewise.
205         * testsuite/23_containers/array/capacity/empty.cc: Likewise.
206         * testsuite/23_containers/array/capacity/max_size.cc: Likewise.
207         * testsuite/23_containers/array/capacity/size.cc: Likewise.
208         * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
209         Likewise.
210         * testsuite/23_containers/array/tuple_interface/tuple_size.cc:
211         Likewise.
212         * testsuite/23_containers/array/element_access/at_out_of_range.cc:
213         Likewise.
214         * testsuite/23_containers/array/element_access/back.cc: Likewise.
215         * testsuite/23_containers/array/element_access/front.cc: Likewise.
216         * testsuite/23_containers/array/element_access/data.cc: Likewise.
217         * testsuite/23_containers/array/cons/aggregate_initialization.cc:
218         Likewise.
219         * testsuite/23_containers/array/requirements/zero_sized_arrays.cc:
220         Likewise.
221         * testsuite/23_containers/array/requirements/contiguous.cc: Likewise.
222         * testsuite/23_containers/array/requirements/member_swap.cc: Likewise.
223         * testsuite/23_containers/array/specialized_algorithms/swap.cc:
224         Likewise.
225         * testsuite/23_containers/array/constexpr_get.cc: Move...
226         * testsuite/23_containers/array/tuple_interface/constexpr_get.cc:
227         ... here.
228         * testsuite/23_containers/array/requirements/get.cc: Move...
229         * testsuite/23_containers/array/tuple_interface/get: ... here.
230         * testsuite/23_containers/array/at_neg.cc: Move...
231         * testsuite/23_containers/array/element_access: ... here.
232         * testsuite/23_containers/array/requirements/constexpr_functions.cc:
233         Move...
234         * testsuite/23_containers/array/capacity: ... here.
235         * testsuite/23_containers/array/requirements/
236         constexpr_element_access.cc: Move...
237         * testsuite/23_containers/array/element_access: ... here.
238
239         * testsuite/20_util/duration/cons/1_neg.cc: Avoid -Wall warnings.
240         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Likewise.
241         * testsuite/20_util/pair/make_pair/constexpr.cc: Likewise.
242         * testsuite/20_util/time_point/nonmember/constexpr.cc: Likewise.
243         * testsuite/23_containers/bitset/operations/constexpr.cc: Likewise.
244
245         * testsuite/20_util/duration/cons/1_neg.cc: Discard bogus warning.
246         * testsuite/20_util/forward/1_neg.cc: Likewise.
247
248 2011-09-15  Paolo Carlini  <paolo.carlini@oracle.com>
249
250         * include/std/tuple (make_tuple, forward_as_tuple): Declare constexpr.
251         (_Tuple_impl<>::_Tuple_impl(_Tuple_impl<>&&)): Likewise.
252         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Enable
253         make_tuple test.
254         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
255         line number.
256
257 2011-09-14  François Dumont  <fdumont@gcc.gnu.org>
258             Paolo Carlini  <paolo.carlini@oracle.com>
259
260         * include/bits/hashtable.h (_Hashtable<>::_M_rehash): Take and restore
261         hash policy _M_prev_resize on exception.
262         (_Hashtable<>::_M_insert_bucket): Capture hash policy next resize
263         before using it and use latter method to have it restored on exception.
264         (_Hashtable<>::_M_insert(_Arg&& __v, std::false_type): Likewise.
265         (_Hashtable<>::insert(_InputIterator, _InputIterator): Likewise.
266         (_Hashtable<>::rehash): Likewise.
267         * testsuite/23_containers/unordered_set/insert/hash_policy.cc: New.
268         * testsuite/23_containers/unordered_multiset/insert/hash_policy.cc:
269         Likewise.
270
271 2011-09-13  Paul Brook  <paul@codesourcery.com>
272
273         * libsupc++/eh_arm.cc (__cxa_end_cleanup): Add C6X implementation.
274         * libsupc++/eh_call.cc (__cxa_call_unexpected): Set rtti_base.
275         * libsupc++/eh_personality.cc (NO_SIZE_OF_ENCODED_VALUE): Remove
276         __ARM_EABI_UNWINDER__ check.
277         (parse_lsda_header): Check _GLIBCXX_OVERRIDE_TTYPE_ENCODING.
278         (get_ttype_entry): Use generic implementation on ARM EABI.
279         (check_exception_spec): Use _Unwind_decode_typeinfo_ptr and
280         UNWIND_STACK_REG.
281         (PERSONALITY_FUNCTION): Set ttype_base.
282
283 2011-09-12  Daniel Krugler  <daniel.kruegler@googlemail.com>
284             Paolo Carlini  <paolo.carlini@oracle.com>
285
286         * include/std/tuple (_Head_base<>::_M_head, _Head_base<>::_M_tail,
287         _Tuple_impl<>::_M_head, _Tuple_impl<>::_M_tail): Change to static
288         constexpr functions; adjust everywhere.
289         (__get_helper, get): Declare constexpr all three overloads.
290         (tuple_cat): Declare constexpr; use late return type to improve
291         error messages.
292         * include/std/utility (__pair_get<>::__get, __pair_get<>::__move_get,
293         __pair_get<>::__const_get, get): Declare all constexpr.
294         * include/std/array (get): Likewise.
295         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Re-enable
296         tuple_cat test.
297         * testsuite/23_containers/array/constexpr_get.cc: New.
298         * testsuite/20_util/tuple/element_access/constexpr_get.cc: Likewise.
299         * testsuite/20_util/pair/constexpr_get.cc: Likewise.
300         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
301         line number.
302
303 2011-09-12  Jason Merrill  <jason@redhat.com>
304
305         * testsuite/20_util/is_constructible/value-2.cc: Adjust
306         expected values.
307
308 2011-09-11  Daniel Krugler  <daniel.kruegler@googlemail.com>
309
310         PR libstdc++/50159
311         * include/std/tuple (tuple_cat): Reimplement according to the
312         resolution of LWG 1385.
313         * include/std/type_traits: Define __and_ and __or_ for zero
314         arguments too; minor tweaks.
315         * testsuite/20_util/tuple/creation_functions/tuple_cat.cc: New.
316         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Disable
317         for now tuple_cat test.
318         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
319         line numbers.
320         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
321         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
322         Likewise.
323         * doc/xml/manual/status_cxx200x.xml: Update.
324
325 2011-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
326
327         * include/std/tuple: Use everywhere std::size_t... instead of int...
328         * include/std/functional: Likewise.
329         * include/std/scoped_allocator: Likewise.
330         * include/bits/stl_pair.h: Likewise.
331
332 2011-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
333
334         PR libstdc++/50336
335         * include/bits/streambuf_iterator.h (class istreambuf_iterator):
336         Implement LWG 445 in C++0x mode.
337         * testsuite/24_iterators/istreambuf_iterator/requirements/dr445.cc:
338         New.
339
340 2011-09-08  Dodji Seketeli  <dodji@redhat.com>
341
342         PR c++/33255 - Support -Wunused-local-typedefs warning
343         * include/ext/bitmap_allocator.h
344         (__detail::__mini_vector::__lower_bound): Remove unused typedef.
345         * src/istream.cc (std::operator>>(basic_istream<char>& __in,
346         basic_string<char>& __str)): Likewise.
347         (std::getline): Likewise.
348         * src/valarray.cc (__valarray_product): Likewise.
349
350 2011-09-07  François Dumont  <francois.cppdevs@free.fr>
351
352         * testsuite/23_containers/array/at.cc: Revert to...
353         * testsuite/23_containers/array/at_neg.cc: ...this.
354
355 2011-09-07  Jason Merrill  <jason@redhat.com>
356
357         * testsuite/20_util/bind/ref_neg.cc: Adjust errors.
358         * testsuite/20_util/duration/cons/1_neg.cc: Adjust errors.
359
360 2011-09-06  Benjamin Kosnik  <bkoz@redhat.com>
361
362         * include/std/tuple (_Tuple_impl::_M_head, _M_tail): Mark constexpr.
363         (tuple(tuple&&)): Same.
364         (tuple(const tuple<_UElements...>& __in)): Same.
365         (tuple(tuple<_UElements...>&& __in)): Same.
366         (tuple_cat(const tuple<_TElements...>&, const tuple<_UElements...>&)):
367         Same.
368         (get): Same.
369         * include/std/array: Consolidate array::data usage.
370         * testsuite/23_containers/array/requirements/constexpr_functions.cc:
371         Remove extra include.
372         * testsuite/20_util/tuple/creation_functions/constexpr.cc: New.
373         * testsuite/20_util/tuple/cons/constexpr-2.cc: Add tests.
374         * testsuite/20_util/tuple/cons/constexpr-3.cc: Same.
375         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line numbers.
376
377 2011-09-06  François Dumont  <fdumont@gcc.gnu.org>
378             Paolo Carlini  <paolo.carlini@oracle.com>
379
380         * include/bits/hashtable_policy.h (_Prime_rehash_policy::
381         _M_next_bkt): Cast _M_max_load_factor to long double.
382         (_Prime_rehash_policy::_M_bkt_for_elements): Use _M_next_bkt.
383         (_Prime_rehash_policy::_M_need_rehash): Likewise; cast all
384         float quantities to long double.
385
386 2011-09-06  Paolo Carlini  <paolo.carlini@oracle.com>
387
388         PR libstdc++/50257
389         * include/bits/hashtable_policy.h (_Prime_rehash_policy::
390         _M_next_bkt): Optimize for small argument.
391
392 2011-09-02  François Dumont  <fdumont@gcc.gnu.org>
393
394         * testsuite/util/testsuite_allocator.h (tracker_allocator_counter::
395         allocate): Update allocation count only if allocation succeeded.
396
397 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
398
399         * include/std/bitset: Trivial formatting fixes.
400
401 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
402             Marc Glisse  <marc.glisse@normalesup.org>
403
404         * include/std/bitset (_Base_bitset<>::_M_are_all_aux): Remove.
405         (_Base_bitset<>::_M_are_all): Add.
406         (bitset<>::all): Use the latter, improve implementation.
407
408 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
409             Marc Glisse  <marc.glisse@normalesup.org>
410
411         PR libstdc++/50268
412         * include/std/bitset (struct _Sanitize_val): Add.
413         (bitset<>::bitset(unsigned long long)): Fix.
414         * testsuite/23_containers/bitset/cons/50268.cc: New.
415
416 2011-09-01  Paolo Carlini  <paolo.carlini@oracle.com>
417
418         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
419         Remove noexcept, the move constructor allocates memory; rearrange
420         the code in the body to consistently update __ht._M_rehash_policy
421         before using _M_next_bkt on it.
422         * include/debug/unordered_map: Adjust.
423         * include/debug/unordered_set: Likewise.
424         * include/profile/unordered_map: Likewise.
425         * include/profile/unordered_set: Likewise.
426         * testsuite/23_containers/unordered_map/cons/
427         noexcept_move_construct.cc: Remove.
428         * testsuite/23_containers/unordered_set/cons/
429         noexcept_move_construct.cc: Likewise.
430         * testsuite/23_containers/unordered_multimap/cons/
431         noexcept_move_construct.cc: Likewise.
432         * testsuite/23_containers/unordered_multiset/cons/
433         noexcept_move_construct.cc: Likewise.
434
435 2011-08-31  Paolo Carlini  <paolo.carlini@oracle.com>
436
437         * include/std/chrono (operator*(const _Rep1&, const duration<>&)):
438         Fix order of template parameters per LWG 2004.
439
440 2011-08-30  Paolo Carlini  <paolo.carlini@oracle.com>
441
442         * include/bits/stl_iterator.h (make_move_iterator): Implement DR2061.
443         * testsuite/24_iterators/move_iterator/dr2061.cc: New.
444         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
445         line numbers.
446
447 2011-08-30  Paolo Carlini  <paolo.carlini@oracle.com>
448
449         * config/os/mingw32/error_constants.h: Fix commas.
450
451 2011-08-29  Benjamin Kosnik  <bkoz@redhat.com>
452
453         * testsuite/20_util/duration/arithmetic/constexpr.cc: Add.
454
455 2011-08-29  Kai Tietz  <ktietz@redhat.com>
456
457         * configure: Regenerated.
458         * config.h.in: Regenerated.
459         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR)  Add
460         checks for ECHILD, ENOSPC, EPERM, ETIMEDOUT, and
461         EWOULDBLOCK.
462         * config/os/mingw32/error_constants.h (errc): Add
463         enumerator values no_child_process, no_space_on_device,
464         not_supported, operation_not_permitted, operation_would_block,
465         timed_out, and value_too_large,
466
467 2011-08-29  Paolo Carlini  <paolo.carlini@oracle.com>
468
469         PR libstdc++/50118
470         * include/bits/stl_list.h (_List_base<>::
471         _List_base(const allocator_type&)): Remove.
472         (_List_base<>::_List_base(const _Node_alloc_type&)): Add.
473         (list<>:list(const allocator_type&), list(size_type, const
474         value_type&, const allocator_type&),
475         list(initializer_list<, const allocator_type&),
476         list(_InputIterator, _InputIterator, const allocator_type&),
477         insert(iterator, size_type, const value_type&),
478         insert(iterator, _InputIterator, _InputIterator)): Adjust.
479         * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(const _Compare&,
480         const allocator_type&)): Fix.
481         * include/bits/stl_map.h (map<>::map(const _Compare&,
482         const allocator_type&), map(initializer_list<>,
483         const _Compare&, const allocator_type&), map(_InputIterator,
484         _InputIterator, const _Compare&, const allocator_type&),
485         get_allocator): Adjust.
486         * include/bits/stl_set.h (set<>::set(const _Compare&,
487         const allocator_type&), set(initializer_list<>,
488         const _Compare&, const allocator_type&), set(_InputIterator,
489         _InputIterator, const _Compare&, const allocator_type&),
490         get_allocator): Likewise.
491         * include/bits/stl_multimap.h (multimap<>::multimap(const _Compare&,
492         const allocator_type&), multimap(initializer_list<>,
493         const _Compare&, const allocator_type&), multimap(_InputIterator,
494         _InputIterator, const _Compare&, const allocator_type&),
495         get_allocator): Likewise.
496         * include/bits/stl_multiset.h (multiset<>::multiset(const _Compare&,
497         const allocator_type&), multiset(initializer_list<>,
498         const _Compare&, const allocator_type&), multiset(_InputIterator,
499         _InputIterator, const _Compare&, const allocator_type&),
500         get_allocator): Likewise.
501         * include/bits/forward_list.h (_Fwd_list_base<>::
502         _Fwd_list_base(const _Alloc&), _Fwd_list_base(const _Fwd_list_base&,
503         const _Alloc&), _Fwd_list_base(_Fwd_list_base&&, const _Alloc&)):
504         Remove.
505         (_Fwd_list_base<>::_Fwd_list_base(const _Node_alloc_type&),
506         _Fwd_list_base(const _Fwd_list_base&,
507         const _Node_alloc_type&), _Fwd_list_base(_Fwd_list_base&&,
508         const _Node_alloc_type&)): Add.
509         (forward_list<>::forward_list(const _Alloc&),
510         forward_list(const forward_list&, const _Alloc&),
511         forward_list(forward_list&&, const _Alloc&),
512         forward_list(size_type, const _Tp&, const _Alloc&),
513         forward_list(_InputIterator, _InputIterator, const _Alloc&),
514         forward_list(std::initializer_list<>, const _Alloc&),
515         get_allocator): Adjust.
516         * include/bits/forward_list.tcc: Adjust.
517         * testsuite/util/testsuite_allocator.h (ExplicitConsAlloc): Add.
518         * testsuite/23_containers/unordered_map/requirements/
519         explicit_instantiation/5.cc: New.
520         * testsuite/23_containers/multimap/requirements/
521         explicit_instantiation/5.cc: Likewise.
522         * testsuite/23_containers/multimap/requirements/
523         explicit_instantiation/5_c++0x.cc: Likewise.
524         * testsuite/23_containers/set/requirements/explicit_instantiation/
525         5.cc: Likewise.
526         * testsuite/23_containers/set/requirements/explicit_instantiation/
527         5_c++0x.cc: Likewise.
528         * testsuite/23_containers/unordered_multimap/requirements/
529         explicit_instantiation/5.cc: Likewise.
530         * testsuite/23_containers/forward_list/requirements/
531         explicit_instantiation/5.cc: Likewise.
532         * testsuite/23_containers/unordered_set/requirements/
533         explicit_instantiation/5.cc: Likewise.
534         testsuite/23_containers/multiset/requirements/explicit_instantiation/
535         5.cc: Likewise.
536         * testsuite/23_containers/multiset/requirements/
537         explicit_instantiation/5_c++0x.cc: Likewise.
538         * testsuite/23_containers/list/requirements/explicit_instantiation/
539         5_c++0x.cc: Likewise.
540         * testsuite/23_containers/list/requirements/explicit_instantiation/
541         5.cc: Likewise.
542         * testsuite/23_containers/unordered_multiset/requirements/
543         explicit_instantiation/5.cc: Likewise.
544         * testsuite/23_containers/map/requirements/explicit_instantiation/
545         5.cc: Likewise.
546         * testsuite/23_containers/map/requirements/explicit_instantiation/
547         5_c++0x.cc: Likewise.
548         * testsuite/23_containers/forward_list/requirements/dr438/
549         assign_neg.cc: Adjust dg-error line number.
550         * testsuite/23_containers/forward_list/requirements/dr438/
551         insert_neg.cc: Likewise.
552         * testsuite/23_containers/forward_list/requirements/dr438/
553         constructor_1_neg.cc: Likewise.
554         * testsuite/23_containers/forward_list/requirements/dr438/
555         constructor_2_neg.cc: Likewise.
556         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
557         Likewise.
558         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
559         Likewise.
560         * testsuite/23_containers/list/requirements/dr438/
561         constructor_1_neg.cc: Likewise.
562         * testsuite/23_containers/list/requirements/dr438/
563         constructor_2_neg.cc: Likewise.
564
565 2011-08-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
566
567         * acinclude.m4 (GLIBCXX_CHECK_MATH_PROTO)
568         (GLIBCXX_CHECK_STDLIB_PROTO): New tests.
569         * configure.ac (GLIBCXX_CHECK_MATH_PROTO)
570         (GLIBCXX_CHECK_STDLIB_PROTO): Call them.
571         * configure: Regenerate.
572         * config.h.in: Regenerate.
573         * config/os/solaris/solaris2.8/os_defines.h
574         (__CORRECT_ISO_CPP_MATH_H_PROTO2): Don't define.
575         * config/os/solaris/solaris2.9: Remove.
576         * configure.host (solaris2.8): Merge with ...
577         (solaris2.9, solaris2.1[0-9]): ... this.
578         Always use os/solaris/solaris2.8.
579
580 2011-08-28  Paolo Carlini  <paolo.carlini@oracle.com>
581
582         * include/bits/move.h (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Remove
583         workaround for c++/49045.
584         * include/bits/algorithmfwd.h: Likewise.
585
586 2011-08-25  Tom Tromey  <tromey@redhat.com>
587
588         * testsuite/libstdc++-prettyprinters/simple.cc: New file.
589         * testsuite/lib/gdb-test.exp: New file.
590         * testsuite/libstdc++-prettyprinters/prettyprinters.exp: New
591         file.
592
593 2011-08-18  Marc Glisse  <marc.glisse@normalesup.org>
594
595         * include/tr1/cmath: Extend/update comment.
596
597 2011-08-18  Paolo Carlini  <paolo.carlini@oracle.com>
598
599         PR libstdc++/50119
600         * include/bits/stl_algo.h (__copy_n(_InputIterator, _Size,
601         _OutputIterator, input_iterator_tag)): Fix.
602         * testsuite/25_algorithms/copy_n/50119.cc: New.
603
604 2011-08-18  Marc Glisse  <marc.glisse@normalesup.org>
605             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
606
607         PR libstdc++/1773
608         * config/os/solaris2.7: Rename to config/os/solaris2.9.
609         * config/os/solaris/solaris2.9/os_defines.h
610         (__CORRECT_ISO_CPP_MATH_H_PROTO1)
611         (__CORRECT_ISO_CPP_STDLIB_H_PROTO)
612         (__CORRECT_ISO_CPP_STRING_H_PROTO)
613         (__CORRECT_ISO_CPP_WCHAR_H_PROTO): Define.
614         * config/os/solaris2.8/ctype_base.h,
615         config/os/solaris2.8/ctype_configure_char.cc,
616         config/solaris2.8/ctype_inline.h,
617         config/os/solaris2.8/os_defines.h: New files.
618
619         * configure.host (solaris2.[89], solaris2.1[0-9]):
620         Split into ...
621         (solaris2.8): ... this.
622         Use os/solaris/solaris2.8.
623         (solaris2.9, solaris2.1[0-9]): ... and this.
624         Use os/solaris/solaris2.9.
625
626         * include/c_global/cmath (double abs(double)): Wrap in
627         !__CORRECT_ISO_CPP_MATH_H_PROTO1 &&
628         !__CORRECT_ISO_CPP_MATH_H_PROTO2.
629         (float abs(float), long double abs(long double): Wrap in
630         !__CORRECT_ISO_CPP_MATH_H_PROTO1.
631         (float acos(float), long double acos(long double)): Likewise.
632         (float asin(float), long double asin(long double)): Likewise.
633         (float atan(float), long double atan(long double)): Likewise.
634         (float atan2(float, float), long double atan2(long double, long
635         double)): Likewise.
636         (float ceil(float), long double ceil(long double)): Likewise.
637         (float cos(float), long double cos(long double)): Likewise.
638         (float cosh(float), long double cosh(long double)): Likewise.
639         (float exp(float), long double exp(long double)): Likewise.
640         (float fabs(float), long double fabs(long double)): Likewise.
641         (float floor(float), long double floor(long double)): Likewise.
642         (float fmod(float, float), long double fmod(long double, long
643         double)): Likewise.
644         (float frexp(float, int*), long double frexp(long double, int*)):
645         Likewise.
646         (float ldexp(float, int), long double ldexp(long double, int)):
647         Likewise.
648         (float log(float), long double log(long double)): Likewise.
649         (float log10(float), long double log10(long double)): Likewise.
650         (float modf(float, float*), long double modf(long double, long
651         double*))): Likewise.
652         (float pow(float, float), long double pow(long double, long
653         double)): Likewise.
654         (float sin(float), long double sin(long double)): Likewise.
655         (float sinh(float), long double sinh(long double)): Likewise.
656         (float sqrt(float), long double sqrt(long double)): Likewise.
657         (float tan(float), long double tan(long double)): Likewise.
658         (float tanh(float), long double tanh(long double)): Likewise.
659         * include/c_global/cstdlib (long abs(long), ldiv_t div(long,
660         long)): Wrap in !__CORRECT_ISO_CPP_STDLIB_H_PROTO.
661         * include/tr1/cmath (float fabs(float), long double fabs(long
662         double)): Wrap in !__CORRECT_ISO_CPP_MATH_H_PROTO1.
663
664 2011-08-14  Benjamin Kosnik  <bkoz@redhat.com>
665
666         * doc/xml/images/*: Image and image filename changes.
667
668 2011-08-14  Benjamin Kosnik  <bkoz@redhat.com>
669
670         * testsuite/data/make_graph_test_infos.xml: Edit.
671         * testsuite/data/make_graph_htmls.xml: Remove
672         * scripts/make_graph.py: Edit, fix.
673         * scripts/make_graphs.py: Remove.
674
675         * doc/Makefile.am (doc-svg-performance): New.
676         (doc-html-performance): Remove.
677         * doc/Makefile.in: Regenerate.
678
679         * doc/xml/manual/test_policy_data_structures.xml: Markup changes.
680         * doc/xml/manual/policy_data_structures.xml: Same.
681         * doc/xml/manual/locale.xml: Same.
682
683         Testsuite renames.
684         * performance/ext/pb_ds/priority_queue_text_modify_down_timing.cc:
685         Rename.
686         * performance/ext/pb_ds/random_int_find_timing.cc: Same.
687         * performance/ext/pb_ds/multimap_text_insert_mem_usage.hpp
688         * performance/ext/pb_ds/multimap_text_find_timing.hpp
689         * performance/ext/pb_ds/priority_queue_random_int_push_timing.cc: Same.
690         * performance/ext/pb_ds/priority_queue_text_modify_timing.hpp
691         * performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
692         * performance/ext/pb_ds/multimap_text_insert_mem_usage_large.cc: Same.
693         * performance/ext/pb_ds/priority_queue_text_push_pop_timing.cc: Same.
694         * performance/ext/pb_ds/priority_queue_text_join_timing.cc: Same.
695         * performance/ext/pb_ds/multimap_text_insert_timing_small.cc: Same.
696         * performance/ext/pb_ds/random_int_subscript_insert_timing.cc: Same.
697         * performance/ext/pb_ds/tree_text_lor_find_timing.cc: Same.
698         * performance/ext/pb_ds/priority_queue_text_pop_mem_usage.cc: Same.
699         * performance/ext/pb_ds/multimap_text_find_timing_small.cc: Same.
700         * performance/ext/pb_ds/text_find_timing.cc: Same.
701         * performance/ext/pb_ds/tree_text_insert_timing.cc: Same.
702         * performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc: Same.
703         * performance/ext/pb_ds/random_int_subscript_find_timing.cc: Same.
704         * performance/ext/pb_ds/priority_queue_text_push_timing.cc: Same.
705         * performance/ext/pb_ds/tree_split_join_timing.cc: Same.
706         * performance/ext/pb_ds/multimap_text_insert_timing_large.cc: Same.
707         * performance/ext/pb_ds/priority_queue_text_modify_up_timing.cc: Same.
708         * performance/ext/pb_ds/multimap_text_find_timing_large.cc: Same.
709         * performance/ext/pb_ds/priority_queue_random_int_push_pop_timing.cc:
710         Same.
711         * performance/ext/pb_ds/multimap_text_insert_timing.hpp
712         * performance/ext/pb_ds/multimap_text_insert_mem_usage_small.cc: Same.
713         * performance/ext/pb_ds/hash_zlob_random_int_find_timing.cc: Same.
714
715         * performance/ext/pb_ds/all_int_find.cc: To these new files...
716         * performance/ext/pb_ds/all_int_subscript_find.cc: ...this.
717         * performance/ext/pb_ds/all_int_subscript_insert.cc: ...this.
718         * performance/ext/pb_ds/all_text_find.cc: ...this.
719         * performance/ext/pb_ds/hash_int_erase_mem.cc: ...this.
720         * performance/ext/pb_ds/hash_zlob_int_find.cc: ...this.
721         * performance/ext/pb_ds/multimap_text_find.hpp
722         * performance/ext/pb_ds/multimap_text_find_large.cc: ...this.
723         * performance/ext/pb_ds/multimap_text_find_small.cc: ...this.
724         * performance/ext/pb_ds/multimap_text_insert.hpp
725         * performance/ext/pb_ds/multimap_text_insert_large.cc: ...this.
726         * performance/ext/pb_ds/multimap_text_insert_mem.hpp
727         * performance/ext/pb_ds/multimap_text_insert_mem_large.cc: ...this.
728         * performance/ext/pb_ds/multimap_text_insert_mem_small.cc: ...this.
729         * performance/ext/pb_ds/multimap_text_insert_small.cc: ...this.
730         * performance/ext/pb_ds/priority_queue_int_push.cc: ...this.
731         * performance/ext/pb_ds/priority_queue_int_push_pop.cc: ...this.
732         * performance/ext/pb_ds/priority_queue_text_join.cc: ...this.
733         * performance/ext/pb_ds/priority_queue_text_modify_down.cc: ...this.
734         * performance/ext/pb_ds/priority_queue_text_modify.hpp
735         * performance/ext/pb_ds/priority_queue_text_modify_up.cc: ...this.
736         * performance/ext/pb_ds/priority_queue_text_pop_mem.cc: ...this.
737         * performance/ext/pb_ds/priority_queue_text_push.cc: ...this.
738         * performance/ext/pb_ds/priority_queue_text_push_pop.cc: ...this.
739         * performance/ext/pb_ds/tree_order_statistics.cc: ...this.
740         * performance/ext/pb_ds/tree_split_join.cc: ...this.
741         * performance/ext/pb_ds/tree_text_insert.cc: ...this.
742         * performance/ext/pb_ds/tree_text_lor_find.cc: ...this.
743
744         * doc/xml/images/*: Image and image filename changes.
745
746 2011-08-12  Paolo Carlini  <paolo.carlini@oracle.com>
747
748         * include/c_global/cmath (fmod(_Tp, _Up)): Add.
749         * include/c_std/cmath: Likewise.
750
751 2011-08-11  Paolo Carlini  <paolo.carlini@oracle.com>
752
753         * include/std/future: constexpr functions are implicitly inline.
754         * include/std/chrono: Likewise.
755         * include/std/complex: Likewise.
756         * include/bits/move.h: Likewise.
757         * include/bits/stl_pair.h: Likewise.
758
759 2011-08-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
760
761         * include/bits/alloc_traits.h: Fix doxygen @headername.
762
763 2011-08-06  Benjamin Kosnik  <bkoz@redhat.com>
764
765         * doc/doxygen/user.cfg.in (PDF_HYPERLINKS): To NO.
766
767 2011-08-06  Benjamin Kosnik  <bkoz@redhat.com>
768
769         * doc/doxygen/user.cfg.in: Add scoped_allocator.
770
771         * include/debug/safe_sequence.h: Fix doxygen markup.
772         * include/debug/safe_unordered_base.h: Same.
773         * include/debug/safe_local_iterator.tcc: Same.
774         * include/debug/safe_unordered_container.h: Same.
775         * include/std/valarray: Same.
776         * include/std/iomanip: Same.
777         * include/std/streambuf: Same.
778         * include/std/bitset: Same.
779         * include/std/fstream: Same.
780         * include/std/functional: Same.
781         * include/std/istream: Same.
782         * include/std/ostream: Same.
783         * include/std/scoped_allocator: Same.
784         * include/std/sstream: Same.
785         * include/parallel/multiway_merge.h: Same.
786         * include/parallel/base.h: Same.
787         * include/parallel/for_each_selectors.h: Same.
788         * include/parallel/multiway_mergesort.h: Same.
789         * include/parallel/search.h: Same.
790         * include/parallel/partial_sum.h: Same.
791         * include/parallel/queue.h: Same.
792         * include/parallel/sort.h: Same.
793         * include/parallel/random_number.h: Same.
794         * include/ext/vstring.h: Same.
795         * include/ext/algorithm: Same.
796         * include/ext/pb_ds/assoc_container.h: Same.
797         * include/ext/bitmap_allocator.h: Same.
798         * include/ext/stdio_filebuf.h: Same.
799         * include/ext/memory: Same.
800         * include/ext/functional: Same.
801         * include/bits/basic_ios.h: Same.
802         * include/bits/stl_list.h: Same.
803         * include/bits/stl_map.h: Same.
804         * include/bits/stl_algobase.h: Same.
805         * include/bits/stl_queue.h: Same.
806         * include/bits/gslice.h: Same.
807         * include/bits/locale_classes.h: Same.
808         * include/bits/stl_set.h: Same.
809         * include/bits/locale_facets.h: Same.
810         * include/bits/stl_stack.h: Same.
811         * include/bits/stl_heap.h: Same.
812         * include/bits/forward_list.h: Same.
813         * include/bits/stream_iterator.h: Same.
814         * include/bits/basic_string.h: Same.
815         * include/bits/stl_multimap.h: Same.
816         * include/bits/stl_pair.h: Same.
817         * include/bits/ios_base.h: Same.
818         * include/bits/stl_numeric.h: Same.
819         * include/bits/stl_vector.h: Same.
820         * include/bits/stl_deque.h: Same.
821         * include/bits/codecvt.h: Same.
822         * include/bits/stl_multiset.h: Same.
823         * include/bits/stl_uninitialized.h: Same.
824         * include/bits/ptr_traits.h: Same.
825         * include/bits/slice_array.h: Same.
826         * include/bits/stl_iterator_base_funcs.h: Same.
827         * include/bits/stl_algo.h: Same.
828         * include/bits/stl_iterator.h: Same.
829         * include/bits/stl_tempbuf.h: Same.
830         * include/bits/regex.h: Same.
831         * include/bits/range_access.h: Same.
832         * include/bits/random.h: Same.
833         * include/bits/alloc_traits.h: Same.
834         * include/bits/regex_error.h: Same.
835         * include/bits/locale_facets_nonio.h: Same.
836         * include/bits/stl_relops.h: Same.
837         * include/backward/auto_ptr.h: Same.
838         * libsupc++/initializer_list: Same.
839
840         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
841         Adjust line numbers.
842         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
843         * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
844         Same.
845         * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
846         Same.
847
848 2011-08-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
849
850         * acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Point TOPLEVEL_INCLUDES
851         to $(toplevel_srcdir)/libgcc.
852         * configure: Regenerate.
853
854 2011-08-04  Benjamin Kosnik  <bkoz@redhat.com>
855
856         * doc/xml/manual/build_hacking.xml: Use relative fileref for PNG
857         imagedata.
858         * doc/xml/manual/test_policy_data_structures.xml: Same.
859         * doc/xml/manual/policy_data_structures.xml: Same.
860
861         * doc/Makefile.am (stamp-html-docbook-images)
862         (stamp-html-docbook-lwg, stamp-html-docbook-data): New.
863         (xml_extra): Add lwg html file dependencies.
864         (xml_images): Add image html file dependencies.
865         * doc/Makefile.in: Regenerate.
866         (stamp-html): Change to stamp-html-docbook-data.
867         (stamp-html-copy): Remove.
868
869 2011-08-04  Paolo Carlini  <paolo.carlini@oracle.com>
870
871         * src/atomic.cc: Use noexcept.
872         * include/std/atomic: Likewise.
873         * include/bits/atomic_0.h: Likewise.
874         * include/bits/atomic_2.h: Likewise.
875         * include/bits/atomic_base.h: Likewise.
876
877 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
878
879         * testsuite/performance/27_io/filebuf_sputn_unbuf.cc: Include
880         unistd.h for unlink.
881         * testsuite/performance/27_io/ofstream_insert_int.cc: Same.
882         * testsuite/performance/27_io/ifstream_extract_int.cc: Same.
883         * testsuite/performance/27_io/ifstream_getline-2.cc: Same.
884         * testsuite/performance/27_io/fstream_seek_write.cc: Same.
885         * testsuite/performance/27_io/ifstream_extract_chars.cc: Same.
886         * testsuite/performance/27_io/ofstream_insert_float.cc: Same.
887         * testsuite/performance/27_io/ifstream_extract_float.cc: Same.
888         * testsuite/performance/27_io/filebuf_sputc.cc: Same.
889
890 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
891
892         * include/std/tuple: Mark more constructors constexpr.
893         * testsuite/20_util/tuple/cons/constexpr.cc: Split into and extend as:
894         * testsuite/20_util/tuple/cons/constexpr-2.cc: ...this.
895         * testsuite/20_util/tuple/cons/constexpr-3.cc: ... and this.
896         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line numbers.
897
898 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
899             François Dumont  <francois.cppdevs@free.fr>
900
901         * testsuite/23_containers/array/at_neg.cc: Move...
902         * testsuite/23_containers/array/at.cc: ...here. Remove
903         -fno-exceptions, call const at member function.
904
905 2011-08-01  H.J. Lu  <hongjiu.lu@intel.com>
906
907         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Generated.
908
909 2011-08-01  Paolo Carlini  <paolo.carlini@oracle.com>
910
911         PR c++/49813
912         * include/c_global/cmath (isinf): Remove workaround.
913
914 2011-07-31  Paolo Carlini  <paolo.carlini@oracle.com>
915
916         PR libstdc++/49925
917         * include/bits/shared_ptr.h (make_shared): Qualify allocate_shared
918         with std::.
919         * include/bits/shared_ptr_base.h (__make_shared): Likewise.
920
921 2011-07-29  Benjamin Kosnik  <bkoz@redhat.com>
922
923         * doc/xml/manual/build_hacking.xml: Markup imagedata changes.
924         * doc/xml/manual/policy_data_structures.xml: Same.
925
926         * doc/xml/class.txml: Remove biblioid.
927         * doc/xml/manual/allocator.xml: Same.
928         * doc/xml/manual/ctype.xml: Same.
929         * doc/xml/manual/codecvt.xml: Same.
930         * doc/xml/manual/backwards_compatibility.xml: Same.
931         * doc/xml/manual/abi.xml: Same.
932         * doc/xml/manual/shared_ptr.xml: Same.
933         * doc/xml/manual/using_exceptions.xml: Same.
934         * doc/xml/manual/messages.xml: Same.
935
936 2011-07-29  Benjamin Kosnik  <bkoz@redhat.com>
937
938         Docbook conversion of existing ext/pb_ds documentation.
939         * doc/Makefile.am (xml_sources_manual): Add
940         policy_data_structures.xml and
941         test_policy_data_structures.xml.
942         (stamp-html-copy): Remove special-case for ext/pb_ds directory.
943         (XSLTPROC_FLAGS): Split into XSLT_FLAGS and XSLT_PARAM, use.
944         * doc/Makefile.in: Regenerate.
945         * doc/xml/manual/policy_data_structures.xml: New, adapted from
946           previous html-only instance in doc/html/ext/pb_ds.
947         * doc/xml/manual/test_policy_data_structures.xml: New, same as above.
948
949         * doc/xml/spine.xml: Update copyright.
950         * doc/xml/manual/spine.xml: Same.
951         * doc/xml/manual/extensions.xml: Adjust set, chapter, sections.
952         * doc/xml/manual/bitmap_allocator.xml: Same.
953         * doc/xml/manual/mt_allocator.xml: Same.
954
955         Populate image directory.
956         * doc/xml/images/(pbds_balls_and_bins.png,
957         pbds_binary_priority_queue_random_int_push_timing_test_local.pdf,
958         pbds_binary_priority_queue_random_int_push_timing_test_local.png,
959         pbds_binary_priority_queue_random_int_push_timing_test_local.svg,
960         pbds_cc_hash_random_int_find_timing_test_local.pdf,
961         pbds_cc_hash_random_int_find_timing_test_local.png,
962         pbds_cc_hash_random_int_find_timing_test_local.svg,
963         pbds_cc_hash_random_int_subscript_timing_test_find_local.pdf,
964         pbds_cc_hash_random_int_subscript_timing_test_find_local.png,
965         pbds_cc_hash_random_int_subscript_timing_test_find_local.svg,
966         pbds_cc_hash_random_int_subscript_timing_test_insert_local.pdf,
967         pbds_cc_hash_random_int_subscript_timing_test_insert_local.png,
968         pbds_cc_hash_random_int_subscript_timing_test_insert_local.svg,
969         pbds_container_tag_hierarchy.pdf,
970         pbds_container_tag_hierarchy.png,
971         pbds_container_tag_hierarchy.svg,
972         pbds_different_underlying_dss_1.png,
973         pbds_different_underlying_dss_2.png,
974         pbds_embedded_lists_1.png, pbds_embedded_lists_2.png,
975         pbds_embedded_lists_3.png, pbds_exception_hierarchy.pdf,
976         pbds_exception_hierarchy.png, pbds_exception_hierarchy.svg,
977         pbds_gp_hash_random_int_find_timing_test_local.pdf,
978         pbds_gp_hash_random_int_find_timing_test_local.png,
979         pbds_gp_hash_random_int_find_timing_test_local.svg,
980         pbds_gp_hash_random_int_subscript_timing_test_find_local.pdf,
981         pbds_gp_hash_random_int_subscript_timing_test_find_local.png,
982         pbds_gp_hash_random_int_subscript_timing_test_find_local.svg,
983         pbds_gp_hash_random_int_subscript_timing_test_insert_local.pdf,
984         pbds_gp_hash_random_int_subscript_timing_test_insert_local.png,
985         pbds_gp_hash_random_int_subscript_timing_test_insert_local.svg,
986         pbds_hash_policy_cd.png,
987         pbds_hash_random_int_erase_mem_usage_test_local.pdf,
988         pbds_hash_random_int_erase_mem_usage_test_local.png,
989         pbds_hash_random_int_erase_mem_usage_test_local.svg,
990         pbds_hash_ranged_hash_range_hashing_fns.png,
991         pbds_hash_range_hashing_seq_diagram2.png,
992         pbds_hash_range_hashing_seq_diagram.png,
993         pbds_hash_zlob_random_int_find_timing_test_local.pdf,
994         pbds_hash_zlob_random_int_find_timing_test_local.png,
995         pbds_hash_zlob_random_int_find_timing_test_local.svg,
996         pbds_insert_resize_sequence_diagram1.png,
997         pbds_insert_resize_sequence_diagram2.png,
998         pbds_insert_resize_sequence_diagram3.png,
999         pbds_invalidation_guarantee_erase.png,
1000         pbds_invalidation_tag_hierarchy.pdf,
1001         pbds_invalidation_tag_hierarchy.png,
1002         pbds_invalidation_tag_hierarchy.svg, pbds_list_update.png,
1003         pbds_multimap_text_find_timing_test_large_s2p_hash_local.pdf,
1004         pbds_multimap_text_find_timing_test_large_s2p_hash_local.png,
1005         pbds_multimap_text_find_timing_test_large_s2p_hash_local.svg,
1006         pbds_multimap_text_find_timing_test_large_s2p_tree_local.pdf,
1007         pbds_multimap_text_find_timing_test_large_s2p_tree_local.png,
1008         pbds_multimap_text_find_timing_test_large_s2p_tree_local.svg,
1009         pbds_multimap_text_find_timing_test_small_s2p_hash_local.pdf,
1010         pbds_multimap_text_find_timing_test_small_s2p_hash_local.png,
1011         pbds_multimap_text_find_timing_test_small_s2p_hash_local.svg,
1012         pbds_multimap_text_find_timing_test_small_s2p_tree_local.pdf,
1013         pbds_multimap_text_find_timing_test_small_s2p_tree_local.png,
1014         pbds_multimap_text_find_timing_test_small_s2p_tree_local.svg,
1015         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.pdf,
1016         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
1017         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.svg,
1018         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.pdf,
1019         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
1020         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.svg,
1021         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.pdf,
1022         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
1023         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.svg,
1024         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.pdf,
1025         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.png,
1026         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.svg,
1027         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.pdf,
1028         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.png,
1029         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.svg,
1030         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.pdf,
1031         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.png,
1032         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.svg,
1033         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.pdf,
1034         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.png,
1035         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.svg,
1036         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.pdf,
1037         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.png,
1038         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.svg,
1039         pbds_node_invariants.png,
1040         pbds_pairing_priority_queue_text_push_pop_timing_test_local.pdf,
1041         pbds_pairing_priority_queue_text_push_pop_timing_test_local.png,
1042         pbds_pairing_priority_queue_text_push_pop_timing_test_local.svg,
1043         pbds_pairing_priority_queue_text_push_timing_test_local.pdf,
1044         pbds_pairing_priority_queue_text_push_timing_test_local.png,
1045         pbds_pairing_priority_queue_text_push_timing_test_local.svg,
1046         pbds_pat_trie.png, pbds_point_iterator_hierarchy.png,
1047         pbds_point_iterators_range_ops_1.png,
1048         pbds_point_iterators_range_ops_2.png,
1049         pbds_priority_queue_different_underlying_dss.png,
1050         pbds_priority_queue_random_int_push_pop_timing_test_local.pdf,
1051         pbds_priority_queue_random_int_push_pop_timing_test_local.png,
1052         pbds_priority_queue_random_int_push_pop_timing_test_local.svg,
1053         pbds_priority_queue_random_int_push_timing_test_local.pdf,
1054         pbds_priority_queue_random_int_push_timing_test_local.png,
1055         pbds_priority_queue_random_int_push_timing_test_local.svg,
1056         pbds_priority_queue_tag_hierarchy.pdf,
1057         pbds_priority_queue_tag_hierarchy.png,
1058         pbds_priority_queue_tag_hierarchy.svg,
1059         pbds_priority_queue_text_join_timing_test_local.pdf,
1060         pbds_priority_queue_text_join_timing_test_local.png,
1061         pbds_priority_queue_text_join_timing_test_local.svg,
1062         pbds_priority_queue_text_modify_down_timing_test_local.pdf,
1063         pbds_priority_queue_text_modify_down_timing_test_local.png,
1064         pbds_priority_queue_text_modify_down_timing_test_local.svg,
1065         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.pdf,
1066         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
1067         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.svg,
1068         pbds_priority_queue_text_modify_up_timing_test_local.pdf,
1069         pbds_priority_queue_text_modify_up_timing_test_local.png,
1070         pbds_priority_queue_text_modify_up_timing_test_local.svg,
1071         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.pdf,
1072         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
1073         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.svg,
1074         pbds_priority_queue_text_pop_mem_usage_test_local.pdf,
1075         pbds_priority_queue_text_pop_mem_usage_test_local.png,
1076         pbds_priority_queue_text_pop_mem_usage_test_local.svg,
1077         pbds_priority_queue_text_push_pop_timing_test_local.pdf,
1078         pbds_priority_queue_text_push_pop_timing_test_local.png,
1079         pbds_priority_queue_text_push_pop_timing_test_local.svg,
1080         pbds_priority_queue_text_push_timing_test_local.pdf,
1081         pbds_priority_queue_text_push_timing_test_local.png,
1082         pbds_priority_queue_text_push_timing_test_local.svg,
1083         pbds_rationale_null_node_updator.png,
1084         pbds_resize_policy_cd.png, pbds_restoring_node_invariants.png,
1085         pbds_simple_list.png,
1086         pbds_text_find_timing_test_hash_local.pdf,
1087         pbds_text_find_timing_test_hash_local.png,
1088         pbds_text_find_timing_test_hash_local.svg,
1089         pbds_text_find_timing_test_tree_like_local.pdf,
1090         pbds_text_find_timing_test_tree_like_local.png,
1091         pbds_text_find_timing_test_tree_like_local.svg,
1092         pbds_tree_node_invalidations.png,
1093         pbds_tree_node_invariants.png,
1094         pbds_tree_node_updator_policy_cd.png,
1095         pbds_tree_order_statistics_timing_test_local.pdf,
1096         pbds_tree_order_statistics_timing_test_local.png,
1097         pbds_tree_order_statistics_timing_test_local.svg,
1098         pbds_tree_split_join_timing_test_local.pdf,
1099         pbds_tree_split_join_timing_test_local.png,
1100         pbds_tree_split_join_timing_test_local.svg,
1101         pbds_tree_text_insert_timing_test_node_tree_local.pdf,
1102         pbds_tree_text_insert_timing_test_node_tree_local.png,
1103         pbds_tree_text_insert_timing_test_node_tree_local.svg,
1104         pbds_tree_text_insert_timing_test_pat_trie_local.pdf,
1105         pbds_tree_text_insert_timing_test_pat_trie_local.png,
1106         pbds_tree_text_insert_timing_test_pat_trie_local.svg,
1107         pbds_tree_text_insert_timing_test_vector_tree_local.pdf,
1108         pbds_tree_text_insert_timing_test_vector_tree_local.png,
1109         pbds_tree_text_insert_timing_test_vector_tree_local.svg,
1110         pbds_tree_text_lor_find_timing_test_local.pdf,
1111         pbds_tree_text_lor_find_timing_test_local.png,
1112         pbds_tree_text_lor_find_timing_test_local.svg,
1113         pbds_trie_node_updator_policy_cd.png,
1114         pbds_update_seq_diagram.png): Add.
1115
1116         * doc/html/ext/pb_ds: Remove.
1117         * doc/html/ext/pb_ds/(acks.html, assoc_container_tag_cd.png,
1118         assoc_container_tag_cd.svg, assoc_container_traits.html,
1119         assoc_design.html, assoc_examples.html,
1120         associative_container_tag.html, assoc_performance_tests.html,
1121         assoc_regression_tests.html, assoc_tests.html,
1122         balls_and_bins.png, basic_hash_table.html,
1123         basic_hash_tag.html, basic_invalidation_guarantee.html,
1124         basic_tree_assoc_container_const_node_iterator.html,
1125         basic_tree.html, basic_tree_tag.html, binary_heap_tag.html,
1126         binary_priority_queue_random_int_push_timing_test_gcc.png,
1127         binary_priority_queue_random_int_push_timing_test_local.png,
1128         binary_priority_queue_random_int_push_timing_test_msvc.png,
1129         binomial_heap_tag.html,
1130         ccgp_hash_random_int_subscript_timing_test_insert_gcc.png,
1131         ccgp_hash_random_int_subscript_timing_test_insert_local.png,
1132         ccgp_hash_random_int_subscript_timing_test_insert_msvc.png,
1133         cc_hash_max_collision_check_resize_trigger.html,
1134         cc_hash_random_int_find_timing_test_gcc.png,
1135         cc_hash_random_int_find_timing_test_local.png,
1136         cc_hash_random_int_find_timing_test_msvc.png,
1137         cc_hash_random_int_subscript_timing_test_find_gcc.png,
1138         cc_hash_random_int_subscript_timing_test_find_local.png,
1139         cc_hash_random_int_subscript_timing_test_find_msvc.png,
1140         cc_hash_random_int_subscript_timing_test_insert_gcc.png,
1141         cc_hash_random_int_subscript_timing_test_insert_local.png,
1142         cc_hash_random_int_subscript_timing_test_insert_msvc.png,
1143         cc_hash_table.html, cc_hash_tag.html, checked_by_tidy.gif
1144         concepts.html, contact.html, container_base.html,
1145         container_cd.png, container_cd.svg, container_tag.html,
1146         counter_lu_policy.html, design.html,
1147         different_underlying_dss.png, direct_mask_range_hashing.html,
1148         direct_mod_range_hashing.html, disclaimer.html, ds_gen.html,
1149         embedded_lists_1.png, embedded_lists_2.png,
1150         embedded_lists_3.png, examples.html, exceptions.html,
1151         gp_hash_random_int_find_timing_test_gcc.png,
1152         gp_hash_random_int_find_timing_test_local.png,
1153         gp_hash_random_int_find_timing_test_msvc.png,
1154         gp_hash_random_int_subscript_timing_test_find_gcc.png,
1155         gp_hash_random_int_subscript_timing_test_find_local.png,
1156         gp_hash_random_int_subscript_timing_test_find_msvc.png,
1157         gp_hash_random_int_subscript_timing_test_insert_gcc.png,
1158         gp_hash_random_int_subscript_timing_test_insert_local.png,
1159         gp_hash_random_int_subscript_timing_test_insert_msvc.png,
1160         gp_hash_table.html, gp_hash_tag.html,
1161         hash_based_containers.html, hash_exponential_size_policy.html,
1162         hash_load_check_resize_trigger.html, hash_policy_cd.png,
1163         hash_prime_size_policy.html,
1164         hash_random_int_erase_mem_usage_test_gcc.png,
1165         hash_random_int_erase_mem_usage_test.html,
1166         hash_random_int_erase_mem_usage_test_local.png,
1167         hash_random_int_erase_mem_usage_test_msvc.png,
1168         hash_random_int_find_find_timing_test.html,
1169         hash_random_int_subscript_find_timing_test.html,
1170         hash_random_int_subscript_insert_timing_test.html,
1171         hash_ranged_hash_range_hashing_fns.png,
1172         hash_range_hashing_seq_diagram2.png,
1173         hash_range_hashing_seq_diagram.png,
1174         hash_standard_resize_policy.html,
1175         hash_text_find_find_timing_test.html,
1176         hash_zlob_random_int_find_find_timing_test.html,
1177         hash_zlob_random_int_find_timing_test_gcc.png,
1178         hash_zlob_random_int_find_timing_test_local.png,
1179         hash_zlob_random_int_find_timing_test_msvc.png, index.html,
1180         insert_error.html, insert_resize_sequence_diagram1.png,
1181         insert_resize_sequence_diagram2.png,
1182         insert_resize_sequence_diagram3.png, interface.html,
1183         introduction.html, invalidation_guarantee_cd.png,
1184         invalidation_guarantee_erase.png, join_error.html,
1185         linear_probe_fn.html, list_update.html, list_update_tag.html,
1186         lu_based_containers.html, lu.png, misc.html, motivation.html,
1187         move_to_front_lu_policy.html,
1188         multimap_text_find_timing_test_large.html,
1189         multimap_text_find_timing_test_large_s2p_hash_gcc.png,
1190         multimap_text_find_timing_test_large_s2p_hash_local.png,
1191         multimap_text_find_timing_test_large_s2p_hash_msvc.png,
1192         multimap_text_find_timing_test_large_s2p_tree_gcc.png,
1193         multimap_text_find_timing_test_large_s2p_tree_local.png,
1194         multimap_text_find_timing_test_large_s2p_tree_msvc.png,
1195         multimap_text_find_timing_test_small.html,
1196         multimap_text_find_timing_test_small_s2p_hash_gcc.png,
1197         multimap_text_find_timing_test_small_s2p_hash_local.png,
1198         multimap_text_find_timing_test_small_s2p_hash_msvc.png,
1199         multimap_text_find_timing_test_small_s2p_tree_gcc.png,
1200         multimap_text_find_timing_test_small_s2p_tree_local.png,
1201         multimap_text_find_timing_test_small_s2p_tree_msvc.png,
1202         multimap_text_insert_mem_usage_test_large.html,
1203         multimap_text_insert_mem_usage_test_large_s2p_hash_gcc.png,
1204         multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
1205         multimap_text_insert_mem_usage_test_large_s2p_hash_msvc.png,
1206         multimap_text_insert_mem_usage_test_large_s2p_tree_gcc.png,
1207         multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
1208         multimap_text_insert_mem_usage_test_large_s2p_tree_msvc.png,
1209         multimap_text_insert_mem_usage_test_small.html,
1210         multimap_text_insert_mem_usage_test_small_s2p_hash_gcc.png,
1211         multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
1212         multimap_text_insert_mem_usage_test_small_s2p_hash_msvc.png,
1213         multimap_text_insert_mem_usage_test_small_s2p_tree_gcc.png,
1214         multimap_text_insert_mem_usage_test_small_s2p_tree_local.png,
1215         multimap_text_insert_mem_usage_test_small_s2p_tree_msvc.png,
1216         multimap_text_insert_timing_test_large.html,
1217         multimap_text_insert_timing_test_large_s2p_hash_gcc.png,
1218         multimap_text_insert_timing_test_large_s2p_hash_local.png,
1219         multimap_text_insert_timing_test_large_s2p_hash_msvc.png,
1220         multimap_text_insert_timing_test_large_s2p_tree_gcc.png,
1221         multimap_text_insert_timing_test_large_s2p_tree_local.png,
1222         multimap_text_insert_timing_test_large_s2p_tree_msvc.png,
1223         multimap_text_insert_timing_test_small.html,
1224         multimap_text_insert_timing_test_small_s2p_hash_gcc.png,
1225         multimap_text_insert_timing_test_small_s2p_hash_local.png,
1226         multimap_text_insert_timing_test_small_s2p_hash_msvc.png,
1227         multimap_text_insert_timing_test_small_s2p_tree_gcc.png,
1228         multimap_text_insert_timing_test_small_s2p_tree_local.png,
1229         multimap_text_insert_timing_test_small_s2p_tree_msvc.png,
1230         node_invariant_invalidations.png, node_invariants.png,
1231         null_hash_fn.html, null_lu_metadata.html,
1232         null_mapped_type.html, null_probe_fn.html,
1233         null_tree_node_update.html, null_trie_node_update.html,
1234         ov_tree_tag.html, pairing_heap_tag.html,
1235         pairing_priority_queue_text_push_pop_timing_test_gcc.png,
1236         pairing_priority_queue_text_push_pop_timing_test_local.png,
1237         pairing_priority_queue_text_push_pop_timing_test_msvc.png,
1238         pairing_priority_queue_text_push_timing_test_gcc.png,
1239         pairing_priority_queue_text_push_timing_test_local.png,
1240         pairing_priority_queue_text_push_timing_test_msvc.png,
1241         pat_trie.png, pat_trie_tag.html,
1242         point_invalidation_guarantee.html, point_iterators_cd.png,
1243         point_iterators_range_ops_1.png,
1244         point_iterators_range_ops_2.png, pq_container_traits.html,
1245         pq_design.html, pq_different_underlying_dss.png,
1246         pq_examples.html, pq_performance_tests.html,
1247         pq_regression_tests.html, pq_tests.html, prerequisites.html,
1248         priority_queue.html,
1249         priority_queue_random_int_push_pop_timing_test_gcc.png,
1250         priority_queue_random_int_push_pop_timing_test.html,
1251         priority_queue_random_int_push_pop_timing_test_local.png,
1252         priority_queue_random_int_push_pop_timing_test_msvc.png,
1253         priority_queue_random_int_push_timing_test_gcc.png,
1254         priority_queue_random_int_push_timing_test.html,
1255         priority_queue_random_int_push_timing_test_local.png,
1256         priority_queue_random_int_push_timing_test_msvc.png,
1257         priority_queue_tag_cd.png, priority_queue_tag_cd.svg,
1258         priority_queue_tag.html,
1259         priority_queue_text_join_timing_test_gcc.png,
1260         priority_queue_text_join_timing_test.html,
1261         priority_queue_text_join_timing_test_local.png,
1262         priority_queue_text_join_timing_test_msvc.png,
1263         priority_queue_text_modify_down_timing_test_gcc.png,
1264         priority_queue_text_modify_down_timing_test.html,
1265         priority_queue_text_modify_down_timing_test_local.png,
1266         priority_queue_text_modify_down_timing_test_msvc.png,
1267         priority_queue_text_modify_down_timing_test_pairing_thin_gcc.png,
1268         priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
1269         priority_queue_text_modify_down_timing_test_pairing_thin_msvc.png,
1270         priority_queue_text_modify_up_timing_test_gcc.png,
1271         priority_queue_text_modify_up_timing_test.html,
1272         priority_queue_text_modify_up_timing_test_local.png,
1273         priority_queue_text_modify_up_timing_test_msvc.png,
1274         priority_queue_text_modify_up_timing_test_pairing_thin_gcc.png,
1275         priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
1276         priority_queue_text_modify_up_timing_test_pairing_thin_msvc.png,
1277         priority_queue_text_pop_mem_usage_test_gcc.png,
1278         priority_queue_text_pop_mem_usage_test.html,
1279         priority_queue_text_pop_mem_usage_test_local.png,
1280         priority_queue_text_pop_mem_usage_test_msvc.png,
1281         priority_queue_text_push_pop_timing_test_gcc.png,
1282         priority_queue_text_push_pop_timing_test.html,
1283         priority_queue_text_push_pop_timing_test_local.png,
1284         priority_queue_text_push_pop_timing_test_msvc.png,
1285         priority_queue_text_push_timing_test_gcc.png,
1286         priority_queue_text_push_timing_test.html,
1287         priority_queue_text_push_timing_test_local.png,
1288         priority_queue_text_push_timing_test_msvc.png,
1289         PythonPoweredSmall.gif quadratic_probe_fn.html,
1290         random_int_find_find_timing_test_tree_gcc.png,
1291         random_int_find_find_timing_test_tree_local.png,
1292         random_int_find_find_timing_test_tree_msvc.png,
1293         range_invalidation_guarantee.html,
1294         rationale_null_node_updator.png, rb_tree_tag.html,
1295         rc_binomial_heap_tag.html, references.html, resize_error.html,
1296         resize_policy_cd.png, restoring_node_invariants.png,
1297         sample_probe_fn.html, sample_ranged_hash_fn.html,
1298         sample_ranged_probe_fn.html, sample_range_hashing.html,
1299         sample_resize_policy.html, sample_resize_trigger.html,
1300         sample_size_policy.html, sample_tree_node_update.html,
1301         sample_trie_access_traits.html, sample_trie_node_update.html,
1302         sample_update_policy.html, simple_list.png,
1303         splay_tree_tag.html, tests.html,
1304         text_find_timing_test_hash_gcc.png,
1305         text_find_timing_test_hash_local.png,
1306         text_find_timing_test_hash_msvc.png,
1307         text_find_timing_test_tree_like_gcc.png,
1308         text_find_timing_test_tree_like_local.png,
1309         text_find_timing_test_tree_like_msvc.png, thin_heap_tag.html,
1310         tree_based_containers.html, tree.html,
1311         tree_node_iterator.html, tree_node_updator_policy_cd.png,
1312         tree_order_statistics_node_update.html,
1313         tree_order_statistics_timing_test_gcc.png,
1314         tree_order_statistics_timing_test.html,
1315         tree_order_statistics_timing_test_local.png,
1316         tree_order_statistics_timing_test_msvc.png,
1317         tree_random_int_find_find_timing_test.html,
1318         tree_split_join_timing_test_gcc.png,
1319         tree_split_join_timing_test.html,
1320         tree_split_join_timing_test_local.png,
1321         tree_split_join_timing_test_msvc.png, tree_tag.html,
1322         tree_text_find_find_timing_test.html,
1323         tree_text_insert_timing_test.html,
1324         tree_text_insert_timing_test_node_tree_gcc.png,
1325         tree_text_insert_timing_test_node_tree_local.png,
1326         tree_text_insert_timing_test_node_tree_msvc.png,
1327         tree_text_insert_timing_test_pat_trie_gcc.png,
1328         tree_text_insert_timing_test_pat_trie_local.png,
1329         tree_text_insert_timing_test_pat_trie_msvc.png,
1330         tree_text_insert_timing_test_vector_tree_gcc.png,
1331         tree_text_insert_timing_test_vector_tree_local.png,
1332         tree_text_insert_timing_test_vector_tree_msvc.png,
1333         tree_text_lor_find_find_timing_test.html,
1334         tree_text_lor_find_timing_test_gcc.png,
1335         tree_text_lor_find_timing_test_local.png,
1336         tree_text_lor_find_timing_test_msvc.png,
1337         trie_based_containers.html, trie_const_node_iterator.html,
1338         trie.html, trie_node_iterator.html,
1339         trie_node_updator_policy_cd.png,
1340         trie_order_statistics_node_update.html,
1341         trie_prefix_search_node_update.html,
1342         trie_string_access_traits.html, trie_tag.html,
1343         trivial_iterator_tag.html, tutorial.html,
1344         update_policy_cd.png, update_seq_diagram.png): Remove.
1345
1346 2011-07-27  Paolo Carlini  <paolo.carlini@oracle.com>
1347
1348         PR c++/49813
1349         * include/c_global/cmath: Use _GLIBCXX_CONSTEXPR and constexpr.
1350
1351 2011-07-27  Jeffrey Yasskin  <jyasskin@google.com>
1352
1353         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Updated.
1354
1355 2011-07-25  Benjamin Kosnik  <bkoz@redhat.com>
1356
1357         * include/std/array (at): Remove constexpr when -fno-exceptions.
1358         * testsuite/23_containers/array/at_neg.cc: Test.
1359
1360 2011-07-25  Paolo Carlini  <paolo.carlini@oracle.com>
1361             Nathan Ridge  <zeratul976@hotmail.com>
1362
1363         PR libstdc++/49836
1364         * include/bits/stl_vector.h (vector<>::_M_emplace_back_aux):
1365         Declare.
1366         (vector<>::push_back(const value_type&)): Use it.
1367         * include/bits/vector.tcc: Define.
1368         (vector<>::emplace_back(_Args&&...)): Use it.
1369         * testsuite/util/testsuite_tr1.h (CopyConsOnlyType, MoveConsOnlyType):
1370         Add.
1371         * testsuite/23_containers/vector/modifiers/push_back/49836.cc: New.
1372         * testsuite/23_containers/deque/modifiers/push_back/49836.cc:
1373         Likewise.
1374         * testsuite/23_containers/deque/modifiers/push_front/49836.cc:
1375         Likewise.
1376         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1377         Adjust dg-error line number.
1378         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1379         Likewise.
1380         * testsuite/23_containers/vector/requirements/dr438/
1381         constructor_1_neg.cc: Likewise.
1382         * testsuite/23_containers/vector/requirements/dr438/
1383         constructor_2_neg.cc: Likewise.
1384
1385 2011-07-24  Paolo Carlini  <paolo.carlini@oracle.com>
1386
1387         * include/bits/hashtable_policy.h (_Prime_rehash_policy::_M_next_bkt,
1388         _M_bkt_for_elements, _M_need_rehash): Fix typos in the last commit.
1389
1390 2011-07-24  François Dumont  <francois.cppdevs@free.fr>
1391
1392         * include/bits/hashtable_policy.h (_Prime_rehash_policy): Use
1393         __builtin_floor rather than __builtin_ceil to compute next resize
1394         value.
1395         * testsuite/23_containers/unordered_set/hash_policy/load_factor.cc:
1396         New.
1397
1398 2011-07-22  Benjamin Kosnik  <bkoz@redhat.com>
1399             Daniel Krugler  <daniel.kruegler@googlemail.com>
1400
1401         * include/bits/move.h (move, forward): Mark constexpr.
1402         * include/bits/stl_pair.h (pair): Mark move ctors constexpr.
1403         * testsuite/20_util/pair/make_pair/constexpr.cc: New.
1404         * testsuite/20_util/pair/cons/constexpr.cc: Add tests.
1405
1406 2011-07-22  Ian Lance Taylor  <iant@google.com>
1407
1408         * fragment.am (CONFIG_CXXFLAGS): Add -frandom-seed.
1409         * Makefile.in: Rebuild.
1410         * doc/Makefile.in: Rebuild.
1411         * include/Makefile.in: Rebuild.
1412         * libsupc++/Makefile.in: Rebuild.
1413         * po/Makefile.in: Rebuild.
1414         * python/Makefile.in: Rebuild.
1415         * src/Makefile.in: Rebuild.
1416         * testsuite/Makefile.in: Rebuild.
1417
1418 2011-07-21  Benjamin Kosnik  <bkoz@redhat.com>
1419
1420         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Move...
1421         * testsuite/ext/pb_ds/regression/tree_set_rand.cc: ... here.
1422         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: Move...
1423         * testsuite/ext/pb_ds/regression/tree_set_rand_debug.cc: ... here.
1424         * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Move...
1425         * testsuite/ext/pb_ds/regression/tree_map_rand.cc: ... here.
1426         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: Move...
1427         * testsuite/ext/pb_ds/regression/tree_map_rand_debug.cc: ... here.
1428
1429         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Move...
1430         * testsuite/ext/pb_ds/regression/trie_set_rand.cc: ... here.
1431         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: Move...
1432         * testsuite/ext/pb_ds/regression/trie_set_rand_debug.cc: ... here.
1433         * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Move...
1434         * testsuite/ext/pb_ds/regression/trie_map_rand.cc: ... here.
1435         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: Move...
1436         * testsuite/ext/pb_ds/regression/trie_map_rand_debug.cc: ... here.
1437
1438         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand.cc: Move.
1439         * testsuite/ext/pb_ds/regression/list_update_set_rand.cc: ...here.
1440         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
1441         Move...
1442         * testsuite/ext/pb_ds/regression/list_update_set_rand_debug.cc: ...here.
1443         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Move...
1444         * testsuite/ext/pb_ds/regression/list_update_map_rand.cc: ...here.
1445         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
1446         Move...
1447         * testsuite/ext/pb_ds/regression/list_update_map_rand_debug.cc: ...here.
1448
1449         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Move...
1450         * testsuite/ext/pb_ds/regression/hash_set_rand.cc: ...here.
1451         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: Move...
1452         * testsuite/ext/pb_ds/regression/hash_set_rand_debug.cc: ...here.
1453
1454         * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Move...
1455         * testsuite/ext/pb_ds/regression/hash_map_rand.cc: ...here.
1456         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: Move...
1457         * testsuite/ext/pb_ds/regression/hash_map_rand_debug.cc: ...here.
1458
1459 2011-07-21  François Dumont  <francois.cppdevs@free.fr>
1460
1461         * include/debug/safe_unordered_sequence.h,
1462         safe_unordered_sequence.tcc: Rename respectively in...
1463         * include/debug/safe_unordered_container.h,
1464         safe_unordered_container.tcc: ...those. _Safe_unordered_sequence
1465         rename _Safe_unordered_container.
1466         * include/debug/safe_unordered_base.h: _Safe_unordered_sequence_base
1467         rename _Safe_unordered_container_base.
1468         * include/debug/unordered_map, unordered_set: Adapt to previous
1469         modifications.
1470         * config/abi/pre/gnu.ver: Likewise.
1471         * src/debug.cc: Likewise.
1472         * include/Makefile.am: Likewise.
1473         * include/Makefile.in: Regenerate.
1474
1475 2011-07-21  Paolo Carlini  <paolo.carlini@oracle.com>
1476
1477         * include/std/mutex (timed_mutex, recursive_timed_mutex): Update
1478         to use steady_clock instead of monotonic_clock.
1479         * config/abi/pre/gnu.ver: Export steady_clock::now.
1480
1481 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
1482             Daniel Krugler  <daniel.kruegler@googlemail.com>
1483
1484         * include/std/array (array::at, array::operator[]): Mark constexpr.
1485         * testsuite/23_containers/array/requirements/
1486         constexpr_element_access.cc: Add.
1487
1488 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
1489             Daniel Krugler  <daniel.kruegler@googlemail.com>
1490
1491         * include/std/chrono: (system_clock::is_steady): Update to N3291
1492         from is_monotonic.
1493         (time_point): Mark nonmember arithmetic operators constexpr.
1494         * src/chrono.cc: Modify for above.
1495         * src/compatibility-c++0x.cc: Same.
1496         * testsuite/20_util/time_point/nonmember/constexpr.cc: New.
1497         * testsuite/20_util/time_point/1.cc: Modify.
1498         * testsuite/20_util/system_clock/constexpr_data.cc: Modify.
1499         * testsuite/20_util/system_clock/1.cc: Modify.
1500         * testsuite/20_util/monotonic_clock/constexpr_data.cc: Move to...
1501         * testsuite/20_util/steady_clock/constexpr_data.cc: ...here.
1502         * testsuite/30_threads/condition_variable/members/2.cc: Modify.
1503         * testsuite/30_threads/condition_variable_any/members/2.cc: Modify.
1504
1505 2011-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
1506
1507         * include/std/system_error: Use noexcept.
1508         * src/system_error.cc: Likewise.
1509         * testsuite/19_diagnostics/error_condition/modifiers/39881.cc: Adjust.
1510         * testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
1511         * testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
1512         * testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
1513         * testsuite/util/testsuite_error.h: Likewise.
1514
1515         * include/std/system_error (error_code::error_code(_ErrorCodeEnum)):
1516         Use enable_if on template parameter default.
1517         (error_condition::error_condition(_ErrorConditionEnum)): Likewise.
1518
1519 2011-07-20  Ed Smith-Rowland  <3dw4rd@verizon.net>
1520
1521         * include/precompiled/stdc++.h: Add scoped_allocator.
1522
1523 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
1524
1525         * include/std/bitset (operator[]): Make constexpr.
1526         * testsuite/23_containers/bitset/operations/constexpr.cc: New.
1527
1528 2011-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
1529
1530         * include/debug/safe_local_iterator.h (_Safe_local_iterator<>::
1531         _Safe_local_iterator(const _Iterator&, size_type, const _Sequence*)):
1532         Fix typo.
1533
1534 2011-07-19  François Dumont  <francois.cppdevs@free.fr>
1535
1536         * include/debug/safe_unordered_base.h, safe_unordered_sequence.h,
1537         safe_unordered_sequence.tcc, safe_local_iterator.h,
1538         safe_local_iterator.tcc: New, support for unordered sequence safe
1539         local iterators.
1540         * include/Makefile.am: Add previous files.
1541         * include/Makefile.in: Regenerate.
1542         * include/debug/unordered_map, unordered_set: Implement
1543         _Safe_unordered_sequence and expose _Safe_local_iterator.
1544         * include/debug/safe_iterator.h, safe_iterator.tcc: Refactor
1545         _Safe_iterator::_M_get_distance static method to expose it as
1546         __get_distance function and use it in _Safe_local_iterator type.
1547         * include/debug/formatter.h: Add __msg_local_iter_compare_bad
1548         _Debug_msg_id enum entry to notify invalid comparison between local
1549         iterators from different buckets. Add _Parameter constructor from
1550         _Safe_local_iterator.
1551         * include/debug/functions.h: Add __valid_range overload for
1552         _Safe_local_iterator.
1553         * src/debug.cc: Add _Safe_unordered_sequence_base and
1554         _Safe_local_iterator_base methods implementations.
1555         * config/abi/pre/gnu.ver: Add export of some
1556         _Safe_unordered_sequence_base and _Safe_local_iterator_base methods.
1557         * testsuite/util/debug/checks.h: Add use_invalid_iterator function to
1558         simulate use of a singular iterator.
1559         * testsuite/util/debug/unordered_checks.h: New, several functions
1560         to simulate classic invalid usage of unordered sequence local
1561         iterators.
1562         * testsuite/23_containers/unordered_map/debug/
1563         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
1564         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
1565         invalid_local_iterator_compare_neg.cc: New.
1566         * testsuite/23_containers/unordered_multimap/debug/
1567         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
1568         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
1569         invalid_local_iterator_compare_neg.cc: New.
1570         * testsuite/23_containers/unordered_set/debug/
1571         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
1572         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
1573         invalid_local_iterator_compare_neg.cc: New.
1574         * testsuite/23_containers/unordered_multiset/debug/
1575         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
1576         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
1577         invalid_local_iterator_compare_neg.cc: New.
1578
1579 2011-07-18  Paolo Carlini  <paolo.carlini@oracle.com>
1580
1581         PR libstdc++/48430
1582         * include/bits/shared_ptr.h (struct hash<shared_ptr<>>): Use
1583         __hash_base.
1584         * include/bits/unique_ptr.h (struct hash<unique_ptr<>>): Likewise.
1585
1586 2011-07-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1587
1588         * crossconfig.m4 (*-netware): Remove.
1589         * configure: Regenerate.
1590
1591 2011-07-15  Yufeng Zhang  <yufeng.zhang@arm.com>
1592
1593         * config/locale/newlib/ctype_members.cc: New file.
1594         * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add a new C locale
1595         kind: newlib.  Configure to use the newlib specific
1596         ctype_members.cc when with_newlib is enabled.
1597         * configure: Regenerate.
1598
1599 2011-07-15  Paolo Carlini  <paolo.carlini@oracle.com>
1600             Jakub Jelinek  <jakub@redhat.com>
1601
1602         PR libstdc++/49745
1603         * acinclude.m4 ([GLIBCXX_CHECK_GTHREADS]): Check separately for
1604         _POSIX_TIMEOUTS and define _GTHREADS_USE_MUTEX_TIMEDLOCK.
1605         * libsupc++/guard.cc: Include <unistd.h>.
1606         * testsuite/17_intro/headers/c++1998/49745.cc: New.
1607         * configure: Regenerate.
1608         * config.h.in: Likewise.
1609
1610 2011-07-11  Paolo Carlini  <paolo.carlini@oracle.com>
1611
1612         PR libstdc++/49559
1613         * include/bits/stl_algo.h (__move_merge_backward): Remove.
1614         (__move_merge_adaptive, __move_merge_adaptive_backward): New.
1615         (__merge_adaptive): Use the latter two.
1616         (__rotate_adaptive): Avoid self move-assignment.
1617         * include/bits/stl_algobase.h (move_backward): Fix comment.
1618         * testsuite/25_algorithms/stable_sort/49559.cc: New.
1619         * testsuite/25_algorithms/inplace_merge/49559.cc: Likewise.
1620         * testsuite/25_algorithms/inplace_merge/moveable.cc: Extend.
1621         * testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise.
1622         * testsuite/util/testsuite_rvalref.h (rvalstruct::operator=
1623         (rvalstruct&&)): Check for self move-assignment.
1624
1625 2011-07-11  Paolo Carlini  <paolo.carlini@oracle.com>
1626
1627         * testsuite/util/testsuite_allocator.h (propagating_allocator<>::
1628         operator=(const propagating_allocator<>&)): Retun *this.
1629
1630 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1631
1632         * include/Makefile.am: Add new header.
1633         * include/Makefile.in: Regenerate.
1634         * include/std/scoped_allocator: New.
1635         * doc/xml/manual/status_cxx200x.xml: Update.
1636         * testsuite/20_util/scoped_allocator/1.cc: New.
1637         * testsuite/20_util/scoped_allocator/propagation.cc: New.
1638         * testsuite/20_util/scoped_allocator/requirements/typedefs.cc: New.
1639         * testsuite/20_util/scoped_allocator/requirements/
1640         explicit_instantiation.cc: New.
1641
1642 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1643
1644         * include/bits/stl_vector.h: Use new allocator model in C++0x mode.
1645         * include/bits/vector.tcc: Likewise.
1646         * testsuite/util/testsuite_allocator.h (propagating_allocator): Define.
1647         * testsuite/23_containers/vector/allocator/copy_assign.cc: New.
1648         * testsuite/23_containers/vector/allocator/noexcept.cc: New.
1649         * testsuite/23_containers/vector/allocator/copy.cc: New.
1650         * testsuite/23_containers/vector/allocator/swap.cc: New.
1651         * testsuite/23_containers/vector/allocator/move_assign.cc: New.
1652         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1653         Adjust dg-error line numbers.
1654         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1655         Likewise.
1656         * testsuite/23_containers/vector/requirements/dr438/
1657         constructor_1_neg.cc: Likewise.
1658         * testsuite/23_containers/vector/requirements/dr438/
1659         constructor_2_neg.cc: Likewise.
1660
1661 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1662
1663         * include/ext/alloc_traits.h (__allocator_always_compares_equal): New
1664         trait, provide partial specializations for known allocators.
1665         (__alloc_traits::construct, __alloc_traits::destroy): Overload for
1666         non-standard pointer types.
1667         (__alloc_traits::_S_always_equal): New trait for use with noexcept.
1668         (__alloc_traits::_S_nothrow_move): Likewise.
1669         (__alloc_traits::_S_nothrow_swap): Likewise.
1670
1671 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1672
1673         * include/ext/cast.h: Fix typo in include guard.
1674         * include/ext/pointer.h (_Unqualified_type): Remove redundant
1675         partial specializations for volatile types. Fix typos in comments.
1676         (pointer_traits<_Pointer_adaptor<Tp>>::pointer_to): Define.
1677
1678 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1679
1680         PR libstdc++/49668
1681         * include/std/functional (__bind_simple): Define.
1682         * include/std/future (_Task_setter): Parameterize by type of result
1683         pointer instead of state object.
1684         (_S_task_setter): Type deduction helper.
1685         (_Task_state): Use _S_task_setter and __bind_simple.
1686         (_Deferred_state, _Async_state): Store call wrapper directly not as
1687         std::function. Use _S_task_setter and __bind_simple.
1688         (_S_make_deferred_state, _S_make_async_state): Type deduction helpers.
1689         (async): Use new functions and __bind_simple.
1690         * include/std/mutex (call_once): Use __bind_simple.
1691         * include/std/thread (thread): Likewise. Remove unused headers.
1692         * src/thread.cc: Add header.
1693         * testsuite/30_threads/async/49668.cc: New.
1694         * testsuite/30_threads/call_once/49668.cc: New.
1695         * testsuite/30_threads/thread/cons/49668.cc: New.
1696         * testsuite/30_threads/thread/cons/moveable.cc: Remove unused bool.
1697
1698 2011-07-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1699
1700         * configure.host (abi_baseline_subdir_switch): Describe.
1701         Provide default.
1702         (*-*-solaris2.[89], *-*-solaris2.1[0-9]): Override.
1703         * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Substitute
1704         baseline_subdir_switch.
1705         * testsuite/Makefile.am (site.exp): Emit it.
1706         (baseline_subdir): Use it.
1707         * testsuite/libstdc++-abi/abi.exp: Use it.
1708         * configure: Regenerate.
1709         * Makefile.in: Regenerate.
1710         * doc/Makefile.in: Regenerate.
1711         * include/Makefile.in: Regenerate.
1712         * libsupc++/Makefile.in: Regenerate.
1713         * po/Makefile.in: Regenerate.
1714         * python/Makefile.in: Regenerate.
1715         * src/Makefile.in: Regenerate.
1716         * testsuite/Makefile.in: Regenerate.
1717
1718 2011-06-29  François Dumont  <francois.cppdevs@free.fr>
1719
1720         * include/debug/set.h, unordered_map, multiset.h, forward_list,
1721         unordered_set, vector, deque, string, list, multimap.h: Remove
1722         base class default constructor calls.
1723         * include/debug/map.h: Likewise and cleanup several redefinition of
1724         base iterator typedef.
1725
1726 2011-06-29  Nathan Sidwell  <nathan@codesourcery.com>
1727
1728         * libsupc++/eh_arm.c (__cxa_type_match): Construct address of
1729         thrown object here.  Return succeded_with_ptr_to_base for all
1730         pointer cases.
1731
1732 2011-06-23  Jonathan Wakely  <jwakely.gcc@gmail.com>
1733
1734         * testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Fix for
1735         C++0x mode.
1736         * testsuite/25_algorithms/sort/35588.cc: Likewise.
1737         * testsuite/26_numerics/headers/complex/synopsis.cc: Likewise.
1738
1739 2011-06-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
1740
1741         * testsuite/20_util/bind/socket.cc: Use variable and remove attribute.
1742
1743 2011-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
1744
1745         * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Avoid -Wall
1746         warning.
1747
1748 2011-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
1749
1750         * testsuite/20_util/reference_wrapper/invoke.cc: Avoid -Wall warnings.
1751         * testsuite/20_util/reference_wrapper/typedefs-3.cc: Likewise.
1752         * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
1753         * testsuite/20_util/allocator_traits/members/allocate_hint.cc:
1754         Likewise.
1755         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
1756         * testsuite/20_util/bind/socket.cc: Likewise.
1757         * testsuite/20_util/pointer_traits/pointer_to.cc: Likewise.
1758         * testsuite/util/testsuite_random.h: Likewise.
1759
1760 2011-06-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
1761
1762         * include/Makefile.am: Add alloc_traits.h headers.
1763         * include/Makefile.in: Regenerate.
1764         * include/std/memory: Include uses_allocator.h explicitly.
1765         * include/bits/allocator.h (allocator_traits): Move to ...
1766         * include/bits/alloc_traits.h: New header.
1767         * include/ext/alloc_traits.h (__alloc_traits): Extension to provide
1768         a common allocator interface for C++98 and C++0x.
1769         * include/bits/stl_construct.h: Use __alloc_traits.
1770         * include/bits/stl_uninitialized.h: Likewise.
1771
1772 2011-06-22  Daniel Krugler  <daniel.kruegler@googlemail.com>
1773             Paolo Carlini  <paolo.carlini@oracle.com>
1774
1775         * include/bits/move.h (__is_nothrow_swappable): Add.
1776         (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Use noexcept.
1777         * include/bits/algorithmfwd.h: Adjust.
1778         * testsuite/25_algorithms/swap/noexcept.cc: New.
1779
1780 2011-06-21  Jakub Jelinek  <jakub@redhat.com>
1781
1782         * testsuite/Makefile.am (check_DEJAGNU_normal_targets): Add
1783         check-DEJAGNUnormal[4-9].
1784         (check-DEJAGNU): Split into 10 jobs for parallel testing instead of 4.
1785         * testsuite/Makefile.in: Regenerated.
1786
1787 2011-06-20  Daniel Krugler  <daniel.kruegler@googlemail.com>
1788             Paolo Carlini  <paolo.carlini@oracle.com>
1789
1790         * include/std/tuple (__conv_types, __one_by_one_convertible,
1791         __all_convertible): Add.
1792         (tuple): Use the latter.
1793         (tuple<_T1>): Remove.
1794         * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error
1795         line number.
1796         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
1797
1798 2011-06-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
1799
1800         * include/bits/ptr_traits.h (pointer_traits<T*>::pointer_to): Use
1801         noexcept.
1802
1803 2011-06-14  Paolo Carlini  <paolo.carlini@oracle.com>
1804
1805         * include/std/valarray (~valarray): Use noexcept.
1806         * include/bits/unique_ptr.h (~unique_ptr): Likewise.
1807         * testsuite/26_numerics/valarray/noexcept_move_construct.cc: New.
1808         * testsuite/20_util/shared_ptr/cons/noexcept_move_construct.cc:
1809         Likewise.
1810         * testsuite/20_util/unique_ptr/cons/noexcept_move_construct.cc:
1811         Likewise.
1812         * testsuite/20_util/weak_ptr/cons/noexcept_move_construct.cc:
1813         Likewise.
1814
1815 2011-06-14  Paolo Carlini  <paolo.carlini@oracle.com>
1816
1817         * include/std/functional: Use noexcept.
1818         * include/bits/stl_tempbuf.h: Likewise.
1819
1820 2011-06-12  François Dumont  <francois.cppdevs@free.fr>
1821             Paolo Carlini  <paolo.carlini@oracle.com>
1822
1823         * include/bits/allocator.h (__shrink_to_fit): Rename to
1824         __shrink_to_fit_aux, fix.
1825         * include/bits/stl_vector.h (_M_shrink_to_fit): Declare.
1826         (shrink_to_fit): Use the latter.
1827         * include/debug/vector (shrink_to_fit): Likewise.
1828         * include/bits/vector.tcc (_M_shrink_to_fit): Define.
1829         * include/bits/stl_deque.h (_M_shrink_to_fit): Declare.
1830         (shrink_to_fit): Use the latter.
1831         * include/debug/deque (shrink_to_fit): Likewise.
1832         * include/bits/deque.tcc (_M_shrink_to_fit): Define.
1833         * include/bits/vector.tcc (vector<bool>::_M_reallocate): Add.
1834         * include/bits/stl_bvector.h (_M_shrink_to_fit): Declare.
1835         (shrink_to_fit): Use the latter.
1836         (reserve): Use _M_reallocate, move inline.
1837         (_Bvector_base<>::_S_nword): Add, use it throughout.
1838         * include/debug/string (shrink_to_fit): Redo.
1839         * include/ext/vstring.h (shrink_to_fit): Optimize.
1840         * include/bits/basic_string.h (shrink_to_fit): Likewise.
1841         * testsuite/21_strings/debug/shrink_to_fit.cc: New.
1842         * testsuite/23_containers/vector/debug/shrink_to_fit.cc: Likewise.
1843         * testsuite/23_containers/vector/debug/bool/shrink_to_fit.cc:
1844         Likewise.
1845         * testsuite/23_containers/vector/bool/capacity/shrink_to_fit.cc:
1846         Likewise.
1847         * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
1848
1849 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
1850
1851         * include/ext/extptr_allocator.h (construct, destroy): Fix for C++0x
1852         mode by overloading to take allocator's pointer type.
1853         * testsuite/23_containers/vector/ext_pointer/types/2.cc: New.
1854         * testsuite/23_containers/vector/ext_pointer/explicit_instantiation/
1855         2.cc: New.
1856
1857 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
1858
1859         * testsuite/20_util/allocator_traits/requirements/
1860         explicit_instantiation.cc: Add another instantiation.
1861
1862 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
1863
1864         * testsuite/20_util/allocator_traits/requirements/typedefs.cc: Check
1865         for allocator_type and value_type.
1866
1867 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
1868
1869         * testsuite/30_threads/packaged_task/uses_allocator.cc: New.
1870         * testsuite/30_threads/promise/uses_allocator.cc: Likewise.
1871
1872 2011-06-10  Paolo Carlini  <paolo.carlini@oracle.com>
1873
1874         * include/ext/throw_allocator.h: Use noexcept.
1875         * include/ext/pool_allocator.h: Likewise.
1876         * include/ext/bitmap_allocator.h: Likewise.
1877         * include/ext/new_allocator.h: Likewise.
1878         * include/ext/malloc_allocator.h: Likewise.
1879         * include/ext/array_allocator.h: Likewise.
1880         * include/ext/mt_allocator.h: Likewise.
1881         * include/ext/extptr_allocator.h: Likewise.
1882         * testsuite/util/testsuite_allocator.h: Likewise; do not include
1883         <cassert> directly, include <testsuite_hooks.h> instead.
1884
1885 2011-06-10  Benjamin Kosnik  <bkoz@redhat.com>
1886
1887         * include/ext/pb_ds/*: Doxygen markup redo.
1888         * include/Makefile.am: Fold in constructors_destructor_fn_imps.hpp.
1889         * include/Makefile.in: Regenerate.
1890
1891 2011-06-10  Jason Merrill  <jason@redhat.com>
1892
1893         * testsuite/20_util/bind/ref_neg.cc: Remove wrong test lines.
1894
1895         * testsuite/20_util/bind/ref_neg.cc: Remove dg-excess-errors,
1896         fix dg-error markup.
1897
1898 2011-06-09  Jason Merrill  <jason@redhat.com>
1899
1900         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust.
1901
1902         * testsuite/lib/prune.exp (libstdc++-dg-prune): Prune notes.
1903         * testsuite/20_util/duration/cons/1_neg.cc: Remove dg-excess-errors.
1904         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
1905         * testsuite/20_util/forward/1_neg.cc: Likewise.
1906         * testsuite/20_util/function/cmp/cmp_neg.cc: Likewise.
1907         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
1908         * testsuite/20_util/reference_wrapper/ref_neg.cc: Likewise.
1909         * testsuite/20_util/tuple/comparison_operators/35480_neg.cc: Likewise.
1910         * testsuite/tr1/6_containers/tuple/comparison_operators/35480_neg.cc:
1911         Likewise.
1912         * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
1913         * testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise.
1914         * testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc:
1915         Likewise.
1916         * testsuite/20_util/unique_ptr/cons/auto_ptr_neg.cc: Likewise.
1917         * testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: Likewise.
1918         * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc:
1919         Likewise.
1920         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
1921         auto_ptr_rvalue_neg.cc: Likewise.
1922         * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc:
1923         Likewise.
1924         * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
1925         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1926         Likewise.
1927         * testsuite/23_containers/deque/requirements/dr438/
1928         constructor_1_neg.cc: Likewise.
1929         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
1930         Likewise.
1931         * testsuite/23_containers/forward_list/requirements/dr438/
1932         assign_neg.cc: Likewise.
1933         * testsuite/23_containers/forward_list/requirements/dr438/
1934         constructor_1_neg.cc: Likewise.
1935         * testsuite/23_containers/forward_list/requirements/dr438/
1936         constructor_2_neg.cc: Likewise.
1937         * testsuite/23_containers/forward_list/requirements/dr438/
1938         insert_neg.cc: Likewise.
1939         * testsuite/23_containers/list/requirements/dr438/
1940         assign_neg.cc: Likewise.
1941         * testsuite/23_containers/list/requirements/dr438/
1942         constructor_1_neg.cc: Likewise.
1943         * testsuite/23_containers/list/requirements/dr438/
1944         constructor_2_neg.cc: Likewise.
1945         * testsuite/23_containers/list/requirements/dr438/
1946         insert_neg.cc: Likewise.
1947         * testsuite/23_containers/vector/requirements/dr438/
1948         assign_neg.cc: Likewise.
1949         * testsuite/23_containers/vector/requirements/dr438/
1950         constructor_1_neg.cc: Likewise.
1951         * testsuite/23_containers/vector/requirements/dr438/
1952         constructor_2_neg.cc: Likewise.
1953         * testsuite/23_containers/vector/requirements/dr438/
1954         insert_neg.cc: Likewise.
1955         * testsuite/23_containers/map/operators/1_neg.cc: Likewise.
1956         * testsuite/29_atomics/atomic_integral/operators/
1957         bitwise_neg.cc: Likewise.
1958         * testsuite/decimal/mixed-mode-arith_neg.cc: Likewise.
1959         * testsuite/decimal/mixed-mode-cmp_neg.cc: Likewise.
1960         * testsuite/decimal/operator_neg.cc: Likewise.
1961
1962 2011-06-09  Simon Baldwin  <simonb@google.com>
1963
1964         * scripts/extract_symvers.in: Handle processor/OS specific or
1965         unknown symbol binding strings from readelf.
1966
1967 2011-06-09  Paolo Carlini  <paolo.carlini@oracle.com>
1968
1969         * include/std/type_traits (__is_copy_assignable_impl,
1970         __is_nt_copy_assignable_impl): Fix typo.
1971
1972 2011-06-08  Paolo Carlini  <paolo.carlini@oracle.com>
1973
1974         * include/ext/extptr_allocator.h: Include <ext/numeric_traits.h>
1975         instead of <limits>.
1976         * include/bits/allocator.h: Likewise.
1977
1978         * include/std/chrono (duration_values<>::min): Call lowest, not min.
1979
1980 2011-06-08  Paolo Carlini  <paolo.carlini@oracle.com>
1981
1982         * include/bits/allocator.h (__shrink_to_fit): Simplify.
1983         * include/bits/stl_vector.h (vector<>::shrink_to_fit): Adjust.
1984         * include/bits/stl_deque.h: Likewise.
1985         * include/bits/stl_bvector.h: Likewise.
1986
1987 2011-06-07  Jason Merrill  <jason@redhat.com>
1988
1989         * testsuite/lib/prune.exp: s/required/instantiated/.
1990         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1991         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
1992         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
1993         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
1994         * testsuite/20_util/forward/1_neg.cc: Likewise.
1995         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
1996         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1997         Likewise.
1998         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
1999         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2000         * testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Likewise.
2001         * testsuite/ext/ext_pointer/1_neg.cc: Likewise.
2002         * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Likewise.
2003         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Likewise.
2004         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
2005         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
2006         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
2007         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
2008         shared_ptr_neg.cc: Likewise.
2009
2010 2011-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
2011
2012         * include/bits/move.h (struct __move_if_noexcept_cond): Add.
2013         (move_if_noexcept): Use the latter.
2014         * include/bits/stl_iterator.h (__make_move_if_noexcept_iterator,
2015         _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR): Add.
2016         * include/bits/stl_uninitialized.h
2017         (__uninitialized_move_if_noexcept_a): Add.
2018         * include/bits/vector.tcc (vector<>::reserve): Use
2019         _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR.
2020         (vector<>::_M_insert_aux, _M_fill_insert, _M_default_append,
2021         _M_range_insert): Use __uninitialized_move_if_noexcept_a.
2022         * testsuite/util/testsuite_rvalref.h (throwing_move_constructor):
2023         Add.
2024         (copycounter::copycounter(copycounter&&)): Use noexcept.
2025         * testsuite/23_containers/vector/modifiers/moveable2.cc: New.
2026         * testsuite/23_containers/vector/capacity/resize/moveable2.cc:
2027         Likewise.
2028         * testsuite/23_containers/vector/capacity/reserve/moveable2.cc:
2029         Likewise.
2030
2031 2011-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
2032
2033         PR libstdc++/49293
2034         * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: Tweak
2035         for glibc 2.14.
2036         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
2037
2038 2011-06-06  Paolo Carlini  <paolo.carlini@oracle.com>
2039
2040         * include/bits/move.h (move_if_noexcept): Use __and_ and __not_.
2041
2042 2011-06-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
2043
2044         * include/bits/ptr_traits.h (pointer_traits): Fix typos.
2045         * include/ext/pointer.h (pointer_traits): Add partial specialization
2046         for _Pointer_adapter.
2047
2048 2011-06-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
2049
2050         * testsuite/util/testsuite_allocator.h (tracker_allocator::construct):
2051         Update to C++0x definition using type to construct as template
2052         parameter.
2053         (tracker_allocator::destroy): Likewise for type to destroy.
2054         (uneq_allocator::construct, uneq_allocator::destroy): Likewise.
2055
2056 2011-06-01  Paolo Carlini  <paolo.carlini@oracle.com>
2057
2058         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
2059         Use std::move on the allocator, use noexcept.
2060         (_Hashtable<>::~_Hashtable): Use noexcept.
2061         * include/bits/stl_list.h: Likewise.
2062         * include/bits/forward_list.h: Likewise.
2063         * include/bits/stl_vector.h: Likewise.
2064         * include/bits/stl_bvector.h: Likewise.
2065         * include/bits/stl_map.h (map<>::map(map&&)): Use noexcept.
2066         * include/bits/stl_set.h: Likewise.
2067         * include/bits/stl_multimap.h: Likewise.
2068         * include/bits/stl_multiset.h: Likewise.
2069         * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(_Rb_tree&&)): Use
2070         std::move on the allocator.
2071         (_Rb_tree<>::~_Rb_tree): Use noexcept.
2072         * include/bits/stl_deque.h: Likewise.
2073         * include/bits/basic_string.h (basic_string<>::~basic_string): Use
2074         noexcept.
2075         * include/ext/vstring.h (__versa_string<>::~__versa_string): Likewise.
2076         * include/debug/set.h: Adjust.
2077         * include/debug/unordered_map: Likewise.
2078         * include/debug/multiset.h: Likewise.
2079         * include/debug/forward_list: Likewise.
2080         * include/debug/vector: Likewise.
2081         * include/debug/unordered_set: Likewise.
2082         * include/debug/deque: Likewise.
2083         * include/debug/map.h: Likewise.
2084         * include/debug/string: Likewise.
2085         * include/debug/list: Likewise.
2086         * include/debug/multimap.h: Likewise.
2087         * include/profile/set.h: Likewise.
2088         * include/profile/unordered_map: Likewise.
2089         * include/profile/multiset.h: Likewise.
2090         * include/profile/forward_list: Likewise.
2091         * include/profile/unordered_set: Likewise.
2092         * include/profile/vector: Likewise.
2093         * include/profile/deque: Likewise.
2094         * include/profile/map.h: Likewise.
2095         * include/profile/list: Likewise.
2096         * include/profile/multimap.h: Likewise.
2097         * testsuite/21_strings/basic_string/cons/wchar_t/
2098         noexcept_move_construct.cc: New.
2099         * testsuite/21_strings/basic_string/cons/char/
2100         noexcept_move_construct.cc: Likewise.
2101         * testsuite/ext/vstring/cons/noexcept_move_construct.cc: Likewise.
2102         * testsuite/23_containers/unordered_map/cons/
2103         noexcept_move_construct.cc: Likewise.
2104         * testsuite/23_containers/multimap/cons/
2105         noexcept_move_construct.cc: Likewise.
2106         * testsuite/23_containers/set/cons/
2107         noexcept_move_construct.cc: Likewise.
2108         * testsuite/23_containers/unordered_multimap/cons/
2109         noexcept_move_construct.cc: Likewise.
2110         * testsuite/23_containers/forward_list/cons/
2111         noexcept_move_construct.cc: Likewise.
2112         * testsuite/23_containers/unordered_set/cons/
2113         noexcept_move_construct.cc: Likewise.
2114         * testsuite/23_containers/vector/bool/cons/
2115         noexcept_move_construct.cc: Likewise.
2116         * testsuite/23_containers/vector/cons/
2117         noexcept_move_construct.cc: Likewise.
2118         * testsuite/23_containers/multiset/cons/
2119         noexcept_move_construct.cc: Likewise.
2120         * testsuite/23_containers/list/cons/
2121         noexcept_move_construct.cc: Likewise.
2122         * testsuite/23_containers/unordered_multiset/cons/
2123         noexcept_move_construct.cc: Likewise.
2124         * testsuite/23_containers/map/cons/noexcept_move_construct.cc
2125         * testsuite/23_containers/forward_list/requirements/dr438/
2126         assign_neg.cc: Adjust dg-error line numbers.
2127         * testsuite/23_containers/forward_list/requirements/dr438/
2128         insert_neg.cc: Likewise.
2129         * testsuite/23_containers/forward_list/requirements/dr438/
2130         constructor_1_neg.cc: Likewise.
2131         * testsuite/23_containers/forward_list/requirements/dr438/
2132         constructor_2_neg.cc: Likewise.
2133         * testsuite/23_containers/vector/requirements/dr438/
2134         assign_neg.cc: Likewise.
2135         * testsuite/23_containers/vector/requirements/dr438/
2136         insert_neg.cc: Likewise.
2137         * testsuite/23_containers/vector/requirements/dr438/
2138         constructor_1_neg.cc: Likewise.
2139         * testsuite/23_containers/vector/requirements/dr438/
2140         constructor_2_neg.cc: Likewise.
2141         * testsuite/23_containers/deque/requirements/dr438/
2142         assign_neg.cc: Likewise.
2143         * testsuite/23_containers/deque/requirements/dr438/
2144         insert_neg.cc: Likewise.
2145         * testsuite/23_containers/deque/requirements/dr438/
2146         constructor_1_neg.cc: Likewise.
2147         * testsuite/23_containers/deque/requirements/dr438/
2148         constructor_2_neg.cc: Likewise.
2149         * testsuite/23_containers/list/requirements/dr438/
2150         assign_neg.cc: Likewise.
2151         * testsuite/23_containers/list/requirements/dr438/
2152         insert_neg.cc: Likewise.
2153         * testsuite/23_containers/list/requirements/dr438/
2154         constructor_1_neg.cc: Likewise.
2155         * testsuite/23_containers/list/requirements/dr438/
2156         constructor_2_neg.cc: Likewise.
2157
2158         * include/bits/move.h (swap): Use __and_ in the noexcept.
2159         * include/bits/algorithmfwd.h: Adjust.
2160
2161 2011-05-31  Paolo Carlini  <paolo.carlini@oracle.com>
2162
2163         * include/bits/basic_string.h: Use noexcept per the FDIS (minus
2164         compare(const string&), which uses char_traits::compare, which
2165         isn't noexcept; also no noexcept in the move assignment operator
2166         and move assign, see c++std-lib-30855).
2167         * include/bits/basic_string.tcc: Likewise.
2168         * include/ext/vstring.h: Likewise.
2169         * include/ext/vstring.tcc: Likewise.
2170         * include/debug/string: Likewise.
2171
2172 2011-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
2173
2174         * doc/xml/manual/status_cxx200x.xml: Update.
2175         * doc/html/*: Regenerate.
2176
2177 2011-05-30  Paolo Carlini  <paolo.carlini@oracle.com>
2178
2179         * include/std/type_traits (__or_, __and_): Add trivial definitions
2180         for a single element.
2181         * include/bits/stl_pair.h: Use __and_ in noexcept specs and
2182         constraints.
2183         (pair<>::pair(pair&&)): Define.
2184         (pair<>::pair(const pair<>&)): Constrain with is_convertible.
2185         (pair<>::pair(pair<>&&)): Likewise, remove noexcept.
2186         * include/std/tuple: Use __and_ in noexcept specs and constraints.
2187         (_Tuple_impl<>::_Tuple_impl(allocator_arg_t, const _Alloc&,
2188         _Tuple_impl&&)): Remove noexcept.
2189         (tuple<>::tuple(_UElements&&...), tuple(const tuple<_UElements...>&),
2190         tuple(tuple<_UElements...>&&), tuple(const pair<_U1, _U2>&),
2191         tuple(pair<_U1, _U2>&&)): Constrain with is_convertible.
2192         * testsuite/20_util/tuple/moveable2.cc: Use = delete.
2193         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
2194         Adjust dg-error line numbers.
2195         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2196         Likewise.
2197         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2198         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
2199         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
2200
2201 2011-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
2202
2203         * include/std/tuple: Restore is_convertible constraint.
2204         * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: Remove.
2205
2206 2011-05-30  Paolo Carlini  <paolo.carlini@oracle.com>
2207
2208         PR libstdc++/49236
2209         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
2210         line number.
2211
2212 2011-05-30  Jonathan Wakely  <jwakely.gcc@gmail.com>
2213
2214         * include/std/tuple: Implement uses-allocator construction.
2215         * include/bits/allocator.h (uses_allocator): Move to ...
2216         * include/bits/uses_allocator.h: New file.
2217         * include/Makefile.am: Add new header.
2218         * include/Makefile.in: Regenerate.
2219         * testsuite/20_util/uses_allocator/cons_neg.cc: New.
2220         * testsuite/20_util/uses_allocator/construction.cc: New.
2221         * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: New.
2222         * testsuite/20_util/tuple/cons/allocators.cc: New.
2223
2224 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2225
2226         * testsuite/20_util/pointer_traits/pointer_to.cc: Fix.
2227
2228 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2229
2230         * acinclude.m4: Define GLIBCXX_CHECK_GET_NPROCS and
2231         GLIBCXX_CHECK_SC_NPROCESSORS_ONLN.
2232         * configure.ac: Use them. Increase minor version.
2233         * configure: Regenerate.
2234         * config.h.in: Regenerate.
2235         * include/std/thread (thread::hardware_concurrency): Remove inline
2236         definition.
2237         * src/thread.cc (thread::hardware_concurrency): Define.
2238         * config/abi/pre/gnu.ver: Export new symbol @3.4.17
2239         * testsuite/util/testsuite_abi.cc: Add new version.
2240         * testsuite/lib/libstdc++.exp (check_v3_target_nprocs): Add.
2241         * testsuite/lib/dg-options.exp (dg-require-nprocs): Add.
2242         * testsuite/30_threads/thread/members/hardware_concurrency.cc: Use
2243         dg-require-nprocs and verify hardware_concurrency returns non-zero.
2244
2245 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2246
2247         * testsuite/20_util/pointer_traits/pointer_to.cc: New.
2248
2249 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2250
2251         * include/Makefile.am: Add new ptr_traits.h header.
2252         * include/Makefile.in: Regenerate.
2253         * include/bits/ptr_traits.h (pointer_traits): New.
2254         * include/bits/allocator.h (allocator_traits): Add.
2255         * include/ext/array_allocator.h (construct, destroy): Update C++0x
2256         versions.
2257         * include/ext/bitmap_allocator.h (construct, destroy): Likewise.
2258         * include/ext/extptr_allocator.h (construct, destroy): Likewise.
2259         * include/ext/malloc_allocator.h (construct, destroy): Likewise.
2260         * include/ext/mt_allocator.h (construct, destroy): Likewise.
2261         * include/ext/new_allocator.h (construct, destroy): Likewise.
2262         * include/ext/pool_allocator.h (construct, destroy): Likewise.
2263         * include/ext/throw_allocator.h (construct, destroy): Likewise.
2264         * testsuite/20_util/allocator_traits/requirements/typedefs.cc: New.
2265         * testsuite/20_util/allocator_traits/requirements/
2266         explicit_instantiation.cc: New.
2267         * testsuite/20_util/allocator_traits/members/max_size.cc: New.
2268         * testsuite/20_util/allocator_traits/members/select.cc: New.
2269         * testsuite/20_util/allocator_traits/members/construct.cc: New.
2270         * testsuite/20_util/allocator_traits/members/allocate_hint.cc: New.
2271         * testsuite/20_util/allocator_traits/members/destroy.cc: New.
2272         * testsuite/20_util/pointer_traits/requirements/typedefs.cc: New.
2273         * testsuite/20_util/pointer_traits/requirements/
2274         explicit_instantiation.cc: New.
2275
2276 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2277
2278         * include/std/future (launch): Update enumerators and define
2279         operators required for bitmask type. Remove trailing whitespace.
2280         * src/future.cc: Remove trailing whitespace.
2281         * testsuite/30_threads/async/any.cc: Adjust.
2282         * testsuite/30_threads/async/sync.cc: Adjust.
2283         * testsuite/30_threads/async/launch.cc: New.
2284
2285 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2286
2287         * include/std/future: Use noexcept.
2288         * src/future.cc: Likewise.
2289
2290 2011-05-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
2291
2292         * include/std/thread (this_thread::sleep_until): Move after sleep_for.
2293
2294 2011-05-27  Paolo Carlini  <paolo.carlini@oracle.com>
2295
2296         PR libstdc++/49187
2297         * include/parallel/losertree.h: Add missing using declarations
2298         of _Base::_M_comp.
2299         * include/parallel/algobase.h: Include <parallel/algorithmfwd.h>.
2300         * include/parallel/multiway_merge.h: Include <parallel/
2301         multiseq_selection.h>, forward declare __merge_advance.
2302         * include/parallel/multiseq_selection.h: Don't include <parallel/
2303         sort.h> here.
2304         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Fix
2305         qualification of upper_bound.
2306
2307         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc:
2308         Use dg-require-debug-mode.
2309         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc:
2310         Likewise.
2311         * testsuite/ext/pb_ds/regression/priority_queue_rand_debug.cc:
2312         Likewise.
2313         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc:
2314         Likewise.
2315         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc:
2316         Likewise.
2317         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
2318         Likewise.
2319         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
2320         Likewise.
2321         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc:
2322         Likewise.
2323         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc:
2324         Likewise.
2325
2326         * include/parallel/algo.h: Minor uglification fixes.
2327
2328 2011-05-26  Paolo Carlini  <paolo.carlini@oracle.com>
2329
2330         * src/list.cc: Use noexcept per the FDIS.
2331         * src/compatibility-list-2.cc: Likewise.
2332         * include/debug/set.h: Likewise.
2333         * include/debug/unordered_map: Likewise.
2334         * include/debug/multiset.h: Likewise.
2335         * include/debug/forward_list: Likewise.
2336         * include/debug/unordered_set: Likewise.
2337         * include/debug/vector: Likewise.
2338         * include/debug/map.h: Likewise.
2339         * include/debug/deque: Likewise.
2340         * include/debug/list: Likewise.
2341         * include/debug/multimap.h: Likewise.
2342         * include/profile/set.h: Likewise.
2343         * include/profile/unordered_map: Likewise.
2344         * include/profile/multiset.h: Likewise.
2345         * include/profile/forward_list: Likewise.
2346         * include/profile/vector: Likewise.
2347         * include/profile/unordered_set: Likewise.
2348         * include/profile/map.h: Likewise.
2349         * include/profile/deque: Likewise.
2350         * include/profile/list: Likewise.
2351         * include/profile/multimap.h: Likewise.
2352         * include/bits/hashtable.h: Likewise.
2353         * include/bits/stl_list.h: Likewise.
2354         * include/bits/stl_map.h: Likewise.
2355         * include/bits/hashtable_policy.h: Likewise.
2356         * include/bits/stl_set.h: Likewise.
2357         * include/bits/forward_list.h: Likewise.
2358         * include/bits/stl_multimap.h: Likewise.
2359         * include/bits/stl_vector.h: Likewise.
2360         * include/bits/stl_deque.h: Likewise.
2361         * include/bits/stl_multiset.h: Likewise.
2362         * include/bits/stl_bvector.h: Likewise.
2363         * include/bits/stl_tree.h: Likewise.
2364
2365 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2366
2367         * include/bits/stl_queue.h: Use noexcept per the FDIS.
2368         * include/bits/stl_stack.h: Likewise.
2369
2370 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2371
2372         * config/abi/pre/gnu.ver: Correct last change, export instead
2373         at the existing @3.4.16.
2374         * configure.ac: Revert last change.
2375         * testsuite/util/testsuite_abi.cc: Likewise.
2376         * configure: Regenerate.
2377
2378 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
2379
2380         * doc/xml/manual/documentation_hacking.xml: Minor corrections.
2381
2382 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
2383
2384         * include/std/mutex: Add doxygen comments.
2385
2386 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2387
2388         * config/abi/pre/gnu.ver: Export recently added  basic_streambuf
2389         and basic_stringbuf symbols @3.4.17.
2390         * configure.ac: Update.
2391         * testsuite/util/testsuite_abi.cc: Likewise.
2392         * configure: Regenerate.
2393
2394 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
2395
2396         * libsupc++/guard.cc: Fix comments.
2397
2398 2011-05-25  Ian Lance Taylor  <iant@google.com>
2399
2400         PR libstdc++/49060
2401         * include/backward/hashtable.h (hashtable::erase): Don't crash if
2402         erasing first and another element with a reference to the other
2403         element.
2404         * testsuite/backward/hash_set/49060.cc: New.
2405
2406 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2407
2408         * include/bits/random.h (random_device::min, max): Specify constexpr.
2409
2410 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2411
2412         * include/std/thread: Use noexcept throughout per the FDIS.
2413         * include/std/mutex: Likewise.
2414
2415 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
2416
2417         * testsuite/20_util/duration/arithmetic/dr2020.cc: Fix typo.
2418
2419 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
2420
2421         PR libstdc++/49151
2422         * include/std/chrono (operator+, operator-, operator*, operator/,
2423         operator&): Implement LWG 2020 [WP]; specify constexpr.
2424         * testsuite/20_util/duration/arithmetic/dr2020.cc: New.
2425
2426 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
2427
2428         PR libstdc++/49141
2429         * testsuite/26_numerics/complex/cons/48760.cc: Use dg-require-c-std.
2430         * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
2431         * testsuite/26_numerics/headers/cmath/19322.cc: Likewise.
2432
2433 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
2434
2435         * include/bits/c++config (_GLIBCXX_NOTHROW): Update for noexcept.
2436         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
2437         line number.
2438
2439 2011-05-23  Benjamin Kosnik  <bkoz@redhat.com>
2440
2441         PR libstdc++/37144
2442         PR libstdc++/28457
2443         Interface changes for ext/pb_ds.
2444         PB_DS_BASE_C_DEC to unique PB_DS_*_BASE macros.
2445         * include/ext/pb_ds/assoc_container.hpp (container_base): Remove.
2446         (basic_hash_table, basic_branch, list_update): Derive from
2447         container_base_dispatch.
2448         * include/ext/pb_ds/list_update_policy.hpp (null_lu_metadata): Remove.
2449         (move_to_front_lu_policy): To lu_move_to_front_policy.
2450         (counter_lu_policy): To lu_counter_policy.
2451         * include/ext/pb_ds/tree_policy.hpp (null_tree_node_update): Remove.
2452         * include/ext/pb_ds/tag_and_trait.hpp (container_base_dispatch): Adjust
2453         template parameters, declare here.
2454         (null_mapped_type) Remove.
2455         (null_type): Just use this for template tricks everywhere.
2456         * include/ext/pb_ds/hash_policy.hpp (null_hash_fn, null_probe_fn):
2457         Remove.
2458         * include/ext/pb_ds/trie_policy.hpp (null_trie_node_update): Remove.
2459         (string_trie_e_access_traits): To trie_string_access_traits.
2460         * include/ext/pb_ds/priority_queue.hpp: Use container_base_dispatch.
2461
2462         File changes.
2463         * include/Makefile.am (pb_headers): Removed and changed file names.
2464         * include/Makefile.in: Regenerated.
2465         * include/ext/pb_ds/detail/basic_types.hpp: Remove.
2466         * include/ext/pb_ds/detail/bin_search_tree_/
2467           cond_dtor_entry_dealtor.hpp: Remove.
2468         * include/ext/pb_ds/detail/bin_search_tree_/
2469           cond_key_dtor_entry_dealtor.hpp: Remove.
2470         * include/ext/pb_ds/detail/binary_heap_/const_point_iterator.hpp: Move..
2471         * include/ext/pb_ds/detail/binary_heap_/
2472           point_const_iterator.hpp: ..here.
2473         * include/ext/pb_ds/detail/basic_tree_policy: Move to...
2474         * include/ext/pb_ds/detail/branch_policy: This.
2475         * include/ext/pb_ds/detail/branch_policy/
2476           basic_tree_policy_base.hpp: Move...
2477         * include/ext/pb_ds/detail/branch_policy/branch_policy.hpp: ...here.
2478         * include/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp: Add.
2479         * include/ext/pb_ds/detail/branch_policy/traits.hpp: Add.
2480         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2481         null_metadata.hpp: Remove.
2482         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2483         const_point_iterator.hpp: Move...
2484         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2485         point_const_iterator.hpp: ...here.
2486         * include/ext/pb_ds/detail/list_update_policy/
2487         counter_lu_metadata.hpp: Move..
2488         * include/ext/pb_ds/detail/list_update_policy/
2489         lu_counter_metadata.hpp: ...here.
2490         * include/ext/pb_ds/detail/list_update_policy/
2491         counter_lu_policy_imp.hpp: Remove.
2492         * include/ext/pb_ds/detail/list_update_policy/
2493         mtf_lu_policy_imp.hpp: Remove.
2494         * include/ext/pb_ds/detail/trie_policy/
2495         string_trie_e_access_traits_imp.hpp: Move...
2496         * include/ext/pb_ds/detail/trie_policy/
2497         sample_trie_access_traits.hpp: ...here.
2498         * include/ext/pb_ds/detail/trie_policy/
2499         sample_trie_e_access_traits.hpp: Move...
2500         * include/ext/pb_ds/detail/trie_policy/
2501         trie_string_access_traits_imp.hpp: ...here.
2502         * include/ext/pb_ds/detail/trie_policy/null_node_update_imp.hpp: Remove.
2503         * include/ext/pb_ds/detail/tree_policy/null_node_update_imp.hpp: Remove.
2504         * include/ext/pb_ds/detail/ov_tree_map_/cond_dtor.hpp: Remove.
2505         * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: New, fold all
2506         types found in the following files into pat_trie_base.
2507         * include/ext/pb_ds/detail/pat_trie_/const_child_iterator.hpp: Folded.
2508         * include/ext/pb_ds/detail/pat_trie_/
2509           cond_dtor_entry_dealtor.hpp: Folded.
2510         * include/ext/pb_ds/detail/pat_trie_/child_iterator.hpp: Folded.
2511         * include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp: Folded.
2512         * include/ext/pb_ds/detail/pat_trie_/head.hpp: Folded.
2513         * include/ext/pb_ds/detail/pat_trie_/leaf.hpp: Folded.
2514         * include/ext/pb_ds/detail/pat_trie_/node_base.hpp: Folded.
2515         * include/ext/pb_ds/detail/pat_trie_/node_metadata_base.hpp: Folded.
2516         * include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Folded.
2517         * include/ext/pb_ds/detail/pat_trie_/node_iterators.hpp: Folded.
2518         * include/ext/pb_ds/detail/pat_trie_/point_iterators.hpp: Folded.
2519         * include/ext/pb_ds/detail/pat_trie_/synth_e_access_traits.hpp: Move...
2520         * include/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp: ...here.
2521         * include/ext/pb_ds/detail/unordered_iterator/
2522         const_point_iterator.hpp: Move...
2523         * include/ext/pb_ds/detail/unordered_iterator/
2524         point_const_iterator.hpp: ...here.
2525
2526
2527         Adjust for above changes.
2528         * include/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp: Same.
2529         * include/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp: Same.
2530         * include/ext/pb_ds/detail/resize_policy/
2531           sample_resize_trigger.hpp: Same.
2532         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp: Same.
2533         * include/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp: Same.
2534         * include/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp: Same.
2535         * include/ext/pb_ds/detail/binomial_heap_base_/
2536           binomial_heap_base_.hpp: Same.
2537         * include/ext/pb_ds/detail/binomial_heap_base_/
2538           constructors_destructor_fn_imps.hpp: Same.
2539         * include/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp: Same.
2540         * include/ext/pb_ds/detail/binomial_heap_base_/
2541           split_join_fn_imps.hpp: Same.
2542         * include/ext/pb_ds/detail/container_base_dispatch.hpp: Same. Adjust
2543           for template parameter ordering change.
2544         * include/ext/pb_ds/detail/cc_hash_table_map_/
2545           erase_store_hash_fn_imps.hpp: Same.
2546         * include/ext/pb_ds/detail/cc_hash_table_map_/
2547           constructor_destructor_no_store_hash_fn_imps.hpp: Same.
2548         * include/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp: Same.
2549         * include/ext/pb_ds/detail/cc_hash_table_map_/
2550           insert_no_store_hash_fn_imps.hpp: Same.
2551         * include/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp: Same.
2552         * include/ext/pb_ds/detail/cc_hash_table_map_/
2553           policy_access_fn_imps.hpp: Same.
2554         * include/ext/pb_ds/detail/cc_hash_table_map_/
2555           resize_store_hash_fn_imps.hpp: Same.
2556         * include/ext/pb_ds/detail/cc_hash_table_map_/
2557           constructor_destructor_store_hash_fn_imps.hpp: Same.
2558         * include/ext/pb_ds/detail/cc_hash_table_map_/
2559           insert_store_hash_fn_imps.hpp: Same.
2560         * include/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp: Same.
2561         * include/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp: Same.
2562         * include/ext/pb_ds/detail/cc_hash_table_map_/
2563           entry_list_fn_imps.hpp: Same.
2564         * include/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp: Same.
2565         * include/ext/pb_ds/detail/cc_hash_table_map_/
2566           find_store_hash_fn_imps.hpp: Same.
2567         * include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp: Same.
2568         * include/ext/pb_ds/detail/cc_hash_table_map_/
2569           debug_no_store_hash_fn_imps.hpp: Same.
2570         * include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same.
2571         * include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp: Same.
2572         * include/ext/pb_ds/detail/cc_hash_table_map_/
2573           constructor_destructor_fn_imps.hpp: Same.
2574         * include/ext/pb_ds/detail/cc_hash_table_map_/
2575           cond_key_dtor_entry_dealtor.hpp: Same.
2576         * include/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp: Same.
2577         * include/ext/pb_ds/detail/cc_hash_table_map_/
2578           debug_store_hash_fn_imps.hpp: Same.
2579         * include/ext/pb_ds/detail/cc_hash_table_map_/
2580           erase_no_store_hash_fn_imps.hpp: Same.
2581         * include/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp: Same.
2582         * include/ext/pb_ds/detail/cc_hash_table_map_/
2583           iterators_fn_imps.hpp: Same.
2584         * include/ext/pb_ds/detail/cc_hash_table_map_/
2585           resize_no_store_hash_fn_imps.hpp: Same.
2586         * include/ext/pb_ds/detail/cc_hash_table_map_/
2587           standard_policies.hpp: Same.
2588         * include/ext/pb_ds/detail/tree_trace_base.hpp: Same.
2589         * include/ext/pb_ds/detail/unordered_iterator/iterator.hpp: Same.
2590         * include/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp: Same.
2591         * include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp: Same.
2592         * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp: Same.
2593         * include/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp: Same.
2594         * include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp: Same.
2595         * include/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp: Same.
2596         * include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp: Same.
2597         * include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp: Same.
2598         * include/ext/pb_ds/detail/pat_trie_/
2599           constructors_destructor_fn_imps.hpp: Same.
2600         * include/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp: Same.
2601         * include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp: Same.
2602         * include/ext/pb_ds/detail/pat_trie_/traits.hpp: Same.
2603         * include/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp: Same.
2604         * include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp: Same.
2605         * include/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp: Same.
2606         * include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp: Same.
2607         * include/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp: Same.
2608         * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp: Same.
2609         * include/ext/pb_ds/detail/bin_search_tree_/
2610           policy_access_fn_imps.hpp: Same.
2611         * include/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp: Same.
2612         * include/ext/pb_ds/detail/bin_search_tree_/
2613           constructors_destructor_fn_imps.hpp: Same.
2614         * include/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp: Same.
2615         * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp: Same.
2616         * include/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp: Same.
2617         * include/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp: Same.
2618         * include/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp: Same.
2619         * include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp: Same.
2620         * include/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp: Same.
2621         * include/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp: Same.
2622         * include/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp: Same.
2623         * include/ext/pb_ds/detail/bin_search_tree_/
2624           split_join_fn_imps.hpp: Same.
2625         * include/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp: Same.
2626         * include/ext/pb_ds/detail/list_update_policy/
2627           sample_update_policy.hpp: Same.
2628         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2629           trace_fn_imps.hpp: Same.
2630         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2631           erase_fn_imps.hpp: Same.
2632         * include/ext/pb_ds/detail/gp_hash_table_map_/
2633           erase_store_hash_fn_imps.hpp: Same.
2634         * include/ext/pb_ds/detail/gp_hash_table_map_/
2635           constructor_destructor_no_store_hash_fn_imps.hpp: Same.
2636         * include/ext/pb_ds/detail/gp_hash_table_map_/
2637           insert_no_store_hash_fn_imps.hpp: Same.
2638         * include/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp: Same.
2639         * include/ext/pb_ds/detail/gp_hash_table_map_/
2640           policy_access_fn_imps.hpp: Same.
2641         * include/ext/pb_ds/detail/gp_hash_table_map_/
2642           resize_store_hash_fn_imps.hpp: Same.
2643         * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
2644         * include/ext/pb_ds/detail/gp_hash_table_map_/
2645           constructor_destructor_store_hash_fn_imps.hpp: Same.
2646         * include/ext/pb_ds/detail/gp_hash_table_map_/
2647           insert_store_hash_fn_imps.hpp: Same.
2648         * include/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp: Same.
2649         * include/ext/pb_ds/detail/gp_hash_table_map_/
2650           iterator_fn_imps.hpp: Same.
2651         * include/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp: Same.
2652         * include/ext/pb_ds/detail/gp_hash_table_map_/
2653           find_no_store_hash_fn_imps.hpp: Same.
2654         * include/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp: Same.
2655         * include/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp: Same.
2656         * include/ext/pb_ds/detail/gp_hash_table_map_/
2657           find_store_hash_fn_imps.hpp: Same.
2658         * include/ext/pb_ds/detail/gp_hash_table_map_/
2659           debug_no_store_hash_fn_imps.hpp: Same.
2660         * include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
2661         * include/ext/pb_ds/detail/gp_hash_table_map_/
2662           constructor_destructor_fn_imps.hpp: Same.
2663         * include/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp: Same.
2664         * include/ext/pb_ds/detail/gp_hash_table_map_/
2665           debug_store_hash_fn_imps.hpp: Same.
2666         * include/ext/pb_ds/detail/gp_hash_table_map_/
2667           erase_no_store_hash_fn_imps.hpp: Same.
2668         * include/ext/pb_ds/detail/gp_hash_table_map_/
2669           resize_no_store_hash_fn_imps.hpp: Same.
2670         * include/ext/pb_ds/detail/gp_hash_table_map_/
2671           standard_policies.hpp: Same.
2672         * include/ext/pb_ds/detail/standard_policies.hpp: Same.
2673         * include/ext/pb_ds/detail/types_traits.hpp: Same.
2674         * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp: Same.
2675         * include/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp: Same.
2676         * include/ext/pb_ds/detail/binary_heap_/const_iterator.hpp: Same.
2677         * include/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp: Same.
2678         * include/ext/pb_ds/detail/binary_heap_/
2679           constructors_destructor_fn_imps.hpp: Same.
2680         * include/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp: Same.
2681         * include/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp: Same.
2682         * include/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp: Same.
2683         * include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Same.
2684         * include/ext/pb_ds/detail/binary_heap_/entry_pred.hpp: Same.
2685         * include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp: Same.
2686         * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp: Same.
2687         * include/ext/pb_ds/detail/binary_heap_/resize_policy.hpp: Same.
2688         * include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same.
2689         * include/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp: Same.
2690         * include/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp: Same.
2691         * include/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp: Same.
2692         * include/ext/pb_ds/detail/tree_policy/
2693           sample_tree_node_update.hpp: Same.
2694         * include/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp: Same.
2695         * include/ext/pb_ds/detail/trie_policy/
2696           sample_trie_node_update.hpp: Same.
2697         * include/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp: Same.
2698         * include/ext/pb_ds/detail/trie_policy/
2699           prefix_search_node_update_imp.hpp: Same.
2700         * include/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp: Same.
2701         * include/ext/pb_ds/detail/cond_dealtor.hpp: Same.
2702         * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp: Same.
2703           Adjust for template parameter change, fold into
2704           container_base_dispatch.
2705         * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp: Same.
2706         * include/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp: Same.
2707         * include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp: Same.
2708         * include/ext/pb_ds/detail/pairing_heap_/
2709           constructors_destructor_fn_imps.hpp: Same.
2710         * include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp: Same.
2711         * include/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp: Same.
2712         * include/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp: Same.
2713         * include/ext/pb_ds/detail/binomial_heap_/
2714           constructors_destructor_fn_imps.hpp: Same.
2715         * include/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp: Same.
2716         * include/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp: Same.
2717         * include/ext/pb_ds/detail/constructors_destructor_fn_imps.hpp: Same.
2718         * include/ext/pb_ds/detail/type_utils.hpp: Same.
2719         * include/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp: Same.
2720         * include/ext/pb_ds/detail/eq_fn/eq_by_less.hpp: Same.
2721         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2722           policy_access_fn_imps.hpp: Same.
2723         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2724           left_child_next_sibling_heap_.hpp: Same.
2725         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2726           const_iterator.hpp: Same.
2727         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2728           insert_fn_imps.hpp: Same.
2729         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2730           constructors_destructor_fn_imps.hpp: Same.
2731         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2732           debug_fn_imps.hpp: Same.
2733         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2734           node.hpp: Same.
2735         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2736           info_fn_imps.hpp: Same.
2737         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2738           iterators_fn_imps.hpp: Same.
2739         * include/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp: Same.
2740         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Same.
2741         * include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp: Same.
2742         * include/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp: Same.
2743         * include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp: Same.
2744         * include/ext/pb_ds/detail/thin_heap_/
2745           constructors_destructor_fn_imps.hpp: Same.
2746         * include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp: Same.
2747         * include/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp: Same.
2748         * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp: Same.
2749         * include/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp: Same.
2750         * include/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp: Same.
2751         * include/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp: Same.
2752         * include/ext/pb_ds/detail/ov_tree_map_/
2753           constructors_destructor_fn_imps.hpp: Same.
2754         * include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
2755         * include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Same.
2756         * include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp: Same.
2757         * include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp: Same.
2758         * include/ext/pb_ds/detail/ov_tree_map_/traits.hpp: Same.
2759         * include/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp: Same.
2760         * include/ext/pb_ds/detail/debug_map_base.hpp: Same.
2761         * include/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp: Same.
2762         * include/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp: Same.
2763         * include/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp: Same.
2764         * include/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp: Same.
2765         * include/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp: Same.
2766         * include/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp: Same.
2767         * include/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp: Same.
2768         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Same.
2769         * include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp: Same.
2770         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Same.
2771         * include/ext/pb_ds/detail/splay_tree_/
2772           constructors_destructor_fn_imps.hpp: Same.
2773         * include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp: Same.
2774         * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Same.
2775         * include/ext/pb_ds/detail/splay_tree_/node.hpp: Same.
2776         * include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp: Same.
2777         * include/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp: Same.
2778         * include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same.
2779         * include/ext/pb_ds/detail/splay_tree_/traits.hpp: Same.
2780         * include/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp: Same.
2781         * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp: Same.
2782         * include/ext/pb_ds/detail/list_update_map_/
2783           entry_metadata_base.hpp: Same.
2784         * include/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp: Same.
2785         * include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Same.
2786         * include/ext/pb_ds/detail/list_update_map_/
2787           constructor_destructor_fn_imps.hpp: Same.
2788         * include/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp: Same.
2789         * include/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp: Same.
2790         * include/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp: Same.
2791         * include/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp: Same.
2792         * include/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp: Same.
2793         * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp: Same.
2794         * include/ext/pb_ds/detail/rc_binomial_heap_/
2795           rc_binomial_heap_.hpp: Same.
2796         * include/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp: Same.
2797         * include/ext/pb_ds/detail/rc_binomial_heap_/
2798           constructors_destructor_fn_imps.hpp: Same.
2799         * include/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp: Same.
2800         * include/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp: Same.
2801         * include/ext/pb_ds/detail/rc_binomial_heap_/
2802           split_join_fn_imps.hpp: Same.
2803         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Same.
2804         * include/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp: Same.
2805         * include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp: Same.
2806         * include/ext/pb_ds/detail/rb_tree_map_/
2807           constructors_destructor_fn_imps.hpp: Same.
2808         * include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp: Same.
2809         * include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
2810         * include/ext/pb_ds/detail/rb_tree_map_/node.hpp: Same.
2811         * include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp: Same.
2812         * include/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp: Same.
2813         * include/ext/pb_ds/detail/rb_tree_map_/traits.hpp: Same.
2814
2815
2816         Documentation changes.
2817         * include/ext/pb_ds/*: Add doxygen markup.
2818         * doc/doxygen/user.cfg.in: Add details for extracting comments
2819         from pb_ds.
2820         * scripts/run_doxygen: Fixup __gnu_pb_ds::detail.
2821         * scripts/make_graph.py: Move to svg output. Re-format generated tables.
2822
2823         * doc/Makefile.am (stamp-html-copy): New rule.
2824         (stamp-html): Use it to copy non-generated files into html docs.
2825         * doc/Makefile.in: Regenerated.
2826
2827         * doc/html/ext/pb_ds/sample_trie_e_access_traits.html: Move...
2828         * doc/html/ext/pb_ds/trie_string_access_traits.html: ...here.
2829         * doc/html/ext/pb_ds/string_trie_e_access_traits.html: Move..
2830         * doc/html/ext/pb_ds/sample_trie_access_traits.html: ...here.
2831
2832         * doc/html/ext/pb_ds/tree_text_lor_find_timing_test_local.png,
2833         hash_random_int_erase_mem_usage_test_local.png,
2834         multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
2835         tree_text_insert_timing_test_pat_trie_local.png ,
2836         multimap_text_insert_mem_usage_test_small_s2p_tree_local.png ,
2837         priority_queue_text_modify_down_timing_test_local.png,
2838         gp_hash_random_int_subscript_timing_test_find_local.png,
2839         text_find_timing_test_hash_local.png,
2840         multimap_text_insert_timing_test_small_s2p_hash_local.png,
2841         multimap_text_insert_timing_test_small_s2p_tree_local.png,
2842         multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
2843         multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
2844         multimap_text_insert_timing_test_large_s2p_hash_local.png,
2845         hash_zlob_random_int_find_timing_test_local.png,
2846         multimap_text_insert_timing_test_large_s2p_tree_local.png,
2847         binary_priority_queue_random_int_push_timing_test_local.png,
2848         priority_queue_text_pop_mem_usage_test_local.png,
2849         priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
2850         tree_split_join_timing_test_local.png,
2851         multimap_text_find_timing_test_small_s2p_hash_local.png,
2852         ccgp_hash_random_int_subscript_timing_test_insert_local.png,
2853         priority_queue_random_int_push_pop_timing_test_local.png,
2854         multimap_text_find_timing_test_small_s2p_tree_local.png,
2855         gp_hash_random_int_subscript_timing_test_insert_local.png,
2856         priority_queue_text_push_timing_test_local.png,
2857         cc_hash_random_int_subscript_timing_test_find_local.png,
2858         tree_text_insert_timing_test_vector_tree_local.png,
2859         multimap_text_find_timing_test_large_s2p_hash_local.png,
2860         pairing_priority_queue_text_push_timing_test_local.png,
2861         tree_order_statistics_timing_test_local.png,
2862         priority_queue_text_push_pop_timing_test_local.png,
2863         text_find_timing_test_tree_like_local.png,
2864         multimap_text_find_timing_test_large_s2p_tree_local.png,
2865         priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
2866         cc_hash_random_int_subscript_timing_test_insert_local.png,
2867         priority_queue_text_modify_up_timing_test_local.png,
2868         random_int_find_find_timing_test_tree_local.png,
2869         priority_queue_random_int_push_timing_test_local.png,
2870         tree_text_insert_timing_test_node_tree_local.png,
2871         pairing_priority_queue_text_push_pop_timing_test_local.png,
2872         gp_hash_random_int_find_timing_test_local.png,
2873         cc_hash_random_int_find_timing_test_local.png,
2874         priority_queue_text_join_timing_test_local.png: Update local pngs.
2875
2876
2877         Testsuite changes.
2878         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: New.
2879         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: New.
2880         * testsuite/ext/pb_ds/regression/priority_queue_rand_debug.cc: New.
2881         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: New.
2882         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: New.
2883         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
2884         New.
2885         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
2886         New.
2887         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: New.
2888         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: New.
2889
2890         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Fix typo.
2891
2892         * testsuite/ext/pb_ds/example/basic_set.cc: Update.
2893         * testsuite/ext/pb_ds/example/ranged_hash.cc: Same.
2894         * testsuite/ext/pb_ds/example/tree_order_statistics.cc: Same.
2895         * testsuite/ext/pb_ds/example/trie_prefix_search.cc: Same.
2896         * testsuite/ext/pb_ds/example/trie_dna.cc: Same.
2897         * testsuite/ext/pb_ds/example/tree_intervals.cc: Same.
2898         * testsuite/ext/pb_ds/example/basic_multimap.cc: Same.
2899         * testsuite/performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc:
2900           Same.
2901         * testsuite/performance/ext/pb_ds/tree_split_join_timing.cc: Same.
2902         * testsuite/performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
2903         * testsuite/data/make_graph_test_infos.xml: Same.
2904         * testsuite/util/regression/common_type.hpp: Same.
2905         * testsuite/util/regression/trait/assoc/native_type_trait.hpp: Same.
2906         * testsuite/util/regression/trait/assoc/trait.hpp: Same.
2907         * testsuite/util/regression/trait/assoc/type_trait.hpp: Same.
2908         * testsuite/util/regression/rand/priority_queue/
2909           rand_regression_test.hpp: Same.
2910         * testsuite/util/regression/rand/priority_queue/
2911           container_rand_regression_test.tcc: Same.
2912         * testsuite/util/regression/rand/assoc/rand_regression_test.hpp: Same.
2913         * testsuite/util/regression/rand/assoc/container_rand_regression_test.h
2914         * testsuite/util/regression/rand/assoc/
2915           container_rand_regression_test.tcc: Same.
2916         * testsuite/util/native_type/native_priority_queue.hpp: Same.
2917         * testsuite/util/native_type/native_multimap.hpp: Same.
2918         * testsuite/util/native_type/native_hash_multimap.hpp: Same.
2919         * testsuite/util/native_type/native_set.hpp: Same.
2920         * testsuite/util/native_type/native_map.hpp: Same.
2921         * testsuite/util/native_type/native_hash_set.hpp: Same.
2922         * testsuite/util/native_type/native_hash_map.hpp: Same.
2923         * testsuite/util/testsuite_containers.h
2924         * testsuite/util/common_type/priority_queue/common_type.hpp: Same.
2925         * testsuite/util/common_type/assoc/common_type.hpp: Same.
2926         * testsuite/util/common_type/assoc/string_form.hpp: Same.
2927         * testsuite/util/common_type/assoc/template_policy.hpp: Same.
2928         * testsuite/util/common_type/assoc/detail/
2929           trigger_policy_string_form.hpp: Same.
2930         * testsuite/util/common_type/assoc/detail/ds_string_form.hpp: Same.
2931         * testsuite/util/common_type/assoc/detail/
2932           size_policy_string_form.hpp: Same.
2933         * testsuite/util/common_type/assoc/detail/
2934           probe_fn_string_form.hpp: Same.
2935         * testsuite/util/common_type/assoc/detail/
2936           tree_supports_order_statistics.hpp: Same.
2937         * testsuite/util/common_type/assoc/detail/
2938           trie_supports_prefix_search.hpp: Same.
2939         * testsuite/util/common_type/assoc/detail/
2940           list_update_policy_string_form.hpp: Same.
2941         * testsuite/util/common_type/assoc/detail/
2942           trie_supports_order_statistics.hpp: Same.
2943         * testsuite/util/common_type/assoc/native_set.hpp: Same.
2944         * testsuite/util/performance/assoc/timing/common_type.hpp: Same.
2945         * testsuite/util/performance/assoc/timing/multimap_find_test.hpp: Same.
2946         * testsuite/util/performance/assoc/multimap_common_type.hpp: Same.
2947
2948 2011-05-23  Paolo Carlini  <paolo.carlini@oracle.com>
2949
2950         * include/bits/streambuf_iterator.h: Use noexcept per the FDIS.
2951         (istreambuf_iterator<>::istreambuf_iterator(const
2952         istreambuf_iterator&),  ~istreambuf_iterator()): Add defaulted
2953         in C++0x mode.
2954
2955 2011-05-23  Jason Merrill  <jason@redhat.com>
2956
2957         * libsupc++/exception_ptr.h: Fix compilation in C++0x mode.
2958
2959 2011-05-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
2960
2961         * testsuite/20_util/bind/cv_quals_2.cc: New.
2962
2963 2011-05-22  Paolo Carlini  <paolo.carlini@oracle.com>
2964
2965         PR libstdc++/49058
2966         * include/std/functional (_Bind<_Functor(_Bound_args...)>::
2967         operator()(_Args&&...)): Don't cv qualify _Functor directly
2968         in the default template argument, SFINAE doesn't apply when
2969         the functor has no arguments.
2970         * testsuite/20_util/bind/49058_1.cc: New.
2971         * testsuite/20_util/bind/49058_2.cc: Likewise.
2972
2973 2011-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
2974
2975         * include/bits/unique_ptr.h: Use noexcept per the FDIS.
2976
2977 2011-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
2978
2979         * testsuite/21_strings/basic_string/requirements/exception/
2980         propagation_consistent.cc: Fix vs POD-ness of value_type.
2981         * testsuite/21_strings/basic_string/requirements/exception/
2982         basic.cc: Likewise.
2983         * testsuite/ext/vstring/requirements/exception/
2984         propagation_consistent.cc: Likewise.
2985         * testsuite/ext/vstring/requirements/exception/basic.cc: Likewise.
2986
2987 2011-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
2988
2989         * include/bits/char_traits.h: Use noexcept throughout.
2990         * include/std/typeindex: Likewise.
2991
2992         * include/std/tuple (_Tuple_impl<>_Tuple_impl(_Tuple_impl&&)): Use
2993         noexcept; adjust callers.
2994         * include/bits/stl_pair.h (pair<>::pair(pair<>&&)): Use noexcept.
2995         * testsuite/20_util/tuple/cons/noexcept_move_construct.cc: New.
2996         * testsuite/20_util/pair/cons/noexcept_move_construct.cc: Likewise.
2997         * testsuite/20_util/pair/noexcept_swap.cc: Likewise.
2998         * testsuite/20_util/pair/noexcept_move_assign.cc: Likewise.
2999         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
3000         line numbers.
3001
3002 2011-05-20  Jason Merrill  <jason@redhat.com>
3003
3004         * include/ext/pb_ds/assoc_container.hpp: Explicitly qualify calls to
3005         functions from dependent bases.
3006         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Likewise.
3007         * include/ext/pb_ds/detail/rb_tree_map_/
3008         split_join_fn_imps.hpp: Likewise.
3009         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Likewise.
3010         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Likewise.
3011         * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Likewise.
3012         * include/ext/pb_ds/detail/splay_tree_/
3013         split_join_fn_imps.hpp: Likewise.
3014         * include/ext/pb_ds/detail/tree_policy/
3015         order_statistics_imp.hpp: Likewise.
3016         * include/ext/pb_ds/detail/trie_policy/
3017         prefix_search_node_update_imp.hpp: Likewise.
3018         * include/ext/rc_string_base.h: Likewise.
3019         * include/ext/rope: Likewise.
3020         * include/ext/ropeimpl.h: Likewise.
3021         * testsuite/util/exception/safety.h: Likewise.
3022         * testsuite/util/native_type/native_priority_queue.hpp: Likewise.
3023         * testsuite/util/testsuite_io.h: Likewise.
3024         * include/std/functional: Declare mem_fn earlier.
3025         * include/tr1/functional: Likewise.
3026         * include/tr1/exp_integral.tcc: Declare __expint_E1 earlier.
3027
3028 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
3029
3030         * include/std/tuple (tuple_element<__i, const _Tp>,
3031         tuple_element<__i, volatile _Tp>, tuple_element<__i,
3032         const volatile _Tp>, tuple_size<const _Tp>, tuple_size<volatile _Tp>,
3033         tuple_size<const volatile _Tp>): Add.
3034         * include/std/utility (tuple_size<std::pair<_Tp1, _Tp2>>): Tweak.
3035         * include/std/array (tuple_size<array<_Tp, _Nm>>): Likewise.
3036         * testsuite/20_util/tuple/cv_tuple_size.cc: New.
3037         * testsuite/20_util/tuple/cv_tuple_element.cc: Likewise.
3038         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-warning
3039         line number.
3040
3041 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
3042
3043         * include/std/tuple (tuple<>::operator=(tuple&&)): Specify as
3044         noexcept.
3045         (__get_helper): Likewise.
3046         (_Head_base<>::_M_head, _Tuple_impl<>::_M_head, _M_tail): Likewise.
3047         * include/bits/move.h (swap): Likewise.
3048         * include/bits/algorithmfwd.h (swap): Adjust.
3049         * include/bits/stl_pair.h (pair<>::operator=(pair&&)): Spec noexcept.
3050         * testsuite/util/testsuite_allocator.h (uneq_allocator): In C++0x
3051         mode, prefer delete to access control to make the type not copy
3052         assignable.
3053         * testsuite/util/testsuite_tr1.h: Add test classes.
3054         * testsuite/20_util/tuple/noexcept_swap.cc: New.
3055         * testsuite/20_util/tuple/noexcept_move_assign.cc: Likewise.
3056         * testsuite/25_algorithms/reverse/moveable.cc: Likewise, prefer
3057         delete to access control.
3058         * testsuite/25_algorithms/swap_ranges/moveable.cc: Likewise.
3059         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
3060         line numbers.
3061
3062 2011-05-19  Daniel Krugler  <daniel.kruegler@googlemail.com>
3063
3064         * testsuite/util/testsuite_tr1.h: Add test classes.
3065         * testsuite/20_util/is_nothrow_assignable/value.cc: Add.
3066
3067 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
3068
3069         * include/std/type_traits (is_assignable, is_copy_assignable,
3070         is_move_assignable, is_nothrow_assignable, is_nothrow_copy_assignable,
3071         is_nothrow_move_assignable): Add; minor tweaks elsewhere.
3072         (has_nothrow_copy_assign): Remove.
3073         * testsuite/util/testsuite_tr1.h: Add test classes.
3074         * testsuite/20_util/is_assignable/requirements/typedefs.cc: Add.
3075         * testsuite/20_util/is_assignable/requirements/
3076         explicit_instantiation.cc: Likewise.
3077         * testsuite/20_util/is_nothrow_assignable/value.cc: Likewise.
3078         * testsuite/20_util/is_nothrow_assignable/requirements/typedefs.cc:
3079         Likewise.
3080         * testsuite/20_util/is_nothrow_assignable/requirements/
3081         explicit_instantiation.cc: Likewise.
3082         * testsuite/20_util/is_move_assignable/value.cc: Likewise.
3083         * testsuite/20_util/is_move_assignable/requirements/typedefs.cc:
3084         Likewise.
3085         * testsuite/20_util/is_move_assignable/requirements/
3086         explicit_instantiation.cc: Likewise.
3087         * testsuite/20_util/is_copy_assignable/value.cc: Likewise.
3088         * testsuite/20_util/is_copy_assignable/requirements/typedefs.cc:
3089         Likewise.
3090         * testsuite/20_util/is_copy_assignable/requirements/
3091         explicit_instantiation.cc: Likewise.
3092         * testsuite/20_util/is_nothrow_move_assignable/value.cc: Likewise.
3093         * testsuite/20_util/is_nothrow_move_assignable/requirements/
3094         typedefs.cc: Likewise.
3095         * testsuite/20_util/is_nothrow_move_assignable/requirements/
3096         explicit_instantiation.cc: Likewise.
3097         * testsuite/20_util/is_nothrow_copy_assignable/value.cc: Likewise.
3098         * testsuite/20_util/is_nothrow_copy_assignable/requirements/
3099         typedefs.cc: Likewise.
3100         * testsuite/20_util/is_nothrow_copy_assignable/requirements/
3101         explicit_instantiation.cc: Likewise.
3102         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
3103         dg-error line numbers.
3104         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3105         Likewise.
3106         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
3107
3108 2011-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
3109
3110         * include/bits/shared_ptr_base.h: Use noexcept. Define special member
3111         functions as defaulted/deleted.
3112         * include/bits/shared_ptr.h: Use noexcept.
3113         * 20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line numbers.
3114         * 20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
3115
3116 2011-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
3117
3118         * doc/xml/manual/bitmap_allocator.xml: Fix typos.
3119
3120 2011-05-18  Paolo Carlini  <paolo.carlini@oracle.com>
3121
3122         * libsupc++/initializer_list: Use noexcept specifier.
3123         (initializer_list<>::size, begin, end): Qualify as const.
3124         * include/bits/move.h (__addressof, forward, move, addressof): Specify
3125         as noexcept.
3126         * include/std/bitset: Use noexcept specifier throughout.
3127         * include/debug/bitset: Update.
3128         * include/profile/bitset: Likewise.
3129
3130 2011-05-17  Paolo Carlini  <paolo.carlini@oracle.com>
3131
3132         * include/std/tuple: Use noexcept where appropriate.
3133         (tuple<>::swap): Rework implementation.
3134         (_Head_base<>::_M_swap_impl): Remove.
3135         (get(std::tuple<>&&)): Add.
3136         * testsuite/20_util/tuple/element_access/get2.cc: New.
3137         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
3138         line number.
3139
3140 2011-05-16  Paolo Carlini  <paolo.carlini@oracle.com>
3141
3142         * include/std/utility: Simplify the last commit, the whole
3143         std::get code is C++0x only.
3144
3145 2011-05-16  Paolo Carlini  <paolo.carlini@oracle.com>
3146
3147         * include/std/utility (get(std::pair<>&&)): Add.
3148         * include/bits/stl_pair.h (pair::swap(pair&),
3149         swap(pair<>&, pair<>&)): Use noexcept.
3150         * include/bits/random.h (discard_block_engine<>::base,
3151         independent_bits_engine<>::base, shuffle_order_engine<>::base,
3152         random_device::entropy): Use noexcept.
3153         * include/std/array: Use noexcept where appropriate.
3154         (get(array<>&&)): Add.
3155         * testsuite/23_containers/array/requirements/get.cc: New.
3156         * testsuite/20_util/pair/get.cc: Likewise.
3157         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-error
3158         line number.
3159
3160 2011-05-15  Paolo Carlini  <paolo.carlini@oracle.com>
3161
3162         * include/bits/c++config (_GLIBCXX_NOEXCEPT, _GLIBCXX_USE_NOEXCEPT):
3163         Add.
3164         * include/std/limits: Use the latter everywhere.
3165         (numeric_limits<char16_t>, numeric_limits<char32_t>): Simplify
3166         macro usages, the specializations exist only in C++0x mode.
3167         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
3168         line number.
3169
3170 2011-05-11  Paolo Carlini  <paolo.carlini@oracle.com>
3171
3172         * testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: Use
3173         dg-require-cmath.
3174         * testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise.
3175
3176 2011-05-11  François Dumont  <francois.cppdevs@free.fr>
3177
3178         * include/ext/pb_ds/detail/resize_policy/
3179         hash_load_check_resize_trigger_imp.hpp (assert_valid): Replace
3180         _GLIBCXX_DEBUG_ASSERT calls with PB_DS_DEBUG_VERIFY.
3181         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
3182         find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
3183         constructors_destructor_fn_imps.hpp, split_join_fn_imps.hpp
3184         (PB_DS_ASSERT_VALID): Rename in PB_DS_ASSERT_VALID_COND.
3185         * include/ext/pb_ds/detail/debug_map_base.hpp,
3186         splay_tree_/splay_tree_.hpp, ov_tree_map_/ov_tree_map_.hpp,
3187         cc_hash_table_map_/cc_ht_map_.hpp, pat_trie_/pat_trie_.hpp,
3188         leaf.hpp, internal_node.hpp, gp_hash_table_map_/gp_ht_map_.hpp,
3189         bin_search_tree_/bin_search_tree_.hpp, list_update_map_/lu_map_.hpp,
3190         rb_tree_map_/rb_tree_.hpp (PB_DS_ASSERT_VALID, PB_DS_DEBUG_VERIFY,
3191         PB_DS_CHECK_KEY_EXISTS, PB_DS_CHECK_KEY_DOES_NOT_EXIST): Duplicate
3192         macro definitions move...
3193         * include/ext/pb_ds/detail/container_base_dispatch.hpp: ... here...
3194         * include/ext/pb_ds/detail/basic_tree_policy/traits.hpp: ... and here.
3195         * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp,
3196         resize_policy.hpp, pairing_heap_/pairing_heap_.hpp,
3197         left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp,
3198         binomial_heap_/binomial_heap_.hpp, thin_heap_/thin_heap_.hpp,
3199         rc_binomial_heap_/rc_binomial_heap_.hpp, rc.hpp (PB_DS_ASSERT_VALID,
3200         PB_DS_DEBUG_VERIFY): Duplicate macro definitions move...
3201         * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp:
3202         ...here.
3203
3204 2011-05-09  Paolo Carlini  <paolo.carlini@oracle.com>
3205
3206         PR libstdc++/48933
3207         * include/c_global/cmath (acosh, asinh, atanh, cbrt, copysign,
3208         erf, erfc, exp2, expm1, fdim, fma, fmax, hypot, ilogb, lgamma,
3209         llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
3210         nextafter, nexttoward, remainder, remquo, rint, round, scalbln,
3211         scalbn, tgamma, trunc): Use __enable_if on the return type.
3212         * include/tr1/cmath: Likewise.
3213         * testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: New.
3214         * testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise.
3215
3216 2011-05-07  François Dumont  <francois.cppdevs@free.fr>
3217
3218         * include/debug/macro.h (_GLIBCXX_DEBUG_VERIFY_AT): New.
3219         (_GLICXX_DEBUG_VERIFY): Use latter.
3220         * include/ext/pb_ds/detail/resize_policy/
3221         hash_load_check_resize_trigger_imp.hpp: Emit assertion on the line
3222         containing the original assert call.
3223         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
3224         find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
3225         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3226         split_join_fn_imps.hpp: Likewise.