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