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.
3227         * include/ext/pb_ds/detail/cc_hash_table_map_/
3228         erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
3229         find_fn_imps.hpp, insert_store_hash_fn_imps.hpp, debug_fn_imps.hpp,
3230         debug_no_store_hash_fn_imps.hpp, cc_ht_map_.hpp, resize_fn_imps.hpp,
3231         constructor_destructor_fn_imps.hpp, debug_store_hash_fn_imps.hpp,
3232         erase_no_store_hash_fn_imps.hpp: Likewise.
3233         * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp,
3234         insert_join_fn_imps.hpp, pat_trie_/head.hpp, debug_fn_imps.hpp,
3235         constructors_destructor_fn_imps.hpp, pat_trie_.hpp, split_fn_imps.hpp,
3236         leaf.hpp, erase_fn_imps.hpp, node_base.hpp, internal_node.hpp:
3237         Likewise.
3238         * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp,
3239         r_erase_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
3240         debug_fn_imps.hpp, rotate_fn_imps.hpp, erase_fn_imps.hpp,
3241         bin_search_tree_.hpp, insert_fn_imps.hpp, split_join_fn_imps.hpp:
3242         Likewise.
3243         * include/ext/pb_ds/detail/gp_hash_table_map_/
3244         erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
3245         find_fn_imps.hpp, gp_ht_map_.hpp, insert_store_hash_fn_imps.hpp,
3246         debug_fn_imps.hpp, erase_fn_imps.hpp, debug_no_store_hash_fn_imps.hpp,
3247         resize_fn_imps.hpp, constructor_destructor_fn_imps.hpp,
3248         debug_store_hash_fn_imps.hpp, erase_no_store_hash_fn_imps.hpp:
3249         Likewise.
3250         * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp,
3251         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3252         erase_fn_imps.hpp, insert_fn_imps.hpp, binary_heap_.hpp,
3253         resize_policy.hpp, split_join_fn_imps.hpp: Likewise.
3254         * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp,
3255         find_fn_imps.hpp, insert_fn_imps.hpp,
3256         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3257         pairing_heap_.hpp, split_join_fn_imps.hpp: Likewise.
3258         * include/ext/pb_ds/detail/binomial_heap_/
3259         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3260         binomial_heap_.hpp: Likewise.
3261         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3262         erase_fn_imps.hpp, left_child_next_sibling_heap_.hpp,
3263         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
3264         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp,
3265         find_fn_imps.hpp, thin_heap_.hpp, insert_fn_imps.hpp,
3266         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3267         split_join_fn_imps.hpp: Likewise.
3268         * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp,
3269         ov_tree_map_.hpp, constructors_destructor_fn_imps.hpp,
3270         debug_fn_imps.hpp, split_join_fn_imps.hpp, info_fn_imps.hpp: Likewise.
3271         * include/ext/pb_ds/detail/debug_map_base.hpp: Likewise.
3272         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp,
3273         find_fn_imps.hpp, insert_fn_imps.hpp,
3274         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3275         splay_fn_imps.hpp, split_join_fn_imps.hpp, splay_tree_.hpp: Likewise.
3276         * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp,
3277         find_fn_imps.hpp, lu_map_.hpp, constructor_destructor_fn_imps.hpp,
3278         insert_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
3279         * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp,
3280         rc_binomial_heap_.hpp, insert_fn_imps.hpp,
3281         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp, rc.hpp,
3282         split_join_fn_imps.hpp: Likewise.
3283         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp,
3284         insert_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
3285         debug_fn_imps.hpp, rb_tree_.hpp, split_join_fn_imps.hpp: Likewise.
3286         * include/ext/pb_ds/hash_policy.hpp: Likewise.
3287
3288 2011-05-06  Paolo Carlini  <paolo.carlini@oracle.com>
3289
3290         * testsuite/22_locale/messages_byname/named_equivalence.cc: Fix.
3291
3292 2011-05-04  Marc Glisse  <marc.glisse@normalesup.org>
3293
3294         PR libstdc++/47913 (again)
3295         * include/std/ratio (ratio_add, ratio_less): Rewrite.
3296         * testsuite/20_util/ratio/operations/47913.cc: Extend.
3297         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust dg-error
3298         line numbers.
3299         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
3300
3301 2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>
3302
3303         PR libstdc++/48848
3304         * include/std/valarray (valarray<>::valarray(valarray&&),
3305         valarray<>::operator=(valarray&&), valarray<>::swap): Add.
3306         * doc/xml/manual/status_cxx200x.xml: Update.
3307         * testsuite/26_numerics/valarray/moveable.cc: New.
3308         * testsuite/26_numerics/valarray/swap.cc: Likewise.
3309
3310 2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>
3311
3312         PR libstdc++/48750
3313         * include/parallel/multiway_merge.h: Run _ValueType destructors.
3314         * include/parallel/multiway_mergesort.h: Likewise.
3315         * include/parallel/quicksort.h: Likewise.
3316         * include/parallel/random_shuffle.h: Likewise.
3317         * include/parallel/partial_sum.h: Likewise.
3318         * include/parallel/losertree.h: Run destructors; minor tweaks.
3319         * include/parallel/par_loop.h: Run destructors, fix memory
3320         allocations and deallocations.
3321         * testsuite/26_numerics/accumulate/48750.cc: New.
3322
3323         * testsuite/ext/profile/mutex_extensions_neg.cc: Do not run in
3324         parallel-mode to avoid spurious multiple errors.
3325
3326 2011-05-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
3327
3328         * include/std/functional (bind): Remove from overload set when first
3329         argument type might be a socket file descriptor.
3330         * testsuite/20_util/bind/socket.cc: New.
3331
3332 2011-05-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
3333
3334         PR libstdc++/48848
3335         * doc/xml/manual/status_cxx200x.xml: Update valarray status.
3336         * doc/html/*: Regenerate.
3337
3338 2011-05-02  Ollie Wild  <aaw@google.com>
3339
3340         * include/ext/sso_string_base.h (__sso_string_base<>::_M_construct):
3341         Fix unqualified lookup.
3342         (__sso_string_base<>::_M_assign): Likewise.
3343         (__sso_string_base<>::_M_reserve): Likewise.
3344         (__sso_string_base<>::_M_mutate): Likewise.
3345         (__sso_string_base<>::_M_erase): Likewise.
3346         * include/ext/vstring.h (__versa_string<>::replace): Likewise.
3347         (__versa_string<>::compare): Likewise.
3348         * include/ext/vstring.tcc (__versa_string<>::compare): Likewise.
3349
3350 2011-05-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
3351
3352         * doc/xml/manual/status_cxx200x.xml: Update to reflect current status
3353         and FDIS content.
3354         * doc/xml/manual/documentation_hacking.xml: Fix typo.
3355         * doc/html/*: Regenerate.
3356
3357 2011-04-30  Daniel Krugler  <daniel.kruegler@googlemail.com>
3358
3359         * include/std/type_traits (__is_default_constructible_atom,
3360         __is_default_constructible_safe<, true>,
3361         __is_direct_constructible_new_safe,
3362         __is_base_to_derived_ref<,, true>, __is_lvalue_to_rvalue_ref<,, true>,
3363         __is_direct_constructible_ref_cast, __is_direct_constructible,
3364         __is_nary_constructible): Simplify; add comments throughout.
3365
3366 2011-04-30  Paolo Carlini  <paolo.carlini@oracle.com>
3367
3368         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
3369         Adjust dg-error line numbers.
3370         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3371         Likewise.
3372         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
3373
3374 2011-04-30  Doug Kwan  <dougkwan@google.com>
3375
3376         * include/Makefile.am (install-freestanding-headers): Also install
3377         cxxabi_tweaks.h.
3378         * include/Makefile.in: Regenerate.
3379
3380 2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
3381
3382         PR libstdc++/48760
3383         * include/std/complex (complex<float>::complex(float, float),
3384         complex<double>::complex(double, double),
3385         complex<long double>::complex(long double, long double)): Use
3386         list-initialization in C++0x mode, initialize in the body in
3387         C++03 mode.
3388         * testsuite/26_numerics/complex/cons/48760.cc: New.
3389         * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
3390
3391 2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
3392
3393         * include/std/bitset (_Base_bitset(unsigned long long)): Minor
3394         tweak, remove redundant round braces.
3395
3396 2011-04-27  Paolo Carlini  <paolo.carlini@oracle.com>
3397
3398         * include/bits/move.h (move_if_noexcept): Add.
3399         * testsuite/20_util/move_if_noexcept/requirements/
3400         explicit_instantiation.cc: New.
3401         * testsuite/20_util/move_if_noexcept/1.cc: Likewise.
3402
3403 2011-04-25  Paolo Carlini  <paolo.carlini@oracle.com>
3404
3405         * include/std/type_traits (struct underlying_type): Add.
3406         * testsuite/20_util/underlying_type/requirements/typedefs-1.cc: New.
3407         * testsuite/20_util/underlying_type/requirements/typedefs-2.cc:
3408         Likewise.
3409         * testsuite/20_util/underlying_type/requirements/
3410         explicit_instantiation.cc: Likewise.
3411         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
3412         line number.
3413
3414 2011-04-24  Paolo Carlini  <paolo.carlini@oracle.com>
3415
3416         * include/parallel/multiway_merge.h: Uglify equally_split
3417         and equally_split_point throughout.
3418         * include/parallel/par_loop.h: Likewise.
3419         * include/parallel/equally_split.h: Likewise.
3420         * include/parallel/set_operations.h: Likewise.
3421         * include/parallel/unique_copy.h: Likewise.
3422         * include/parallel/multiway_mergesort.h: Likewise.
3423         * include/parallel/search.h: Likewise.
3424         * include/parallel/partial_sum.h: Likewise.
3425         * include/parallel/find.h: Likewise.
3426
3427 2011-04-24  Gerald Pfeifer  <gerald@pfeifer.com>
3428
3429         * doc/xml/manual/parallel_mode.xml: Fix link to libgomp online
3430         documentation.  Expand link text.
3431
3432 2011-04-24  Gerald Pfeifer  <gerald@pfeifer.com>
3433
3434         * libsupc++/cxxabi.h: Adjust link to FAQ entry.
3435
3436 2011-04-22  François Dumont  <francois.cppdevs@free.fr>
3437
3438         * testsuite/lib/libstdc++.exp (check_v3_target_time): Discard
3439         unused compilation result thanks to /dev/null.
3440         * testsuite/lib/libstdc++.exp (check_v3_target_debug_mode,
3441         check_v3_target_profile_mode, check_v3_target_normal_mode,
3442         check_v3_target_cstdint, check_v3_target_cmath,
3443         check_v3_target_atomic_builtins, check_v3_target_gthreads,
3444         check_v3_target_nanosleep, check_v3_target_sched_yield,
3445         check_v3_target_string_conversions, check_v3_target_swprintf,
3446         check_v3_target_binary_io): Use simple preprocessing rather than
3447         compilation. Discard unused preprocessing result thanks to /dev/null.
3448
3449 2011-04-20  Jim Meyering  <meyering@redhat.com>
3450
3451         * libsupc++/del_opnt.cc (operator delete): Remove useless
3452         if-before-free.
3453
3454 2011-04-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
3455
3456         PR libstdc++/48521
3457         * include/std/type_traits (result_of): Handle pointer to member.
3458         * include/std/functional (__invoke): Likewise.
3459         (_Function_to_function_pointer): Remove.
3460         (_Reference_wrapper_base): Provide nested types independent of
3461         unary_function and binary_function.
3462         (reference_wrapper::operator()): DR 2017.
3463         (ref(const A&&), cref(const A&&): Define as deleted.
3464         * include/std/future (async): Simplify SFINAE and use result_of to
3465         support pointer to member.
3466         * testsuite/20_util/reference_wrapper/invoke.cc: Test pointer to
3467         member.
3468         * testsuite/20_util/reference_wrapper/24803.cc: Likewise.
3469         * testsuite/20_util/reference_wrapper/typedefs.cc: Test for types
3470         instead of derivation from unary_function and binary_function.
3471         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
3472         * testsuite/20_util/reference_wrapper/invoke-2.cc: New.
3473         * testsuite/20_util/reference_wrapper/ref_neg.c: New.
3474         * testsuite/20_util/reference_wrapper/typedefs-3.c: New.
3475
3476 2011-04-19  Hans-Peter Nilsson  <hp@axis.com>
3477
3478         PR testsuite/48675
3479         * testsuite/20_util/hash/chi2_quality.cc (test_document_words): Stub
3480         this part if SAMPLES < 100000.
3481
3482 2011-04-18  Paolo Carlini  <paolo.carlini@oracle.com>
3483
3484         * include/std/type_traits (is_nothrow_default_constructible,
3485         is_nothrow_copy_constructible, is_nothrow_move_constructible,
3486         is_copy_constructible, is_move_constructible): Add.
3487         (has_nothrow_default_constructor, has_nothrow_copy_constructor):
3488         Remove.
3489         (is_nothrow_constructible): Adjust.
3490
3491         * testsuite/util/testsuite_tr1.h (ThrowDefaultClass,
3492         ThrowCopyConsClass, ThrowMoveConsClass, NoexceptDefaultClass,
3493         ExceptDefaultClass, NoexceptCopyConsClass, ExceptCopyConsClass,
3494         NoexceptMoveConsClass, ExceptMoveConsClass): Add in C++0x mode.
3495
3496         * testsuite/20_util/has_nothrow_default_constructor: Remove.
3497         * testsuite/20_util/has_nothrow_copy_constructor: Likewise.
3498
3499         * testsuite/20_util/is_nothrow_move_constructible/value.cc: Likewise.
3500         * testsuite/20_util/is_nothrow_move_constructible/requirements/
3501         typedefs.cc: Likewise.
3502         * testsuite/20_util/is_nothrow_move_constructible/requirements/
3503         explicit_instantiation.cc: Likewise.
3504         * testsuite/20_util/is_nothrow_copy_constructible/value.cc: Likewise.
3505         * testsuite/20_util/is_nothrow_copy_constructible/requirements/
3506         typedefs.cc: Likewise.
3507         * testsuite/20_util/is_nothrow_copy_constructible/requirements/
3508         explicit_instantiation.cc: Likewise.
3509         * testsuite/20_util/is_nothrow_default_constructible/value.cc:
3510         Likewise.
3511         * testsuite/20_util/is_nothrow_default_constructible/requirements/
3512         typedefs.cc: Likewise.
3513         * testsuite/20_util/is_nothrow_default_constructible/requirements/
3514         explicit_instantiation.cc: Likewise.
3515         * testsuite/20_util/is_move_constructible/value.cc: Likewise.
3516         * testsuite/20_util/is_move_constructible/requirements/typedefs.cc:
3517         Likewise.
3518         * testsuite/20_util/is_move_constructible/requirements/
3519         explicit_instantiation.cc: Likewise.
3520         * testsuite/20_util/is_copy_constructible/value.cc: Likewise.
3521         * testsuite/20_util/is_copy_constructible/requirements/typedefs.cc:
3522         Likewise.
3523         * testsuite/20_util/is_copy_constructible/requirements/
3524         explicit_instantiation.cc: Likewise.
3525
3526         * testsuite/20_util/is_default_constructible/value.cc: Add tests.
3527         * testsuite/20_util/is_nothrow_constructible/value.cc: Likewise.
3528
3529         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
3530         Adjust dg-error line numbers.
3531         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3532         Likewise.
3533         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
3534
3535 2011-04-17  Paolo Carlini  <paolo.carlini@oracle.com>
3536
3537         * testsuite/25_algorithms/partition/moveable.cc: Actually run
3538         it in parallel-mode for check-parallel.
3539
3540 2011-04-17  Daniel Krugler  <daniel.kruegler@googlemail.com>
3541             Paolo Carlini  <paolo.carlini@oracle.com>
3542
3543         PR libstdc++/48635 (again)
3544         * include/bits/unique_ptr.h (unique_ptr<>::unique_ptr(unique_ptr<>&&),
3545         unique_ptr<_Tp[]>::unique_ptr(unique_ptr<>&&),
3546         unique_ptr<>::operator=(unique_ptr<>&&),
3547         unique_ptr<_Tp[]>::operator=(unique_ptr<>&&)): Use forward<_Ep>, not
3548         forward<_Dp>, to forward the deleter.
3549         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: New.
3550
3551 2011-04-15  Daniel Krugler  <daniel.kruegler@googlemail.com>
3552             Paolo Carlini  <paolo.carlini@oracle.com>
3553
3554         PR libstdc++/48631
3555         * include/bits/unique_ptr.h (default_delete<_Tp[]>): Add deleted
3556         function call operator.
3557         * testsuite/20_util/default_delete/48631_neg.cc: New.
3558         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
3559         line numbers.
3560
3561 2011-04-15  Daniel Krugler  <daniel.kruegler@googlemail.com>
3562             Paolo Carlini  <paolo.carlini@oracle.com>
3563
3564         PR libstdc++/48635
3565         * include/bits/unique_ptr.h (unique_ptr<>::operator=(unique_ptr&&),
3566         unique_ptr<>::operator=(unique_ptr<>&&),
3567         unique_ptr<_Tp[],>::operator=(unique_ptr&&),
3568         unique_ptr<_Tp[],>::operator=(unique_ptr<>&&)): Forward the deleter
3569         instead of moving it.
3570         * testsuite/20_util/unique_ptr/assign/48635.cc: New.
3571
3572 2011-04-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3573
3574         * scripts/extract_symvers.pl: Handle NOTY.
3575
3576 2011-04-15  Paolo Carlini  <paolo.carlini@oracle.com>
3577
3578         * include/std/istream: Fix comments in the light of DR60 + N3168.
3579
3580 2011-04-13  Daniel Krugler  <daniel.kruegler@googlemail.com>
3581             Paolo Carlini  <paolo.carlini@oracle.com>
3582
3583         PR libstdc++/48526
3584         * include/std/type_traits (struct is_constructible): Re-implement,
3585         according to n3290.
3586         (struct is_default_constructible): Add.
3587         (struct is_destructible): Likewise.
3588         (struct __and_, __or_, __not_): Add and use throughout; reorder some
3589         facilities, other minor tweaks.
3590         * testsuite/util/testsuite_tr1.h: Add test types.
3591         * testsuite/20_util/is_constructible/value-2.cc: New.
3592         * testsuite/20_util/is_default_constructible/value.cc: Likewise.
3593         * testsuite/20_util/is_default_constructible/requirements/typedefs.cc:
3594         Likewise.
3595         * testsuite/20_util/is_default_constructible/requirements/
3596         explicit_instantiation.cc: Likewise.
3597         * testsuite/20_util/is_destructible/value.cc: Likewise.
3598         * testsuite/20_util/is_destructible/requirements/typedefs.cc:
3599         Likewise.
3600         * testsuite/20_util/is_destructible/requirements/
3601         explicit_instantiation.cc: Likewise.
3602         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
3603         dg-error line numbers.
3604         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3605         Likewise.
3606         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
3607         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
3608
3609 2011-04-13  Paolo Carlini  <paolo.carlini@oracle.com>
3610
3611         * testsuite/20_util/is_function/value.cc: Add, adapted from the tr
3612         testsuite.
3613         * testsuite/20_util/is_function/requirements/typedefs.cc: Likewise.
3614         * testsuite/20_util/is_function/requirements/
3615         explicit_instantiation.cc: Likewise.
3616         * testsuite/20_util/is_function/24808.cc: Likewise.
3617         * testsuite/20_util/is_function/35637.cc: Likewise.
3618         * testsuite/20_util/is_object/value.cc: Likewise.
3619         * testsuite/20_util/is_object/requirements/typedefs.cc: Likewise.
3620         * testsuite/20_util/is_object/requirements/explicit_instantiation.cc:
3621         : Likewise.
3622         * testsuite/20_util/is_object/24808.cc: Likewise.
3623         * testsuite/20_util/is_compound/value.cc: Likewise.
3624         * testsuite/20_util/is_compound/requirements/typedefs.cc: Likewise.
3625         * testsuite/20_util/is_compound/requirements/
3626         explicit_instantiation.cc: Likewise.
3627         * testsuite/20_util/is_member_object_pointer/value.cc: Likewise.
3628         * testsuite/20_util/is_member_object_pointer/requirements/
3629         typedefs.cc: Likewise.
3630         * testsuite/20_util/is_member_object_pointer/requirements/
3631         explicit_instantiation.cc: Likewise.
3632         * testsuite/20_util/is_fundamental/value.cc: Likewise.
3633         * testsuite/20_util/is_fundamental/requirements/typedefs.cc: Likewise.
3634         * testsuite/20_util/is_fundamental/requirements/
3635         explicit_instantiation.cc: Likewise.
3636         * testsuite/20_util/is_member_pointer/value.cc: Likewise.
3637         * testsuite/20_util/is_member_pointer/requirements/typedefs.cc:
3638         Likewise.
3639         * testsuite/20_util/is_member_pointer/requirements/
3640         explicit_instantiation.cc: Likewise.
3641         * testsuite/20_util/is_member_function_pointer/value.cc: Likewise.
3642         * testsuite/20_util/is_member_function_pointer/
3643         requirements/typedefs.cc: Likewise.
3644         * testsuite/20_util/is_member_function_pointer/requirements/
3645         explicit_instantiation.cc: Likewise.
3646
3647         * testsuite/20_util/is_convertible/value.cc: Minor tweak, adjust
3648         Copyright years.
3649
3650 2011-04-12  Takaya Saito  <gintensubaru@gmail.com>
3651
3652         PR libstdc++/48476
3653         * include/std/tuple (_Tuple_impl<>::_Tuple_impl(_Tuple_impl<>&&),
3654         _Tuple_impl<>::operator=(_Tuple_impl&&), _Tuple_impl<>::operator=
3655         (_Tuple_impl<>&&), tuple_cat): Use std::forward where appropriate.
3656         * testsuite/20_util/tuple/cons/48476.cc: New.
3657         * testsuite/20_util/tuple/48476.cc: Likewise.
3658         * testsuite/20_util/tuple/creation_functions/48476.cc: Likewise.
3659
3660 2011-04-12  Allan McRae  <allan@archlinux.org>
3661
3662         PR libstdc++/48566
3663         * testsuite/tr1/6_containers/unordered_map/requirements/
3664         iterator_null_neg.cc: Include <cstddef>.
3665         * testsuite/tr1/6_containers/unordered_set/requirements/
3666         iterator_null_neg.cc: Likewise.
3667         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc: Include
3668         <cstring>.
3669         * testsuite/util/testsuite_common_types.h: Include <limits>.
3670         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc:
3671         Adjust dg-error line numbers.
3672         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
3673         * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
3674         Likewise.
3675         * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
3676         Likewise.
3677         * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc:
3678         Likewise.
3679         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Likewise.
3680         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
3681
3682 2011-04-11  Jason Merrill  <jason@redhat.com>
3683
3684         * testsuite/20_util/is_convertible/value.cc: Adjust.
3685
3686 2011-04-11  Paolo Carlini  <paolo.carlini@oracle.com>
3687
3688         * testsuite/25_algorithms/inplace_merge/moveable.cc: Actually run
3689         it in parallel-mode for check-parallel.
3690         * testsuite/25_algorithms/rotate/moveable.cc: Likewise.
3691         * testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
3692         * testsuite/25_algorithms/remove/moveable.cc: Likewise.
3693         * testsuite/25_algorithms/sort_heap/check_compare_by_value.cc:
3694         Likewise.
3695         * testsuite/25_algorithms/unique/moveable.cc: Likewise.
3696         * testsuite/25_algorithms/remove_if/moveable.cc: Likewise.
3697         * testsuite/25_algorithms/heap/moveable.cc: Likewise.
3698
3699         * testsuite/25_algorithms/next_permutation/moveable.cc: Only skip
3700         the tests based on std::lexicographical_compare for check-parallel.
3701         * testsuite/25_algorithms/prev_permutation/moveable.cc: Likewise.
3702
3703 2011-04-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
3704
3705         PR libstdc++/48541
3706         * include/std/functional (_Base_manager::_M_get_pointer): Use
3707         addressof.
3708         * testsuite/20_util/function/48541.cc: New.
3709
3710 2011-04-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
3711
3712         PR libstdc++/48465
3713         * configure.ac (libtool_VERSION): Bump library version to 6:16:0.
3714         * configure: Regenerate.
3715         * config/abi/pre/gnu.ver (GLIBCXX_3.4.16): Export missing symbols.
3716         * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.16.
3717
3718 2011-04-06  Jeffrey Yasskin  <jyasskin@google.com>
3719
3720         * include/ext/algorithm (is_sorted): In C++0x mode import from
3721         namespace std.
3722         * include/ext/numeric (iota): In C++0x mode import from
3723         namespace std.
3724         * testsuite/ext/is_sorted/cxx0x.cc: New.
3725         * testsuite/ext/iota/cxx0x.cc: New.
3726
3727 2011-04-02  Jonathan Wakely  <redi@gcc.gnu.org>
3728
3729         PR libstdc++/48398
3730         * include/bits/unique_ptr.h (__tuple_type): Store pointer type.
3731         * testsuite/20_util/unique_ptr/modifiers/48398.cc: New.
3732         * testsuite/20_util/unique_ptr/requirements/pointer_type.cc: Remove
3733         unused parameter name.
3734
3735 2011-03-31  Jeffrey Yasskin  <jyasskin@google.com>
3736
3737         * libsupc++/exception_ptr.h: Forward-declare std::type_info.
3738         * libsupc++/nested_exception.h (__throw_with_nested): Remove a
3739         redundant default argument from std::__throw_with_nested.
3740
3741 2011-03-31  Paolo Carlini  <paolo.carlini@oracle.com>
3742
3743         PR libstdc++/48382
3744         * src/ctype.cc: Do not include <bits/ctype_noninline.h>.
3745         * src/Makefile.am: Add ctype_configure_char.cc to host_sources.
3746         * src/Makefile.in: Regenerate.
3747         * include/Makefile.am: Remove ctype_noninline.h from host_headers.
3748         * include/Makefile.in: Regenerate.
3749         * doc/xml/manual/internals.xml: Update.
3750         * config/os/newlib/ctype_noninline.h: Fixup and rename to...
3751         * config/os/newlib/ctype_configure_char.cc: ... this.
3752         * config/os/aix/ctype_noninline.h: Likewise.
3753         * config/os/aix/ctype_configure_char.cc: Likewise.
3754         * config/os/vxworks/ctype_noninline.h: Likewise.
3755         * config/os/vxworks/ctype_configure_char.cc
3756         * config/os/hpux/ctype_noninline.h: Likewise.
3757         * config/os/hpux/ctype_configure_char.cc: Likewise.
3758         * config/os/gnu-linux/ctype_noninline.h: Likewise.
3759         * config/os/gnu-linux/ctype_configure_char.cc: Likewise.
3760         * config/os/mingw32/ctype_noninline.h: Likewise.
3761         * config/os/mingw32/ctype_configure_char.cc: Likewise.
3762         * config/os/tpf/ctype_noninline.h: Likewise.
3763         * config/os/tpf/ctype_configure_char.cc: Likewise.
3764         * config/os/uclibc/ctype_noninline.h: Likewise.
3765         * config/os/uclibc/ctype_configure_char.cc: Likewise.
3766         * config/os/bionic/ctype_noninline.h: Likewise.
3767         * config/os/bionic/ctype_configure_char.cc: Likewise.
3768         * config/os/djgpp/ctype_noninline.h: Likewise.
3769         * config/os/djgpp/ctype_configure_char.cc: Likewise.
3770         * config/os/qnx/qnx6.1/ctype_noninline.h: Likewise.
3771         * config/os/qnx/qnx6.1/ctype_configure_char.cc: Likewise.
3772         * config/os/bsd/netbsd/ctype_noninline.h: Likewise.
3773         * config/os/bsd/netbsd/ctype_configure_char.cc: Likewise.
3774         * config/os/bsd/darwin/ctype_noninline.h: Likewise.
3775         * config/os/bsd/darwin/ctype_configure_char.cc: Likewise.
3776         * config/os/bsd/freebsd/ctype_noninline.h: Likewise.
3777         * config/os/bsd/freebsd/ctype_configure_char.cc: Likewise.
3778         * config/os/irix/irix6.5/ctype_noninline.h: Likewise.
3779         * config/os/irix/irix6.5/ctype_configure_char.cc: Likewise.
3780         * config/os/generic/ctype_noninline.h: Likewise.
3781         * config/os/generic/ctype_configure_char.cc: Likewise.
3782         * config/os/solaris/solaris2.7/ctype_noninline.h: Likewise.
3783         * config/os/solaris/solaris2.7/ctype_configure_char.cc: Likewise.
3784
3785 2011-03-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
3786
3787         * include/std/future (future::share): Add.
3788         (packaged_task::result_type): Remove as per LWG 2030.
3789         (packaged_task::packaged_task): Remove redundant constructors, as per
3790         LWG 1514.
3791         * testsuite/30_threads/future/members/share.cc: New.
3792         * testsuite/30_threads/packaged_task/requirements/typedefs.cc: Remove.
3793
3794 2011-03-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
3795
3796         * testsuite/28_regex/match_results/ctors/char/default.cc: Do not call
3797         members which require a fully established result state.
3798         * testsuite/28_regex/match_results/ctors/wchar_t/default.cc: Likewise.
3799
3800 2011-03-25  Paolo Carlini  <paolo.carlini@oracle.com>
3801
3802         * include/bits/random.h (negative_binomial_distribution<>::
3803         negative_binomial_distribution(_IntType, double),
3804         negative_binomial_distribution<>::
3805         negative_binomial_distribution(const param_type&)): Tweak
3806         construction of _M_gd.
3807         * include/bits/random.tcc (negative_binomial_distribution<>::
3808         operator()): Adjust.
3809
3810 2011-03-24  Paolo Carlini  <paolo.carlini@oracle.com>
3811
3812         * include/bits/random.h (negative_binomial_distribution<>::
3813         negative_binomial_distribution(_IntType, double),
3814         negative_binomial_distribution<>::
3815         negative_binomial_distribution(const param_type&)): Fix
3816         construction of _M_gd.
3817         * include/bits/random.tcc (negative_binomial_distribution<>::
3818         operator()): Fix computation, per Leger's algorithm.
3819         * testsuite/util/testsuite_random.h (discrete_pdf,
3820         negative_binomial_pdf, poisson_pdf, uniform_int_pdf): New.
3821         (binomial_pdf): Swap last two parameters.
3822         * testsuite/26_numerics/random/discrete_distribution/
3823         operators/values.cc: New.
3824         * testsuite/26_numerics/random/negative_binomial_distribution/
3825         operators/values.cc: Likewise.
3826         * testsuite/26_numerics/random/poisson_distribution/
3827         operators/values.cc: Likewise.
3828         * testsuite/26_numerics/random/uniform_int_distribution/
3829         operators/values.cc: Likewise.
3830         * testsuite/26_numerics/random/binomial_distribution/
3831         operators/values.cc: Adjust.
3832
3833 2011-03-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3834
3835         * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate.
3836         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
3837         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
3838         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
3839         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
3840
3841 2011-03-23  Matthias Klose  <doko@ubuntu.com>
3842
3843         * config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Regenerated.
3844
3845 2011-03-23  Uros Bizjak  <ubizjak@gmail.com>
3846
3847         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Regenerated.
3848
3849 2011-03-22  Joseph Myers  <joseph@codesourcery.com>
3850
3851         * configure.ac: Don't handle powerpc*-*-gnu*.
3852         * configure: Regenerate.
3853
3854 2011-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
3855
3856         * testsuite/21_strings/basic_string/cons/char/moveable2.cc: Tweak
3857         Copyright years.
3858         * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc:
3859         Likewise.
3860
3861 2011-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
3862
3863         * include/bits/shared_ptr.h (operator>, operator<=, operator>=): Add,
3864         per DR 1401.
3865         (operator==, operator!=, operator<): Fix per the letter of DR 1401.
3866         * include/bits/shared_ptr_base.h: Likewise for __shared_ptr.
3867         * include/bits/unique_ptr.h (operator==, operator!=, operator<,
3868         operator<=, operator>, operator>=): Fix per the letter of DR 1401.
3869         * testsuite/20_util/shared_ptr/comparison/dr1401.cc: New.
3870         * testsuite/20_util/unique_ptr/comparison/dr1401.cc: Likewise.
3871         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust.
3872
3873 2011-03-22  Jakub Jelinek  <jakub@redhat.com>
3874
3875         * config/abi/pre/gnu.ver (GLIBCXX_3.4.15): Export _ZNSsC2EOSs
3876         and _ZNSbIwSt11char_traitsIwESaIwEEC2EOS2_.
3877         * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerated.
3878         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
3879         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
3880         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
3881         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
3882         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
3883         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
3884         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
3885         Likewise.
3886         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
3887         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
3888         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
3889         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
3890         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
3891         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
3892         * testsuite/21_strings/basic_string/cons/char/moveable2.cc: New test.
3893         * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc: New
3894         test.
3895
3896 2011-03-21  Jack Howarth  <howarth@bromo.med.uc.edu>
3897
3898         * testsuite/lib/prune.exp (libstdc++-dg-prune): Prune "could not
3899         create compact unwind for" warnings.
3900
3901 2011-03-21  Jakub Jelinek  <jakub@redhat.com>
3902
3903         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
3904         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
3905         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
3906         Likewise.
3907         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
3908         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
3909         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
3910         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
3911         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
3912         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
3913         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
3914         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
3915         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
3916
3917         * testsuite/util/testsuite_abi.cc (check_version): Set incompatible
3918         even when adding symbols to CXXABI_1.3, GLIBCXX_LDBL_3.4 and
3919         CXXABI_LDBL_1.3 versions.
3920
3921 2011-03-21  Benjamin Kosnik  <bkoz@redhat.com>
3922
3923         * config/abi/pre/gnu.ver: Remove typeinfo name exports for C++0x types.
3924
3925 2011-03-21  Jakub Jelinek  <jakub@redhat.com>
3926
3927         * config/abi/pre/gnu.ver (CXXABI_1.3): Don't export _ZT[IS][PK]*[no].
3928         (CXXABI_1.3.5): Export _ZTI[PK]*[no].
3929
3930 2011-03-21  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3931
3932         * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on
3933         sparc*-sun-solaris2.10 && lp64.
3934
3935 2011-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
3936
3937         * testsuite/lib/libstdc++.exp (check_v3_target_c99_math): Rename
3938         to check_v3_target_cmath.
3939         * testsuite/lib/dg-options.exp (dg-require-c99_math): Rename
3940         to dg-require-cmath.
3941         * testsuite/26_numerics/random/binomial_distribution/
3942         operators/values.cc: Adjust.
3943
3944 2011-03-18  Diego Novillo  <dnovillo@google.com>
3945
3946         * testsuite/decimal/mixed-mode-arith_neg.cc: Rename from
3947         mixed-mode_neg.cc
3948         * testsuite/decimal/mixed-mode-cmp_neg.cc: Factor out of
3949         mixed-mode-arith_neg.cc
3950
3951 2011-03-18  Paolo Carlini  <paolo.carlini@oracle.com>
3952
3953         * testsuite/util/testsuite_random.h: New.
3954         * testsuite/lib/libstdc++.exp (check_v3_target_c99_math): Add.
3955         * testsuite/lib/dg-options.exp (dg-require-c99_math): Likewise.
3956         * testsuite/26_numerics/random/bernoulli_distribution/
3957         operators/values.cc: New.
3958         * testsuite/26_numerics/random/binomial_distribution/
3959         operators/values.cc: Likewise.
3960         * testsuite/26_numerics/random/geometric_distribution/
3961         operators/values.cc: Likewise.
3962
3963 2011-03-16  Benjamin Kosnik  <bkoz@redhat.com>
3964
3965         * config/abi/pre/gnu.ver: Add base destructors for stdexcept classes.
3966         * testsuite/19_diagnostics/stdexcept.cc: New.
3967
3968 2011-03-15  Benjamin Kosnik  <bkoz@redhat.com>
3969
3970         * include/std/thread: Revert.
3971         * src/thread.cc: Same.
3972         * config/abi/pre/gnu.ver: Same.
3973
3974 2011-03-15  Doug Kwan  <dougkwan@google.com>
3975
3976         PR libstdc++/48123
3977         * include/Makefile.am (install-freestanding-headers): Install
3978         cpu_defines.h
3979         * include/Makefile.in: Regenerate.
3980
3981 2011-03-15  Benjamin Kosnik  <bkoz@redhat.com>
3982
3983         * config/abi/pre/gnu.ver: Make nested_exception exports super clear.
3984         Move bad_function_call exports from CXXABI_1.3.5 to GLIBCXX_3.4.15.
3985
3986 2011-03-14  Benjamin Kosnik  <bkoz@redhat.com>
3987
3988         PR libstdc++/48130
3989         * src/future.cc: Guard definitions.
3990         * libsupc++/nested_exception.cc: Same.
3991
3992 2011-03-14  Benjamin Kosnik  <bkoz@redhat.com>
3993
3994         * src/Makefile.am: Add functional.cc, shared_ptr.cc.
3995         * src/Makefile.in: Regenerate.
3996         * libsupc++/Makefile.am: Add nested_exception.cc.
3997         * libsupc++/Makefile.in: Regenerate.
3998         * src/system_error.cc: Add ctor and dtor definitions for error_category.
3999         * src/functional.cc: New. Add dtor definition for bad_function_call.
4000         * src/stdexcept.cc: Add dtor definitions for domain_error,
4001         invalid_argument, length_error, out_of_range, range_error,
4002         overflow_error, underflow_error.
4003         * src/future.cc: Add dtor definition for __future_base::_Result_base.
4004         * src/shared_ptr.cc: New. Add dtor definition for bad_weak_ptr.
4005         * src/thread.cc: Add dtor for thread::_Impl_base.
4006         * include/std/system_error: Adjust.
4007         * include/std/stdexcept: Same.
4008         * include/std/future: Same.
4009         * include/std/functional: Same.
4010         * include/std/thread: Same.
4011         * include/bits/shared_ptr_base.h: Same.
4012         * libsupc++/nested_exception.cc: New. Add dtor for nested_exception.
4013         * libsupc++/nested_exception.h: Adjust.
4014         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
4015         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same.
4016         * config/abi/pre/gnu.ver: Add new exports.
4017
4018 2011-03-14  Benjamin Kosnik  <bkoz@redhat.com>
4019
4020         * include/bits/regex_compiler.h: Nest namespace versioning.
4021         * include/bits/regex_grep_matcher.tcc: Same.
4022         * include/bits/regex_grep_matcher.h: Same.
4023         * include/bits/regex_cursor.h: Same.
4024         * include/bits/regex_nfa.h: Same.
4025         * include/bits/regex_nfa.tcc: Same.
4026
4027         * include/bits/regex_grep_matcher.h: Version forward declarations.
4028         * include/bits/c++config: Add namespace association for __regex.
4029         * include/bits/regex.h: Make sub_match consistent.
4030
4031 2011-03-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4032
4033         * doc/xml/manual/abi.xml: Replace docs.sun.com URLs by their OTN
4034         equivalents.
4035         * doc/html/manual/abi.html: Regenerate.
4036
4037 2011-03-14  Tom Tromey  <tromey@redhat.com>
4038
4039         * python/libstdcxx/v6/printers.py (_use_gdb_pp): New global.
4040         Try to import `gdb.printing' module.
4041         (UniquePointerPrinter.__init__): Add 'typename' argument.
4042         (StdSlistPrinter.__init__): Likewise.
4043         (StdSlistIteratorPrinter.__init__): Likewise.
4044         (StdVectorIteratorPrinter.__init__): Likewise.
4045         (StdRbtreeIteratorPrinter.__init__): Likewise.
4046         (StdDebugIteratorPrinter.__init__): Likewise.
4047         (StdDequeIteratorPrinter.__init__): Likewise.
4048         (StdStringPrinter.__init__): Likewise.
4049         (RxPrinter, Printer): New class.
4050         (libstdcxx_printer): New global.
4051         (register_libstdcxx_printers): Rewrite.
4052         (build_libstdcxx_dictionary): Rewrite.
4053         (pretty_printers_dict): Remove.
4054
4055 2011-03-14  Andrey Zholos  <aaz@althenia.net>
4056
4057         PR libstdc++/48114
4058         * include/bits/random.h (geometric_distribution): Correct formula
4059         in comment, per C++0x.
4060         (geometric_distribution<>::param_type::param_type(double)): Fix check.
4061         (geometric_distribution<>::param_type::_M_initialize):
4062         Store log(1 - p).
4063         * include/bits/random.tcc (geometric_distribution<>::operator()):
4064         Fix computation.
4065         (binomial_distribution<>::operator()): Likewise.
4066
4067 2011-03-09  Paolo Carlini  <paolo.carlini@oracle.com>
4068
4069         * testsuite/util/testsuite_rvalref.h: Minor tweaks.
4070
4071 2011-03-09  Jonathan Wakely  <redi@gcc.gnu.org>
4072             Chris Jefferson  <chris@bubblescope.net>
4073             Paolo Carlini  <paolo.carlini@oracle.com>
4074
4075         * testsuite/util/testsuite_rvalref.h (rvalstruct_compare_by_value):
4076         New.
4077         * testsuite/25_algorithms/sort_heap/check_compare_by_value.cc:
4078         Likewise.
4079         * testsuite/25_algorithms/partial_sort/check_compare_by_value:
4080         Likewise.
4081         * testsuite/25_algorithms/stable_sort/check_compare_by_value.cc:
4082         Likewise.
4083         * testsuite/25_algorithms/sort/check_compare_by_value: Likewise.
4084
4085 2011-03-09  Chris Jefferson  <chris@bubblescope.net>
4086
4087         PR libstdc++/48038
4088         * include/bits/stl_algo.h (__merge_backward): Rename to
4089         __move_merge_backward and change to always move rather than copy.
4090         (__move_merge): New function similar to std::merge except values
4091         are moved instead of copied.
4092         (__merge_adaptive, __merge_sort_loop): Change from using std::merge
4093         and __merge_backward to __move_merge and __move_merge_backward.
4094
4095 2011-03-07  Jason Merrill  <jason@redhat.com>
4096
4097         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust
4098         expected errors.
4099
4100 2011-03-07  Benjamin Kosnik  <bkoz@redhat.com>
4101             Matthias Klose  <doko@ubuntu.com>
4102             Jonathan Wakely  <redi@gcc.gnu.org>
4103
4104         PR libstdc++/47145
4105         * acinclude.m4 (GLIBCXX_CONFIGURE_DOCBOOK): Define.
4106         * configure.ac: Use it.
4107         * doc/Makefile.am (XSL_STYLE_DIR): Set at configure time.
4108         * configure: Regenerate.
4109         * doc/Makefile.in: Regenerate.
4110
4111 2011-03-04  Benjamin Kosnik  <bkoz@chula>
4112
4113         * src/Makefile.am (inst_sources): Make source instantion files
4114         conditional.
4115         (XTEMPLATE_FLAGS): Make -fno-implicit-templates conditional.
4116         * src/Makefile.in: Regenerate.
4117         * src/valarray-inst.cc: Move to..
4118         * src/valarray.cc: ...this.
4119         * acinclude.m4 (GLIBCXX_ENABLE_EXTERN_TEMPLATE]): Define.
4120         * configure.ac (GLIBCXX_ENABLE_EXTERN_TEMPLATE): Use it.
4121         * configure: Regenerate.
4122         * include/Makefile.am (stamp-extern-template): Add.
4123         * include/Makefile.in: Regenerate.
4124
4125         * doc/xml/manual/configure.xml: Document --enable-extern-template.
4126
4127         * include/bits/locale_classes.tcc: Adjust comment.
4128         * include/bits/locale_facets.tcc: Same.
4129         * include/bits/basic_ios.tcc: Same.
4130         * include/bits/istream.tcc: Same.
4131         * include/bits/codecvt.h: Same.
4132         * include/bits/ostream.tcc: Same.
4133         * include/bits/sstream.tcc: Same.
4134         * include/bits/c++config: Same.
4135         * include/bits/basic_string.tcc: Same.
4136         * include/bits/ostream_insert.h: Same.
4137         * include/bits/locale_facets_nonio.tcc: Same.
4138         * include/bits/streambuf.tcc: Same.
4139         * include/bits/allocator.h: Same.
4140         * include/bits/fstream.tcc: Same.
4141
4142         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
4143
4144 2011-03-02  Benjamin Kosnik  <bkoz@redhat.com>
4145
4146         * testsuite/Makefile.am: Make clean fixups.
4147         * testsuite/Makefile.in: Regenerate.
4148
4149 2011-03-02  Marc Glisse  <marc.glisse@normalesup.org>
4150
4151         * include/std/ratio (ratio_less): Add comments.
4152
4153 2011-03-02  Marc Glisse  <marc.glisse@normalesup.org>
4154
4155         PR libstdc++/47913
4156         * include/std/ratio (ratio_add): Avoid denominator overflow.
4157         * testsuite/20_util/ratio/operations/47913.cc: New.
4158
4159 2011-02-28  Benjamin Kosnik  <bkoz@redhat.com>
4160
4161         * testsuite/20_util/hash/chi2_quality.cc: Use C++0x mode on simulators.
4162         * testsuite/20_util/hash/quality.cc: Same.
4163
4164 2011-02-28  Paolo Carlini  <paolo.carlini@oracle.com>
4165
4166         PR libstdc++/47921
4167         * include/std/streambuf (basic_streambuf<>::__safe_gbump,
4168         __safe_pbump): Add.
4169         * include/bits/streambuf.tcc (basic_streambuf<>::xgetn,
4170         xputn): Use the latter.
4171         * include/bits/streambuf_iterator.h: Likewise.
4172         * src/strstream.cc: Likewise.
4173         * src/streambuf.cc: Likewise.
4174         * src/compatibility.cc: Likewise.
4175         * src/istream.cc: Likewise.
4176         * include/bits/fstream.tcc (basic_filebuf<>::xsgetn): Use setg
4177         instead of gbump.
4178         * include/std/sstream (basic_stringbuf<>::_M_pbump): Add.
4179         * include/bits/sstream.tcc (basic_stringbuf<>::seekoff,
4180         seekpos, _M_sync): Use setg, setp, and _M_pbump.
4181         * config/abi/pre/gnu.ver: Tweak.
4182
4183 2011-02-28  Paolo Carlini  <paolo.carlini@oracle.com>
4184
4185         * testsuite/20_util/ratio/comparisons/comp3.cc: New.
4186
4187 2011-02-28  Marc Glisse  <marc.glisse@normalesup.org>
4188
4189         PR libstdc++/42622
4190         * include/std/ratio (ratio_less): Reimplement to never overflow.
4191         * testsuite/20_util/ratio/comparisons/comp2.cc: Extend.
4192
4193 2011-02-24  Benjamin Kosnik  <bkoz@redhat.com>
4194
4195         * testsuite/18_support/type_info/fundamental.cc: New.
4196
4197         * testsuite/Makefile.am: Make clean fixups.
4198         * testsuite/Makefile.in: Regenerate.
4199
4200 2011-02-19  François Dumont  <francois.cppdevs@free.fr>
4201
4202         * include/debug/string (basic_string::insert): Add iterator check and
4203         pass normal iterator to normal insert.
4204         * include/debug/macros.h (__glibcxx_check_heap,
4205         __glibcxx_check_heap_pred): Remove __glibcxx_check_valid_range,
4206         already done.
4207
4208 2011-02-17  Paolo Carlini  <paolo.carlini@oracle.com>
4209
4210         PR libstdc++/47776
4211         * testsuite/ext/vstring/hash/char/1.cc: Fix.
4212         * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
4213
4214 2011-02-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
4215
4216         * include/bits/regex.h (basic_regex::traits_type): Add typedef.
4217         (basic_regex::basic_regex(basic_regex&&)): Add noexcept.
4218         (basic_regex::operator=(basic_regex&&)): Likewise.
4219         (basic_regex::assign(basic_regex&&)): Likewise.
4220         (operator==(sub_match,...)): Implement DR 1181.
4221         (match_results::match_results(match_results&&)): Define.
4222         (match_results::operator=(const match_results&)): Fix parameter type.
4223         (match_results::operator=(match_results&&)): Define.
4224
4225 2011-02-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
4226
4227         PR libstdc++/47724
4228         * include/bits/regex_compiler.h (_Scanner::_M_advance): Do not treat
4229         line anchors as metacharacters.
4230         * testsuite/28_regex/basic_regex/ctors/47724.cc: New.
4231
4232 2011-02-16  Paolo Carlini  <paolo.carlini@oracle.com>
4233
4234         PR libstdc++/47773
4235         * include/ext/vstring.h (hash<__gnu_cxx::__vstring>,
4236         hash<__gnu_cxx::__wvstring>, hash<__gnu_cxx::__u16vstring>,
4237         hash<__gnu_cxx::__u32vstring>): Add.
4238         * testsuite/ext/vstring/hash/char/1.cc: New.
4239         * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
4240
4241 2011-02-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
4242
4243         * include/bits/regex.h (match_results::format): Use char_traits.
4244
4245 2011-02-16  Benjamin Kosnik  <bkoz@redhat.com>
4246
4247         * include/std/atomic: Remove atomic_address, uplift to N3225.
4248         * include/bits/atomic_0.h: Same.
4249         * include/bits/atomic_2.h: Same.
4250         * include/bits/atomic_base.h: Same.
4251         * testsuite/29_atomics/atomic_address/*: Delete.
4252
4253 2011-02-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
4254
4255         * include/bits/regex.h (sub_match::sub_match): Add.
4256         (match_results::ready): Add.
4257         (match_results::empty): Adjust.
4258         (match_results::length): Add missing dereference.
4259         (match_results::operator[],prefix,suffix): Add debug mode checks.
4260         (match_results::cend): Re-use end().
4261         (match_results::format): Adjust signatures.
4262         (operator==(match_results,match_results)): Implement.
4263         * include/bits/regex_compiler.h (_Scanner_base): Use constexpr.
4264         * include/bits/regex_constants.h (syntax_option_type): Likewise.
4265         * include/bits/regex_grep_matcher.h: Fix comment typo.
4266         (_SpecializedResults::_SpecializedResults): Simplify.
4267         * include/bits/regex_cursor.h: Fix comment typo.
4268         * include/bits/regex_nfa.h: Likewise.
4269         * testsuite/28_regex/basic_regex/ctors/basic/string_range_01_02_03.cc:
4270         Fix error code, remove xfail.
4271         * testsuite/28_regex/basic_regex/ctors/extended/
4272         string_range_01_02_03.cc: Likewise.
4273
4274 2011-02-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
4275
4276         * include/bits/regex_compiler.h: Remove unnecessary bind() calls.
4277         * include/bits/regex_nfa.h: Remove unnecessary base classes.
4278
4279 2011-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4280
4281         * configure: Regenerate.
4282
4283 2011-02-12  Paolo Carlini  <paolo.carlini@oracle.com>
4284
4285         PR libstdc++/47709
4286         * include/ext/algorithm (is_heap): In C++0x mode import from
4287         namespace std.
4288         * testsuite/ext/is_heap/47709.cc: New.
4289
4290 2011-02-12  Jakub Jelinek  <jakub@redhat.com>
4291             Jonathan Wakely  <jwakely.gcc@gmail.com>
4292
4293         PR libstdc++/47662
4294         * testsuite/17_intro/headers/c++200x/operator_names.cc: New.
4295         * testsuite/17_intro/headers/c++1998/operator_names.cc: Add comment.
4296
4297 2011-02-12  Paolo Carlini  <paolo.carlini@oracle.com>
4298
4299         * include/tr1/cmath (fabs): Define.
4300         * include/tr1/complex (acos, asin, atan): Avoid duplicate definitions
4301         in C++0x mode.
4302
4303 2011-02-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
4304
4305         * testsuite/tr1/headers/c++200x/complex.cc: New.
4306
4307 2011-02-11  Johannes Singler  <singler@kit.edu>
4308
4309         PR libstdc++/47433
4310         * include/parallel/losertree.h
4311         (_LoserTreeUnguarded<>::__delete_min_insert):
4312         Add missing "using std::swap;", as for other variants.
4313
4314 2011-02-10  Benjamin Kosnik  <bkoz@redhat.com>
4315
4316         * src/Makefile.am (sources): Add regex.cc.
4317         * src/Makefile.in: Regenerate.
4318         * src/regex.cc: New.
4319         * include/bits/regex_error.h (error_type): Use constexpr.
4320         (regex_error): Move ctor and dtor out of line.
4321
4322         * testsuite/28_regex/03_requirements: To...
4323         * testsuite/28_regex/requirements: ... this.
4324         * testsuite/28_regex/04_header: To...
4325         * testsuite/28_regex/headers: ... this.
4326         * testsuite/28_regex/05_constants: To...
4327         * testsuite/28_regex/constants: ... this.
4328         * testsuite/28_regex/06_exception_type: To...
4329         * testsuite/28_regex/regex_error: ... this.
4330         * testsuite/28_regex/07_traits: To...
4331         * testsuite/28_regex/traits: ... this.
4332         * testsuite/28_regex/08_basic_regex: To...
4333         * testsuite/28_regex/basic_regex: ... this.
4334         * testsuite/28_regex/09_sub_match: To...
4335         * testsuite/28_regex/sub_match: ... this.
4336         * testsuite/28_regex/10_match_results: To...
4337         * testsuite/28_regex/match_results: ... this.
4338         * testsuite/28_regex/11_algorithms: To...
4339         * testsuite/28_regex/algorithms: ... this.
4340         * testsuite/28_regex/12_iterators: To...
4341         * testsuite/28_regex/iterators: ... this.
4342
4343 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
4344
4345         PR libstdc++/47662
4346         * include/bits/c++config: Do not use alternative token.
4347         * testsuite/17_intro/headers/c++1998/operator_names.cc: New.
4348
4349 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
4350
4351         * src/future.cc (future_error_category::message): Handle no_state.
4352
4353 2011-02-10  Paolo Carlini  <paolo.carlini@oracle.com>
4354
4355         * testsuite/23_containers/multimap/modifiers/erase/47628.cc: Do
4356         not test in C++0x mode.
4357         * testsuite/23_containers/map/modifiers/erase/47628.cc: Likewise.
4358         * testsuite/20_util/headers/utility/synopsis.cc: Tweak to work
4359         in C++0x mode too.
4360
4361 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
4362
4363         * doc/xml/manual/status_cxx200x.xml: Update.
4364         * doc/html/*: Regenerate.
4365
4366 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
4367
4368         * doc/xml/manual/debug.xml: Improve data race docs.
4369
4370 2011-02-09  Paolo Carlini  <paolo.carlini@oracle.com>
4371
4372         PR libstdc++/47668
4373         * include/debug/map.h (map): Remove unnecessary using-declaration.
4374         * include/debug/multimap.h (multimap): Likewise.
4375         * include/profile/map.h (map): Likewise.
4376         * include/profile/multimap.h (multimap): Likewise.
4377
4378 2011-02-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
4379
4380         PR libstdc++/43863
4381         * libsupc++/guard.cc (recursive_init_error::~recursive_init_error):
4382         Move to ...
4383         * libsupc++/guard_error.cc: ... new file.
4384         * libsupc++/Makefile.am: Update.
4385         * libsupc++/Makefile.in: Regenerate.
4386
4387 2011-02-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
4388
4389         * include/std/future (packaged_task::operator bool): Rename to...
4390         (packaged_task::valid): ...this.
4391         * testsuite/30_threads/packaged_task/cons/1.cc: Adjust.
4392         * testsuite/30_threads/packaged_task/cons/2.cc: Adjust.
4393         * testsuite/30_threads/packaged_task/cons/move.cc: Adjust.
4394         * testsuite/30_threads/packaged_task/cons/move_assign.cc: Adjust.
4395         * testsuite/30_threads/packaged_task/cons/alloc.cc: Adjust.
4396         * testsuite/30_threads/packaged_task/members/invoke.cc: Adjust.
4397         * testsuite/30_threads/packaged_task/members/reset.cc: Adjust.
4398         * testsuite/30_threads/packaged_task/members/reset2.cc: Adjust.
4399         * testsuite/30_threads/packaged_task/members/swap.cc: Adjust.
4400         * testsuite/30_threads/packaged_task/members/boolconv.cc: Remove.
4401         * testsuite/30_threads/packaged_task/members/valid.cc: Add.
4402
4403 2011-02-09  Paolo Carlini  <paolo.carlini@oracle.com>
4404
4405         * doc/xml/manual/io.xml: Fix typo.
4406         * doc/html/manual/streambufs.html: Likewise.
4407
4408 2011-02-09  Paolo Carlini  <paolo.carlini@oracle.com>
4409
4410         * config/abi/pre/gnu.ver: Fix.
4411
4412 2011-02-08  Benjamin Kosnik  <bkoz@redhat.com>
4413
4414         * doc/xml/manual/appendix_porting.xml: Add doc section.
4415         * doc/xml/manual/appendix_contributing.xml: Split out doc bits to...
4416         * doc/xml/manual/documentation_hacking.xml: ...here.
4417
4418         * doc/xml/manual/debug_mode.xml: Adjust.
4419         * doc/xml/manual/prerequisites.xml: Adjust.
4420         * doc/Makefile.am (xml_sources): Add dot files,
4421         documentation_hacking.xml.
4422         * doc/Makefile.in: Regenerate.
4423
4424         * doc/xml/manual/build_hacking.xml: Use absolute paths for images.
4425         * doc/xml/images/confdeps.pdf: Add.
4426
4427         * doc/html/*: Regenerate.
4428
4429 2011-02-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
4430
4431         * doc/xml/gnu/fdl-1.2.xml: Remove.
4432         * doc/xml/gnu/gpl-2.0.xml: Remove.
4433         * doc/Makefile.am: Update.
4434         * doc/Makefile.in: Regenerate.
4435
4436 2011-02-07  Paolo Carlini  <paolo.carlini@oracle.com>
4437
4438         PR libstdc++/47628
4439         * include/bits/stl_tree.h (_Rb_tree::erase(iterator), erase(iterator,
4440         iterator)): Add back in C++03 mode.
4441         * testsuite/23_containers/map/modifiers/erase/47628.cc: New.
4442         * testsuite/23_containers/multimap/modifiers/erase/47628.cc: Likewise.
4443
4444 2011-02-07  Benjamin Kosnik  <bkoz@redhat.com>
4445
4446         PR libstdc++/47560 try two
4447         * config/os/hpux/os_defines.h: Guard for C++.
4448
4449 2011-02-07  Gerald Pfeifer  <gerald@pfeifer.com>
4450
4451         * doc/xml/faq.xml: Adjust link to bug database.
4452         Remove old item on broken header files.
4453
4454 2011-02-04  Benjamin Kosnik  <bkoz@redhat.com>
4455
4456         * include/bits/regex_error.h (__throw_regex_error): Not inline.
4457         * src/functexcept.cc: Add definition.
4458         * config/abi/pre/gnu.ver: Export.
4459
4460 2011-02-04  Ralf Corsépius <ralf.corsepius@rtems.org>
4461
4462         * crossconfig.m4 (GLIBCXX_CROSSCONFIG): Add *-rtems*.
4463         * configure: Regenerate.
4464
4465 2011-02-01  Paolo Carlini  <paolo.carlini@oracle.com>
4466
4467         PR libstdc++/46914
4468         * include/bits/atomic_0.h (_ATOMIC_STORE_, _ATOMIC_MODIFY_,
4469         _ATOMIC_CMPEXCHNG_): Rename __v -> __w, and __m -> __n, to
4470         avoid name conflicts.
4471
4472 2011-02-01  Benjamin Kosnik  <bkoz@redhat.com>
4473
4474         PR libstdc++/47560
4475         * config/os/hpux/os_defines.h: Remove use of macros on namespace.
4476
4477 2011-02-01  Benjamin Kosnik  <bkoz@redhat.com>
4478
4479         * scripts/run_doxygen: Allow doxygen 1.7.0 again.
4480         * doc/doxygen/user.cfg.in (PDF_HYPERLINKS): Re-enable.
4481         (COMPACT_LATEX): Enable.
4482
4483         * include/profile/impl/profiler_container_size.h: Adjust doxygen markup.
4484         * include/profile/impl/profiler_hash_func.h: Same.
4485         * include/bits/hashtable.h: Same.
4486         * include/backward/auto_ptr.h: Same.
4487         * include/backward/strstream: Same.
4488         * include/backward/backward_warning.h: Same.
4489         * include/backward/binders.h: Same.
4490
4491 2011-02-01  Gerald Pfeifer  <gerald@pfeifer.com>
4492
4493         * doc/xml/manual/debug.xml: Use GDB instead of gdb.
4494         Adjust link to GDB manual.
4495
4496 2011-01-31  Benjamin Kosnik  <bkoz@redhat.com>
4497
4498         * include/bits/c++config (_GLIBCXX_DEPRECATED): To
4499         _GLIBCXX_USE_DEPRECATED.
4500         (_GLIBCXX_DEPRECATED_ATTR): To _GLIBCXX_DEPRECATED.
4501         * doc/xml/manual/using.xml: Same.
4502         * include/std/memory: Same.
4503         * include/std/streambuf: Same.
4504         * include/bits/shared_ptr.h: Same.
4505         * include/bits/unique_ptr.h: Same.
4506         * include/bits/shared_ptr_base.h: Same.
4507         * include/bits/stl_function.h: Same.
4508         * include/tr1/shared_ptr.h: Same.
4509         * include/backward/auto_ptr.h: Same.
4510         * include/backward/binders.h: Same.
4511
4512 2011-01-31  Paolo Carlini  <paolo.carlini@oracle.com>
4513
4514         * doc/html/ext/lwg-active.html: Update to Revision D73.
4515         * doc/html/ext/lwg-closed.html: Likewise.
4516         * doc/html/ext/lwg-defects.html: Likewise.
4517         * doc/xml/manual/intro.xml: Update status of issues 408, 539, 865.
4518
4519 2011-01-30  Benjamin Kosnik  <bkoz@redhat.com>
4520
4521         PR libstdc++/36104 part four
4522         * include/bits/c++config (_GLIBCXX_STD): Remove.
4523         (_GLIBCXX_STD_D, _GLIBCXX_PR): Now _GLIBCXX_STD_C.
4524         (_GLIBCXX_P): Now _GLIBCXX_STD_A.
4525         (_GLIBCXX_NAMESPACE_DEBUG, _GLIBCXX_NAMESPACE_PARALLEL,
4526          _GLIBCXX_NAMESPACE_PROFILE, _GLIBCXX_NAMESPACE_VERSION): Remove.
4527         (_GLIBCXX_INLINE_DEBUG, _GLIBCXX_INLINE_PARALLEL,
4528          _GLIBCXX_INLINE_PROFILE): Remove.
4529         (_GLIBCXX_BEGIN_NAMESPACE(X)): Remove.
4530         (_GLIBCXX_END_NAMESPACE): Remove.
4531         (_GLIBCXX_BEGIN_NESTED_NAMESPACE(X, Y)): Remove.
4532         (_GLIBCXX_END_NESTED_NAMESPACE): Remove.
4533         (_GLIBCXX_BEGIN_NAMESPACE_ALGO): Add.
4534         (_GLIBCXX_END_NAMESPACE_ALGO): Add.
4535         (_GLIBCXX_BEGIN_NAMESPACE_CONTAINER): Add.
4536         (_GLIBCXX_END_NAMESPACE_CONTAINER): Add.
4537         (_GLIBCXX_BEGIN_NAMESPACE_VERSION): Add.
4538         (_GLIBCXX_END_NAMESPACE_VERSION): Add.
4539         (_GLIBCXX_BEGIN_LDBL_NAMESPACE): To _GLIBCXX_BEGIN_NAMESPACE_LDBL.
4540         (_GLIBCXX_END_LDBL_NAMESPACE): To _GLIBCXX_END_NAMESPACE_LDBL.
4541         (_GLIBCXX_VISIBILITY_ATTR): Revert to _GLIBCXX_VISIBILITY.
4542         * include/*: Use new macros for namespace scope.
4543         * config/*: Same.
4544         * src/*: Same.
4545
4546         * src/Makefile.am (sources): Remove debug_list.cc, add
4547         compatibility-debug_list-2.cc.
4548         (parallel_sources): Remove parallel_list.cc, add
4549         compatibility-parallel_list-2.cc.
4550         (compatibility-parallel_list-2.[o,lo]): New rule.
4551         * src/Makefile.in: Regenerate.
4552         * src/debug_list.cc: Remove.
4553         * src/parallel_list.cc: Remove.
4554         * src/compatibility-list-2.cc: New.
4555         * src/compatibility-debug_list-2.cc: New.
4556         * src/compatibility-parallel_list-2.cc: New.
4557
4558         * doc/doxygen/user.cfg.in: Adjust macros.
4559
4560         * testsuite/20_util/auto_ptr/assign_neg.cc: Adjust line numbers, macros.
4561         * testsuite/20_util/declval/requirements/1_neg.cc: Same.
4562         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Same.
4563         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same.
4564         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same.
4565         * testsuite/20_util/forward/c_neg.cc: Same.
4566         * testsuite/20_util/forward/f_neg.cc: Same.
4567         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same.
4568         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
4569         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Same.
4570         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Same.
4571         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Same.
4572         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same.
4573         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Same.
4574         * testsuite/23_containers/deque/requirements/dr438/
4575         constructor_1_neg.cc: Same.
4576         * testsuite/23_containers/deque/requirements/dr438/
4577         constructor_2_neg.cc: Same.
4578         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
4579         * testsuite/23_containers/forward_list/capacity/1.cc: Same.
4580         * testsuite/23_containers/forward_list/requirements/dr438/
4581         assign_neg.cc: Same.
4582         * testsuite/23_containers/forward_list/requirements/dr438/
4583         constructor_1_neg.cc: Same.
4584         * testsuite/23_containers/forward_list/requirements/dr438/
4585         constructor_2_neg.cc: Same.
4586         * testsuite/23_containers/forward_list/requirements/dr438/
4587         insert_neg.cc: Same.
4588         * testsuite/23_containers/list/capacity/29134.cc: Same.
4589         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Same.
4590         * testsuite/23_containers/list/requirements/dr438/
4591         constructor_1_neg.cc: Same.
4592         * testsuite/23_containers/list/requirements/dr438/
4593         constructor_2_neg.cc: Same.
4594         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
4595         * testsuite/23_containers/vector/bool/capacity/29134.cc: Same.
4596         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: Same.
4597         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Same.
4598         * testsuite/23_containers/vector/requirements/dr438/
4599         constructor_1_neg.cc: Same.
4600         * testsuite/23_containers/vector/requirements/dr438/
4601         constructor_2_neg.cc: Same.
4602         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same.
4603         * testsuite/25_algorithms/sort/35588.cc: Same.
4604         * testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
4605         * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
4606         * testsuite/ext/profile/mutex_extensions_neg.cc: Same.
4607         * testsuite/ext/profile/profiler_algos.cc: Same.
4608         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Same.
4609         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Same.
4610         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Same.
4611         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Same.
4612         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
4613
4614 2011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
4615
4616         * doc/xml/manual/abi.xml: Adjust link to C++ ABI specification.
4617         Improve description of one such reference.
4618
4619 2011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
4620
4621         * doc/xml/manual/codecvt.xml: Fix link to The Austin Common
4622         Standards Revision Group.
4623         * doc/xml/manual/locale.xml: Ditto.
4624         * doc/xml/manual/messages.xml: Ditto.
4625         * doc/xml/manual/using_exceptions.xml: Ditto.
4626
4627 2011-01-28  Paolo Carlini  <paolo.carlini@oracle.com>
4628
4629         * include/bits/atomic_base.h: Do not include <stddef.h>.
4630         (kill_dependency): Uglify ret.
4631
4632 2011-01-26  Johannes Singler  <singler@kit.edu>
4633
4634         * include/parallel/numeric (inner_product, partial_sum):
4635         Qualify subsequent call with __gnu_parallel instead of
4636         _GLIBCXX_STD_P to reenable parallel execution without ambiguity.
4637         * include/parallel/algobase.h (equal): Likewise.
4638         * include/parallel/algo.h (find_first_of, search_n, merge,
4639         nth_element, partial_sort, max_element, min_element): Likewise.
4640         * testsuite/25_algorithms/headers/algorithm/
4641         parallel_algorithm_mixed1.cc (main): Add respective test cases.
4642         * testsuite/25_algorithms/headers/algorithm/
4643         parallel_algorithm_mixed2.cc (main): Likewise.
4644         * testsuite/26_numerics/headers/numeric/
4645         parallel_numeric_mixed1.cc (main): Likewise.
4646         * testsuite/26_numerics/headers/numeric/
4647         parallel_numeric_mixed2.cc (main): Likewise.
4648
4649 2011-01-24  Graham Reed  <greed@pobox.com>
4650
4651         PR libstdc++/47387
4652         * config/os/aix/ctype_inline.h (ctype<char>::is): Use _M_table if
4653         provided.
4654
4655 2011-01-24  Johannes Singler  <singler@kit.edu>
4656
4657         PR libstdc++/47433
4658         * include/parallel/losertree.h
4659         (_LoserTree<>::__delete_min_insert):
4660         Do not qualify swap with std:: for value type,
4661         but include a using directive instead.
4662         (_LoserTreeUnguarded<>::__delete_min_insert): Likewise.
4663         * include/parallel/balanced_quicksort.h (__qsb_divide):
4664         Use std::iter_swap instead of std::swap.
4665         (__qsb_local_sort_with_helping): Likewise.
4666         * include/parallel/partition.h (__parallel_partition):
4667         Likewise. (__parallel_nth_element): Likewise.
4668
4669 2011-01-24  Johannes Singler  <singler@kit.edu>
4670
4671         PR libstdc++/47437
4672         * include/parallel/multiway_merge.h (_UnguardedIterator):
4673         Remove useless "mutable" from reference declaration.
4674
4675 2011-01-21  Benjamin Kosnik  <bkoz@redhat.com>
4676
4677         * include/bits/c++config (_GLIBCXX_EXPORT_TEMPLATE): Remove.
4678         * include/debug/safe_sequence.h: Same.
4679         * include/debug/safe_iterator.h: Same.
4680         * include/std/forward_list: Same.
4681         * include/std/deque: Same.
4682         * include/std/list: Same.
4683         * include/std/random: Same.
4684         * include/std/streambuf: Same.
4685         * include/std/fstream: Same.
4686         * include/std/istream: Same.
4687         * include/std/string: Same.
4688         * include/std/ostream: Same.
4689         * include/std/sstream: Same.
4690         * include/ext/vstring.h: Same.
4691         * include/bits/basic_ios.h: Same.
4692         * include/bits/locale_classes.h: Same.
4693         * include/bits/locale_facets.h: Same.
4694         * include/bits/valarray_array.h: Same.
4695         * include/bits/locale_facets_nonio.h: Same.
4696         * include/tr1/random: Same.
4697
4698 2011-01-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
4699
4700         * doc/xml/manual/diagnostics.xml: Replace note about C++0x concepts.
4701
4702 2011-01-20  Benjamin Kosnik  <bkoz@redhat.com>
4703
4704         PR libstdc++/36104 part three
4705         * src/hashtable_c++0x.cc: Adjust namespace macros.
4706         * testsuite/util/testsuite_rvalref.h: Don't forward declare hash.
4707         * config/abi/pre/gnu-versioned-namespace.ver: Update.
4708
4709 2011-01-20  Benjamin Kosnik  <bkoz@redhat.com>
4710
4711         * include/ext/pb_ds/detail/resize_policy/
4712         hash_load_check_resize_trigger_imp.hpp: Adjust assert condition.
4713         * include/ext/pb_ds/detail/pat_trie_/
4714         constructors_destructor_fn_imps.hpp: Same.
4715         * include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Format.
4716         * include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
4717         * include/ext/pb_ds/detail/debug_map_base.hpp: Use never_adjustor.
4718
4719         * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Adjust
4720         iterations downward when testing in debug mode.
4721         * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Same.
4722         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Same.
4723         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Same.
4724         * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Same.
4725         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Same.
4726         * testsuite/ext/pb_ds/example/hash_illegal_resize.cc: Use SIZE,
4727         reduce in debug mode.
4728
4729 2011-01-19  Benjamin Kosnik  <bkoz@redhat.com>
4730
4731         PR libstdc++/36104 part two
4732         * include/bits/hashtable.h: Revert to non-nested macro usage.
4733         * include/bits/hashtable_policy.h: Same.
4734
4735 2011-01-19  Graham Reed  <greed@pobox.com>
4736
4737         PR libstdc++/47354
4738         * src/bitmap_allocator.cc (free_list::_M_get): Lock mutex.
4739
4740 2011-01-18  Benjamin Kosnik  <bkoz@redhat.com>
4741
4742         * doc/xml/images/confdeps.png: Regenerate.
4743
4744         * include/std/chrono (duration): Mark copy constructor constexpr.
4745         * testsuite/20_util/duration/cons/constexpr.cc: Add test.
4746
4747 2011-01-18  Paolo Carlini  <paolo.carlini@oracle.com>
4748
4749         * include/bits/unique_ptr.h (default_delete<>::default_delete()):
4750         Declare defaulted per DR 1517.
4751         * testsuite/util/testsuite_common_types.h
4752         (constexpr_defaulted_default_constructible): Add.
4753         * testsuite/20_util/default_delete/cons/constexpr.cc: Use it.
4754
4755 2011-01-17  Paolo Carlini  <paolo.carlini@oracle.com>
4756
4757         * include/bits/stl_queue.h (queue<>::swap, priority_queue<>::swap):
4758         Implement DR 1198.
4759         * include/bits/stl_stack.h (stack<>::swap): Likewise.
4760
4761 2011-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
4762
4763         PR libstdc++/47323
4764         * testsuite/28_regex/08_basic_regex/requirements/constexpr_data.cc:
4765         Only test wregex when _GLIBCXX_USE_WCHAR_T is defined.
4766
4767 2011-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
4768
4769         PR libstdc++/47320
4770         * testsuite/18_support/numeric_limits/lowest.cc:
4771         Only test wchar_t when _GLIBCXX_USE_WCHAR_T is defined.
4772
4773 2011-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
4774
4775         PR libstdc++/47321
4776         * testsuite/21_strings/basic_string/requirements/typedefs.cc:
4777         Only test std::wstring when _GLIBCXX_USE_WCHAR_T is defined.
4778
4779 2011-01-16  François Dumont  <francois.cppdevs@free.fr>
4780
4781         * testsuite/23_containers/forward_list/debug/erase_after1_neg.cc: Move
4782         to this. Use _neg suffix.
4783         * testsuite/23_containers/forward_list/debug/erase_after1.cc: ...from
4784         this.
4785         * testsuite/23_containers/forward_list/debug/erase_after2_neg.cc:
4786         Same.
4787         * testsuite/23_containers/forward_list/debug/erase_after2.cc: Same.
4788         * testsuite/23_containers/forward_list/debug/erase_after3_neg.cc:
4789         Same.
4790         * testsuite/23_containers/forward_list/debug/erase_after3.cc: Same.
4791         * testsuite/23_containers/forward_list/debug/erase_after4_neg.cc:
4792         Same.
4793         * testsuite/23_containers/forward_list/debug/erase_after4.cc: Same.
4794         * testsuite/23_containers/forward_list/debug/erase_after5_neg.cc:
4795         Same.
4796         * testsuite/23_containers/forward_list/debug/erase_after5.cc: Same.
4797         * testsuite/23_containers/forward_list/debug/erase_after6_neg.cc:
4798         Same.
4799         * testsuite/23_containers/forward_list/debug/erase_after6.cc: Same.
4800         * testsuite/23_containers/forward_list/debug/erase_after7_neg.cc:
4801         Same.
4802         * testsuite/23_containers/forward_list/debug/erase_after7.cc: Same.
4803         * testsuite/23_containers/forward_list/debug/erase_after8_neg.cc:
4804         Same.
4805         * testsuite/23_containers/forward_list/debug/erase_after8.cc: Same.
4806         * testsuite/23_containers/forward_list/debug/erase_after9_neg.cc:
4807         Same.
4808         * testsuite/23_containers/forward_list/debug/erase_after9.cc: Same.
4809         * testsuite/23_containers/forward_list/debug/insert_after1_neg.cc:
4810         Same.
4811         * testsuite/23_containers/forward_list/debug/insert_after1.cc: Same.
4812         * testsuite/23_containers/forward_list/debug/insert_after2_neg.cc:
4813         Same.
4814         * testsuite/23_containers/forward_list/debug/insert_after2.cc: Same.
4815         * testsuite/23_containers/forward_list/debug/insert_after3_neg.cc:
4816         Same.
4817         * testsuite/23_containers/forward_list/debug/insert_after3.cc: Same.
4818         * testsuite/23_containers/forward_list/debug/splice_after1_neg.cc:
4819         Same.
4820         * testsuite/23_containers/forward_list/debug/splice_after1.cc: Same.
4821         * testsuite/23_containers/forward_list/debug/splice_after2_neg.cc:
4822         Same.
4823         * testsuite/23_containers/forward_list/debug/splice_after2.cc: Same.
4824         * testsuite/23_containers/forward_list/debug/splice_after3_neg.cc:
4825         Same.
4826         * testsuite/23_containers/forward_list/debug/splice_after3.cc: Same.
4827         * testsuite/23_containers/forward_list/debug/splice_after4_neg.cc:
4828         Same.
4829         * testsuite/23_containers/forward_list/debug/splice_after4.cc: Same.
4830
4831 2011-01-14  Benjamin Kosnik  <bkoz@redhat.com>
4832
4833         PR libstdc++/36104
4834         * include/Makefile.am (bits_sup_headers, stamp-bits-sup): New.
4835         * include/Makefile.in: Regenerate.
4836         * libsupc++/Makefile.am (std_HEADERS, bits_HEADERS): New.
4837         (install-stdHEADERS, install-bitsHEADERS): New.
4838         * libsupc++/Makefile.in: Regenerate.
4839
4840         * include/bits/c++config: Update for inline namespaces.
4841         * libsupc++/cxxabi-forced.h: To...
4842         * libsupc++/cxxabi_forced.h: ...this.
4843         * libsupc++/hash_bytes.h: Separate file.
4844         * libsupc++/typeinfo: Use it.
4845         * libsupc++/exception: Adjust for bits subdirectory.
4846         * libsupc++/eh_aux_runtime.cc: Same.
4847         * libsupc++/eh_ptr.cc: Same.
4848         * libsupc++/new_op.cc: Same.
4849         * libsupc++/exception_defines.h: Same.
4850         * libsupc++/nested_exception.h: Same.
4851         * libsupc++/eh_terminate.cc: Same.
4852         * libsupc++/vec.cc: Same.
4853         * libsupc++/vterminate.cc: Same.
4854         * libsupc++/exception_ptr.h: Same.
4855         * libsupc++/eh_personality.cc: Same.
4856         * libsupc++/eh_call.cc: Same.
4857         * libsupc++/new_opnt.cc: Same.
4858         * libsupc++/hash_bytes.cc: Same.
4859         * config/cpu/arm/cxxabi_tweaks.h: Same.
4860         * config/cpu/generic/cxxabi_tweaks.h: Same.
4861         * libsupc++/cxxabi.h: Same. Consolidate _GLIBCXX_NOTHROW defines.
4862         * include/std/bitset: Same.
4863         * include/ext/vstring.tcc: Same.
4864         * include/bits/hashtable.h: Same.
4865         * include/bits/functional_hash.h: Same.
4866         * include/bits/hashtable_policy.h: Same.
4867         * include/bits/basic_string.h: Same.
4868         * include/bits/istream.tcc: Same.
4869         * include/bits/ostream.tcc: Same.
4870         * include/bits/algorithmfwd.h: Same.
4871         * include/bits/basic_string.tcc: Same.
4872         * include/bits/ostream_insert.h: Same.
4873         * include/bits/fstream.tcc: Same.
4874         * include/bits/functexcept.h: Same.
4875
4876         * doc/doxygen/user.cfg.in: Adjust names.
4877
4878         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
4879
4880 2011-01-14  Paolo Carlini  <paolo.carlini@oracle.com>
4881
4882         * testsuite/25_algorithms/is_permutation/check_type.cc: Minor
4883         tweaks.
4884         * testsuite/25_algorithms/is_permutation/1.cc: Cosmetic changes.
4885
4886 2011-01-13  Paolo Carlini  <paolo.carlini@oracle.com>
4887
4888         * testsuite/25_algorithms/is_permutation/check_type.cc: New.
4889         * testsuite/25_algorithms/is_permutation/requirements/
4890         explicit_instantiation/2.cc: Likewise.
4891         * testsuite/25_algorithms/is_permutation/requirements/
4892         explicit_instantiation/pod.cc: Likewise.
4893         * testsuite/25_algorithms/is_permutation/1.cc: Likewise.
4894
4895 2011-01-13  John Lakos  <jlakos@bloomberg.net>
4896             Pablo Halpern  <phalpern@halpernwightsoftware.com>
4897             Paolo Carlini  <paolo.carlini@oracle.com>
4898
4899         * include/bits/stl_algo.h (is_permutation): Add, per N3068.
4900         * include/bits/algorithmfwd.h: Add.
4901
4902 2011-01-13  Jonathan Wakely  <jwakely.gcc@gmail.com>
4903
4904         PR libstdc++/47045
4905         * config/os/bsd/netbsd/ctype_base.h: Use new macros based on version.
4906
4907 2011-01-11  Paolo Carlini  <paolo.carlini@oracle.com>
4908
4909         * aclocal.m4: Regenerate.
4910
4911 2011-01-06  Paolo Carlini  <paolo.carlini@oracle.com>
4912
4913         PR libstdc++/47185
4914         * src/placeholders.cc: New.
4915         * src/Makefile.am: Adjust.
4916         * src/Makefile.in: Regenerate.
4917         * include/std/functional (placeholders::_1, _2, ..., _29): Declare
4918         extern.
4919         * config/abi/pre/gnu.ver: Export.
4920
4921 2011-01-05  François Dumont  <francois.cppdevs@free.fr>
4922
4923         * include/debug/safe_base.h (_Safe_iterator_base::_M_unlink): New.
4924         * include/src/debug.cc: Use latter
4925         * include/debug/forward_list (forward_list<>::_M_swap):  Fix to
4926         correctly handle before_begin iterators.
4927         * testsuite/23_containers/forward_list/debug/swap.cc: Remove now
4928         useless _GLIBCXX_DEBUG checks.
4929
4930 2011-01-04  Kai Tietz  <kai.tietz@onevision.com>
4931
4932         PR libstdc++/47145
4933         * configure.ac (AC_CHECK_FILE): Replaced by test -f.
4934         * configure: Regenerated.
4935
4936 2011-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
4937
4938         PR libstdc++/46922
4939         * config/abi/pre/gnu.ver: Export std::bad_function_call symbols.
4940
4941 \f
4942 Copyright (C) 2011 Free Software Foundation, Inc.
4943
4944 Copying and distribution of this file, with or without modification,
4945 are permitted in any medium without royalty provided the copyright
4946 notice and this notice are preserved.