OSDN Git Service

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