Core 1402
[official-gcc.git] / libstdc++-v3 / ChangeLog
blobd0a915dea6d897352dc0a7510f2d1c0a4b28ce8f
1 2012-10-24  Daniel Krugler  <daniel.kruegler@gmail.com>
3         * include/std/type_traits (common_type): Implement LWG 2141.
4         * testsuite/20_util/duration/requirements/sfinae_friendly_1.cc:
5         Update.
6         * testsuite/20_util/common_type/requirements/typedefs-1.cc: Likewise.
7         * testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc:
8         Likewise.
9         * testsuite/20_util/common_type/requirements/sfinae_friendly_2.cc:
10         Likewise.
11         * testsuite/20_util/common_type/requirements/typedefs-2.cc: Likewise.
13 2012-10-24   Haakan Younes  <hyounes@google.com>
14              Paolo Carlini  <paolo.carlini@oracle.com>
16         PR libstdc++/55047
17         * include/bits/random.h (exponential_distribution<>::operator):
18         Fix formula to std::log(result_type(1) - __aurng()).
19         * include/bits/random.tcc: Likewise, everywhere.
21 2012-10-23  Yufeng Zhang  <yufeng.zhang@arm.com>
23         * config/cpu/aarch64/cxxabi_tweaks.h: New file.
24         * configure.host: Enable aarch64.
26 2012-10-22  François Dumont  <fdumont@gcc.gnu.org>
28         * include/bits/unordered_set.h (unordered_set<>): Prefer
29         aggregation to inheritance with _Hashtable.
30         (unordered_multiset<>): Likewise.
31         * include/debug/unordered_set (operator==): Adapt.
32         * include/profile/unordered_set (operator==): Adapt.
34 2012-10-22  Yufeng Zhang  <yufeng.zhang@arm.com>
35             Jonathan Wakely  <jwakely.gcc@gmail.com>
37         * doc/xml/manual/configure.xml (--enable-clocale): Document the
38         'newlib' and 'darwin' options. Minor stylistic improvements.
40 2012-10-21  François Dumont  <fdumont@gcc.gnu.org>
42         * include/profile/map.h (map::emplace_hint): Remove invalid
43         parenthesis.
45 2012-10-21  Hans-Peter Nilsson  <hp@bitrange.com>
47         * testsuite/23_containers/bitset/45713.cc: Skip for mmix-*-*.
48         Tweak sizetype-related comment.
50 2012-10-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
52         * include/std/scoped_allocator: Avoid badname.
54 2012-10-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
56         * doc/xml/manual/status_cxx2011.xml: Update.
58 2012-10-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
60         * include/std/scoped_allocator (__outermost_alloc_traits): Define.
61         (scoped_allocator_adaptor::destroy): Use it.
62         (scoped_allocator_adaptor::construct): Likewise. Overload for
63         piecewise construction of std::pair objects.
64         * testsuite/20_util/scoped_allocator/2.cc: New.
65         * doc/xml/manual/status_cxx2011.xml: Update.
67 2012-10-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
69         * include/bits/forward_list.h: Add C++11 allocator support.
70         * include/bits/forward_list.tcc: Likewise.
71         * doc/xml/manual/status_cxx2011.xml: Update.
72         * testsuite/23_containers/forward_list/allocator/copy.cc: New.
73         * testsuite/23_containers/forward_list/allocator/copy_assign.cc: New.
74         * testsuite/23_containers/forward_list/allocator/minimal.cc: New.
75         * testsuite/23_containers/forward_list/allocator/move_assign.cc: New.
76         * testsuite/23_containers/forward_list/allocator/noexcept.cc: New.
77         * testsuite/23_containers/forward_list/allocator/swap.cc: New.
79 2012-10-18  François Dumont  <fdumont@gcc.gnu.org>
81         * include/debug/formatter.h (_Debug_msg_id): Add
82         __msg_valid_load_factor.
83         * include/debug/macros.h (__glibcxx_check_max_load_factor): New.
84         * include/debug/unordered_set
85         (unordered_set<>::max_load_factor(float)): Check max load factor
86         is positive.
87         (unordered_multiset<>::max_load_factor(float)): Likewise.
88         * include/debug/unordered_map
89         (unordered_map<>::max_load_factor(float)): Likewise.
90         (unordered_multimap<>::max_load_factor(float)): Likewise.
91         * testsuite/23_containers/unordered_map/debug/max_load_factor_neg.cc:
92         New.
93         * testsuite/23_containers/unordered_multimap/debug/
94         max_load_factor_neg.cc: New.
95         * testsuite/23_containers/unordered_set/debug/max_load_factor_neg.cc:
96         New.
97         * testsuite/23_containers/unordered_multiset/debug/
98         max_load_factor_neg.cc: New.
100 2012-10-17  Benjamin Kosnik  <bkoz@redhat.com>
102         * include/bits/move.h (move_if_noexcept): Mark constexpr.
103         * include/std/array (front, back): Same.
104         * include/std/chrono: Add comment.
105         * include/std/tuple (__tuple_compare): Mark __eq, __less constexpr.
106         (operator ==, <, >, !=, <=, >=): Same.
107         * testsuite/20_util/forward/c_neg.cc: Adjust line numbers.
108         * testsuite/20_util/forward/f_neg.cc: Same.
109         * testsuite/20_util/move_if_noexcept/constexpr.cc: New.
110         * testsuite/20_util/tuple/comparison_operators/constexpr.cc: New.
111         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Add.
112         * testsuite/23_containers/array/element_access/
113         constexpr_element_access.cc: Same.
114         * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
115         line numbers.
116         * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
117         Same.
119         * testsuite/20_util/tuple/comparison_operators/35480_neg.cc:
120           Temporarily add dg-excess-errors.
122 2012-10-16  François Dumont  <fdumont@gcc.gnu.org>
124         * include/debug/formatter.h (_Debug_msg_id): Add
125         __msg_bucket_index_oob.
126         * include/debug/macros.h (__glibcxx_check_bucket_index): New.
127         * include/debug/unordered_set (unordered_set<>::begin(size_type)):
128         Add check on bucket index.
129         (unordered_set<>::begin(size_type) const): Likewise.
130         (unordered_set<>::cbegin(size_type) const): Likewise.
131         (unordered_set<>::end(size_type)): Likewise.
132         (unordered_set<>::end(size_type) const): Likewise.
133         (unordered_set<>::cend(size_type) const): Likewise.
134         (unordered_set<>::bucket_size(size_type)): Likewise.
135         (unordered_multiset<>::begin(size_type)): Likewise.
136         (unordered_multiset<>::begin(size_type) const): Likewise.
137         (unordered_multiset<>::cbegin(size_type) const): Likewise.
138         (unordered_multiset<>::end(size_type)): Likewise.
139         (unordered_multiset<>::end(size_type) const): Likewise.
140         (unordered_multiset<>::cend(size_type) const): Likewise.
141         (unordered_multiset<>::bucket_size(size_type)): Likewise.
142         * include/debug/unordered_map (unordered_map<>::begin(size_type)):
143         Likewise.
144         (unordered_map<>::begin(size_type) const): Likewise.
145         (unordered_map<>::cbegin(size_type) const): Likewise.
146         (unordered_map<>::end(size_type)): Likewise.
147         (unordered_map<>::end(size_type) const): Likewise.
148         (unordered_map<>::cend(size_type) const): Likewise.
149         (unordered_map<>::bucket_size(size_type)): Likewise.
150         (unordered_multimap<>::begin(size_type)): Likewise.
151         (unordered_multimap<>::begin(size_type) const): Likewise.
152         (unordered_multimap<>::cbegin(size_type) const): Likewise.
153         (unordered_multimap<>::end(size_type)): Likewise.
154         (unordered_multimap<>::end(size_type) const): Likewise.
155         (unordered_multimap<>::cend(size_type) const): Likewise.
156         (unordered_multimap<>::bucket_size(size_type)): Likewise.
157         * testsuite/23_containers/unordered_map/debug/bucket_size_neg.cc:
158         New.
159         * testsuite/23_containers/unordered_map/debug/begin1_neg.cc: New.
160         * testsuite/23_containers/unordered_map/debug/begin2_neg.cc: New.
161         * testsuite/23_containers/unordered_map/debug/cbegin_neg.cc: New.
162         * testsuite/23_containers/unordered_map/debug/end1_neg.cc: New.
163         * testsuite/23_containers/unordered_map/debug/end2_neg.cc: New.
164         * testsuite/23_containers/unordered_map/debug/cend_neg.cc: New.
165         * testsuite/23_containers/unordered_multimap/debug/bucket_size_neg.cc:
166         New.
167         * testsuite/23_containers/unordered_multimap/debug/begin1_neg.cc: New.
168         * testsuite/23_containers/unordered_multimap/debug/begin2_neg.cc: New.
169         * testsuite/23_containers/unordered_multimap/debug/cbegin_neg.cc: New.
170         * testsuite/23_containers/unordered_multimap/debug/end1_neg.cc: New.
171         * testsuite/23_containers/unordered_multimap/debug/end2_neg.cc: New.
172         * testsuite/23_containers/unordered_multimap/debug/cend_neg.cc: New.
173         * testsuite/23_containers/unordered_set/debug/bucket_size_neg.cc:
174         New.
175         * testsuite/23_containers/unordered_set/debug/begin1_neg.cc: New.
176         * testsuite/23_containers/unordered_set/debug/begin2_neg.cc: New.
177         * testsuite/23_containers/unordered_set/debug/cbegin_neg.cc: New.
178         * testsuite/23_containers/unordered_set/debug/end1_neg.cc: New.
179         * testsuite/23_containers/unordered_set/debug/end2_neg.cc: New.
180         * testsuite/23_containers/unordered_set/debug/cend_neg.cc: New.
181         * testsuite/23_containers/unordered_multiset/debug/bucket_size_neg.cc:
182         New.
183         * testsuite/23_containers/unordered_multiset/debug/begin1_neg.cc: New.
184         * testsuite/23_containers/unordered_multiset/debug/begin2_neg.cc: New.
185         * testsuite/23_containers/unordered_multiset/debug/cbegin_neg.cc: New.
186         * testsuite/23_containers/unordered_multiset/debug/end1_neg.cc: New.
187         * testsuite/23_containers/unordered_multiset/debug/end2_neg.cc: New.
188         * testsuite/23_containers/unordered_multiset/debug/cend_neg.cc: New.
190 2012-10-15  Matthias Klose  <doko@ubuntu.com>
192         * configure.host: Match arm*-*-linux-* for ARM Linux/GNU.
193         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
194         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
196 2012-10-15  Pavel Chupin  <pavel.v.chupin@intel.com>
198         * Makefile.in: Regenerate.
199         * acinclude.m4: Replace code with GCC_AC_THREAD_HEADER use.
200         * configure: Regenerate.
201         * doc/Makefile.in: Regenerate.
202         * include/Makefile.am: Regenerate.
203         * include/Makefile.in: Rename variable.
204         * libsupc++/Makefile.in: Regenerate.
205         * po/Makefile.in: Regenerate.
206         * python/Makefile.in: Regenerate.
207         * src/Makefile.in: Regenerate.
208         * src/c++11/Makefile.in: Regenerate.
209         * src/c++98/Makefile.in: Regenerate.
210         * testsuite/Makefile.in: Regenerate.
212 2012-10-14  Jason Merrill  <jason@redhat.com>
214         PR target/54908
215         * libsupc++/atexit_thread.cc: Rewrite to keep the cleanup list
216         with get/setspecific.  Destroy the key on dlclose.
218 2012-10-12  Edward Smith-Rowland  <3dw4rd@verizon.net>
220         * include/ext/random: Add __gnu_cxx::arcsine_distribution<>
221         and __gnu_cxx::hoyt_distribution<> classes.
222         * include/ext/random.tcc: Add out-of-line functions for
223         __gnu_cxx::arcsine_distribution<> and __gnu_cxx::hoyt_distribution<>.
224         * testsuite/ext/random/hoyt_distribution/cons/parms.cc: New file.
225         * testsuite/ext/random/hoyt_distribution/cons/default.cc: New file.
226         * testsuite/ext/random/hoyt_distribution/requirements/
227         explicit_instantiation/1.cc: New file.
228         * testsuite/ext/random/hoyt_distribution/requirements/typedefs.cc:
229         New file.
230         * testsuite/ext/random/hoyt_distribution/operators/inequal.cc: New file.
231         * testsuite/ext/random/hoyt_distribution/operators/equal.cc: New file.
232         * testsuite/ext/random/hoyt_distribution/operators/serialize.cc:
233         New file.
234         * testsuite/ext/random/arcsine_distribution/cons/parms.cc: New file.
235         * testsuite/ext/random/arcsine_distribution/cons/default.cc: New file.
236         * testsuite/ext/random/arcsine_distribution/requirements/
237         explicit_instantiation/1.cc: New file.
238         * testsuite/ext/random/arcsine_distribution/requirements/typedefs.cc:
239         New file.
240         * testsuite/ext/random/arcsine_distribution/operators/inequal.cc:
241         New file.
242         * testsuite/ext/random/arcsine_distribution/operators/equal.cc:
243         New file.
244         * testsuite/ext/random/arcsine_distribution/operators/serialize.cc:
245         New file.
247 2012-10-12  Paolo Carlini  <paolo.carlini@oracle.com>
249         * include/bits/hashtable_policy.h: Revert libstdc++/53067 quick
250         hacks thanks to the resolution of c++/51213.
252 2012-10-11  Paolo Carlini  <paolo.carlini@oracle.com>
254         * testsuite/23_containers/bitset/45713.cc: Tweak.
256 2012-10-11  Hans-Peter Nilsson  <hp@axis.com>
258         PR testsuite/54897
259         * testsuite/23_containers/bitset/45713.cc: Skip for avr*-*-*
260         cris*-*-* h8300*-*-* mcore*-*-* moxie*-*-*.
262 2012-10-11  Daniel Krugler  <daniel.kruegler@gmail.com>
264         * testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc:
265         Update / extend.
266         * testsuite/20_util/common_type/requirements/sfinae_friendly_2.cc:
267         Likewise.
268         * testsuite/20_util/duration/requirements/sfinae_friendly_1.cc:
269         Likewise.
271 2012-10-11  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
273         PR libstdc++/54872
274         * config/abi/pre/gnu.ver (GLIBCXX_3.4.11) [!__sun__ && !__svr4__]:
275         Don't export _ZNSt12system_errorC*.
277 2012-10-10  Jack Howarth  <howarth@bromo.med.uc.edu>
278             Jonathan Wakely  <jwakely.gcc@gmail.com>
280         PR libstdc++/54847
281         * config/os/bsd/darwin/os_defines.h: Define _GLIBCXX_USE_NANOSLEEP
282         and _GLIBCXX_USE_SCHED_YIELD.
283         * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Add comment.
285 2012-10-10  Mark Kettenis  <kettenis@openbsd.org>
287         * configure.host (*-*-openbsd*) Set cpu_include_dir.
288         * config/os/bsd/openbsd/ctype_base.h: New file.
289         * config/os/bsd/openbsd/ctype_configure_char.cc: New file.
290         * config/os/bsd/openbsd/ctype_inline.h: New file.
291         * config/os/bsd/openbsd/os_defines.h: New file.
292         * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Use newlib locale model
293         for OpenBSD.
294         * configure: Regenerated.
296 2012-10-10  Paolo Carlini  <paolo.carlini@oracle.com>
298         * include/std/type_traits (__do_common_type_impl): Revert for now
299         LWG 2141-related change.
300         * testsuite/20_util/common_type/requirements/typedefs-1.cc: Likewise.
301         * testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc:
302         Adjust.
304 2012-10-09  Daniel Krugler  <daniel.kruegler@gmail.com>
306         * include/std/type_traits (common_time): Provide "SFINAE-friendly"
307         implementation.
308         (__success_type, __failure_type): Fix.
309         * include/std/chrono (common_type): Likewise for the chrono::time_point
310         specialization.
311         * testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc: New.
312         * testsuite/20_util/common_type/requirements/sfinae_friendly_2.cc:
313         Likewise.
314         * testsuite/20_util/duration/requirements/sfinae_friendly_1.cc:
315         Likewise.
316         * testsuite/20_util/common_type/requirements/typedefs-1.cc: Adjust wrt
317         LWG 2141.
318         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust
319         dg-error line numbers.
320         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
321         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
322         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
323         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
324         Likewise.
325         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
327         * testsuite/20_util/result_of/sfinae_friendly_1.cc: Trivial stylistic
328         tweaks.
329         * testsuite/20_util/result_of/sfinae_friendly_2.cc: Likewise.
331 2012-10-09  Andrew MacLeod  <amacleod@redhat.com>
333         PR libstdc++/54861
334         * include/bits/atomic_base.h (atomic_signal_fence): Call
335         __atomic_signal_fence instead of __atomic_thread_fence.
337 2012-10-09  Benjamin Kosnik  <bkoz@redhat.com>
339         * testsuite/20_util/specialized_algorithms/uninitialized_copy/808590.cc:
340         Fix constant value.
342 2012-10-09  Paolo Carlini  <paolo.carlini@oracle.com>
344         PR libstdc++/54869
345         * include/ext/random (simd_fast_mersenne_twister_engine): Provide
346         only for little endian targets.
347         * include/ext/random.tcc: Likewise.
348         * config/cpu/i486/opt/ext/opt_random.h: Likewise.
349         * testsuite/lib/libstdc++.exp (check_v3_target_little_endian): Add.
350         * testsuite/lib/dg-options.exp (dg-require-little-endian): Add.
351         * testsuite/ext/random/simd_fast_mersenne_twister_engine/
352         operators/equal.cc: Use the latter.
353         * testsuite/ext/random/simd_fast_mersenne_twister_engine/
354         operators/serialize.cc: Likewise.
355         * testsuite/ext/random/simd_fast_mersenne_twister_engine/
356         operators/inequal.cc: Likewise.
357         * testsuite/ext/random/simd_fast_mersenne_twister_engine/
358         cons/copy.cc: Likewise.
359         * testsuite/ext/random/simd_fast_mersenne_twister_engine/
360         cons/seed1.cc: Likewise.
361         * testsuite/ext/random/simd_fast_mersenne_twister_engine/
362         cons/seed2.cc: Likewise.
363         * testsuite/ext/random/simd_fast_mersenne_twister_engine/
364         cons/default.cc: Likewise.
365         * testsuite/ext/random/simd_fast_mersenne_twister_engine/
366         cons/seed_seq.cc: Likewise.
368 2012-10-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
370         PR libstdc++/54754
371         * include/parallel/compatibility.h: Use atomic built-ins when they are
372         lock-free.
374 2012-10-09  Uros Bizjak  <ubizjak@gmail.com>
376         * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.7.
378 2012-10-08  Jason Merrill  <jason@redhat.com>
380         * libsupc++/cxxabi.h: Declare __cxa_thread_atexit.
381         * libsupc++/atexit_thread.cc: New.
382         * libsupc++/Makefile.am (nested_exception.lo): Add it.
383         * config/abi/pre/gnu.ver: Add __cxa_thread_atexit.
385 2012-10-07  Matthias Klose  <doko@ubuntu.com>
387         * testsuite/28_regex/algorithms/match/basic: Remove empty directory.
388         * testsuite/28_regex/algorithms/match/extended: Likewise.
389         * testsuite/28_regex/algorithms/match: Likewise.
391 2012-10-06  Paolo Carlini  <paolo.carlini@oracle.com>
393         PR c++/52764
394         * include/c_global/cstdint: Remove __STDC_LIMIT_MACROS and
395         __STDC_CONSTANT_MACROS related macros.
397 2012-10-06  Joe Seymour  <jseymour@codesourcery.com>
399         * include/tr2/dynamic_bitset: Fix cxxabi_forced.h include path.
401 2012-10-05  Benjamin Kosnik  <bkoz@redhat.com>
403         * testsuite/28_regex/algorithms/match: Rename to...
404         * testsuite/28_regex/algorithms/regex_match: ...this.
405         * testsuite/28_regex/basic_regex/regex.cc: Rename to...
406         * testsuite/28_regex/basic_regex/ctors/basic/default.cc: ...this.
407         * testsuite/util/testsuite_regex.h: New.
408         * testsuite/28_regex/basic_regex/ctors/basic/raw_string.cc: New.
410 2012-10-05  Jakub Jelinek  <jakub@redhat.com>
412         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line
413         numbers.
415 2012-10-05  Marc Glisse  <marc.glisse@inria.fr>
417         PR libstdc++/54686
418         * include/c_global/cstdlib (abs(long long)): Define with
419         __builtin_llabs when we have long long.
420         (abs(long)): Use __builtin_labs.
421         (abs(__int128)): Define when we have __int128.
423 2012-10-05  Paolo Carlini  <paolo.carlini@oracle.com>
425         * include/c_global/cstdlib: Remove redundant pasto code protected
426         by __GXX_EXPERIMENTAL_CXX0X__.
427         * include/c_global/cwctype: Likewise.
428         * include/c_global/ccomplex: Remove uses of obsolete macro
429         _GLIBCXX_INCLUDE_AS_TR1.
430         * include/c_global/cfloat: Likewise.
432 2012-10-05  Marc Glisse  <marc.glisse@inria.fr>
434         PR libstdc++/54686
435         * include/c_std/cstdlib (abs(long long)): Define with
436         __builtin_llabs when we have long long.
437         (abs(long)): Use __builtin_labs.
438         (abs(__int128)): Define when we have __int128.
439         * testsuite/26_numerics/headers/cstdlib/54686.c: New file.
441 2012-10-03  Paolo Carlini  <paolo.carlini@oracle.com>
443         PR libstdc++/53248
444         * include/std/array (__array_traits<>): Add.
445         (array<>): Allow for zero-size arrays of non default-constructible
446         elements.
447         * testsuite/23_containers/array/requirements/
448         non_default_constructible.cc: New.
449         * testsuite/23_containers/array/requirements/zero_sized_arrays.cc:
450         Adjust.
451         * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
452         dg-error line numbers.
453         * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
454         Likewise.
456 2012-10-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
458         PR other/53889
459         * include/std/mutex (__recursive_mutex_base::~__recursive_mutex_base):
460         Use __gthread_recursive_mutex_destroy.
461         (__recursive_mutex_base::_S_destroy): Remove.
462         (__recursive_mutex_base::_S_destroy_win32): Likewise.
463         * include/ext/concurrence.h (__recursive_mutex::~__recursive_mutex):
464         Use __gthread_recursive_mutex_destroy.
465         (__recursive_mutex::_S_destroy): Remove.
466         (__recursive_mutex::_S_destroy_win32): Likewise.
468 2012-10-01  Benjamin Kosnik  <bkoz@redhat.com>
470         * config/abi/pre/gnu-versioned-namespace.ver: Add more
471         typeinfo/vtable exports.
473 2012-10-01  Paolo Carlini  <paolo.carlini@oracle.com>
475         PR libstdc++/54757
476         * include/ext/random (rice_distribution<>::operator()): Use std::hypot
477         only if _GLIBCXX_USE_C99_MATH_TR1.
478         * include/ext/random.tcc (rice_distribution<>::__generate_impl):
479         Likewise.
481 2012-10-01  Daniel Krugler  <daniel.kruegler@gmail.com>
483         * include/std/type_traits (result_of): Provide "SFINAE-friendly"
484         (see N3436) implementation.
485         * testsuite/20_util/result_of/sfinae_friendly_1.cc: New.
486         * testsuite/20_util/result_of/sfinae_friendly_2.cc: Likewise.
487         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Tweak
488         dg-error line numbers.
489         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
490         Likewise.
491         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
493 2012-09-30  Benjamin Kosnik  <bkoz@redhat.com>
495         * doc/doxygen/user.cfg.in: Update to doxygen 1.8.2.
497 2012-09-30  Jonathan Wakely  <jwakely.gcc@gmail.com>
499         * include/ext/ropeimpl.h (__uninitialized_fill_n_a): Fix using
500         declaration.
501         * testsuite/ext/rope/5.cc: New.
503 2012-09-30  Jonathan Wakely  <jwakely.gcc@gmail.com>
505         PR libstdc++/54577
506         * doc/xml/manual/status_cxx2011.xml: N2350 changes are missing from
507         sequence containers.
508         * doc/html/*: Regenerate.
510 2012-09-29  Jonathan Wakely  <jwakely.gcc@gmail.com>
512         PR libstdc++/34106
513         * include/parallel/compatibility.h: Remove non-GCC code.
515 2012-09-28  Benjamin Kosnik  <bkoz@redhat.com>
517         * fragment.am (CONFIG_CXXFLAGS): Remove EXTRA_CXX_FLAGS.
518         * libsupc++/Makefile.am (LTCXXCOMPILE): Add EXTRA_CXX_FLAGS here.
519         * src/Makefile.am: Same.
520         * src/c++98/Makefile.am: Same.
521         * src/c++11/Makefile.am: Same.
522         * Makefile.in: Regenerated.
523         * src/Makefile.am: Same.
524         * src/c++11/Makefile.in: Same.
525         * src/c++98/Makefile.in: Same.
526         * include/Makefile.in: Same.
527         * po/Makefile.in: Same.
528         * python/Makefile.in: Same.
529         * testsuite/Makefile.in: Same.
531 2012-09-28  Benjamin Kosnik  <bkoz@redhat.com>
533         * src/c++98/Makefile.am: Fixup PARALLEL_FLAGS.
535 2012-09-28  Benjamin Kosnik  <bkoz@redhat.com>
537         * acinclude.m4 (GLIBCXX_ENABLE_PARALLEL): Remove ENABLE_PARALLEL.
538         * include/Makefile.am: Same.
539         * src/c++98/Makefile.am: Same.
540         * src/Makefile.am: Same.
541         * Makefile.in: Regenerated.
542         * aclocal.m4: Same.
543         * configure: Same.
544         * doc/Makefile.in: Same.
545         * include/Makefile.in: Same.
546         * libsupc++/Makefile.in: Same.
547         * po/Makefile.in: Same.
548         * python/Makefile.in: Same.
549         * src/Makefile.in: Same.
550         * testsuite/Makefile.in: Same.
551         * src/c++11/Makefile.in: Same.
552         * src/c++98/Makefile.in: Same.
554         * src/c++98/compatibility-debug_list-2.cc: Update comments.
555         * src/c++98/compatibility-debug_list.cc: Same.
556         * src/c++98/compatibility-list-2.cc: Renamed to src/c++98/list-aux-2.cc
557         * src/c++98/compatibility-list.cc: Renamed to src/c++98/list-aux.cc
558         * src/c++98/compatibility-parallel_list-2.cc: Renamed to
559         src/c++98/list_associated-2.cc.
560         * src/c++98/compatibility-parallel_list.cc: Renamed to
561         src/c++98/list_associated.cc.
563 2012-09-27  Paolo Carlini  <paolo.carlini@oracle.com>
565         PR libstdc++/54727
566         * config/cpu/i486/opt/bits/opt_random.h: Avoid UINT64_C.
568 2012-09-26  Paolo Carlini  <paolo.carlini@oracle.com>
570         * include/ext/random: Add include checks for c++11 and <cstdint>.
572 2012-09-26  Benjamin Kosnik  <bkoz@redhat.com>
574        PR libstdc++/54314
575        * config/abi/pre/gnu.ver: Add vtable exports.
576        * config/abi/pre/gnu-versioned-namespace.ver: Same.
578 2012-09-26  Akira Takahashi  <faithandbrave@gmail.com>
580         PR libstdc++/53515
581         * include/bits/stl_iterator_base_funcs.h (__advance(_InputIterator&,
582         _Distance, input_iterator_tag)): Add _GLIBCXX_DEBUG_ASSERT(__n >= 0).
584 2012-09-26  Ulrich Drepper  <drepper@gmail.com>
586         Optimize bulk mode for normal_distribution<double> for SSE3.
587         * configure.host: Define cpu_opt_bits_random.
588         * configure.ac: Substitute CPU_OPT_BITS_RANDOM.
589         * include/Makefile.am (bits_headers): Add ${bits_host_headers}.
590         (bits_host_headers): Define.
591         * include/bits/random.tcc: Move __details::_Power_of_2 to...
592         * include/bits/random.h: ...here.
593         * include/std/random: Include <bits/opt_random.h>.
594         * config/cpu/i486/opt/bits/opt_random.h: New file.
595         * config/cpu/generic/opt/bits/opt_random.h: New file.
596         * configure: Regenerated.
597         * Makefile.in: Regenerated.
598         * aclocal.m4: Regenerated.
599         * doc/Makefile.in: Regenerated.
600         * include/Makefile.in: Regenerated.
601         * libsupc++/Makefile.in: Regenerated.
602         * po/Makefile.in: Regenerated.
603         * python/Makefile.in: Regenerated.
604         * src/Makefile.in: Regenerated.
605         * src/c++11/Makefile.in: Regenerated.
606         * src/c++98/Makefile.in: Regenerated.
607         * testsuite/Makefile.in: Regenerated.
609         * config/cpu/generic/opt/ext/opt_random.h: Fix comment.
611 2012-09-25  Paolo Carlini  <paolo.carlini@oracle.com>
613         * doc/xml/manual/status_cxx2011.xml: Update vs PR 44436.
615 2012-09-24  Edward Smith-Rowland  <3dw4rd@verizon.net>
617         * include/ext/random: Add __gnu_cxx::k_distribution<> class.
618         * include/ext/random.tcc: Add out-of-line functions for
619         __gnu_cxx::k_distribution<>.
620         * testsuite/ext/random/k_distribution/operators/equal.cc: New file.
621         * testsuite/ext/random/k_distribution/operators/serialize.cc: New file.
622         * testsuite/ext/random/k_distribution/operators/inequal.cc: New file.
623         * testsuite/ext/random/k_distribution/cons/parms.cc: New file.
624         * testsuite/ext/random/k_distribution/cons/default.cc: New file.
625         * testsuite/ext/random/k_distribution/requirements/typedefs.cc:
626         New file.
627         * testsuite/ext/random/k_distribution/requirements/
628         explicit_instantiation/1.cc: New file.
630 2012-09-24  François Dumont  <fdumont@gcc.gnu.org>
632         PR libstdc++/44436
633         * include/bits/stl_tree.h
634         (_Rb_tree<>::_M_insert_): Take _Base_ptr rather than
635         _Const_Base_ptr.
636         (_Rb_tree<>::_M_insert_node): New.
637         (_Rb_tree<>::_M_get_insert_unique_pos): New, search code of
638         _M_insert_unique method.
639         (_Rb_tree<>::_M_insert_unique): Use latter.
640         (_Rb_tree<>::_M_emplace_unique): New, likewise.
641         (_Rb_tree<>::_M_get_insert_equal_pos): New, search code of
642         _M_insert_equal method.
643         (_Rb_tree<>::_M_insert_equal): Use latter.
644         (_Rb_tree<>::_M_emplace_equal): New, likewise.
645         (_Rb_tree<>::_M_get_insert_hint_unique_pos): New, search code of
646         _M_insert_unique_ method.
647         (_Rb_tree<>::_M_insert_unique_): Use latter.
648         (_Rb_tree<>::_M_emplace_hint_unique): New, likewise.
649         (_Rb_tree<>::_M_get_insert_hint_equal_pos): New, search code of
650         _M_insert_equal_ method.
651         (_Rb_tree<>::_M_insert_equal_): Use latter.
652         (_Rb_tree<>::_M_emplace_hint_equal): New, likewise.
653         (_Rb_tree<>::_M_insert_lower): Remove first _Base_ptr parameter,
654         useless as always null.
655         * include/bits/stl_map.h: Include <tuple> in C++11.
656         (map<>::operator[](const key_type&)): Use
657         _Rb_tree<>::_M_emplace_hint_unique in C++11.
658         (map<>::operator[](key_type&&)): Likewise.
659         (map<>::emplace): New.
660         (map<>::emplace_hint): New.
661         * include/bits/stl_multimap.h (multimap<>::emplace): New.
662         (multimap<>::emplace_hint): New.
663         * include/bits/stl_set.h (set<>::emplace): New.
664         (set<>::emplace_hint): New.
665         * include/bits/stl_multiset.h (multiset<>::emplace): New.
666         (multiset<>::emplace_hint): New.
667         * include/debug/map.h (std::__debug::map<>::emplace): New.
668         (std::__debug::map<>::emplace_hint): New.
669         * include/debug/multimap.h (std::__debug::multimap<>::emplace):
670         New.
671         (std::__debug::multimap<>::emplace_hint): New.
672         * include/debug/set.h (std::__debug::set<>::emplace): New.
673         (std::__debug::set<>::emplace_hint): New.
674         * include/debug/multiset.h (std::__debug::multiset<>::emplace):
675         New.
676         (std::__debug::multiset<>::emplace_hint): New.
677         * include/profile/map.h (std::__profile::map<>::emplace): New.
678         (std::__profile::map<>::emplace_hint): New.
679         * include/profile/multimap.h (std::__profile::multimap<>::emplace):
680         New.
681         (std::__profile::multimap<>::emplace_hint): New.
682         * include/profile/set.h (std::__profile::set<>::emplace): New.
683         (std::__profile::set<>::emplace_hint): New.
684         * include/profile/multiset.h (std::__profile::multiset<>::emplace):
685         New.
686         (std::__profile::multiset<>::emplace_hint): New.
687         * testsuite/util/testsuite_container_traits.h: Signal that emplace
688         and emplace_hint are available on std::map, std::multimap,
689         std::set and std::multiset in C++11.
690         * testsuite/23_containers/map/operators/2.cc: New.
691         * testsuite/23_containers/map/modifiers/emplace/1.cc: New.
692         * testsuite/23_containers/multimap/modifiers/emplace/1.cc: New.
693         * testsuite/23_containers/set/modifiers/emplace/1.cc: New.
694         * testsuite/23_containers/multiset/modifiers/emplace/1.cc: New.
696 2012-09-24  François Dumont  <fdumont@gcc.gnu.org>
698         * testsuite/performance/23_containers/insert_erase/41975.cc: Use
699         __uset_hashtable rather than removed __unordered_set.
701 2012-09-23  Paolo Carlini  <paolo.carlini@oracle.com>
703         Revert:
704         2012-09-21  Paolo Carlini  <paolo.carlini@oracle.com>
706         * include/bits/stl_algobase.h (max, min): Use conditional operator.
708 2012-09-23  Uros Bizjak  <ubizjak@gmail.com>
710         PR libstdc++/54675
711         * include/ext/random: Avoid the badname __alpha (and, for
712         consistency, __mu, __nu, __sigma and __omega too).
713         * include/bits/random.tcc: Likewise.
715 2012-09-21  Edward Smith-Rowland  <3dw4rd@verizon.net>
717         * include/ext/random: Add __gnu_cxx::pareto_distribution<> class.
718         * include/ext/random.tcc: Add out-of-line functions for
719         __gnu_cxx::pareto_distribution<>.
720         * testsuite/ext/random/pareto_distribution/operators/equal.cc: New file.
721         * testsuite/ext/random/pareto_distribution/operators/serialize.cc:
722         New file.
723         * testsuite/ext/random/pareto_distribution/operators/inequal.cc:
724         New file.
725         * testsuite/ext/random/pareto_distribution/cons/parms.cc: New file.
726         * testsuite/ext/random/pareto_distribution/cons/default.cc: New file.
727         * testsuite/ext/random/pareto_distribution/requirements/typedefs.cc:
728         New file.
729         * testsuite/ext/random/pareto_distribution/requirements/
730         explicit_instantiation/1.cc: New file.
732 2012-09-21  Paolo Carlini  <paolo.carlini@oracle.com>
734         * include/bits/stl_algobase.h (max, min): Use conditional operator.
736 2012-09-18  Benjamin Kosnik  <bkoz@redhat.com>
738         PR libstdc++/28811
739         PR libstdc++/54482
740         * configure.ac (glibcxx_lt_pic_flag,
741         glibcxx_compiler_pic_flag,
742         glibcxx_compiler_shared_flag): New. Use them.
743         (lt_prog_compiler_pic_CXX): Set via glibcxx_*_flag(s) above.
744         (pic_mode): Set to default.
745         (PIC_CXXFLAGS): Remove.
746         * Makefile.am (PICFLAG, PICFLAG_FOR_TARGET): Remove. Comment.
747         * libsupc++/Makefile.am: Use glibcxx_ld_pic_flag and
748         glibcxx_compiler_shared_flag. Comment.
749         * src/c++11/Makefile.am: Same.
750         * src/c++98/Makefile.am: Same.
751         * src/Makefile.am: Use glibcxx_compiler_pic_flag.
753         * Makefile.in: Regenerated.
754         * aclocal.m4: Same.
755         * configure: Same.
756         * doc/Makefile.in: Same.
757         * include/Makefile.in: Same.
758         * libsupc++/Makefile.in: Same.
759         * po/Makefile.in: Same.
760         * python/Makefile.in: Same.
761         * src/Makefile.in: Same.
762         * src/c++11/Makefile.in: Same.
763         * src/c++98/Makefile.in: Same.
764         * testsuite/Makefile.in: Same.
766         * src/c++11/compatibility-atomic-c++0x.cc: Use
767         _GLIBCXX_SHARED instead of PIC to designate shared-only
768         code blocks.
769         * src/c++11/compatibility-c++0x.cc: Same.
770         * src/c++11/compatibility-thread-c++0x.cc: Same.
771         * src/c++98/compatibility-list-2.cc: Same.
772         * src/c++98/compatibility.cc: : Same.
774         * testsuite/17_intro/shared_with_static_deps.cc: New.
776         * doc/xml/manual/build_hacking.xml: Separate configure from
777         make/build issues, add build details.
779 2012-09-18  Edward Smith-Rowland  <3dw4rd@verizon.net>
781         * include/ext/random: Add __gnu_cxx::nakagami_distribution<> class.
782         * include/ext/random.tcc: Add out-of-line functions for
783         __gnu_cxx::nakagami_distribution<>.
784         * testsuite/ext/random/nakagami_distribution/operators/equal.cc:
785         New file.
786         * testsuite/ext/random/nakagami_distribution/operators/serialize.cc:
787         New file.
788         * testsuite/ext/random/nakagami_distribution/operators/inequal.cc:
789         New file.
790         * testsuite/ext/random/nakagami_distribution/cons/parms.cc: New file.
791         * testsuite/ext/random/nakagami_distribution/cons/default.cc: New file.
792         * testsuite/ext/random/nakagami_distribution/requirements/typedefs.cc:
793         New file.
794         * testsuite/ext/random/nakagami_distribution/requirements/
795         explicit_instantiation/1.cc: New file.
797 2012-09-18  Paolo Carlini  <paolo.carlini@oracle.com>
799         PR libstdc++/54612
800         * include/ext/random.tcc (operator==
801         (const __gnu_cxx::simd_fast_mersenne_twister_engine<>&,
802         const __gnu_cxx::simd_fast_mersenne_twister_engine<>&)): Fix
803         state_size use.
804         * config/cpu/i486/opt/ext/opt_random.h: Guard with __SSE2__.
806 2012-09-17  Ulrich Drepper  <drepper@gmail.com>
808         * configure.ac: Substitute CPU_OPT_EXT_RANDOM.
809         * configure.host: Define cpu_opt_ext_random to location of the
810         optimized version of <ext/random>.
811         * include/Makefile.am (ext_headers): Add ${ext_host_headers}.
812         (ext_host_headers): Define.
813         * include/ext/random (simd_fast_mersenne_twister_engine<>
814         ::operator==): Don't define function here.
815         * include/ext/random.tcc (simd_fast_mersenne_twister_engine): Don't
816         define code using SSE2 here.  Define generic code only if
817         _GLIBCXX_OPT_HAVE_RANDOM_SFMT_GEN_READ is not defined.
818         (simd_fast_mersenne_twister_engine<>
819         ::operator==): Define here if
820         _GLIBCXX_OPT_HAVE_RANDOM_SFMT_OPERATOREQUAL is not defined.
821         * config/cpu/generic/opt/ext/opt_random.h: New file.
822         * config/cpu/i486/opt/ext/opt_random.h: New file.
823         * libsupc++/Makefile.in: Regenerated.
824         * testsuite/Makefile.in: Regenerated.
825         * po/Makefile.in: Regenerated.
826         * configure: Regenerated.
827         * Makefile.in: Regenerated.
828         * doc/Makefile.in: Regenerated.
829         * aclocal.m4: Regenerated.
830         * python/Makefile.in: Regenerated.
831         * include/Makefile.in: Regenerated.
832         * src/c++98/Makefile.in: Regenerated.
833         * src/c++11/Makefile.in: Regenerated.
834         * src/Makefile.in: Regenerated.
836 2012-09-16  Edward Smith-Rowland  <3dw4rd@verizon.net>
838         * include/ext/random.tcc (__gnu_cxx::rice_distribution<>
839         ::__generate_impl): Remove bogus _Adaptor usage.
841 2012-09-16  Paolo Carlini  <paolo.carlini@oracle.com>
843         * include/ext/random (rice_distribution<>::operator==): Change
844         inline friend definition to non-template.
845         * testsuite/ext/random/rice_distribution/requirements/
846         explicit_instantiation/1.cc: New.
848         * testsuite/26_numerics/random/normal_mv_distribution: Move...
849         * testsuite/ext/random/normal_mv_distribution: ... here.
850         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine:
851         Move...
852         * testsuite/ext/random/simd_fast_mersenne_twister_engine: ... here.
853         * testsuite/26_numerics/random/beta_distribution: Move...
854         * testsuite/ext/random/beta_distribution: ... here.
855         * testsuite/26_numerics/random/rice_distribution: Move...
856         * testsuite/ext/random/rice_distribution: ... here.
858 2012-09-14  Edward Smith-Rowland  <3dw4rd@verizon.net>
860         * include/ext/random: Add __gnu_cxx::rice_distribution<> class.
861         * include/ext/random.tcc: Add out-of-line functions for
862         __gnu_cxx::rice_distribution<>.
863         * testsuite/26_numerics/random/rice_distribution/
864         operators/equal.cc: New file.
865         * testsuite/26_numerics/random/rice_distribution/
866         operators/serialize.cc: New file.
867         * testsuite/26_numerics/random/rice_distribution/
868         operators/inequal.cc: New file.
869         * testsuite/26_numerics/random/rice_distribution/
870         cons/parms.cc: New file.
871         * testsuite/26_numerics/random/rice_distribution/
872         cons/default.cc: New file.
873         * testsuite/26_numerics/random/rice_distribution/
874         requirements/typedefs.cc: New file.
876 2012-09-14  David Edelsohn  <dje.gcc@gmail.com>
878         * configure: Regenerated.
880 2012-09-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
881             H.J. Lu  <hongjiu.lu@intel.com>
883         PR libstdc++/54576
884         * src/c++11/random.cc: Check if _GLIBCXX_USE_C99_STDINT_TR1 is defined.
886 2012-09-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
888         * acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Define.
889         * configure.ac: Call GLIBCXX_CHECK_ASSEMBLER_HWCAP.
890         * fragment.am (CONFIG_CXXFLAGS): Add $(HWCAP_FLAGS).
891         * configure: Regenerate.
892         * Makefile.in: Regenerate.
893         * doc/Makefile.in: Regenerate.
894         * include/Makefile.in: Regenerate.
895         * libsupc++/Makefile.in: Regenerate.
896         * po/Makefile.in: Regenerate.
897         * python/Makefile.in: Regenerate.
898         * src/Makefile.in: Regenerate.
899         * src/c++11/Makefile.in: Regenerate.
900         * src/c++98/Makefile.in: Regenerate.
901         * testsuite/Makefile.in: Regenerate.
903 2012-09-11  Jakub Jelinek  <jakub@redhat.com>
905         PR libstdc++/54172
906         * libsupc++/guard.cc (__cxa_guard_acquire): Fix up the last
907         argument of the first __atomic_compare_exchange_n.
909 2012-09-10  Sebastian Huber  <sebastian.huber@embedded-brains.de>
910             Jonathan Wakely  <jwakely.gcc@gmail.com>
912         PR libstdc++/43852
913         * acinclude.m4 (GLIBCXX_ENABLE_VERBOSE): Define.
914         * configure.ac (GLIBCXX_ENABLE_VERBOSE): Use it.
915         * config.h.in: Regenerate.
916         * configure: Likewise.
917         * libsupc++/eh_term_handler.cc (_GLIBCXX_VERBOSE): Check new macro.
918         * libsupc++/pure.cc (_GLIBCXX_VERBOSE): Likewise.
919         * doc/xml/manual/configure.xml (--disable-libstdcxx-verbose): Document.
920         * doc/html/manual/configure.html: Regenerate.
922 2012-09-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
924         PR bootstrap/54419
925         * acinclude.m4 (GLIBCXX_CHECK_X86_RDRAND): Remove stray character.
926         * configure: Regenerated.
928 2012-09-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
930         PR libstdc++/54388
931         * include/std/array (array::at() const): Ensure lvalue result.
932         * testsuite/23_containers/array/element_access/54388.cc: New.
933         * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
934         dg-error line numbers.
935         * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
936         Likewise.
938 2012-09-09  Ulrich Drepper  <drepper@gmail.com>
939             Dominique d'Humieres  <dominiq@lps.ens.fr>
940             Jack Howarth  <howarth@bromo.med.uc.edu>
942         PR bootstrap/54419
943         * acinclude.m4: Define GLIBCXX_CHECK_X86_RDRAND.
944         * configure.ac: Use GLIBCXX_CHECK_X86_RDRAND to test for rdrand
945         support in assembler.
946         * src/c++11/random.cc (__x86_rdrand): Depend on _GLIBCXX_X86_RDRAND.
947         (random_device::_M_init): Likewise.
948         (random_device::_M_getval): Likewise.
949         * configure: Regenerated.
950         * config.h.in: Regenerated.
952 2012-09-09  Ulrich Drepper  <drepper@gmail.com>
954         * src/c++11/random.cc (random_device::_M_init): Use new macro
955         signature_INTEL_ebx to check for Intel processors.
957 2012-09-06  Thiago Macieira  <thiago.macieira@intel.com>
959         PR libstdc++/54172
960         * libsupc++/guard.cc (__cxa_guard_acquire): Exit the loop earlier if
961         we detect that another thread has had success. Don't compare_exchange
962         from a finished state back to a waiting state. Comment.
964 2012-09-05  François Dumont  <fdumont@gcc.gnu.org>
966         PR libstdc++/54296
967         * include/bits/hashtable.h (_M_erase(size_type, __node_base*,
968         __node_type*)): New.
969         (erase(const_iterator)): Use latter.
970         (_M_erase(std::true_type, const key_type&)): New, likewise.
971         (_M_erase(std::false_type, const key_type&)): New. Find all nodes
972         matching the key before deallocating them so that the key doesn't
973         get invalidated.
974         (erase(const key_type&)): Use the new member functions.
975         * testsuite/23_containers/unordered_map/erase/54296.cc: New.
976         * testsuite/23_containers/unordered_multimap/erase/54296.cc: New.
978 2012-09-05  Ulrich Drepper  <drepper@gmail.com>
980         * src/c++11/random.cc (random_device::_M_init): Check whether cpuid
981         instruction is available by using __get_cpuid_max.
983         * include/ext/random.tcc (__gnu_cxx:normal_mv_distribution<>)
984         (operator()): Use __generate() function of _M_nd.
986         * include/ext/random: Add __gnu_cxx:normal_mv_distribution<> class.
987         * include/ext/random.tccAdd out-of-line functions for
988         __gnu_cxx::normal_mv_distribution<>.
989         * testsuite/26_numerics/random/normal_mv_distribution/
990         operators/equal.cc: New file.
991         * testsuite/26_numerics/random/normal_mv_distribution/
992         operators/serialize.cc: New file.
993         * testsuite/26_numerics/random/normal_mv_distribution/
994         operators/inequal.cc: New file.
995         * testsuite/26_numerics/random/normal_mv_distribution/
996         cons/default.cc: New file.
997         * testsuite/26_numerics/random/normal_mv_distribution/
998         cons/parms.cc: New file.
999         * testsuite/26_numerics/random/normal_mv_distribution/
1000         requirements/explicit_instantiation/1.cc: New file.
1001         * testsuite/26_numerics/random/normal_mv_distribution/
1002         requirements/typedefs.cc: New file.
1004 2012-09-04  Ulrich Drepper  <drepper@gmail.com>
1006         * include/ext/random: Add __gnu_cxx::beta_distribution<> class.
1007         * include/ext/random.tcc: Add out-of-line functions for
1008         __gnu_cxx::beta_distribution<>.
1009         * testsuite/26_numerics/random/beta_distribution/
1010         operators/equal.cc: New file.
1011         * testsuite/26_numerics/random/beta_distribution/
1012         operators/serialize.cc: New file.
1013         * testsuite/26_numerics/random/beta_distribution/
1014         operators/inequal.cc: New file.
1015         * testsuite/26_numerics/random/beta_distribution/
1016         cons/parms.cc: New file.
1017         * testsuite/26_numerics/random/beta_distribution/
1018         cons/default.cc: New file.
1019         * testsuite/26_numerics/random/beta_distribution/
1020         requirements/typedefs.cc: New file.
1021         * testsuite/26_numerics/random/beta_distribution/
1022         requirements/explicit_instantiation/1.cc: New file.
1024 2012-09-04  Steven Bosscher  <steven@gcc.gnu.org>
1026         PR bootstrap/54453
1027         * include/Makefile.am: Fix regex.
1028         * include/Makefile.in: Regenerate.
1030 2012-08-30  Benjamin Kosnik  <bkoz@redhat.com>
1032         PR libstdc++/54005 continued
1033         * include/std/atomic: Use __atomic_lock_free with NULL.
1034         * include/bits/atomic_base.h: Same.
1036 2012-08-30  Ulrich Drepper  <drepper@gmail.com>
1038         * include/bits/random.h (random_device) [GLIBCXX_USE_RANDOM_TR1]:
1039         Remove 'return' from constructor.
1041 2012-08-30  Benjamin Kosnik  <bkoz@redhat.com>
1043         * testsuite/util/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.18.
1045 2012-08-29  Ulrich Drepper  <drepper@gmail.com>
1047         * include/bits/random.h (random_device): Move implementation to...
1048         * src/c++11/random.cc: ...here.  New file.
1049         * config/abi/pre/gnu.ver: Add new version GLIBCXX_3.4.18.  Export
1050         std::random_device::* symbols.
1051         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Generated.
1052         * src/c++11/Makefile.am (sources): Add random.cc.
1053         * src/c++11/Makefile.in: Regenerated.
1055         Add simd_fast_mersenne_twister_engine class.
1056         * include/ext/random: New file.
1057         * include/ext/random.tcc: New file.
1058         * include/Makefile.am (ext_headers): Add random and random.tcc.
1059         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1060         operators/inequal.cc: New file.
1061         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1062         operators/equal.cc: New file.
1063         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1064         operators/serialize.cc: New file.
1065         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1066         cons/seed2.cc: New file.
1067         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1068         cons/default.cc: New file.
1069         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1070         cons/seed_seq.cc: New file.
1071         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1072         cons/copy.cc: New file.
1073         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1074         cons/seed1.cc: New file.
1076 2012-08-28  Benjamin Kosnik  <bkoz@redhat.com>
1078         PR libstdc++/54102, part 2
1079         * doc/Makefile.am (XSL_HTML_STYLE): use xhtml, not html.
1080         * doc/Makefile.in: Regenerate.
1081         * doc/html/*: Same.
1083 2012-08-28  Benjamin Kosnik  <bkoz@redhat.com>
1085         * doc/html/*: Regenerate.
1087 2012-08-28  Benjamin Kosnik  <bkoz@redhat.com>
1089         PR libstdc++/54102
1090         * doc/xsl/customization.xsl.in: New.
1091         * configure.ac: Output local copy of customization xsl.
1092         * doc/Makefile.am (stamp-html-single-docbook): Use XSL_LOCAL_STYLE.
1093         (stamp-html-docbook): Set stringparam to UTF-8.
1094         * Makefile.in: Regenerated.
1095         * configure: Same.
1096         * doc/Makefile.in: Same.
1098 2012-08-27  Ulrich Drepper  <drepper@gmail.com>
1100         Add interfaces to retrieve random numbers in bulk.
1101         * include/bits/random.h (uniform_int_distribution<>): Add __generate
1102         and __generate_impl functions.
1103         (uniform_real_distribution<>): Likewise.
1104         (bernoulli_distribution): Likewise.
1105         (geometric_distribution<>): Likewise.
1106         (negative_binomial_distribution<>): Likewise.
1107         (poisson_distribution<>): Likewise.
1108         (exponential_distribution<>): Likewise.
1109         (normal_distribution<>): Likewise.
1110         (lognormal_distribution<>): Likewise.
1111         (chi_squared_distribution<>): Likewise.
1112         (cauchy_distribution<>): Likewise.
1113         (fisher_f_distribution<>): Likewise.
1114         (student_t_distribution<>): Likewise.
1115         (gamma_distribution<>): Likewise.
1116         (weibull_distribution<>): Likewise.
1117         (extreme_value_distribution<>): Likewise.
1118         (discrete_distribution<>): Likewise.
1119         (piecewise_constant_distribution<>): Likewise.
1120         (piecewise_linear_distribution<>): Likewise.
1121         * include/bits/random.tcc (__detail::_Power_of_2): New function.
1122         (uniform_int_distribution<>::__generate_impl): New function.
1123         (uniform_real_distribution<>::__generate_impl): New function.
1124         (bernoulli_distribution::__generate_impl): New function.
1125         (geometric_distribution<>::__generate_impl): New function.
1126         (negative_binomial_distribution<>::__generate_impl): New function.
1127         (poisson_distribution<>::__generate_impl): New function.
1128         (exponential_distribution<>::__generate_impl): New function.
1129         (normal_distribution<>::__generate_impl): New function.
1130         (lognormal_distribution<>::__generate_impl): New function.
1131         (chi_squared_distribution<>::__generate_impl): New function.
1132         (cauchy_distribution<>::__generate_impl): New function.
1133         (fisher_f_distribution<>::__generate_impl): New function.
1134         (student_t_distribution<>::__generate_impl): New function.
1135         (gamma_distribution<>::__generate_impl): New function.
1136         (weibull_distribution<>::__generate_impl): New function.
1137         (extreme_value_distribution<>::__generate_impl): New function.
1138         (discrete_distribution<>::__generate_impl): New function.
1139         (piecewise_constant_distribution<>::__generate_impl): New function.
1140         (piecewise_linear_distribution<>::__generate_impl): New function.
1142 2012-08-22  Ulrich Drepper  <drepper@gmail.com>
1144         * include/bits/random.h (mersenne_twister_engine): Don't inline
1145         discard here.  New member function _M_gen_rand.
1146         * include/bits/random.tcc (mersenne_twister_engine<>::_M_gen_rand):
1147         New function.  Extracted from operator().
1148         (mersenne_twister_engine<>::discard): New implementation which
1149         skips in large steps.
1150         (mersenne_twister_engine<>::operator()): Use _M_gen_rand.
1152 2012-08-26  Marc Glisse  <marc.glisse@inria.fr>
1153             Paolo Carlini  <paolo.carlini@oracle.com>
1155         PR libstdc++/54376
1156         * include/bits/random.h (lognormal_distribution<>::operator==,
1157         gamma_distribution<>::operator==,
1158         chi_squared_distribution<>::operator==,
1159         fisher_f_distribution<>::operator==,
1160         student_t_distribution<>::operator==,
1161         binomial_distribution<>::operator==,
1162         negative_binomial_distribution<>::operator==,
1163         poisson_distribution<>::operator==): Change inline friend definition
1164         to non-template.
1165         * testsuite/26_numerics/random/binomial_distribution/requirements/
1166         explicit_instantiation/1.cc: New.
1167         * testsuite/26_numerics/random/cauchy_distribution/requirements/
1168         explicit_instantiation/1.cc: Likewise.
1169         * testsuite/26_numerics/random/chi_squared_distribution/
1170         requirements/explicit_instantiation/1.cc: Likewise.
1171         * testsuite/26_numerics/random/discrete_distribution/requirements/
1172         explicit_instantiation/1.cc: Likewise.
1173         * testsuite/26_numerics/random/exponential_distribution/
1174         requirements/explicit_instantiation/1.cc: Likewise.
1175         * testsuite/26_numerics/random/extreme_value_distribution/
1176         requirements/explicit_instantiation/1.cc: Likewise.
1177         * testsuite/26_numerics/random/fisher_f_distribution/requirements/
1178         explicit_instantiation/1.cc: Likewise.
1179         * testsuite/26_numerics/random/gamma_distribution/requirements/
1180         explicit_instantiation/1.cc: Likewise.
1181         * testsuite/26_numerics/random/geometric_distribution/requirements/
1182         explicit_instantiation/1.cc: Likewise.
1183         * testsuite/26_numerics/random/lognormal_distribution/requirements/
1184         explicit_instantiation/1.cc: Likewise.
1185         * testsuite/26_numerics/random/negative_binomial_distribution/
1186         requirements/explicit_instantiation/1.cc: Likewise.
1187         * testsuite/26_numerics/random/normal_distribution/requirements/
1188         explicit_instantiation/1.cc: Likewise.
1189         * testsuite/26_numerics/random/piecewise_constant_distribution/
1190         requirements/explicit_instantiation/1.cc: Likewise.
1191         * testsuite/26_numerics/random/piecewise_linear_distribution/
1192         requirements/explicit_instantiation/1.cc: Likewise.
1193         * testsuite/26_numerics/random/poisson_distribution/requirements/
1194         explicit_instantiation/1.cc: Likewise.
1195         * testsuite/26_numerics/random/student_t_distribution/requirements/
1196         explicit_instantiation/1.cc: Likewise.
1197         * testsuite/26_numerics/random/uniform_int_distribution/
1198         requirements/explicit_instantiation/1.cc: Likewise.
1199         * testsuite/26_numerics/random/uniform_real_distribution/
1200         requirements/explicit_instantiation/1.cc: Likewise.
1201         * testsuite/26_numerics/random/weibull_distribution/requirements/
1202         explicit_instantiation/1.cc: Likewise.
1204 2012-08-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
1206         * testsuite/30_threads/async/54297.cc: Add dg-require-nanosleep.
1208 2012-08-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
1210         PR libstdc++/54297
1211         * src/c++11/future.cc (~_Async_state_common): Move to...
1212         * src/c++11/compatibility-thread-c++0x.cc (~_Async_state_common):
1213         Here.
1214         (_GLIBCXX_ABI_COMPAT_ASYNC): Rename to _GLIBCXX_ASYNC_ABI_COMPAT.
1215         * include/std/future (_GLIBCXX_ABI_COMPAT_ASYNC): Likewise.
1217 2012-08-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
1218             Geoff Romer  <gromer@google.com>
1220         PR libstdc++/54351
1221         * include/bits/unique_ptr.h (unique_ptr<T>::~unique_ptr): Do not use
1222         reset().
1223         (unique_ptr<T[]>::~unique_ptr()): Likewise.
1224         * testsuite/20_util/unique_ptr/54351.cc: New.
1225         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error
1226         line numbers.
1228 2012-08-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
1230         PR libstdc++/54297
1231         * include/std/future (~_Async_state_impl): Join thread before
1232         derived class members are destroyed.
1233         (~_Async_state_common): Only define non-trivial destructor when
1234         included from future.cc for ABI compatibility reasons.
1235         * src/c++11/future.cc (_GLIBCXX_ABI_COMPAT_ASYNC): Define.
1236         * testsuite/30_threads/async/54297.cc: New.
1238 2012-08-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
1240         PR libstdc++/54248
1241         * include/bits/concept_check.h: Replace references to boost
1242         namespace.
1244 2012-08-23  Jonathan Wakely  <jwakely.gcc@gmail.com>
1246         PR libstdc++/54354
1247         * doc/xml/manual/status_cxx2011.xml: Note missing manipulators.
1248         * doc/html/*: Regenerate.
1250 2012-08-15  Tom Tromey  <tromey@redhat.com>
1252         * testsuite/libstdc++-prettyprinters/cxx11.cc (struct datum):
1253         New.
1254         (global): New global.
1255         (main): Add test for unique_ptr.
1256         * python/libstdcxx/v6/printers.py
1257         (UniquePointerPrinter.to_string): Extract the pointer and also
1258         print its type.
1260 2012-08-13  David Adler  <d.adler.s@gmail.com>
1262         PR libstdc++/54185
1263         * src/c++11/condition_variable.cc (condition_variable): Always
1264         destroy native type in destructor.
1265         * testsuite/30_threads/condition_variable/54185.cc: New.
1267 2012-08-13  François Dumont  <fdumont@gcc.gnu.org>
1268             Ollie Wild  <aaw@google.com>
1270         * include/bits/hashtable.h
1271         (_Hashtable<>_M_insert_multi_node(hash_code, node_type*)): New.
1272         (_Hashtable<>_M_insert(_Args&&, false_type)): Use latter.
1273         (_Hashtable<>::_M_emplace(false_type, _Args&&...)): Likewise.
1274         (_Hashtable<>::_M_insert_bucket): Replace by ...
1275         (_Hashtable<>::_M_insert_unique_node(size_type, hash_code, node_type*)):
1276         ... this, new.
1277         (_Hashtable<>::_M_insert(_Args&&, true_type)): Use latter.
1278         (_Hashtable<>::_M_emplace(true_type, _Args&&...)): Likewise.
1279         * include/bits/hashtable_policy.h (_Map_base<>::operator[]): Use
1280         latter, emplace the value_type rather than insert.
1281         * include/std/unordered_map: Include tuple.
1282         * include/std/unordered_set: Likewise.
1283         * testsuite/util/testsuite_counter_type.h: New.
1284         * testsuite/23_containers/unordered_map/operators/2.cc: New.
1286 2012-08-13  Marc Glisse  <marc.glisse@inria.fr>
1288         PR libstdc++/54112
1289         * include/c_compatibility/complex.h: Undefine complex, always
1290         include system's complex.h if present.
1291         * testsuite/26_numerics/complex/c99.cc: New testcase.
1292         * testsuite/17_intro/headers/c++1998/complex.cc: Likewise.
1293         * doc/xml/manual/numerics.xml: Document it.
1295 2012-08-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
1297         PR libstdc++/52681
1298         * src/c++11/thread.cc (thread::_M_start_thread): Improve error text
1299         when threads are not enabled.
1301 2012-08-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1303         * acinclude.m4: Update references to final C++11 standard.
1304         * include/bits/shared_ptr.h: Likewise.
1305         * include/bits/shared_ptr_base.h: Likewise.
1306         * include/bits/unique_ptr.h: Likewise.
1307         * include/std/chrono: Likewise.
1308         * include/std/thread: Likewise.
1310 2012-08-07  Benjamin Kosnik  <bkoz@redhat.com>
1312         PR libstdc++/54005
1313         * include/std/atomic: Use __atomic_always_lock_free.
1314         * include/bits/atomic_base.h: Same.
1316 2012-08-06  Paolo Carlini  <paolo.carlini@oracle.com>
1318         * testsuite/decimal/mixed-mode-cmp_neg.cc: Add test variable; minor
1319         tweaks.
1320         * testsuite/decimal/unary-arith.cc: Likewise.
1321         * testsuite/decimal/ctor.cc: Likewise.
1322         * testsuite/decimal/conversion-to-integral.cc: Likewise.
1323         * testsuite/decimal/make-decimal.cc: Likewise.
1324         * testsuite/decimal/comparison.cc: Likewise.
1325         * testsuite/decimal/incdec-memfunc.cc: Likewise.
1326         * testsuite/decimal/conversion-to-generic-float.cc: Likewise.
1327         * testsuite/decimal/compound-assignment-memfunc.cc: Likewise.
1328         * testsuite/decimal/cast_neg.cc: Likewise.
1329         * testsuite/decimal/incdec.cc: Likewise.
1330         * testsuite/decimal/mixed-mode-arith_neg.cc: Likewise.
1331         * testsuite/decimal/binary-arith.cc: Likewise.
1332         * testsuite/decimal/conversion-from-float.cc: Likewise.
1333         * testsuite/decimal/conversion-from-integral.cc: Likewise.
1334         * testsuite/decimal/compound-assignment.cc: Likewise.
1336 2012-08-06  Peter Bergner  <bergner@vnet.ibm.com>
1338         PR libstdc++/54036
1339         * include/decimal/decimal.h (_DEFINE_DECIMAL_UNARY_OP): Use _Op as
1340         a unary operator.
1341         * testsuite/decimal/pr54036-1.cc: New test.
1342         * testsuite/decimal/pr54036-2.cc: Likewise.
1343         * testsuite/decimal/pr54036-3.cc: Likewise.
1345 2012-08-04  Paolo Carlini  <paolo.carlini@oracle.com>
1347         Revert:
1348         2012-08-03  Ollie Wild  <aaw@google.com>
1349                     Richard Smith  <richardsmith@google.com>
1351         * include/bits/stl_map.h (operator[](key_type&&)): Replace
1352         std::make_pair with value_type.
1353         * testsuite/23_containers/map/operators/2.cc: New test.
1355 2012-08-03  François Dumont  <fdumont@gcc.gnu.org>
1357         * include/debug/functions.h (__check_partition_lower_aux): Remove
1358         redundant comparison with pivot value.
1359         (__check_partition_upper_aux): Likewise.
1361 2012-08-03  Ollie Wild  <aaw@google.com>
1362             Richard Smith  <richardsmith@google.com>
1364         * include/bits/stl_map.h (operator[](key_type&&)): Replace
1365         std::make_pair with value_type.
1366         * testsuite/23_containers/map/operators/2.cc: New test.
1368 2012-08-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
1370         * include/std/memory: Include auto_ptr.h later.
1371         * include/bits/shared_ptr.h (shared_ptr(auto_ptr<_Up>&&): Remove
1372         definition.
1373         * include/bits/shared_ptr_base.h (__shared_ptr(auto_ptr<_Up>&&):
1374         Likewise.
1375         * include/bits/unique_ptr.h (unique_ptr(auto_ptr<_Up>&&): Likewise.
1376         * include/backward/auto_ptr.h (unique_ptr(auto_ptr<_Up>&&): Define.
1377         (shared_ptr(auto_ptr<_Up>&&, __shared_ptr(auto_ptr<_Up>&&): Likewise.
1378         * include/std/future: Reduce header dependencies.
1379         * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line
1380         numbers.
1381         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
1382         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
1384 2012-07-30  François Dumont  <fdumont@gcc.gnu.org>
1386         * include/bits/c++config (_GLIBCXX_END_NAMESPACE_CONTAINER): Fix
1387         order of closures.
1388         (_GLIBCXX_END_NAMESPACE_ALGO): Likewise.
1390 2012-07-29  François Dumont  <fdumont@gcc.gnu.org>
1392         PR libstdc++/54075
1393         * include/bits/hashtable_policy.h
1394         (_Prime_rehash_policy::_M_next_bkt): Add a growth factor set to 2
1395         to boost growth in the number of buckets.
1396         * testsuite/performance/23_containers/insert/unordered_set.cc: New.
1398 2012-07-25  François Dumont  <fdumont@gcc.gnu.org>
1400         PR libstdc++/54075
1401         * include/bits/hashtable.h
1402         (_Hashtable<>::_Hashtable(_InputIterator, _InputIterator,
1403         size_type, ...): Remove std::max usage to guarantee that hashtable
1404         state is consistent with hash policy state.
1405         (_Hashtable<>::rehash): Likewise. Set _M_prev_resize to 0 to avoid
1406         the hashtable shrinking on next insertion.
1407         * testsuite/23_containers/unordered_set/modifiers/reserve.cc: New.
1408         * testsuite/23_containers/unordered_multiset/modifiers/reserve.cc: New.
1409         * testsuite/23_containers/unordered_map/modifiers/reserve.cc: New.
1410         * testsuite/23_containers/unordered_multimap/modifiers/reserve.cc: New.
1412 2012-07-20  Chip Salzenberg  <chip@pobox.com>
1413             Jonathan Wakely  <jwakely.gcc@gmail.com>
1415         PR libstdc++/54025
1416         * include/std/chrono (duration<>::duration): Fix per C++11.
1417         * testsuite/20_util/duration/cons/54025.cc: New.
1418         * testsuite/20_util/duration/cons/constexpr.cc: Adjust.
1420 2012-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
1422         * testsuite/30_threads/thread/adl.cc: Add missing dg-requires.
1424 2012-07-19  Tristan Gingold  <gingold@adacore.com>
1425             Richard Henderson  <rth@redhat.com>
1427         * libsupc++/eh_personality.cc (__gxx_personality_seh0): New function.
1428         Adjust for SEH.
1429         * config/abi/pre/gnu.ver: Add __gxx_personality_seh0.
1431 2012-07-18  Paolo Carlini  <paolo.carlini@oracle.com>
1433         PR c++/51213
1434         * testsuite/20_util/pair/noncopyable.cc: New.
1436 2012-07-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
1438         PR libstdc++/53270
1439         * include/ext/concurrence.h (__mutex, __recursive_mutex, __cond): Use
1440         NSDMI in C++98 mode too.
1441         * include/ext/rope: Add system_header pragma.
1442         (_Refcount_Base, _Rope_RopeRep): Use NSDMI.
1443         (_Rope_RopeRep::~_Rope_RopeRep): Destroy mutex.
1445 2012-07-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
1447         PR libstdc++/53978
1448         * include/bits/alloc_traits.h (allocator_traits): Define static
1449         constants.
1450         * include/bits/ptr_traits.h (pointer_traits): Likewise.
1451         * include/ext/alloc_traits.h (__allocator_always_compares_equal):
1452         Likewise.
1454 2012-07-13  Paolo Carlini  <paolo.carlini@oracle.com>
1456         PR libstdc++/53657
1457         * include/bits/stl_pair.h (pair<>::pair(pair&&)): Declare defaulted,
1458         per C++11.
1459         * include/bits/stl_map.h (map<>::insert(_Pair&&), map<>::insert
1460         (const_iterator, _Pair&&)): Constrain with std::is_constructible,
1461         per LWG2005.
1462         * include/bits/stl_multimap.h (multimap<>::insert(_Pair&&),
1463         multimap<>::insert(const_iterator, _Pair&&)): Likewise.
1464         * include/bits/hashtable_policy.h (_Insert<>::insert(_Pair&&),
1465         _Insert<>::insert(const_iterator, _Pair&&)): Likewise.
1466         * include/debug/unordered_map: Adjust.
1467         * include/debug/map.h: Likewise.
1468         * include/debug/multimap.h: Likewise.
1469         * include/profile/unordered_map: Likewise.
1470         * include/profile/map.h: Likewise.
1471         * include/profile/multimap.h: Likewise.
1473 2012-07-06  Paolo Carlini  <paolo.carlini@oracle.com>
1475         PR libstdc++/53872
1476         * include/std/thread (thread::_M_make_routine): Qualify make_shared
1477         to prevent ADL.
1478         * testsuite/30_threads/thread/adl.cc: New.
1480 2012-07-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
1482         * include/std/condition_variable: Update copyright years.
1484 2012-07-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
1486         PR libstdc++/53830
1487         * include/std/condition_variable (condition_variable_any::wait):
1488         Move _Unlock type to class scope.
1489         (condition_variable_any::wait_until): Reuse it.
1490         * testsuite/30_threads/condition_variable_any/53830.cc: New.
1492 2012-07-04  Matthias Klose  <doko@ubuntu.com>
1494         * testsuite/28_regex/headers/04_header: Remove empty directory.
1495         * testsuite/28_regex/algorithms/02_match: Likewise.
1497 2012-07-03  Paolo Carlini  <paolo.carlini@oracle.com>
1499         PR libstdc++/53840
1500         * include/std/ratio (ratio_multiply, ratio_divide, ratio_add,
1501         ratio_subtract): Use template aliases.
1502         * include/std/chrono (duration<>::duration(const duration<>&),
1503         duration_cast): Adjust.
1504         * testsuite/20_util/ratio/operations/53840.cc: New.
1505         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
1506         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
1507         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
1508         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
1510 2012-07-02  Paolo Carlini  <paolo.carlini@oracle.com>
1512         Revert:
1513         2011-10-04  Paolo Carlini  <paolo.carlini@oracle.com>
1515         PR libstdc++/49561
1516         * include/bits/stl_list.h (_List_base<>::_List_impl::_M_size):
1517         Add in C++0x mode.
1518         (_List_base<>::_List_impl, _List_base<>::_M_get_node,
1519         _List_base<>::_M_put_node, _List_base<>::_List_base(_List_base&&),
1520         list<>::size, list<>::swap, list<>::splice): Use it.
1521         (operator==(const list<>&, const list<>&)): Rewrite in C++0x mode.
1522         * include/bits/list.tcc (list<>::erase): Likewise.
1523         (list<>::merge): Adjust in C++0x mode.
1524         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1525         Adjust dg-error line number.
1526         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1527         Likewise.
1528         * testsuite/23_containers/list/requirements/dr438/
1529         constructor_1_neg.cc: Likewise.
1530         * testsuite/23_containers/list/requirements/dr438/
1531         constructor_2_neg.cc: Likewise.
1533 2012-06-27  Benjamin Kosnik  <bkoz@redhat.com>
1535         * include/bits/c++config: Remove __regex nested namespace.
1536         * include/bits/regex_compiler.h: Change __regex to
1537         __detail. Adjust doxygen markup, add regex-details group.
1538         * include/bits/regex_constants.h: Same.
1539         * include/bits/regex_cursor.h: Same.
1540         * include/bits/regex_error.h: Same.
1541         * include/bits/regex_grep_matcher.h: Same.
1542         * include/bits/regex_grep_matcher.tcc: Same.
1543         * include/bits/regex_nfa.h: Same.
1544         * include/bits/regex_nfa.tcc: Same.
1545         * include/bits/regex.h: Same. Remove static from global constants.
1547         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
1549         * include/bits/locale_classes.tcc: Add use_facet, has_facet to
1550         locales group.
1552 2012-06-25  Edward Smith-Rowland  <3dw4rd@verizon.net>
1554         * include/tr2/bool_set (count, size, num_blocks, empty, max_size):
1555         Add noexcept.
1557 2012-06-25  Edward Smith-Rowland  <3dw4rd@verizon.net>
1559         * include/tr2/dynamic_bitset (count, size, num_blocks, empty, max_size):
1560         Add noexcept.
1562 2012-06-25  Benjamin Kosnik  <bkoz@redhat.com>
1564         * doc/doxygen/user.cfg.in: Change COMPACT_LATEX to NO.
1566 2012-06-24  Benjamin Kosnik  <bkoz@redhat.com>
1568         * testsuite/28_regex/algorithms/02_match: To...
1569         * testsuite/28_regex/algorithms/match: ...this.
1570         * testsuite/28_regex/headers/04_header/regex/std_c++0x_neg.cc: Remove
1571         duplicate.
1573 2012-06-18  Jörg Sonnenberger <joerg@britannica.bec.de>
1574             Jonathan Wakely  <jwakely.gcc@gmail.com>
1576         PR libstdc++/53678
1577         * config/os/bsd/netbsd/ctype_base.h: Check for _CTYPE_U.
1578         * testsuite/22_locale/ctype_base/53678.cc: New.
1580 2012-06-15  Jonathan Wakely  <jwakely.gcc@gmail.com>
1582         PR libstdc++/53578
1583         * include/ext/concurrence.h (__recursive_mutex::_S_destroy): Fix
1584         narrowing conversion.
1585         * include/std/mutex (__recursive_mutex_base::_S_destroy): Likewise.
1587 2012-06-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
1589         PR libstdc++/53270
1590         * include/ext/concurrence.h (__mutex, __recursive_mutex, __cond): Use
1591         NSDMI in C++11 mode.
1592         * include/ext/rope (_Refcount_Base): Likewise. Destroy mutex in
1593         destructor when initialized by function.
1595 2012-06-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
1597         PR libstdc++/53648
1598         * include/std/tuple (__empty_not_final): Do not use EBO for tuples.
1599         * testsuite/20_util/tuple/53648.cc: New.
1600         * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line
1601         number.
1603 2012-06-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
1605         * doc/xml/manual/status_cxx2011.xml: Correct C++11 status table.
1607 2012-06-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
1609         * doc/xml/manual/status_cxx2011.xml: Correct C++11 status table.
1611 2012-05-31  Benjamin Kosnik  <bkoz@redhat.com>
1613         PR libstdc++/53543
1614         * include/bits/hashtable_policy.h (_Insert::__is_convertible):
1615         Rename to __is_conv to avoid clash with clang built-in.
1617 2012-05-29  François Dumont  <fdumont@gcc.gnu.org>
1619         * include/bits/stl_tempbuf.h (__uninitialized_construct_buf)
1620         (__uninitialized_construct_buf_dispatch<>::__ucr): Fix to work
1621         with iterator returning rvalue.
1622         * testsuite/25_algorithms/stable_sort/3.cc: New.
1624 2012-05-28  Paolo Carlini  <paolo.carlini@oracle.com>
1626         PR c++/53503
1627         * testsuite/26_numerics/headers/cmath/53503.cc: New.
1629 2012-05-22  Dodji Seketeli  <dodji@redhat.com>
1631         PR c++/53322
1632         * include/bits/stl_algobase.h (lower_bound)
1633         (lexicographical_compare): Do not declare unused local typedefs
1634         here when Concepts are turned off.
1636 2012-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
1638         * testsuite/22_locale/num_put/put/char/9780-2.cc: Avoid -Wall warnings.
1639         * testsuite/29_atomics/atomic/cons/49445.cc: Likewise.
1640         * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
1641         * Likewise.
1642         * testsuite/23_containers/unordered_map/observers.cc: Likewise.
1643         * testsuite/23_containers/unordered_map/erase/1.cc: Likewise.
1644         * testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise.
1645         * testsuite/23_containers/unordered_multimap/erase/2.cc: Likewise.
1646         * testsuite/23_containers/unordered_multimap/insert/53115.cc: Likewise.
1647         * testsuite/23_containers/unordered_multimap/observers.cc: Likewise.
1648         * testsuite/23_containers/vector/debug/alloc_prop.cc: Likewise.
1649         * testsuite/23_containers/unordered_set/observers.cc: Likewise.
1650         * testsuite/23_containers/unordered_set/erase/1.cc: Likewise.
1651         * testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
1652         * testsuite/23_containers/unordered_multiset/erase/2.cc: Likewise.
1653         * testsuite/23_containers/unordered_multiset/insert/53115.cc: Likewise.
1654         * testsuite/23_containers/unordered_multiset/insert/multiset_range.cc:
1655         * Likewise.
1656         * testsuite/23_containers/unordered_multiset/observers.cc: Likewise.
1658 2012-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
1660         PR c++/53361
1661         * testsuite/23_containers/array/cons/53361.cc: New.
1663 2012-05-17  Paolo Carlini  <paolo.carlini@oracle.com>
1665         PR c++/44516
1666         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust
1667         dg-error line number.
1669 2012-05-16  H.J. Lu  <hongjiu.lu@intel.com>
1671         * configure: Regenerated.
1673 2012-05-15  Paolo Carlini  <paolo.carlini@oracle.com>
1675         PR libstdc++/53339
1676         * include/bits/hashtable_policy.h (__detail::_Identity,
1677         __detail::_Select1st): Add.
1678         (_Map_base, _Hashtable_base): Use the latter, adjust parameters.
1679         * include/bits/hashtable.h (_Hashtable::__key_extract): Adjust.
1680         * include/bits/unordered_set.h (__uset_hashtable, __umset_hashtable):
1681         Likewise.
1682         * include/bits/unordered_map.h (__umap_hashtable, __ummap_hashtable):
1683         Likewise.
1684         * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd)
1685         Unconditionally derive from unary_function.
1686         * include/ext/functional (identity, select1st, select2nd): Remove
1687         #ifdef __GXX_EXPERIMENTAL_CXX0X__ bits.
1688         * testsuite/23_containers/unordered_map/requirements/53339.cc: New.
1689         * testsuite/23_containers/unordered_multimap/requirements/
1690         53339.cc: Likewise.
1692 2012-05-11  François Dumont  <fdumont@gcc.gnu.org>
1694         PR libstdc++/53263
1695         * include/debug/safe_iterator.h (__gnu_debug::__base): Move...
1696         * include/debug/functions.h: ... Here.
1697         (__check_sorted_aux): Add overload for random access safe
1698         iterators.
1699         (__check_partition_lower_aux): New.
1700         (__check_partition_lower): Use latter.
1701         (__check_partition_upper_aux): New.
1702         (__check_partition_upper): Use latter.
1703         * include/debug/macros.h (__glibcxx_check_heap)
1704         (__glibcxx_check_heap_pred): Use __gnu_debug::__base on iterator range.
1706 2012-05-10  DJ Delorie  <dj@redhat.com>
1708         * include/bits/random.tcc (seed_seq::generate): Cast max()
1709         operands to size_t to ensure a template match.
1710         * include/std/bitset (_M_copy_from_ptr): Cast min() operands to
1711         size_t to ensure a template match.
1713 2012-05-03  Benjamin Kosnik  <bkoz@redhat.com>
1715         * scripts/testsuite_flags.in (cxxflags): Remove
1716         -ftrack-macro-expansion=0.
1718 2012-05-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
1720         * doc/xml/faq.xml: Update outdated allocator documentation.
1721         * doc/xml/manual/allocator.xml: Likewise.
1722         * doc/xml/manual/debug.xml: Likewise.
1723         * doc/xml/manual/evolution.xml: Likewise.
1724         * doc/xml/manual/using.xml: Likewise.
1726 2012-05-02  Benjamin Kosnik  <bkoz@redhat.com>
1728         PR libstdc++/44015
1729         * include/bits/basic_ios.h: Add tparam markup for
1730         * doxygen.  include/bits/basic_string.h: Same.
1731         * include/bits/forward_list.h: Same.
1732         * include/bits/stl_bvector.h: Same.
1733         * include/bits/stl_deque.h: Same.
1734         * include/bits/stl_list.h: Same.  include/bits/stl_map.h:
1735         * Same.  include/bits/stl_multimap.h: Same.
1736         * include/bits/stl_multiset.h: Same.
1737         * include/bits/stl_pair.h: Same.
1738         * include/bits/stl_queue.h: Same.
1739         * include/bits/stl_set.h: Same.
1740         * include/bits/stl_stack.h: Same.
1741         * include/bits/stl_vector.h: Same.
1742         * include/bits/unordered_map.h: Same.
1743         * include/bits/unordered_set.h: Same.  include/std/array:
1744         * Same.  include/std/atomic: Same.  include/std/fstream:
1745         * Same.  include/std/istream: Same.  include/std/ostream:
1746         * Same.  include/std/sstream: Same.
1747         * include/std/streambuf: Same.
1748         * testsuite/23_containers/deque/requirements/dr438/*:
1749         Adjust line numbers.
1750         * testsuite/23_containers/list/requirements/dr438/*: Same.
1751         * testsuite/23_containers/vector/requirements/dr438/*: Same.
1753 2012-05-02  DJ Delorie  <dj@redhat.com>
1755         * crossconfig.m4: Since we know that all TPF builds are cross-
1756         builds and cannot run configuration-time link tests, do not
1757         allow it; just go with known supported linker options.
1758         * configure: Regenerate (called as GLIBCXX_CROSSCONFIG).
1760 2012-05-02  Benjamin Kosnik  <bkoz@redhat.com>
1762         * include/bits/hashtable_policy.h: Correct namepace nesting for
1763         _Hashtable forward declaration.
1765 2012-05-01  François Dumont  <fdumont@gcc.gnu.org>
1767         PR libstdc++/53115
1768         * include/bits/hashtable.h
1769         (_Hashtable<>::_M_rehash_aux(size_type, false_type)): Fix buckets
1770         after insertion of several equivalent elements.
1771         * testsuite/23_containers/unordered_multiset/insert/53115.cc: New.
1772         * testsuite/23_containers/unordered_multimap/insert/53115.cc: New.
1774 2012-04-29  Marc Glisse  <marc.glisse@inria.fr>
1775             Paolo Carlini  <paolo.carlini@oracle.com>
1777         PR libstdc++/51795
1778         * include/bits/stl_algobase.h (__lg<>(_Size)): Remove.
1779         (__lg(int), __lg(unsigned), __lg(long), __lg(unsigned long),
1780         __lg(long long), __lg(unsigned long long)): Define constexpr.
1781         * include/bits/random.h (_Mod<>): Overcome Schrage's algorithm
1782         limitations.
1783         (__mod): Adjust.
1784         (linear_congruential): Remove FIXME static_assert.
1785         * include/bits/random.tcc (_Mod<>): Adjust.
1786         * testsuite/26_numerics/random/linear_congruential_engine/operators/
1787         51795.cc: New.
1789 2012-04-29  Jonathan Wakely  <jwakely.gcc@gmail.com>
1791         * include/std/functional (function::function(F)): LWG 2132: Disable
1792         constructor if argument isn't callable.
1793         * testsuite/20_util/function/cons/callable.cc: New.
1795 2012-04-29  Marc Glisse  <marc.glisse@inria.fr>
1797         PR libstdc++/22200
1798         * include/std/limits (numeric_limits<>::is_modulo): False for
1799         signed types.
1801 2012-04-25  Benjamin Kosnik  <bkoz@redhat.com>
1803         * include/bits/hashtable.h: Adjust doxygen markup for base
1804         classes.
1805         * include/bits/hashtable_policy.h: Same.
1807 2012-04-25  Benjamin Kosnik  <bkoz@redhat.com>
1809         PR libstdc++/52689
1810         * testsuite/17_intro/static.cc: Fix.
1811         * testsuite/lib/dg-options.exp (dg-require-static-libstdcxx): New.
1812         * testsuite/lib/libstdc++.exp (check_v3_target_static_libstdcxx): New.
1814 2012-04-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
1816         * include/std/scoped_allocator (scoped_allocator::__outermost): Do
1817         not pass non-POD to varargs function.
1818         * testsuite/20_util/scoped_allocator/1.cc: Fix test.
1820 2012-04-24  Benjamin Kosnik  <bkoz@redhat.com>
1822         PR libstdc++/52689
1823         * testsuite/17_intro/static.cc: New.
1825 2012-04-23  Daniel Krugler  <daniel.kruegler@gmail.com>
1827         * include/std/type_traits (is_nothrow_destructible): Implement.
1828         (is_destructible): Implement LWG 2049.
1829         * testsuite/util/testsuite_tr1.h: Add tests.
1830         * testsuite/20_util/is_nothrow_destructible/value.cc: New.
1831         * testsuite/20_util/is_nothrow_destructible/requirements/typedefs.cc:
1832         * testsuite/20_util/is_nothrow_destructible/requirements/
1833         explicit_instantiation.cc: Likewise.
1834         * testsuite/20_util/is_destructible/value.cc: Adjust and extend.
1835         * testsuite/20_util/is_default_constructible/value.cc: Tweak.
1836         * testsuite/20_util/is_constructible/value-2.cc: Likewise.
1837         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
1838         dg-error line numbers.
1839         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1840         Likewise.
1841         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1843 2012-04-23  Paolo Carlini  <paolo.carlini@oracle.com>
1845         PR libstdc++/53080
1846         * include/std/array (tuple_element, get): static_assert I < N.
1847         * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
1848         New.
1849         * testsuite/23_containers/array/tuple_interface/get_neg.cc: Likewise.
1850         * testsuite/23_containers/array/tuple_interface/tuple_element.cc: Fix.
1852 2012-04-23  Chris Jefferson  <chris@bubblescope.net>
1854         PR testsuite/53046
1855         * testsuite/25_algorithms/stable_partition/mem_check.cc: Fix size
1856         of array A.
1857         * testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise.
1859 2012-04-22  Paolo Carlini  <paolo.carlini@oracle.com>
1861         PR libstdc++/53067
1862         * include/bits/hashtable_policy.h: Change inheritances to public.
1863         * testsuite/23_containers/unordered_map/requirements/53067.cc: New.
1864         * testsuite/23_containers/unordered_set/requirements/53067.cc: Likewise.
1866 2012-04-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
1868         * include/ext/alloc_traits.h (__alloc_traits::difference_type):
1869         Define.
1871 2012-04-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
1873         PR libstdc++/53027
1874         * include/bits/ptr_traits.h (pointer_traits::rebind): Make public.
1875         * testsuite/20_util/pointer_traits/requirements/typedefs.cc: Check
1876         rebind works.
1878 2012-04-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
1880         * include/debug/forward_list (forward_list::splice_after): Check
1881         allocators are equal.
1882         * src/c++11/debug.cc: Fix spelling.
1883         * testsuite/23_containers/forward_list/debug/splice_after5_neg.cc:
1884         New.
1885         * testsuite/23_containers/forward_list/debug/splice_after6_neg.cc:
1886         Likewise.
1887         * testsuite/23_containers/forward_list/debug/splice_after7_neg.cc:
1888         Likewise.
1890 2012-04-20  Paolo Carlini  <paolo.carlini@oracle.com>
1892         PR libstdc++/53052
1893         * include/std/type_traits (is_explicitly_convertible): Remove.
1894         * testsuite/20_util/is_explicitly_convertible: Likewise.
1895         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1896         Adjust dg-error line numbers.
1897         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1898         Likewise.
1899         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1901 2012-04-17  Benjamin Kosnik  <bkoz@redhat.com>
1903         * testsuite/20_util/specialized_algorithms/uninitialized_copy/
1904         808590.cc: New.
1906 2012-04-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1908         * testsuite/util/testsuite_abi.cc (compare_symbols): Change
1909         summary header to avoid confusion with DejaGnu header.
1911 2012-04-15  Paolo Carlini  <paolo.carlini@oracle.com>
1913         PR libstdc++/52702
1914         * include/std/type_traits (is_trivially_destructible): Add.
1915         (has_trivial_destructor): Remove.
1916         * testsuite/util/testsuite_common_types.h: Adjust.
1917         * testsuite/20_util/tuple/requirements/dr801.cc: Likewise.
1918         * testsuite/20_util/pair/requirements/dr801.cc: Likewise.
1919         * testsuite/20_util/is_trivially_destructible/value.cc: New.
1920         * testsuite/20_util/is_trivially_destructible/requirements/
1921         typedefs.cc: Likewise.
1922         * testsuite/20_util/is_trivially_destructible/requirements/
1923         explicit_instantiation.cc: Likewise.
1924         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1925         Adjust dg-error line numbers.
1926         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1927         Likewise.
1928         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1930 2012-04-14  Paolo Carlini  <paolo.carlini@oracle.com>
1932         PR libstdc++/52699
1933         * include/bits/random.tcc (independent_bits_engine<>::operator()())
1934         Avoid various overflows; use common_type on result_type and
1935         _RandomNumberEngine::result_type; avoid floating point computations;
1936         other smaller tweaks.
1938         * include/bits/random.tcc (uniform_int_distribution<>::operator())
1939         Use common_type; assume _UniformRandomNumberGenerator::result_type
1940         unsigned; tidy.
1942         * include/bits/stl_algobase.h (__lg(unsigned), __lg(unsigned long),
1943         __lg(unsigned long long)): Add.
1945 2012-04-14  Alan Modra  <amodra@gmail.com>
1947         PR libstdc++/52839
1948         * acinclude.m4 (_GLIBCXX_ATOMIC_BUILTINS): Do not depend on
1949         glibcxx_cv_atomic_long_long.
1950         * configure: Regenerate.
1952 2012-04-13  Paolo Carlini  <paolo.carlini@oracle.com>
1954         * testsuite/26_numerics/cmath/51083.cc: Move...
1955         * testsuite/26_numerics/headers/cmath/51083.cc: ... here.
1957 2012-04-13  Laurent Alfonsi  <laurent.alfonsi@st.com>
1959         PR libstdc++/52604
1960         * src/c++98/mt_allocator.cc: (__freelist::~__freelist): Reset pointer.
1962 2012-04-13  Paolo Carlini  <paolo.carlini@oracle.com>
1964         * include/debug/safe_iterator.h (_BeforeBeginHelper<>::
1965         _S_Is_Beginnest): Add.
1966         * include/debug/forward_list (_BeforeBeginHelper<>::
1967         _S_Is_Beginnest): Likewise.
1968         (_Safe_iterator<>::_M_is_beginnest): Add.
1969         * include/debug/safe_iterator.tcc (_Safe_iterator<>::_M_valid_range):
1970         Use the latter.
1971         * testsuite/23_containers/forward_list/debug/splice_after.cc:
1972         Add test.
1974 2012-04-12  Benjamin Kosnik  <bkoz@redhat.com>
1976         * include/bits/unordered_map.h (__unordered_map): Remove.
1977         (__unordered_multimap): Remove.
1978         Add aliases for __umap_traits, __umap_hashtable, __ummap_traits,
1979         __ummap_hashtable.
1980         (unordered_map): Derive from __umap_hashtable.
1981         (unordered_multimap): Derive from __ummap_hashtable.
1982         * include/bits/unordered_set.h (__unordered_set): Remove.
1983         (__unordered_multiset): Remove.
1984         Add aliases for __uset_traits, __uset_hashtable, __umset_traits,
1985         __umset_hashtable.
1986         (unordered_set): Derive from __uset_hashtable.
1987         (unordered_multiset): Derive from __umset_hashtable.
1988         * include/bits/hashtable.h (__cache_default): New, consolidated
1989         cache defaults for _Hashtable. Adjust comments for doxygen.
1990         (_Hashtable): Consolidate bool template parameters into new,
1991         _Traits class. Inherited base classes synthesize _Hashtable in
1992         CRTP via original 10 parameters. Prefer using declarations to
1993         typedefs, add __node_type, __bucket_type, etc. Push many nested
1994         types down hierarchy to _Hashtable_base. Add constructors
1995         necessary for top-level unordered_containers. Consolidate insert
1996         member functions and logic in new base class, __detail::_Insert
1997         and __detail::_Insert_base.
1998         (_Hashtable::operator=(initializer_list)): Add.
1999         * include/bits/hashtable_policy.h: Convert to doxygen markup.
2000         (_Hashtable_traits) New. Consolidate bool template parameters here.
2001         (_Insert, _Insert_base): New, consolidated insert member functions.
2002         (_Map_base, _Equality, _Rehash_base): Adjust template parameters,
2003         use base types.
2004         (_Hashtable_base): Move type declarations useful to other base
2005         classes into this class.
2006         * python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Update.
2007         * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2008         Adjust traits, line numbers.
2010 2012-04-12   Jeffrey Yasskin  <jyasskin@google.com>
2012         PR libstdc++/52822
2013         * include/bits/stl_algo.h (__find_if_not): Expose in C++98 mode.
2014         (__find_if_not_n): Like __find_if_not, but works on and updates a
2015         counted range instead of a bounded range.
2016         (stable_partition): Guarantee !__pred(*__first) in call to
2017         __stable_partition_adaptive() or __inplace_stable_partition().
2018         (__stable_partition_adaptive): Use new precondition to avoid
2019         moving/copying objects onto themselves.  Guarantee new
2020         precondition to recursive calls.
2021         (__inplace_stable_partition): Use new precondition to simplify
2022         base case, remove __last parameter.  Guarantee new precondition to
2023         recursive calls.
2024         * testsuite/25_algorithms/stable_partition/moveable.cc (test02):
2025         Test a sequence that starts with a value matching the predicate.
2026         * testsuite/25_algorithms/stable_partition/pr52822.cc: Test
2027         vectors, which have a destructive self-move-assignment.
2029 2012-04-12  Andreas Schwab  <schwab@linux-m68k.org>
2031         * testsuite/Makefile.am (check_DEJAGNUnormal0): Run
2032         prettyprinters.exp.
2033         * testsuite/Makefile.in: Regenerated.
2035 2012-04-12  Paolo Carlini  <paolo.carlini@oracle.com>
2037         PR libstdc++/52942
2038         * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd):
2039         In C++11 mode do not derive from std::unary_function.
2040         * include/ext/functional (identity, select1st, select2nd): Adjust.
2041         * testsuite/23_containers/unordered_map/requirements/52942.cc: New.
2042         * testsuite/23_containers/unordered_set/requirements/52942.cc: Likewise.
2044 2012-04-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2046         PR libstdc++/52924
2047         * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Add
2048         user-defined destructor.
2049         (_Sp_counted_inplace): Likewise.
2050         * testsuite/20_util/shared_ptr/cons/52924.cc: New.
2051         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
2052         line numbers.
2054 2012-04-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2056         * doc/xml/manual/debug.xml (Debug Versions of Library Binary Files):
2057         Re-arrange text slightly.
2059 2012-04-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2061         * testsuite/performance/30_threads/future/polling.cc: Adjust.
2063 2012-04-11  Paolo Carlini  <paolo.carlini@oracle.com>
2065         * include/bits/forward_list.h (splice_after(const_iterator,
2066         forward_list&), splice_after(const_iterator, forward_list&,
2067         const_iterator), splice_after(const_iterator, forward_list&,
2068         const_iterator, const_iterator), merge(forward_list&),
2069         merge(forward_list&, _Comp)): Add per C++11 as published (and
2070         LWG 1310).
2071         * include/debug/forward_list: Adjust.
2073         * include/bits/forward_list.h (splice_after(const_iterator,
2074         forward_list&&, const_iterator)): Only declare.
2075         (_M_transfer_after): Remove.
2076         (_M_splice_after(const_iterator, forward_list&&)): Change signature.
2077         (splice_after(const_iterator, forward_list&&, const_iterator,
2078         const_iterator)): Use the latter.
2079         * include/bits/forward_list.tcc (splice_after(const_iterator,
2080         forward_list&&, const_iterator)): Define here.
2081         (_M_splice_after): Define, use throughout.
2083         * include/bits/forward_list.h (insert_after(const_iterator,
2084         std::initializer_list<_Tp>)): Forward to insert_after(const_iterator,
2085         _InputIterator, _InputIterator).
2086         * include/bits/forward_list.tcc: Remove definition.
2088         * testsuite/23_containers/forward_list/modifiers/6.cc: New.
2089         * testsuite/23_containers/forward_list/operations/1.cc: Adjust.
2091 2012-04-11  Paolo Carlini  <paolo.carlini@oracle.com>
2093         PR libstdc++/52931
2094         * include/bits/functional_hash.h (struct hash): Remove definition.
2095         * testsuite/20_util/hash/52931.cc: New.
2097 2012-04-11  Manuel López-Ibáñez  <manu@gcc.gnu.org>
2099         PR 24985
2100         * testsuite/lib/prune.exp: Handle caret.
2102 2012-04-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2104         Partially revert:
2105         2012-03-28  Benjamin Kosnik  <bkoz@redhat.com>
2107         PR libstdc++/52689
2108         * src/c++98/compatibility-list.cc: Same.
2110 2012-04-05  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>
2112         PR bootstrap/52840
2113         * src/Makefile.am (build-debug): Do not adjust vpath dir, remove
2114         Makefile.tmp
2115         * src/Makefile.in: Adjust as per above.
2117 2012-04-04  Uros Bizjak  <ubizjak@gmail.com>
2119         Partially revert:
2120         2012-03-28  Benjamin Kosnik  <bkoz@redhat.com>
2122         PR libstdc++/52689
2123         * src/c++98/compatibility-ldbl.cc: Guard with PIC
2125 2012-04-02  Tristan Gingold  <gingold@adacore.com>
2127         * crossconfig.m4 (*-*-*vms*): Add.
2128         * configure: Regenerate.
2130 2012-04-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
2132         PR libstdc++/52591
2133         * include/bits/stl_vector.h (vector::operator=(vector&&)): Dispatch
2134         to _M_move_assign depending on whether allocator is moved.
2135         (vector::_M_move_assign): Add overloaded functions.
2136         * testsuite/23_containers/vector/52591.cc: New.
2137         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2138         Adjust dg-error line number.
2139         * testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc:
2140         Likewise.
2141         * testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc:
2142         Likewise.
2143         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2144         Likewise.
2146 2012-04-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
2148         * include/std/functional (__callable_functor): Overload for
2149         volatile-qualified pointers.
2150         * testsuite/20_util/function/10.cc: New.
2152 2012-03-30  Jeffrey Yasskin  <jyasskin@gcc.gnu.org>
2153             Paolo Carlini  <paolo.carlini@oracle.com>
2155         PR libstdc++/52799
2156         * include/bits/deque.tcc (emplace): Fix thinko, replace push_front
2157         -> emplace_front, and likewise for *_back.
2158         * testsuite/23_containers/deque/modifiers/emplace/52799.cc: New.
2159         * testsuite/23_containers/list/modifiers/emplace/52799.cc: Likewise.
2160         * testsuite/23_containers/vector/modifiers/emplace/52799.cc: Likewise.
2162 2012-03-28  Benjamin Kosnik  <bkoz@redhat.com>
2164         PR libstdc++/52689
2165         * libsupc++/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
2166         * libsupc++/Makefile.in: Regenerated.
2167         * src/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
2168         (libstdc___la_SOURCES): Add in compatiblity files, with content
2169         that varies with -DPIC.
2170         * src/Makefile.in: Regenerated.
2171         * src/c++11/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
2172         * src/c++11/Makefile.in: Regenerated.
2173         * src/c++11/compatibility-atomic-c++0x.cc: Guard with PIC.
2174         * src/c++11/compatibility-c++0x.cc: Same.
2175         * src/c++11/future.cc: Consolidate compatibility bits into..
2176         * src/c++11/mutex.cc: Consolidate compatibility bits into..
2177         * src/c++11/compatibility-thread-cxx0x.cc: ...here. New.
2178         * src/c++98/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
2179         * src/c++98/Makefile.in: Regenerated.
2180         * src/c++98/compatibility-ldbl.cc: Guard with PIC
2181         * src/c++98/compatibility-list-2.cc: Same.
2182         * src/c++98/compatibility-list.cc: Same.
2183         * src/c++98/compatibility.cc: Tweak comments.
2185 2012-03-28  Terry Guo  <terry.guo@arm.com>
2187         * testsuite/Makefile.am (TEST_GCC_EXEC_PREFIX): New.
2188         * testsuite/Makefile.in: Regenerated.
2190 2012-03-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
2192         * include/std/functional (mem_fn): Qualify to prevent ADL.
2193         * testsuite/20_util/function_objects/mem_fn/adl.cc: New.
2195 2012-03-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
2197         * include/std/type_traits (result_of): Fix handling of cv-quals.
2198         * testsuite/20_util/result_of/1.cc: New.
2199         * testsuite/20_util/result_of/2.cc: New.
2200         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
2201         line numbers.
2202         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
2203         Likewise.
2204         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2205         Likewise.
2207 2012-03-23  David S. Miller  <davem@davemloft.net>
2209         * config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Update.
2211 2012-03-23  Benjamin Kosnik  <bkoz@redhat.com>
2213         * scripts/testsuite_flags.in (--cxxflags): Let CXXFLAGS set -g -O2.
2214         * testsuite/lib/libstdc++.exp: Same.
2216 2012-03-23  Paolo Carlini  <paolo.carlini@oracle.com>
2218         * include/bits/forward_list.h: Slightly tweak two comments.
2220 2012-03-22  Benjamin Kosnik  <bkoz@redhat.com>
2222         * doc/Makefile.am: XML output names have only .xml suffix.
2223         * doc/Makefile.in: Regenerate.
2225 2012-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
2227         * include/std/array (array<>::at(size_type) const): Fix version
2228         for undefined __EXCEPTIONS.
2230 2013-03-21  Andreas Tobler  <andreast@fgznet.ch>
2232         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
2233         Skip this test on powerpc64-*-freebsd*.
2235 2012-03-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
2237         * include/bits/stl_list.h (list::_M_size): Use NSDMI.
2238         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2239         Adjust line numbers.
2240         * testsuite/23_containers/list/requirements/dr438/
2241         constructor_1_neg.cc: Likewise.
2242         * testsuite/23_containers/list/requirements/dr438/
2243         constructor_2_neg.cc: Likewise.
2244         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2245         Likewise.
2247 2012-03-19  Paweł Sikora  <pawel.sikora@agmk.net>
2249         PR libstdc++/52540
2250         * include/Makefile.am (c++config.h): Fix sed rule to not break
2251         the _GLIBCXX_EXTERN_TEMPLATE redefinition.
2252         * include/Makefile.in: Regenerate.
2254 2012-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
2256         * testsuite/Makefile.in: Regenerate.
2258 2012-03-19  Benjamin Kosnik  <bkoz@redhat.com>
2260         * include/bits/allocator.h (std::allocator): Base class is
2261         __allocator_base.
2262         (uses_allocator): Add to sub-grouping.
2263         * include/ext/new_allocator.h: Doxygen markup for tparm.
2265         * config/allocator/bitmap_allocator_base.h: Use __allocator_base
2266         template alias in C++11.
2267         * config/allocator/malloc_allocator_base.h: Same.
2268         * config/allocator/mt_allocator_base.h: Same.
2269         * config/allocator/new_allocator_base.h: Same.
2270         * config/allocator/pool_allocator_base.h: Same.
2272 2012-03-19  Benjamin Kosnik  <bkoz@redhat.com>
2274         * include/ext/pb_ds/detail/pat_trie_/
2275         constructors_destructor_fn_imps.hpp: Increment after recursion.
2276         * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Convert
2277         node_type markup from brief.
2279 2012-03-16  François Dumont  <fdumont@gcc.gnu.org>
2281         PR libstdc++/52476
2282         * include/bits/hashtable.h (_Hashtable<>::_M_rehash_aux): Add.
2283         (_Hashtable<>::_M_rehash): Use the latter.
2284         * testsuite/23_containers/unordered_multimap/insert/52476.cc: New.
2285         * testsuite/23_containers/unordered_multiset/insert/52476.cc: New.
2287 2012-03-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2289         * config/os/solaris/solaris2.8: Rename to ...
2290         * config/os/solaris/solaris2.9: ... this.
2291         * config/abi/post/solaris2.8: Rename to ...
2292         * config/abi/post/solaris2.9: ... this.
2293         * configure.host (os_include_dir): Remove solaris2.8.
2294         Reflect renaming.
2295         (abi_baseline_pair): Remove *-*-solaris2.8.
2296         Reflect renaming.
2298         * configure.ac (GLIBCXX_CHECK_MATH_PROTO): Remove
2299         (GLIBCXX_CHECK_STDLIB_PROTO): Remove.
2300         * acinclude.m4 (GLIBCXX_CHECK_MATH_PROTO): Remove
2301         (GLIBCXX_CHECK_STDLIB_PROTO): Remove.
2302         (GLIBCXX_CHECK_GTHREADS): Remove Solaris 8 handling.
2303         * crossconfig.m4 (GLIBCXX_CROSSCONFIG): Remove *-solaris2.8
2304         handling.
2305         * configure: Regenerate.
2306         * config.h.in: Regenerate.
2308         * config/os/solaris/solaris2.9/os_defines.h
2309         (__CORRECT_ISO_CPP_MATH_H_PROTO): Define.
2310         (__CORRECT_ISO_CPP_STDLIB_H_PROTO): Define.
2311         * include/c_global/cmath: Rename __CORRECT_ISO_CPP_MATH_H_PROTO1
2312         to __CORRECT_ISO_CPP_MATH_H_PROTO.
2313         [!__CORRECT_ISO_CPP_MATH_H_PROTO2]: Remove.
2314         * include/tr1/cmath: Rename __CORRECT_ISO_CPP_MATH_H_PROTO1 to
2315         __CORRECT_ISO_CPP_MATH_H_PROTO.
2317         * doc/xml/manual/configure.xml (Configure, --enable-libstdcxx-threads):
2318         Remove Solaris 8 reference.
2320         * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
2321         Don't xfail on *-*-solaris2.8.
2322         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
2323         Likewise.
2324         * testsuite/ext/enc_filebuf/char/13598.cc: Don't xfail on
2325         *-*-solaris2.8.
2327 2012-03-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2329         * configure.host (irix6.5*): Remove.
2330         * config/os/irix: Remove.
2331         * config/io/basic_file_stdio.cc (__basic_file<char>::showmanyc())
2332         [_GLIBCXX_FIONREAD_TAKES_OFF_T]: Remove.
2334         * doc/xml/faq.xml: Remove IRIX reference.
2335         * doc/xml/manual/using.xml (Finding Dynamic or Shared Libraries):
2336         Remove IRIX example.
2338         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
2339         Remove mips-sgi-irix6* handling.
2340         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
2341         * testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
2342         * testsuite/21_strings/basic_string/pthread4.cc: Likewise.
2343         * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
2344         * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
2345         * testsuite/23_containers/list/pthread1.cc: Likewise.
2346         * testsuite/23_containers/list/pthread5.cc: Likewise.
2347         * testsuite/23_containers/map/pthread6.cc: Likewise.
2348         * testsuite/23_containers/vector/debug/multithreaded_swap.cc: Likewise.
2349         * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
2350         * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
2351         * testsuite/30_threads/async/42819.cc: Likewise.
2352         * testsuite/30_threads/async/49668.cc: Likewise.
2353         * testsuite/30_threads/async/any.cc: Likewise.
2354         * testsuite/30_threads/async/async.cc: Likewise.
2355         * testsuite/30_threads/async/launch.cc: Likewise.
2356         * testsuite/30_threads/async/sync.cc: Likewise.
2357         * testsuite/30_threads/call_once/39909.cc: Likewise.
2358         * testsuite/30_threads/call_once/49668.cc: Likewise.
2359         * testsuite/30_threads/call_once/call_once1.cc: Likewise.
2360         * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
2361         * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
2362         * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
2363         * testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
2364         Likewise.
2365         * testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
2366         * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
2367         * testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
2368         * testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
2369         * testsuite/30_threads/future/cons/move.cc: Likewise.
2370         * testsuite/30_threads/future/members/45133.cc: Likewise.
2371         * testsuite/30_threads/future/members/get.cc: Likewise.
2372         * testsuite/30_threads/future/members/get2.cc: Likewise.
2373         * testsuite/30_threads/future/members/share.cc: Likewise.
2374         * testsuite/30_threads/future/members/valid.cc: Likewise.
2375         * testsuite/30_threads/future/members/wait.cc: Likewise.
2376         * testsuite/30_threads/future/members/wait_for.cc: Likewise.
2377         * testsuite/30_threads/future/members/wait_until.cc: Likewise.
2378         * testsuite/30_threads/lock/1.cc: Likewise.
2379         * testsuite/30_threads/lock/2.cc: Likewise.
2380         * testsuite/30_threads/lock/3.cc: Likewise.
2381         * testsuite/30_threads/lock/4.cc: Likewise.
2382         * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
2383         * testsuite/30_threads/mutex/cons/1.cc: Likewise.
2384         * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
2385         * testsuite/30_threads/mutex/lock/1.cc: Likewise.
2386         * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
2387         * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
2388         * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
2389         * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
2390         * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
2391         * testsuite/30_threads/packaged_task/49668.cc: Likewise.
2392         * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
2393         * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
2394         * testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
2395         * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
2396         * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
2397         * testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
2398         * testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
2399         * testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
2400         * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
2401         * testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
2402         * testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
2403         * testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
2404         * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
2405         * testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
2406         * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
2407         * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
2408         * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
2409         * testsuite/30_threads/promise/cons/1.cc: Likewise.
2410         * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
2411         * testsuite/30_threads/promise/cons/move.cc: Likewise.
2412         * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
2413         * testsuite/30_threads/promise/members/get_future.cc: Likewise.
2414         * testsuite/30_threads/promise/members/get_future2.cc: Likewise.
2415         * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
2416         * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
2417         * testsuite/30_threads/promise/members/set_value.cc: Likewise.
2418         * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
2419         * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
2420         * testsuite/30_threads/promise/members/swap.cc: Likewise.
2421         * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
2422         * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
2423         Likewise.
2424         * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
2425         * testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
2426         * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
2427         Likewise.
2428         * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
2429         * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
2430         * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
2431         * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
2432         * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
2433         Likewise.
2434         * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
2435         * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
2436         * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
2437         Likewise.
2438         * testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
2439         Likewise.
2440         * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
2441         * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
2442         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
2443         Likewise.
2444         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
2445         Likewise.
2446         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
2447         Likewise.
2448         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
2449         Likewise.
2450         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
2451         Likewise.
2452         * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
2453         * testsuite/30_threads/shared_future/cons/move.cc: Likewise.
2454         * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
2455         * testsuite/30_threads/shared_future/members/get.cc: Likewise.
2456         * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
2457         * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
2458         * testsuite/30_threads/shared_future/members/wait.cc: Likewise.
2459         * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
2460         * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
2461         * testsuite/30_threads/this_thread/1.cc: Likewise.
2462         * testsuite/30_threads/this_thread/2.cc: Likewise.
2463         * testsuite/30_threads/this_thread/3.cc: Likewise.
2464         * testsuite/30_threads/this_thread/4.cc: Likewise.
2465         * testsuite/30_threads/thread/cons/1.cc: Likewise.
2466         * testsuite/30_threads/thread/cons/2.cc: Likewise.
2467         * testsuite/30_threads/thread/cons/3.cc: Likewise.
2468         * testsuite/30_threads/thread/cons/4.cc: Likewise.
2469         * testsuite/30_threads/thread/cons/49668.cc: Likewise.
2470         * testsuite/30_threads/thread/cons/5.cc: Likewise.
2471         * testsuite/30_threads/thread/cons/6.cc: Likewise.
2472         * testsuite/30_threads/thread/cons/7.cc: Likewise.
2473         * testsuite/30_threads/thread/cons/8.cc: Likewise.
2474         * testsuite/30_threads/thread/cons/9.cc: Likewise.
2475         * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
2476         * testsuite/30_threads/thread/members/1.cc: Likewise.
2477         * testsuite/30_threads/thread/members/2.cc: Likewise.
2478         * testsuite/30_threads/thread/members/3.cc: Likewise.
2479         * testsuite/30_threads/thread/members/4.cc: Likewise.
2480         * testsuite/30_threads/thread/members/5.cc: Likewise.
2481         * testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
2482         * testsuite/30_threads/thread/native_handle/typesizes.cc: Likewise.
2483         * testsuite/30_threads/thread/swap/1.cc: Likewise.
2484         * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
2485         * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
2486         * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
2487         * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
2488         * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Likewise.
2489         * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
2490         * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
2491         * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
2492         * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
2493         * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
2494         * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
2495         * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
2496         * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
2497         * testsuite/30_threads/try_lock/1.cc: Likewise.
2498         * testsuite/30_threads/try_lock/2.cc: Likewise.
2499         * testsuite/30_threads/try_lock/3.cc: Likewise.
2500         * testsuite/30_threads/try_lock/4.cc: Likewise.
2501         * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
2502         * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
2503         * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
2504         * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
2505         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
2506         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
2507         * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
2508         * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
2509         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
2510         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
2511         * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
2512         * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
2513         * testsuite/ext/rope/pthread7-rope.cc: Likewise.
2514         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
2515         default_weaktoshared.cc: Likewise.
2516         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
2517         mutex_weaktoshared.cc: Likewise.
2519         * testsuite/23_containers/vector/capacity/resize/1.cc: Remove
2520         dg-options for mips*-*-irix6*.
2522         * testsuite/27_io/ios_base/storage/1.cc: Likewise.
2523         * testsuite/27_io/ios_base/storage/2.cc: Likewise.
2524         * testsuite/27_io/ios_base/storage/3.cc: Likewise.
2526         * testsuite/lib/libstdc++.exp (v3-build_support): Remove IRIX 6
2527         workaround.
2529 2012-03-14  Paolo Carlini  <paolo.carlini@oracle.com>
2531         * include/bits/forward_list.h: Fix comments.
2533 2012-03-13  Terry Guo  <terry.guo@arm.com>
2535         * testsuite/Makefile.in (TEST_GCC_EXEC_PREFIX): New.
2537 2012-03-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2539         * configure.host: Remove osf* handling.
2540         * config/os/osf: Remove.
2541         * doc/xml/manual/using.xml: Remove OSF reference.
2543         * testsuite/18_support/pthread_guard.cc: Remove alpha*-*-osf* handling.
2544         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Likewise.
2545         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
2546         * testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
2547         * testsuite/21_strings/basic_string/pthread4.cc: Likewise.
2548         * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
2549         * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
2550         * testsuite/23_containers/list/pthread1.cc: Likewise.
2551         * testsuite/23_containers/list/pthread5.cc: Likewise.
2552         * testsuite/23_containers/map/pthread6.cc: Likewise.
2553         * testsuite/23_containers/vector/debug/multithreaded_swap.cc: Likewise.
2554         * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
2555         * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
2556         * testsuite/30_threads/async/42819.cc: Likewise.
2557         * testsuite/30_threads/async/49668.cc: Likewise.
2558         * testsuite/30_threads/async/any.cc: Likewise.
2559         * testsuite/30_threads/async/async.cc: Likewise.
2560         * testsuite/30_threads/async/launch.cc: Likewise.
2561         * testsuite/30_threads/async/sync.cc: Likewise.
2562         * testsuite/30_threads/call_once/39909.cc: Likewise.
2563         * testsuite/30_threads/call_once/49668.cc: Likewise.
2564         * testsuite/30_threads/call_once/call_once1.cc: Likewise.
2565         * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
2566         * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
2567         * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
2568         * testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
2569         Likewise.
2570         * testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
2571         * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
2572         * testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
2573         * testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
2574         * testsuite/30_threads/future/cons/move.cc: Likewise.
2575         * testsuite/30_threads/future/members/45133.cc: Likewise.
2576         * testsuite/30_threads/future/members/get.cc: Likewise.
2577         * testsuite/30_threads/future/members/get2.cc: Likewise.
2578         * testsuite/30_threads/future/members/share.cc: Likewise.
2579         * testsuite/30_threads/future/members/valid.cc: Likewise.
2580         * testsuite/30_threads/future/members/wait.cc: Likewise.
2581         * testsuite/30_threads/future/members/wait_for.cc: Likewise.
2582         * testsuite/30_threads/future/members/wait_until.cc: Likewise.
2583         * testsuite/30_threads/lock/1.cc: Likewise.
2584         * testsuite/30_threads/lock/2.cc: Likewise.
2585         * testsuite/30_threads/lock/3.cc: Likewise.
2586         * testsuite/30_threads/lock/4.cc: Likewise.
2587         * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
2588         * testsuite/30_threads/mutex/cons/1.cc: Likewise.
2589         * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
2590         * testsuite/30_threads/mutex/lock/1.cc: Likewise.
2591         * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
2592         * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
2593         * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
2594         * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
2595         * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
2596         * testsuite/30_threads/packaged_task/49668.cc: Likewise.
2597         * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
2598         * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
2599         * testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
2600         * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
2601         * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
2602         * testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
2603         * testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
2604         * testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
2605         * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
2606         * testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
2607         * testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
2608         * testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
2609         * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
2610         * testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
2611         * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
2612         * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
2613         * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
2614         * testsuite/30_threads/promise/cons/1.cc: Likewise.
2615         * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
2616         * testsuite/30_threads/promise/cons/move.cc: Likewise.
2617         * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
2618         * testsuite/30_threads/promise/members/get_future.cc: Likewise.
2619         * testsuite/30_threads/promise/members/get_future2.cc: Likewise.
2620         * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
2621         * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
2622         * testsuite/30_threads/promise/members/set_value.cc: Likewise.
2623         * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
2624         * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
2625         * testsuite/30_threads/promise/members/swap.cc: Likewise.
2626         * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
2627         * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
2628         Likewise.
2629         * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
2630         * testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
2631         * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
2632         Likewise.
2633         * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
2634         * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
2635         * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
2636         * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
2637         * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
2638         Likewise.
2639         * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
2640         * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
2641         * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
2642         Likewise.
2643         * testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
2644         Likewise.
2645         * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
2646         * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
2647         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
2648         Likewise.
2649         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
2650         Likewise.
2651         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
2652         Likewise.
2653         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
2654         Likewise.
2655         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
2656         Likewise.
2657         * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
2658         * testsuite/30_threads/shared_future/cons/move.cc: Likewise.
2659         * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
2660         * testsuite/30_threads/shared_future/members/get.cc: Likewise.
2661         * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
2662         * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
2663         * testsuite/30_threads/shared_future/members/wait.cc: Likewise.
2664         * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
2665         * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
2666         * testsuite/30_threads/this_thread/1.cc: Likewise.
2667         * testsuite/30_threads/this_thread/2.cc: Likewise.
2668         * testsuite/30_threads/this_thread/3.cc: Likewise.
2669         * testsuite/30_threads/this_thread/4.cc: Likewise.
2670         * testsuite/30_threads/thread/cons/1.cc: Likewise.
2671         * testsuite/30_threads/thread/cons/2.cc: Likewise.
2672         * testsuite/30_threads/thread/cons/3.cc: Likewise.
2673         * testsuite/30_threads/thread/cons/4.cc: Likewise.
2674         * testsuite/30_threads/thread/cons/49668.cc: Likewise.
2675         * testsuite/30_threads/thread/cons/5.cc: Likewise.
2676         * testsuite/30_threads/thread/cons/6.cc: Likewise.
2677         * testsuite/30_threads/thread/cons/7.cc: Likewise.
2678         * testsuite/30_threads/thread/cons/8.cc: Likewise.
2679         * testsuite/30_threads/thread/cons/9.cc: Likewise.
2680         * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
2681         * testsuite/30_threads/thread/members/1.cc: Likewise.
2682         * testsuite/30_threads/thread/members/2.cc: Likewise.
2683         * testsuite/30_threads/thread/members/3.cc: Likewise.
2684         * testsuite/30_threads/thread/members/4.cc: Likewise.
2685         * testsuite/30_threads/thread/members/5.cc: Likewise.
2686         * testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
2687         * testsuite/30_threads/thread/swap/1.cc: Likewise.
2688         * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
2689         * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
2690         * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
2691         * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
2692         * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Likewise.
2693         * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
2694         * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
2695         * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
2696         * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
2697         * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
2698         * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
2699         * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
2700         * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
2701         * testsuite/30_threads/try_lock/1.cc: Likewise.
2702         * testsuite/30_threads/try_lock/2.cc: Likewise.
2703         * testsuite/30_threads/try_lock/3.cc: Likewise.
2704         * testsuite/30_threads/try_lock/4.cc: Likewise.
2705         * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
2706         * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
2707         * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
2708         * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
2709         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
2710         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
2711         * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
2712         * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
2713         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
2714         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
2715         * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
2716         * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
2717         * testsuite/ext/rope/pthread7-rope.cc: Likewise.
2718         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
2719         default_weaktoshared.cc: Likewise.
2720         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
2721         mutex_weaktoshared.cc: Likewise.
2723 2012-03-12  Paolo Carlini  <paolo.carlini@oracle.com>
2725         PR libstdc++/52562
2726         * libsupc++/typeinfo (type_info::name, before, operator==,
2727         operator!=): Mark noexcept in C++11 mode.
2728         * libsupc++/tinfo.cc (type_info::operator==): Adjust.
2729         * libsupc++/tinfo2.cc (type_info::before): Likewise.
2730         * testsuite/18_support/type_info/52562.cc: New.
2732 2012-03-10  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2734         * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
2735         symbols added in last change.
2737         PR libstdc++/52456
2738         * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
2740 2012-03-09  Andreas Schwab  <schwab@linux-m68k.org>
2742         * config/locale/gnu/monetary_members.cc
2743         (moneypunct<char,true>::_M_initialize_moneypunct): Throw caught
2744         exception again.
2745         (moneypunct<char,false>::_M_initialize_moneypunct): Likewise.
2746         * testsuite/22_locale/locale/cons/12352.cc: Also test en_US
2747         locale.
2749 2012-03-09  Paolo Carlini  <paolo.carlini@oracle.com>
2751         * include/debug/formatter.h (enum _Debug_msg_id): Add
2752         __msg_self_move_assign.
2753         * include/debug/macros.h (__glibcxx_check_self_move_assign): Add.
2754         * src/c++11/debug.cc (_S_debug_messages): Update.
2755         * include/debug/safe_iterator.h (_Safe_iterator<>::operator=
2756         (_Safe_iterator&&)): Add check for self move assignment.
2757         * include/debug/set.h: Likewise.
2758         * include/debug/unordered_map: Likewise.
2759         * include/debug/multiset.h: Likewise.
2760         * include/debug/forward_list: Likewise.
2761         * include/debug/unordered_set: Likewise.
2762         * include/debug/vector: Likewise.
2763         * include/debug/map.h: Likewise.
2764         * include/debug/deque: Likewise.
2765         * include/debug/string: Likewise.
2766         * include/debug/list: Likewise.
2767         * include/debug/multimap.h: Likewise.
2768         * testsuite/21_strings/debug/self_move_assign_neg.cc: New.
2769         * testsuite/21_strings/debug/iterator_self_move_assign_neg.cc: Likewise.
2770         * testsuite/23_containers/unordered_map/debug/self_move_assign_neg.cc:
2771         Likewise.
2772         * testsuite/23_containers/unordered_map/debug/
2773         iterator_self_move_assign_neg.cc: Likewise.
2774         * testsuite/23_containers/multimap/debug/self_move_assign_neg.cc:
2775         Likewise.
2776         * testsuite/23_containers/multimap/debug/
2777         iterator_self_move_assign_neg.cc: Likewise.
2778         * testsuite/23_containers/set/debug/self_move_assign_neg.cc: Likewise.
2779         * testsuite/23_containers/set/debug/iterator_self_move_assign_neg.cc:
2780         Likewise.
2781         * testsuite/23_containers/unordered_multimap/debug/
2782         self_move_assign_neg.cc: Likewise.
2783         * testsuite/23_containers/unordered_multimap/debug/
2784         iterator_self_move_assign_neg.cc: Likewise.
2785         * testsuite/23_containers/forward_list/debug/self_move_assign_neg.cc:
2786         Likewise.
2787         * testsuite/23_containers/forward_list/debug/
2788         iterator_self_move_assign_neg.cc: Likewise.
2789         * testsuite/23_containers/unordered_set/debug/self_move_assign_neg.cc:
2790         Likewise.
2791         * testsuite/23_containers/unordered_set/debug/
2792         iterator_self_move_assign_neg.cc: Likewise.
2793         * testsuite/23_containers/vector/debug/self_move_assign_neg.cc:
2794         Likewise.
2795         * testsuite/23_containers/vector/debug/
2796         iterator_self_move_assign_neg.cc: Likewise.
2797         * testsuite/23_containers/deque/debug/self_move_assign_neg.cc: Likewise.
2798         * testsuite/23_containers/deque/debug/iterator_self_move_assign_neg.cc:
2799         Likewise.
2800         * testsuite/23_containers/multiset/debug/self_move_assign_neg.cc:
2801         Likewise.
2802         * testsuite/23_containers/multiset/debug/
2803         iterator_self_move_assign_neg.cc: Likewise.
2804         * testsuite/23_containers/list/debug/self_move_assign_neg.cc:
2805         Likewise.
2806         * testsuite/23_containers/list/debug/iterator_self_move_assign_neg.cc:
2807         Likewise.
2808         * testsuite/23_containers/unordered_multiset/debug/
2809         self_move_assign_neg.cc: Likewise.
2810         * testsuite/23_containers/unordered_multiset/debug/
2811         iterator_self_move_assign_neg.cc: Likewise.
2812         * testsuite/23_containers/map/debug/self_move_assign_neg.cc:
2813         Likewise.
2814         * testsuite/23_containers/map/debug/iterator_self_move_assign_neg.cc:
2815         Likewise.
2817 2012-03-08  Benjamin Kosnik  <bkoz@redhat.com>
2819         * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.0.
2820         * include/bits/locale_facets.h: Adjust markup to avoid warnings.
2821         * include/ext/pb_ds/assoc_container.hpp: Same.
2822         * include/ext/pb_ds/priority_queue.hpp: Same.
2823         * include/std/fstream: Same.
2824         * include/std/ratio: Same.
2825         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust line
2826         numbers.
2827         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Same.
2829 2012-03-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
2831         PR libstdc++/52433
2832         * include/debug/safe_iterator.h (_Safe_iterator): Add debug checks
2833         to move constructor and move assignment operator.
2835 2012-03-05  Paolo Carlini  <paolo.carlini@oracle.com>
2837         * include/bits/stl_algobase.h (iter_swap): In C++11 mode simply
2838         call swap.
2839         * include/bits/stl_bvector.h (swap(_Bit_reference,
2840         _Bit_reference), swap(_Bit_reference, bool&),
2841         swap(bool&, _Bit_reference)): Add.
2842         * testsuite/23_containers/vector/bool/swap.cc: New.
2844 2012-03-04  Paolo Carlini  <paolo.carlini@oracle.com>
2845             Jonathan Wakely  <jwakely.gcc@gmail.com>
2847         PR libstdc++/43813
2848         * include/bits/stl_iterator_base_types.h (_RequireInputIter): New.
2849         * include/ext/vstring.h (__versa_string<>::__versa_string
2850         (_InputIterator, _InputIterator, const _Alloc&),
2851         __versa_string<>::append(_InputIterator, _InputIterator),
2852         __versa_string<>::assign(_InputIterator, _InputIterator),
2853         __versa_string<>::insert(iterator, _InputIterator,
2854         _InputIterator), __versa_string<>::replace(iterator, iterator,
2855         _InputIterator, _InputIterator)): Use it.
2856         * include/bits/stl_list.h (list<>::list(_InputIterator,
2857         _InputIterator, const allocator_type&), list<>::assign(_InputIterator,
2858         _InputIterator), list<>::insert(iterator, _InputIterator,
2859         _InputIterator)): Likewise.
2860         * include/bits/stl_vector.h (vector<>::vector(_InputIterator,
2861         _InputIterator, const allocator_type&), vector<>::assign(_InputIterator,
2862         _InputIterator), vectort<>::insert(iterator, _InputIterator,
2863         _InputIterator)): Likewise.
2864         * include/bits/stl_deque.h (deque<>::deque(_InputIterator,
2865         _InputIterator, const allocator_type&), deque<>::deque(_InputIterator,
2866         _InputIterator), deque<>::insert(iterator, _InputIterator,
2867         _InputIterator)): Likewise.
2868         * include/bits/stl_bvector.h (vector<>::vector(_InputIterator,
2869         _InputIterator, const allocator_type&), vector<>::deque(_InputIterator,
2870         _InputIterator), vector<>::insert(iterator, _InputIterator,
2871         _InputIterator)): Likewise.
2872         * include/bits/forward_list.h (forward_list<>::forward_list
2873         (_InputIterator, _InputIterator, const allocator_type&),
2874         forward_list<>::assign(_InputIterator, _InputIterator),
2875         forward_list<>::insert_after(const_iterator, _InputIterator,
2876         _InputIterator)): Likewise.
2877         (forward_list<>::_M_initialize_dispatch(,, __true_type): Remove.
2878         (forward_list<>::_M_range_initialize): Add, adjust everywhere.
2879         * include/bits/forward_list.tcc: Adjust.
2880         * include/debug/forward_list: Adjust.
2881         * include/debug/vector: Likewise.
2882         * include/debug/deque: Likewise.
2883         * include/debug/list: Likewise.
2884         * testsuite/ext/vstring/requirements/do_the_right_thing.cc: New.
2885         * testsuite/23_containers/forward_list/requirements/
2886         do_the_right_thing.cc: Likewise.
2887         * testsuite/23_containers/vector/requirements/
2888         do_the_right_thing.cc: Likewise.
2889         * testsuite/23_containers/deque/requirements/
2890         do_the_right_thing.cc: Likewise.
2891         * testsuite/23_containers/list/requirements/
2892         do_the_right_thing.cc: Likewise.
2893         * testsuite/23_containers/forward_list/requirements/dr438/
2894         assign_neg.cc: Adjust dg-error line number.
2895         * testsuite/23_containers/forward_list/requirements/dr438/
2896         insert_neg.cc: Likewise.
2897         * testsuite/23_containers/forward_list/requirements/dr438/
2898         constructor_1_neg.cc: Likewise.
2899         * testsuite/23_containers/forward_list/requirements/dr438/
2900         constructor_2_neg.cc: Likewise.
2901         * testsuite/23_containers/vector/requirements/dr438/
2902         assign_neg.cc: Likewise.
2903         * testsuite/23_containers/vector/requirements/dr438/
2904         insert_neg.cc: Likewise.
2905         * testsuite/23_containers/vector/requirements/dr438/
2906         constructor_1_neg.cc: Likewise.
2907         * testsuite/23_containers/vector/requirements/dr438/
2908         constructor_2_neg.cc: Likewise.
2909         * testsuite/23_containers/deque/requirements/dr438/
2910         assign_neg.cc: Likewise.
2911         * testsuite/23_containers/deque/requirements/dr438/
2912         insert_neg.cc: Likewise.
2913         * testsuite/23_containers/deque/requirements/dr438/
2914         constructor_1_neg.cc: Likewise.
2915         * testsuite/23_containers/deque/requirements/dr438/
2916         constructor_2_neg.cc: Likewise.
2917         * testsuite/23_containers/list/requirements/dr438/
2918         assign_neg.cc: Likewise.
2919         * testsuite/23_containers/list/requirements/dr438/
2920         insert_neg.cc: Likewise.
2921         * testsuite/23_containers/list/requirements/dr438/
2922         constructor_1_neg.cc: Likewise.
2923         * testsuite/23_containers/list/requirements/dr438/
2924         constructor_2_neg.cc: Likewise.
2926 2012-03-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
2928         PR libstdc++/52433
2929         * include/debug/safe_iterator.h (_Safe_iterator): Add move
2930         constructor and move assignment operator.
2931         * testsuite/23_containers/vector/debug/52433.cc: New.
2933 2012-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
2935         * include/std/limits (numeric_limits): Fix returns per C++11.
2936         * testsuite/18_support/numeric_limits/primary.cc: New.
2938 2012-03-02  Benjamin Kosnik  <bkoz@redhat.com>
2940         * include/c_global/cstdio: Remove extraneous extern.
2941         * include/c_std/cstdio: Same.
2943 2012-03-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2945         * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate.
2946         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
2947         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
2948         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2949         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2951 2012-03-01  Benjamin Kosnik  <bkoz@redhat.com>
2952             Ramana Radhakrishnan <ramana@gcc.gnu.org>
2954         PR libstdc++/51785
2955         * acinclude.m4 (GLIBCXX_CHECK_STDIO_PROTO): New.
2956         * configure.ac: Call it.
2957         * configure: Regenerate.
2958         * config.h.in: Same.
2959         * config/os/gnu-linux/os_defines.h: Conditionally undefine
2960         _GLIBCXX_HAVE_GETS.
2961         * include/c_global/cstdio: Conditionally declare deprecated gets.
2962         * include/c_std/cstdio: Same.
2964 2012-03-01  Michael Spertus  <mike_spertus@symantec.com>
2966         * include/tr2/type_traits (typelist): To __reflection_typelist.
2967         (first, rest, empty): Remove.
2969 2012-03-01  Benjamin Kosnik  <bkoz@redhat.com>
2971         * testsuite/Makefile.am (CLEANFILES): Add *.gdb.
2972         * testsuite/Makefile.in: Regenerate.
2974 2012-02-29  H.J. Lu  <hongjiu.lu@intel.com>
2976         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
2978 2012-02-28  Benjamin Kosnik  <bkoz@redhat.com>
2980         PR libstdc++/52191
2981         * testsuite/util/testsuite_abi.cc (compare_symbols): Check new
2982         symbols added into the latest version. Mark tls entities as
2983         undesignated.
2985 2012-02-28  Jakub Jelinek  <jakub@redhat.com>
2987         PR bootstrap/52414
2988         * src/Makefile.am (libstdc++-symbols.ver): Only remove comment lines
2989         if they are at the beginning of lines (with optional whitespace before
2990         #).
2991         * src/Makefile.in: Regenerated.
2993 2012-02-27  Jakub Jelinek  <jakub@redhat.com>
2995         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
2996         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
2997         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
2998         Likewise.
2999         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
3000         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
3001         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
3002         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
3003         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
3004         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
3006 2012-02-27  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3008         PR libstdc++/52188
3009         * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Remove symvers_renaming.
3010         Remove ENABLE_SYMVERS_SOL2.
3011         * configure: Regenerate.
3012         * src/Makefile.am [ENABLE_SYMVERS] (libstdc++-symbols.ver):
3013         Postprocess mapfile.
3014         [ENABLE_SYMVERS_GNU]: Remove ENABLE_SYMVERS_SOL2 handling.
3015         * src/Makefile.in: Regenerate.
3017         * config/abi/pre/gnu.ver (GLIBCXX_3.4.5) [!__sun__ && !__svr4__]:
3018         Don't export
3019         _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv.
3021 2012-02-25  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
3023         PR testsuite/52201
3024         * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
3025         Require atomic builtins.
3026         * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
3028 2012-02-23  Jason Merrill  <jason@redhat.com>
3030         * include/bits/locale_facets.h (class num_get): Undo reordering of
3031         do_get virtual functions.
3033 2012-02-14  Edward Smith-Rowland  <3dw4rd@verizon.net>
3035         * testsuite/26_numerics/random/
3036         uniform_real_distribution/requirements/typedefs.cc: Check param_type.
3037         * testsuite/26_numerics/random/
3038         piecewise_constant_distribution/requirements/typedefs.cc: Ditto.
3039         * testsuite/26_numerics/random/
3040         chi_squared_distribution/requirements/typedefs.cc: Ditto.
3041         * testsuite/26_numerics/random/
3042         normal_distribution/requirements/typedefs.cc: Ditto.
3043         * testsuite/26_numerics/random/
3044         uniform_int_distribution/requirements/typedefs.cc: Ditto.
3045         * testsuite/26_numerics/random/
3046         poisson_distribution/requirements/typedefs.cc: Ditto.
3047         * testsuite/26_numerics/random/
3048         bernoulli_distribution/requirements/typedefs.cc: Ditto.
3049         * testsuite/26_numerics/random/
3050         discrete_distribution/requirements/typedefs.cc: Ditto.
3051         * testsuite/26_numerics/random/
3052         weibull_distribution/requirements/typedefs.cc: Ditto.
3053         * testsuite/26_numerics/random/
3054         cauchy_distribution/requirements/typedefs.cc: Ditto.
3055         * testsuite/26_numerics/random/
3056         negative_binomial_distribution/requirements/typedefs.cc: Ditto.
3057         * testsuite/26_numerics/random/
3058         gamma_distribution/requirements/typedefs.cc: Ditto.
3059         * testsuite/26_numerics/random/
3060         fisher_f_distribution/requirements/typedefs.cc: Ditto.
3061         * testsuite/26_numerics/random/
3062         exponential_distribution/requirements/typedefs.cc: Ditto.
3063         * testsuite/26_numerics/random/
3064         binomial_distribution/requirements/typedefs.cc: Ditto.
3065         * testsuite/26_numerics/random/
3066         lognormal_distribution/requirements/typedefs.cc: Ditto.
3067         * testsuite/26_numerics/random/
3068         extreme_value_distribution/requirements/typedefs.cc: Ditto.
3069         * testsuite/26_numerics/random/
3070         piecewise_linear_distribution/requirements/typedefs.cc: Ditto.
3071         * testsuite/26_numerics/random/
3072         student_t_distribution/requirements/typedefs.cc: Ditto.
3073         * testsuite/26_numerics/random/
3074         geometric_distribution/requirements/typedefs.cc: Ditto.
3076 2012-02-21  Benjamin Kosnik  <bkoz@redhat.com>
3078         PR libstdc++/50349
3079         * config/abi/pre/gnu.ver: Only one local.
3080         * config/abi/pre/gnu-versioned-namespace.ver: Same.
3082 2012-02-21  Paolo Carlini  <paolo.carlini@oracle.com>
3084         PR libstdc++/52317 (cont)
3085         * include/profile/unordered_map: Ad Library Exception comment.
3086         * include/profile/set: Likewise.
3087         * include/profile/base.h: Likewise.
3088         * include/profile/impl/profiler_list_to_slist.h: Likewise.
3089         * include/profile/impl/profiler_container_size.h: Likewise.
3090         * include/profile/impl/profiler_vector_size.h: Likewise.
3091         * include/profile/impl/profiler_hash_func.h: Likewise.
3092         * include/profile/impl/profiler_trace.h: Likewise.
3093         * include/profile/impl/profiler_list_to_vector.h: Likewise.
3094         * include/profile/impl/profiler_vector_to_list.h: Likewise.
3095         * include/profile/impl/profiler.h: Likewise.
3096         * include/profile/impl/profiler_state.h: Likewise.
3097         * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
3098         * include/profile/impl/profiler_algos.h: Likewise.
3099         * include/profile/impl/profiler_hashtable_size.h: Likewise.
3100         * include/profile/impl/profiler_node.h: Likewise.
3101         * include/profile/vector: Likewise.
3102         * include/profile/unordered_set: Likewise.
3103         * include/profile/map.h: Likewise.
3104         * include/profile/map: Likewise.
3106 2012-02-21  Paolo Carlini  <paolo.carlini@oracle.com>
3108         PR libstdc++/52317
3109         * python/Makefile.am: Update boilerplate license text to GPLv3.
3110         * include/profile/unordered_map: Likewise.
3111         * include/profile/set: Likewise.
3112         * include/profile/base.h: Likewise.
3113         * include/profile/impl/profiler_list_to_slist.h: Likewise.
3114         * include/profile/impl/profiler_container_size.h: Likewise.
3115         * include/profile/impl/profiler_vector_size.h: Likewise.
3116         * include/profile/impl/profiler_hash_func.h: Likewise.
3117         * include/profile/impl/profiler_trace.h: Likewise.
3118         * include/profile/impl/profiler_list_to_vector.h: Likewise.
3119         * include/profile/impl/profiler_vector_to_list.h: Likewise.
3120         * include/profile/impl/profiler.h: Likewise.
3121         * include/profile/impl/profiler_state.h: Likewise.
3122         * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
3123         * include/profile/impl/profiler_algos.h: Likewise.
3124         * include/profile/impl/profiler_hashtable_size.h: Likewise.
3125         * include/profile/impl/profiler_node.h: Likewise.
3126         * include/profile/vector: Likewise.
3127         * include/profile/unordered_set: Likewise.
3128         * include/profile/map.h: Likewise.
3129         * include/profile/map: Likewise.
3130         * testsuite/21_strings/basic_string/numeric_conversions/
3131         wchar_t/dr1261.cc: Likewise.
3132         * testsuite/21_strings/basic_string/numeric_conversions/
3133         char/dr1261.cc: Likewise.
3134         * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
3136 2012-02-20  Paolo Carlini  <paolo.carlini@oracle.com>
3138         PR libstdc++/52241
3139         * src/c++98/tree.cc (local_Rb_tree_increment,
3140         local_Rb_tree_decrement): Add.
3141         (_Rb_tree_increment(const _Rb_tree_node_base*),
3142         _Rb_tree_decrement(const _Rb_tree_node_base*)): Use the latter.
3143         (_Rb_tree_increment(_Rb_tree_node_base*),
3144         _Rb_tree_decrement(_Rb_tree_node_base*)): New.
3146 2012-02-20  Paolo Carlini  <paolo.carlini@oracle.com>
3148         PR libstdc++/52309
3149         * include/bits/hashtable_policy.h (_Equality_base<, true,>::
3150         _M_equal(const _Hashtable&)): Compare values with operator==.
3151         * testsuite/23_containers/unordered_set/operators/52309.cc: New.
3153 2012-02-17  Benjamin Kosnik  <bkoz@redhat.com>
3155         PR libstdc++/51798 continued.
3156         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Grep for
3157         __atomic_, not __sync.
3158         * configure: Regenerated.
3160 2012-02-17  Benjamin Kosnik  <bkoz@redhat.com>
3162         PR libstdc++/47058
3163         * acinclude.m4 (GLIBCXX_ENABLE_WERROR): New.
3164         (GLIBCXX_EXPORT_FLAGS): Add -Wabi to WARN_FLAGS
3165         * configure.ac: Use it.
3166         * fragment.am: Set WERROR_FLAG conditionally on --disable-werror.
3167         * configure: Regenerate.
3168         * python/Makefile.in: Same.
3169         * Makefile.in: Same.
3170         * doc/Makefile.in: Same.
3171         * include/Makefile.in: Same.
3172         * po/Makefile.in: Same.
3173         * python/Makefile.in: Same.
3174         * src/Makefile.in: Same.
3175         * src/c++11/Makefile.in: Same.
3176         * src/c++98/Makefile.in: Same.
3177         * testsuite/Makefile.in: Same.
3179 2012-02-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3181         PR libstdc++/52189
3182         * acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Handle
3183         --enable-libstdcxx-threads.
3184         Disable on Solaris 8/9 with symbol versioning.
3185         * configure.ac (GLIBCXX_CHECK_GTHREADS): Move after
3186         GLIBCXX_ENABLE_SYMVERS.
3187         * configure: Regenerate.
3188         * doc/xml/manual/configure.xml (--enable-libstdcxx-threads): Explain.
3190 2012-02-15  DJ Delorie  <dj@redhat.com>
3192         * src/c++98/locale.cc (locale::facet::_S_get_c_locale): Fix typo.
3194 2012-02-15  Benjamin Kosnik  <bkoz@redhat.com>
3196         PR libstdc++/51368
3197         * acinclude.m4 (GLIBCXX_ENABLE_PYTHON): New.
3198         * configure.ac: Use it.
3199         * python/Makefile.am: Same.
3200         * configure: Regenerate.
3201         * python/Makefile.in: Regenerate.
3202         * Makefile.in: Same.
3203         * doc/Makefile.in: Same.
3204         * include/Makefile.in: Same.
3205         * po/Makefile.in: Same.
3206         * src/Makefile.in: Same.
3207         * src/c++11/Makefile.in: Same.
3208         * src/c++98/Makefile.in: Same.
3209         * testsuite/Makefile.in: Same.
3211 2012-02-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
3213         * 30_threads/thread/native_handle/typesizes.cc: Do not run on cygwin.
3215 2012-02-14  Tom Tromey  <tromey@redhat.com>
3217         * testsuite/libstdc++-prettyprinters/cxx11.cc (main): Add new
3218         tests.
3219         * python/libstdcxx/v6/printers.py (Tr1HashtableIterator.__init__):
3220         Rewrite.
3221         (Tr1HashtableIterator.update): Remove.
3222         (Tr1HashtableIterator.next): Rewrite.
3224 2012-02-13  Benjamin Kosnik  <bkoz@redhat.com>
3226         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
3227         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
3229 2012-02-13  Richard Henderson  <rth@redhat.com>
3231         PR libstdc++/51798 continued.
3232         * include/bits/shared_ptr_base.h
3233         (_Sp_counted_base<_S_atomic>::_M_add_ref_lock): Hoist initial load
3234         outside compare_exchange loop.
3235         * include/tr1/shared_ptr.h: Same.
3236         * include/parallel/compatibility.h (__compare_and_swap_32): Use strong
3237         version of compare_exchange.
3238         (__compare_and_swap_64): Same.
3239         * include/profile/impl/profiler_state.h (__gnu_profile::__turn): Same.
3240         * libsupc++/guard.cc (__cxa_guard_acquire): Same.
3242 2012-02-10  Benjamin Kosnik  <bkoz@redhat.com>
3243             Jonathan Wakely  <jwakely.gcc@gmail.com>
3245         PR libstdc++/51798 continued.
3246         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Use __atomic_*
3247         builtins instead of __sync_* builtins for atomic functionality.
3248         * include/bits/shared_ptr_base.h: Same.
3249         * include/parallel/compatibility.h: Same.
3250         * include/profile/impl/profiler_state.h: Same.
3251         * include/tr1/shared_ptr.h: Same.
3252         * libsupc++/eh_ptr.cc: Same.
3253         * libsupc++/eh_throw.cc: Same.
3254         * libsupc++/eh_tm.cc: Same.
3255         * libsupc++/guard.cc: Same.
3256         * configure: Regenerated.
3257         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
3258         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
3260 2012-02-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3262         PR libstdc++/51296
3263         * config/os/osf/ctype_base.h,
3264         config/os/osf/ctype_configure_char.cc,
3265         config/os/osf/ctype_inline.h, config/os/osf/error_constants.h:
3266         Copy from config/os/generic.
3267         * config/os/osf/os_defines.h: Likewise.
3268         (_GTHREAD_USE_MUTEX_INIT_FUNC, _GTHREAD_USE_COND_INIT_FUNC):
3269         Define.
3270         * configure.host <osf*>: Use os/osf for os_include_dir.
3272 2012-02-10  Uros Bizjak  <ubizjak@gmail.com>
3274         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Regenerated.
3276 2012-02-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
3278         * doc/xml/manual/documentation_hacking.xml: Fix invalid attribute.
3280 2012-02-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
3282         * doc/xml/manual/status_cxx2011.xml: Update C++11 status table.
3284 2012-02-07  Benjamin Kosnik  <bkoz@redhat.com>
3286         * doc/doxygen/user.cfg.in: Update to doxygen 1.7.6.1.
3287         * doc/xml/manual/documentation_hacking.xml: Update.
3289 2012-02-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
3291         * testsuite/30_threads/call_once/39909.cc: Remove duplicate target
3292         selector.
3293         * testsuite/30_threads/call_once/49668.cc: Likewise.
3294         * testsuite/30_threads/call_once/call_once1.cc: Likewise.
3295         * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
3296         * testsuite/30_threads/mutex/cons/1.cc: Likewise.
3297         * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
3298         * testsuite/30_threads/mutex/lock/1.cc: Likewise.
3299         * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
3300         * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
3301         * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
3302         * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
3303         * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
3304         * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
3305         * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
3306         * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
3307         * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
3308         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
3309         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
3310         * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
3311         * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
3312         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
3313         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
3314         * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
3315         * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
3317 2012-02-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
3319         PR libstdc++/51296
3320         * include/std/mutex (__mutex_base::~__mutex_base): Declare noexcept.
3321         * src/c++11/condition_variable.cc (condition_variable): Use macro for
3322         initializer function.
3324         PR libstdc++/51906
3325         * config/os/bsd/darwin/os_defines.h: Disable static initializer for
3326         recursive mutexes.
3328 2012-02-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
3330         PR libstdc++/52128
3331         * src/c++11/future.cc: Add explicit instantiation.
3333 2012-02-06  François Dumont  <fdumont@gcc.gnu.org>
3335         * include/debug/safe_iterator.h
3336         (_Safe_iterator::_M_before_dereferenceable): Avoid the expensive
3337         creation of a _Safe_iterator instance to do the check.
3339 2012-02-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
3341         PR libstdc++/52104
3342         * include/std/future (__future_base::_Async_state_common): Define
3343         destructor inline for targets without TLS.
3344         * src/c++11/future.cc (__future_base::_Async_state_common): Only
3345         define destructor for TLS targets.
3347 2012-02-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
3349         PR libstdc++/51956
3350         * python/libstdcxx/v6/printers.py (StdPointerPrinter): Rename to...
3351         (SharedPointerPrinter): This. Also show weak count.
3352         * testsuite/libstdc++-prettyprinters/shared_ptr.cc: New.
3354 2012-02-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
3356         * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Modify to
3357         PASS instead of XFAIL.
3359 2012-02-05  Jeffrey Yasskin  <jyasskin@gcc.gnu.org>
3360             Paolo Carlini  <paolo.carlini@oracle.com>
3362         PR libstdc++/52119
3363         * include/std/limits (__glibcxx_min): Fix to avoid undefined behavior.
3365 2012-02-03  Benjamin Kosnik  <bkoz@redhat.com>
3367         PR libstdc++/49445
3368         * testsuite/29_atomics/atomic/cons/49445.cc: Add.
3370 2012-02-03  Benjamin Kosnik  <bkoz@redhat.com>
3372         PR libstdc++/51811
3373         * include/bits/atomic_base.h (atomic<_Tp*>): Fix offsets.
3374         * testsuite/29_atomics/atomic/operators/51811.cc: New.
3375         * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: New.
3377 2012-02-03  Jakub Jelinek  <jakub@redhat.com>
3379         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
3380         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
3381         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
3382         Likewise.
3383         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
3384         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
3385         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
3386         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
3387         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
3388         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
3390 2012-02-02  Benjamin Kosnik  <bkoz@redhat.com>
3392         PR libstdc++/52068
3393         * src/c++11/Makefile.am (toolexeclib_LTLIBRARIES,
3394         libc__11_la_SOURCES): Remove.
3395         * src/c++11/Makefile.in: Regenerate.
3396         * src/c++98/Makefile.am (toolexeclib_LTLIBRARIES,
3397         libc__98_la_SOURCES): Remove.
3398         * src/c++98/Makefile.in: Regenerate.
3400 2012-02-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
3402         PR libstdc++/49204
3403         * include/std/future (__future_base::_State_base::wait()): Use lambda
3404         expression for predicate and remove redundant test.
3405         (__future_base::_State_base::wait_for()): Return future_status and
3406         use lambda expression for predicate.
3407         (__future_base::_State_base::wait_until()): Likewise.
3408         (__basic_future::wait_for(), __basic_future::wait_until()): Likewise.
3409         (__future_base::_Async_state): Replace with _Async_state_common
3410         class for non-dependent functionality and _Async_state_impl class
3411         template for dependent functionality.
3412         (__future_base::_Async_state_common::_M_join): Serialize attempts to
3413         join thread.
3414         (__future_base::_Async_state_common::_M_run_deferred): Join.
3415         (__future_base::_Async_state::_M_do_run): Replace with lambda.
3416         * src/c++11/future.cc (__future_base::_Async_state_common): Define
3417         destructor, so key function is in the library.
3418         * config/abi/pre/gnu.ver: Add exports for ~_Async_state_common.
3419         * testsuite/30_threads/packaged_task/members/get_future.cc: Expect
3420         future_status return instead of bool.
3421         * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
3422         * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
3423         * testsuite/30_threads/future/members/wait_until.cc: Likewise.
3424         * testsuite/30_threads/future/members/wait_for.cc: Likewise.
3425         * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
3426         * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
3427         * testsuite/30_threads/promise/members/swap.cc: Likewise.
3429 2012-01-30  Tom Tromey  <tromey@redhat.com>
3431         PR libstdc++/51649:
3432         * testsuite/libstdc++-prettyprinters/debug.cc: New file.
3433         * testsuite/lib/gdb-test.exp (regexp-test): New proc.
3434         (note-test): Update.
3435         (gdb-test): Handle regexp tests.  Add some logging.
3436         * testsuite/libstdc++-prettyprinters/simple.cc: Compile with -O0.
3437         (placeholder, use): Remove.
3438         (main): Add tests for deque, list, map, and set iterators.  Add
3439         tests for slist and slist iterator.
3440         * testsuite/libstdc++-prettyprinters/48362.cc (main): Handle __7
3441         namespace.
3442         * python/libstdcxx/v6/printers.py (StdListPrinter.children): Use
3443         the type's _Node typedef.
3444         (StdListIteratorPrinter.to_string): Change how node type is
3445         computed.
3446         (StdSlistPrinter.children): Use the type's _Node typedef.
3447         (StdSlistIteratorPrinter.to_string): Likewise.
3448         (StdRbtreeIteratorPrinter.to_string): Use the type's _Link_type
3449         typedef.
3450         (StdMapPrinter.children): Change how the node's type is computed.
3451         (StdSetPrinter.children): Likewise.
3452         (StdForwardListPrinter.children): Use the type's _Node typedef.
3453         (Printer.add_version): New method.
3454         (Printer.add_container): New method.
3455         (build_libstdcxx_dictionary): Handle __7 and __cxx1998
3456         namespaces.
3457         (find_type): New function.
3459 2012-01-27  Paolo Carlini  <paolo.carlini@oracle.com>
3461         PR libstdc++/51795
3462         * include/bits/random.h (linear_congruential_generator): Add
3463         static_assert preventing instantiation for values of 'a' and 'm'
3464         currently handled incorrectly by _Mod::__calc.
3465         * include/bits/random.tcc (seed_seq::generate): Avoid unsafe
3466         uses of _Mod::__calc.
3468 2012-01-27  Jakub Jelinek  <jakub@redhat.com>
3470         PR libstdc++/51798
3471         * config/cpu/generic/atomicity_builtins/atomicity.h
3472         (__exchange_and_add, __atomic_add): Use __atomic_fetch_add
3473         with __ATOMIC_ACQ_REL semantics instead of __sync_fetch_and_add.
3474         * include/ext/atomicity.h (__exchange_and_add, __atomic_add):
3475         Likewise.
3477 2011-01-27  Rafael Avila de Espindola  <rafael.espindola@gmail.com>
3479         * libsupc++/typeinfo: Correctly match #pragma GCC visibility
3480         pop with #pragma GCC visibility push.
3482 2012-01-27  Benjamin Kosnik  <bkoz@redhat.com>
3483             Matthias Klose  <doko@ubuntu.com>
3485         * configure.ac (GLIBCXX_ENABLE_DEBUG_FLAGS): Use -gdwarf-4 -g3 -O0.
3486         * configure.in: Regenerated.
3487         * src/Makefile.am (all-once, install-data-once): New rules.
3488         (all-local, install-data-local): Use them.
3489         (build-debug, install-debug): Tweak.
3490         * src/Makefile.in: Regenerate.
3492 2012-01-27  Richard Henderson  <rth@redhat.com>
3494         * include/bits/atomic_base.h (__atomic_flag_base): Define _M_i
3495         based on the value of __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
3496         (ATOMIC_FLAG_INIT): Initialize with 0, not false.
3497         (atomic_flag::atomic_flag): Use __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
3499 2012-01-26  Jakub Jelinek  <jakub@redhat.com>
3501         PR bootstrap/51985
3502         * src/c++98/Makefile.am (libc__98_la_SOURCES,
3503         libc__98convenience_la_SOURCES): Remove $(inst_sources).
3504         * src/c++98/Makefile.in: Regenerated.
3506 2012-01-25  Richard Sandiford  <rdsandiford@googlemail.com>
3508         * testsuite/20_util/system_clock/1.cc: Add dg-require-time.
3509         * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
3510         * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
3511         * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
3512         * testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Add
3513         dg-require-fileio.
3514         * testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise.
3515         * testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise.
3516         * testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise.
3517         * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-fstream.cc:
3518         Likewise.
3519         * testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
3521 2012-01-25  Matthias Klose  <doko@ubuntu.com>
3523         * testsuite/30_threads/condition_variable_any/requirements: Remove
3524         empty directory.
3526 2012-01-23  Benjamin Kosnik  <bkoz@redhat.com>
3528         * src/Makefile.am (libstdc++convenience.la): Correct stamp rule, copy.
3529         * src/Makefile.in: Regenerate.
3531 2012-01-23  Benjamin Kosnik  <bkoz@redhat.com>
3533         PR libstdc++/49829
3534         Add libc++98convenience.la, libc++11convenience.la.
3535         * src/c++98: New directory.
3536         * src/c++11: New directory.
3537         * acinclude.m4: (GLIBCXX_CONFIGURE): Add src-c++98, src-c++11.
3538         * configure: Regenerated.
3539         * Makefile.am (hosted_source): Add src-c++98, src-c++11 to SUBDIRS.
3540         * Makefile.in: Regenerate.
3541         * libsupc++/Makefile.am (AM_CXXFLAGS): USe XTEMPLATE_FLAGS for
3542         -fno-implicit-templates.
3543         * libsupc++/Makefile.in: Regenerate.
3544         * src/Makefile.am (inst_sources): Move... C++11 files into
3545         separate directory for libstdc++11convenience.la. Files are:
3546         fstream-inst.cc, string-inst.cc, wlocale-inst.cc, wstring-inst.cc).
3547         (sources): Move C++11 files. Files are: compatibility-c++0x.cc,
3548         compatibility-atomic-c++0x.cc, debug.cc, functexcept.cc,
3549         functional.cc, hash_c++0x.cc, hashtable_c++0x.cc, limits.cc,
3550         system_error.cc, placeholders.cc, regex.cc, shared_ptr.cc,
3551         mutex.cc, condition_variable.cc, chrono.cc, thread.cc, future.cc.
3552         (libstdc++convenience.la): Add new target.
3553         (SUBDIRS): Add c++11, c++98.
3554         * src/Makefile.in: Regenerate.
3555         * src/c++11/Makefile.am: New.
3556         * src/c++11/Makefile.in: Generate.
3557         * src/c++98/Makefile.am: New, C++98 files.
3558         * src/c++98/Makefile.in: Generate.
3560 2012-01-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3562         libstdc++-v3:
3563         * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on
3564         32-bit Solaris 10/x86.
3565         * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
3567 2012-01-21  Jonathan Wakely  <jwakely.gcc@gmail.com>
3569         PR libstdc++/50982
3570         * testsuite/30_threads/*: Add powerpc-ibm-aix* to target selectors.
3572 2012-01-19  Jakub Jelinek  <jakub@redhat.com>
3574         PR libstdc++/51845
3575         * include/bits/hashtable.h
3576         (_Hashtable<>::erase(const_iterator, const_iterator)): Also update
3577         _M_buckets[__n_bkt] if __is_bucket_begin.
3578         * testsuite/23_containers/unordered_multimap/erase/51845-multimap.cc:
3579         New test.
3581 2012-01-18  Benjamin Kosnik  <bkoz@redhat.com>
3583         * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): Fix quoting.
3585 2012-01-18  Benjamin Kosnik  <bkoz@redhat.com>
3587         * configure.ac: Move epub checks...
3588         * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): ...here, use
3589         test -f instead of AC_CHECK_FILES.
3591 2012-01-18  François Dumont  <fdumont@gcc.gnu.org>
3592             Roman Kononov  <roman@binarylife.net>
3594         PR libstdc++/51866
3595         * include/bits/hashtable.h (_Hashtable<>::_M_insert(_Arg, false_type)):
3596         Do not keep a reference to a potentially moved instance.
3597         * testsuite/23_containers/unordered_multiset/insert/51866.cc: New.
3598         * testsuite/23_containers/unordered_multimap/insert/51866.cc: New.
3600 2012-01-17  Benjamin Kosnik  <bkoz@redhat.com>
3602         * doc/html/*: Regenerate.
3604 2012-01-17  Benjamin Kosnik  <bkoz@redhat.com>
3606         * configure.ac (BUILD_EPUB): Adjust for epub3.
3607         * configure: Regenerate.
3608         * Makefile.in: Same.
3609         * doc/Makefile.am (stamp-epub-docbook): Update for epub3.
3610         * doc/Makefile.in: Regenerate.
3611         * include/Makefile.in: Same.
3612         * libsupc++/Makefile.in: Same.
3613         * po/Makefile.in: Same.
3614         * python/Makefile.in: Same.
3615         * src/Makefile.in: Same.
3616         * testsuite/Makefile.in: Same.
3618         * doc/xml/manual/documentation_hacking.xml: Update.
3620 2012-01-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3622         PR target/47852
3623         * configure.host (irix6.5*): Add -lpthread to OPT_LDFLAGS.
3625 2012-01-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
3627         * include/bits/stl_iterator.h (reverse_iterator): Doxygen comments.
3629 2012-01-13  François Dumont  <fdumont@gcc.gnu.org>
3631         * include/bits/hashtable_policy.h (_Hash_node_base): New, use it as
3632         base class of ...
3633         (_Hash_node<Value, true>, _Hash_node<Value, false>): ... those.
3634         * include/bits/hashtable.h (_Hashtable): Replace _M_begin_bucket_index
3635         by _M_before_begin. Review implementation so that we do not need to
3636         look for previous non-empty bucket when inserting nodes.
3638 2012-01-09  Kai Tietz  <ktietz@redhat.com>
3640         PR libstc++/51673 part 2
3641         * config/abi/pre/gnu-versioned-namespace.ver: Adjusted new/delete
3642         operators signature for LLP64 size_t, and adjusted signatures for
3643         mt-allocator using size_t.
3645 2012-01-09  Benjamin Kosnik  <bkoz@redhat.com>
3647         PR libstc++/51673 part 1
3648         * config/abi/pre/gnu-versioned-namespace.ver: Sync cxxabi symbols
3649         with gnu.ver.
3651 2012-01-09  Benjamin Kosnik  <bkoz@redhat.com>
3653         * fragment.am (WARN_CXXFLAGS): Add -Wabi.
3654         * Makefile.in: Regenerate.
3655         * doc/Makefile.in: Same.
3656         * include/Makefile.in: Same.
3657         * libsupc++/Makefile.in: Same.
3658         * src/Makefile.in: Same.
3659         * testsuite/Makefile.in: Same.
3660         * po/Makefile.in: Same.
3661         * python/Makefile.in: Same.
3663 2012-01-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
3665         * python/libstdcxx/v6/printers.py (StdForwardListPrinter): Add.
3666         * testsuite/libstdc++-prettyprinters/cxx11.cc: New.
3668 2012-01-06  Jason Merrill  <jason@redhat.com>
3670         * testsuite/abi/demangle/regression/cw-16.cc (main): Adjust
3671         expected demangling.
3673 2012-01-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
3675         PR libstdc++/51504
3676         * doc/xml/manual/debug.xml: Suggest using symbol interposition
3677         to override symbols using annotation macros.
3679 2012-01-05  François Dumont  <fdumont@gcc.gnu.org>
3681         * include/bits/hashtable_policy.h (_Hashtable_base<>::_M_eq()):
3682         protected rather than private, use it...
3683         * include/bits/hashtable.h (_Hashtable<>::key_eq()): ... here.
3684         * testsuite/23_containers/unordered_set/observers.cc: New.
3685         * testsuite/23_containers/unordered_multiset/observers.cc: New.
3686         * testsuite/23_containers/unordered_map/observers.cc: New.
3687         * testsuite/23_containers/unordered_multimap/observers.cc: New.
3689 2012-01-03  François Dumont  <fdumont@gcc.gnu.org>
3691         * include/bits/hashtable_policy.h (_Ebo_helper<>): Rename to the more
3692         specific _Hashtable_ebo_helper. Hide this implementation detail thanks
3693         to private inheritance.
3695 2012-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
3697         PR c++/51738
3698         * testsuite/23_containers/map/element_access/39901.cc: New.