OSDN Git Service

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