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