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