2012-09-04 Janus Weil <janus@gcc.gnu.org>
[official-gcc.git] / libstdc++-v3 / ChangeLog
blobf6539889ee244536ebb94f5f29e41bb3c2b98cde
1 2012-08-30  Benjamin Kosnik  <bkoz@redhat.com>
3         PR libstdc++/54005 continued
4         * include/std/atomic: Use __atomic_lock_free with NULL.
5         * include/bits/atomic_base.h: Same.
7 2012-08-30  Ulrich Drepper  <drepper@gmail.com>
9         * include/bits/random.h (random_device) [GLIBCXX_USE_RANDOM_TR1]:
10         Remove 'return' from constructor.
12 2012-08-30  Benjamin Kosnik  <bkoz@redhat.com>
14         * testsuite/util/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.18.
16 2012-08-29  Ulrich Drepper  <drepper@gmail.com>
18         * include/bits/random.h (random_device): Move implementation to...
19         * src/c++11/random.cc: ...here.  New file.
20         * config/abi/pre/gnu.ver: Add new version GLIBCXX_3.4.18.  Export
21         std::random_device::* symbols.
22         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Generated.
23         * src/c++11/Makefile.am (sources): Add random.cc.
24         * src/c++11/Makefile.in: Regenerated.
26         Add simd_fast_mersenne_twister_engine class.
27         * include/ext/random: New file.
28         * include/ext/random.tcc: New file.
29         * include/Makefile.am (ext_headers): Add random and random.tcc.
30         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
31         operators/inequal.cc: New file.
32         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
33         operators/equal.cc: New file.
34         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
35         operators/serialize.cc: New file.
36         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
37         cons/seed2.cc: New file.
38         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
39         cons/default.cc: New file.
40         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
41         cons/seed_seq.cc: New file.
42         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
43         cons/copy.cc: New file.
44         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
45         cons/seed1.cc: New file.
47 2012-08-28  Benjamin Kosnik  <bkoz@redhat.com>
49         PR libstdc++/54102, part 2
50         * doc/Makefile.am (XSL_HTML_STYLE): use xhtml, not html.
51         * doc/Makefile.in: Regenerate.
52         * doc/html/*: Same.
54 2012-08-28  Benjamin Kosnik  <bkoz@redhat.com>
56         * doc/html/*: Regenerate.
58 2012-08-28  Benjamin Kosnik  <bkoz@redhat.com>
60         PR libstdc++/54102
61         * doc/xsl/customization.xsl.in: New.
62         * configure.ac: Output local copy of customization xsl.
63         * doc/Makefile.am (stamp-html-single-docbook): Use XSL_LOCAL_STYLE.
64         (stamp-html-docbook): Set stringparam to UTF-8.
65         * Makefile.in: Regenerated.
66         * configure: Same.
67         * doc/Makefile.in: Same.
69 2012-08-27  Ulrich Drepper  <drepper@gmail.com>
71         Add interfaces to retrieve random numbers in bulk.
72         * include/bits/random.h (uniform_int_distribution<>): Add __generate
73         and __generate_impl functions.
74         (uniform_real_distribution<>): Likewise.
75         (bernoulli_distribution): Likewise.
76         (geometric_distribution<>): Likewise.
77         (negative_binomial_distribution<>): Likewise.
78         (poisson_distribution<>): Likewise.
79         (exponential_distribution<>): Likewise.
80         (normal_distribution<>): Likewise.
81         (lognormal_distribution<>): Likewise.
82         (chi_squared_distribution<>): Likewise.
83         (cauchy_distribution<>): Likewise.
84         (fisher_f_distribution<>): Likewise.
85         (student_t_distribution<>): Likewise.
86         (gamma_distribution<>): Likewise.
87         (weibull_distribution<>): Likewise.
88         (extreme_value_distribution<>): Likewise.
89         (discrete_distribution<>): Likewise.
90         (piecewise_constant_distribution<>): Likewise.
91         (piecewise_linear_distribution<>): Likewise.
92         * include/bits/random.tcc (__detail::_Power_of_2): New function.
93         (uniform_int_distribution<>::__generate_impl): New function.
94         (uniform_real_distribution<>::__generate_impl): New function.
95         (bernoulli_distribution::__generate_impl): New function.
96         (geometric_distribution<>::__generate_impl): New function.
97         (negative_binomial_distribution<>::__generate_impl): New function.
98         (poisson_distribution<>::__generate_impl): New function.
99         (exponential_distribution<>::__generate_impl): New function.
100         (normal_distribution<>::__generate_impl): New function.
101         (lognormal_distribution<>::__generate_impl): New function.
102         (chi_squared_distribution<>::__generate_impl): New function.
103         (cauchy_distribution<>::__generate_impl): New function.
104         (fisher_f_distribution<>::__generate_impl): New function.
105         (student_t_distribution<>::__generate_impl): New function.
106         (gamma_distribution<>::__generate_impl): New function.
107         (weibull_distribution<>::__generate_impl): New function.
108         (extreme_value_distribution<>::__generate_impl): New function.
109         (discrete_distribution<>::__generate_impl): New function.
110         (piecewise_constant_distribution<>::__generate_impl): New function.
111         (piecewise_linear_distribution<>::__generate_impl): New function.
113 2012-08-22  Ulrich Drepper  <drepper@gmail.com>
115         * include/bits/random.h (mersenne_twister_engine): Don't inline
116         discard here.  New member function _M_gen_rand.
117         * include/bits/random.tcc (mersenne_twister_engine<>::_M_gen_rand):
118         New function.  Extracted from operator().
119         (mersenne_twister_engine<>::discard): New implementation which
120         skips in large steps.
121         (mersenne_twister_engine<>::operator()): Use _M_gen_rand.
123 2012-08-26  Marc Glisse  <marc.glisse@inria.fr>
124             Paolo Carlini  <paolo.carlini@oracle.com>
126         PR libstdc++/54376
127         * include/bits/random.h (lognormal_distribution<>::operator==,
128         gamma_distribution<>::operator==,
129         chi_squared_distribution<>::operator==,
130         fisher_f_distribution<>::operator==,
131         student_t_distribution<>::operator==,
132         binomial_distribution<>::operator==,
133         negative_binomial_distribution<>::operator==,
134         poisson_distribution<>::operator==): Change inline friend definition
135         to non-template.
136         * testsuite/26_numerics/random/binomial_distribution/requirements/
137         explicit_instantiation/1.cc: New.
138         * testsuite/26_numerics/random/cauchy_distribution/requirements/
139         explicit_instantiation/1.cc: Likewise.
140         * testsuite/26_numerics/random/chi_squared_distribution/
141         requirements/explicit_instantiation/1.cc: Likewise.
142         * testsuite/26_numerics/random/discrete_distribution/requirements/
143         explicit_instantiation/1.cc: Likewise.
144         * testsuite/26_numerics/random/exponential_distribution/
145         requirements/explicit_instantiation/1.cc: Likewise.
146         * testsuite/26_numerics/random/extreme_value_distribution/
147         requirements/explicit_instantiation/1.cc: Likewise.
148         * testsuite/26_numerics/random/fisher_f_distribution/requirements/
149         explicit_instantiation/1.cc: Likewise.
150         * testsuite/26_numerics/random/gamma_distribution/requirements/
151         explicit_instantiation/1.cc: Likewise.
152         * testsuite/26_numerics/random/geometric_distribution/requirements/
153         explicit_instantiation/1.cc: Likewise.
154         * testsuite/26_numerics/random/lognormal_distribution/requirements/
155         explicit_instantiation/1.cc: Likewise.
156         * testsuite/26_numerics/random/negative_binomial_distribution/
157         requirements/explicit_instantiation/1.cc: Likewise.
158         * testsuite/26_numerics/random/normal_distribution/requirements/
159         explicit_instantiation/1.cc: Likewise.
160         * testsuite/26_numerics/random/piecewise_constant_distribution/
161         requirements/explicit_instantiation/1.cc: Likewise.
162         * testsuite/26_numerics/random/piecewise_linear_distribution/
163         requirements/explicit_instantiation/1.cc: Likewise.
164         * testsuite/26_numerics/random/poisson_distribution/requirements/
165         explicit_instantiation/1.cc: Likewise.
166         * testsuite/26_numerics/random/student_t_distribution/requirements/
167         explicit_instantiation/1.cc: Likewise.
168         * testsuite/26_numerics/random/uniform_int_distribution/
169         requirements/explicit_instantiation/1.cc: Likewise.
170         * testsuite/26_numerics/random/uniform_real_distribution/
171         requirements/explicit_instantiation/1.cc: Likewise.
172         * testsuite/26_numerics/random/weibull_distribution/requirements/
173         explicit_instantiation/1.cc: Likewise.
175 2012-08-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
177         * testsuite/30_threads/async/54297.cc: Add dg-require-nanosleep.
179 2012-08-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
181         PR libstdc++/54297
182         * src/c++11/future.cc (~_Async_state_common): Move to...
183         * src/c++11/compatibility-thread-c++0x.cc (~_Async_state_common):
184         Here.
185         (_GLIBCXX_ABI_COMPAT_ASYNC): Rename to _GLIBCXX_ASYNC_ABI_COMPAT.
186         * include/std/future (_GLIBCXX_ABI_COMPAT_ASYNC): Likewise.
188 2012-08-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
189             Geoff Romer  <gromer@google.com>
191         PR libstdc++/54351
192         * include/bits/unique_ptr.h (unique_ptr<T>::~unique_ptr): Do not use
193         reset().
194         (unique_ptr<T[]>::~unique_ptr()): Likewise.
195         * testsuite/20_util/unique_ptr/54351.cc: New.
196         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error
197         line numbers.
199 2012-08-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
201         PR libstdc++/54297
202         * include/std/future (~_Async_state_impl): Join thread before
203         derived class members are destroyed.
204         (~_Async_state_common): Only define non-trivial destructor when
205         included from future.cc for ABI compatibility reasons.
206         * src/c++11/future.cc (_GLIBCXX_ABI_COMPAT_ASYNC): Define.
207         * testsuite/30_threads/async/54297.cc: New.
209 2012-08-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
211         PR libstdc++/54248
212         * include/bits/concept_check.h: Replace references to boost
213         namespace.
215 2012-08-23  Jonathan Wakely  <jwakely.gcc@gmail.com>
217         PR libstdc++/54354
218         * doc/xml/manual/status_cxx2011.xml: Note missing manipulators.
219         * doc/html/*: Regenerate.
221 2012-08-15  Tom Tromey  <tromey@redhat.com>
223         * testsuite/libstdc++-prettyprinters/cxx11.cc (struct datum):
224         New.
225         (global): New global.
226         (main): Add test for unique_ptr.
227         * python/libstdcxx/v6/printers.py
228         (UniquePointerPrinter.to_string): Extract the pointer and also
229         print its type.
231 2012-08-13  David Adler  <d.adler.s@gmail.com>
233         PR libstdc++/54185
234         * src/c++11/condition_variable.cc (condition_variable): Always
235         destroy native type in destructor.
236         * testsuite/30_threads/condition_variable/54185.cc: New.
238 2012-08-13  François Dumont  <fdumont@gcc.gnu.org>
239             Ollie Wild  <aaw@google.com>
241         * include/bits/hashtable.h
242         (_Hashtable<>_M_insert_multi_node(hash_code, node_type*)): New.
243         (_Hashtable<>_M_insert(_Args&&, false_type)): Use latter.
244         (_Hashtable<>::_M_emplace(false_type, _Args&&...)): Likewise.
245         (_Hashtable<>::_M_insert_bucket): Replace by ...
246         (_Hashtable<>::_M_insert_unique_node(size_type, hash_code, node_type*)):
247         ... this, new.
248         (_Hashtable<>::_M_insert(_Args&&, true_type)): Use latter.
249         (_Hashtable<>::_M_emplace(true_type, _Args&&...)): Likewise.
250         * include/bits/hashtable_policy.h (_Map_base<>::operator[]): Use
251         latter, emplace the value_type rather than insert.
252         * include/std/unordered_map: Include tuple.
253         * include/std/unordered_set: Likewise.
254         * testsuite/util/testsuite_counter_type.h: New.
255         * testsuite/23_containers/unordered_map/operators/2.cc: New.
257 2012-08-13  Marc Glisse  <marc.glisse@inria.fr>
259         PR libstdc++/54112
260         * include/c_compatibility/complex.h: Undefine complex, always
261         include system's complex.h if present.
262         * testsuite/26_numerics/complex/c99.cc: New testcase.
263         * testsuite/17_intro/headers/c++1998/complex.cc: Likewise.
264         * doc/xml/manual/numerics.xml: Document it.
266 2012-08-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
268         PR libstdc++/52681
269         * src/c++11/thread.cc (thread::_M_start_thread): Improve error text
270         when threads are not enabled.
272 2012-08-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
274         * acinclude.m4: Update references to final C++11 standard.
275         * include/bits/shared_ptr.h: Likewise.
276         * include/bits/shared_ptr_base.h: Likewise.
277         * include/bits/unique_ptr.h: Likewise.
278         * include/std/chrono: Likewise.
279         * include/std/thread: Likewise.
281 2012-08-07  Benjamin Kosnik  <bkoz@redhat.com>
283         PR libstdc++/54005
284         * include/std/atomic: Use __atomic_always_lock_free.
285         * include/bits/atomic_base.h: Same.
287 2012-08-06  Paolo Carlini  <paolo.carlini@oracle.com>
289         * testsuite/decimal/mixed-mode-cmp_neg.cc: Add test variable; minor
290         tweaks.
291         * testsuite/decimal/unary-arith.cc: Likewise.
292         * testsuite/decimal/ctor.cc: Likewise.
293         * testsuite/decimal/conversion-to-integral.cc: Likewise.
294         * testsuite/decimal/make-decimal.cc: Likewise.
295         * testsuite/decimal/comparison.cc: Likewise.
296         * testsuite/decimal/incdec-memfunc.cc: Likewise.
297         * testsuite/decimal/conversion-to-generic-float.cc: Likewise.
298         * testsuite/decimal/compound-assignment-memfunc.cc: Likewise.
299         * testsuite/decimal/cast_neg.cc: Likewise.
300         * testsuite/decimal/incdec.cc: Likewise.
301         * testsuite/decimal/mixed-mode-arith_neg.cc: Likewise.
302         * testsuite/decimal/binary-arith.cc: Likewise.
303         * testsuite/decimal/conversion-from-float.cc: Likewise.
304         * testsuite/decimal/conversion-from-integral.cc: Likewise.
305         * testsuite/decimal/compound-assignment.cc: Likewise.
307 2012-08-06  Peter Bergner  <bergner@vnet.ibm.com>
309         PR libstdc++/54036
310         * include/decimal/decimal.h (_DEFINE_DECIMAL_UNARY_OP): Use _Op as
311         a unary operator.
312         * testsuite/decimal/pr54036-1.cc: New test.
313         * testsuite/decimal/pr54036-2.cc: Likewise.
314         * testsuite/decimal/pr54036-3.cc: Likewise.
316 2012-08-04  Paolo Carlini  <paolo.carlini@oracle.com>
318         Revert:
319         2012-08-03  Ollie Wild  <aaw@google.com>
320                     Richard Smith  <richardsmith@google.com>
322         * include/bits/stl_map.h (operator[](key_type&&)): Replace
323         std::make_pair with value_type.
324         * testsuite/23_containers/map/operators/2.cc: New test.
326 2012-08-03  François Dumont  <fdumont@gcc.gnu.org>
328         * include/debug/functions.h (__check_partition_lower_aux): Remove
329         redundant comparison with pivot value.
330         (__check_partition_upper_aux): Likewise.
332 2012-08-03  Ollie Wild  <aaw@google.com>
333             Richard Smith  <richardsmith@google.com>
335         * include/bits/stl_map.h (operator[](key_type&&)): Replace
336         std::make_pair with value_type.
337         * testsuite/23_containers/map/operators/2.cc: New test.
339 2012-08-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
341         * include/std/memory: Include auto_ptr.h later.
342         * include/bits/shared_ptr.h (shared_ptr(auto_ptr<_Up>&&): Remove
343         definition.
344         * include/bits/shared_ptr_base.h (__shared_ptr(auto_ptr<_Up>&&):
345         Likewise.
346         * include/bits/unique_ptr.h (unique_ptr(auto_ptr<_Up>&&): Likewise.
347         * include/backward/auto_ptr.h (unique_ptr(auto_ptr<_Up>&&): Define.
348         (shared_ptr(auto_ptr<_Up>&&, __shared_ptr(auto_ptr<_Up>&&): Likewise.
349         * include/std/future: Reduce header dependencies.
350         * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line
351         numbers.
352         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
353         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
355 2012-07-30  François Dumont  <fdumont@gcc.gnu.org>
357         * include/bits/c++config (_GLIBCXX_END_NAMESPACE_CONTAINER): Fix
358         order of closures.
359         (_GLIBCXX_END_NAMESPACE_ALGO): Likewise.
361 2012-07-29  François Dumont  <fdumont@gcc.gnu.org>
363         PR libstdc++/54075
364         * include/bits/hashtable_policy.h
365         (_Prime_rehash_policy::_M_next_bkt): Add a growth factor set to 2
366         to boost growth in the number of buckets.
367         * testsuite/performance/23_containers/insert/unordered_set.cc: New.
369 2012-07-25  François Dumont  <fdumont@gcc.gnu.org>
371         PR libstdc++/54075
372         * include/bits/hashtable.h
373         (_Hashtable<>::_Hashtable(_InputIterator, _InputIterator,
374         size_type, ...): Remove std::max usage to guarantee that hashtable
375         state is consistent with hash policy state.
376         (_Hashtable<>::rehash): Likewise. Set _M_prev_resize to 0 to avoid
377         the hashtable shrinking on next insertion.
378         * testsuite/23_containers/unordered_set/modifiers/reserve.cc: New.
379         * testsuite/23_containers/unordered_multiset/modifiers/reserve.cc: New.
380         * testsuite/23_containers/unordered_map/modifiers/reserve.cc: New.
381         * testsuite/23_containers/unordered_multimap/modifiers/reserve.cc: New.
383 2012-07-20  Chip Salzenberg  <chip@pobox.com>
384             Jonathan Wakely  <jwakely.gcc@gmail.com>
386         PR libstdc++/54025
387         * include/std/chrono (duration<>::duration): Fix per C++11.
388         * testsuite/20_util/duration/cons/54025.cc: New.
389         * testsuite/20_util/duration/cons/constexpr.cc: Adjust.
391 2012-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
393         * testsuite/30_threads/thread/adl.cc: Add missing dg-requires.
395 2012-07-19  Tristan Gingold  <gingold@adacore.com>
396             Richard Henderson  <rth@redhat.com>
398         * libsupc++/eh_personality.cc (__gxx_personality_seh0): New function.
399         Adjust for SEH.
400         * config/abi/pre/gnu.ver: Add __gxx_personality_seh0.
402 2012-07-18  Paolo Carlini  <paolo.carlini@oracle.com>
404         PR c++/51213
405         * testsuite/20_util/pair/noncopyable.cc: New.
407 2012-07-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
409         PR libstdc++/53270
410         * include/ext/concurrence.h (__mutex, __recursive_mutex, __cond): Use
411         NSDMI in C++98 mode too.
412         * include/ext/rope: Add system_header pragma.
413         (_Refcount_Base, _Rope_RopeRep): Use NSDMI.
414         (_Rope_RopeRep::~_Rope_RopeRep): Destroy mutex.
416 2012-07-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
418         PR libstdc++/53978
419         * include/bits/alloc_traits.h (allocator_traits): Define static
420         constants.
421         * include/bits/ptr_traits.h (pointer_traits): Likewise.
422         * include/ext/alloc_traits.h (__allocator_always_compares_equal):
423         Likewise.
425 2012-07-13  Paolo Carlini  <paolo.carlini@oracle.com>
427         PR libstdc++/53657
428         * include/bits/stl_pair.h (pair<>::pair(pair&&)): Declare defaulted,
429         per C++11.
430         * include/bits/stl_map.h (map<>::insert(_Pair&&), map<>::insert
431         (const_iterator, _Pair&&)): Constrain with std::is_constructible,
432         per LWG2005.
433         * include/bits/stl_multimap.h (multimap<>::insert(_Pair&&),
434         multimap<>::insert(const_iterator, _Pair&&)): Likewise.
435         * include/bits/hashtable_policy.h (_Insert<>::insert(_Pair&&),
436         _Insert<>::insert(const_iterator, _Pair&&)): Likewise.
437         * include/debug/unordered_map: Adjust.
438         * include/debug/map.h: Likewise.
439         * include/debug/multimap.h: Likewise.
440         * include/profile/unordered_map: Likewise.
441         * include/profile/map.h: Likewise.
442         * include/profile/multimap.h: Likewise.
444 2012-07-06  Paolo Carlini  <paolo.carlini@oracle.com>
446         PR libstdc++/53872
447         * include/std/thread (thread::_M_make_routine): Qualify make_shared
448         to prevent ADL.
449         * testsuite/30_threads/thread/adl.cc: New.
451 2012-07-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
453         * include/std/condition_variable: Update copyright years.
455 2012-07-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
457         PR libstdc++/53830
458         * include/std/condition_variable (condition_variable_any::wait):
459         Move _Unlock type to class scope.
460         (condition_variable_any::wait_until): Reuse it.
461         * testsuite/30_threads/condition_variable_any/53830.cc: New.
463 2012-07-04  Matthias Klose  <doko@ubuntu.com>
465         * testsuite/28_regex/headers/04_header: Remove empty directory.
466         * testsuite/28_regex/algorithms/02_match: Likewise.
468 2012-07-03  Paolo Carlini  <paolo.carlini@oracle.com>
470         PR libstdc++/53840
471         * include/std/ratio (ratio_multiply, ratio_divide, ratio_add,
472         ratio_subtract): Use template aliases.
473         * include/std/chrono (duration<>::duration(const duration<>&),
474         duration_cast): Adjust.
475         * testsuite/20_util/ratio/operations/53840.cc: New.
476         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
477         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
478         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
479         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
481 2012-07-02  Paolo Carlini  <paolo.carlini@oracle.com>
483         Revert:
484         2011-10-04  Paolo Carlini  <paolo.carlini@oracle.com>
486         PR libstdc++/49561
487         * include/bits/stl_list.h (_List_base<>::_List_impl::_M_size):
488         Add in C++0x mode.
489         (_List_base<>::_List_impl, _List_base<>::_M_get_node,
490         _List_base<>::_M_put_node, _List_base<>::_List_base(_List_base&&),
491         list<>::size, list<>::swap, list<>::splice): Use it.
492         (operator==(const list<>&, const list<>&)): Rewrite in C++0x mode.
493         * include/bits/list.tcc (list<>::erase): Likewise.
494         (list<>::merge): Adjust in C++0x mode.
495         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
496         Adjust dg-error line number.
497         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
498         Likewise.
499         * testsuite/23_containers/list/requirements/dr438/
500         constructor_1_neg.cc: Likewise.
501         * testsuite/23_containers/list/requirements/dr438/
502         constructor_2_neg.cc: Likewise.
504 2012-06-27  Benjamin Kosnik  <bkoz@redhat.com>
506         * include/bits/c++config: Remove __regex nested namespace.
507         * include/bits/regex_compiler.h: Change __regex to
508         __detail. Adjust doxygen markup, add regex-details group.
509         * include/bits/regex_constants.h: Same.
510         * include/bits/regex_cursor.h: Same.
511         * include/bits/regex_error.h: Same.
512         * include/bits/regex_grep_matcher.h: Same.
513         * include/bits/regex_grep_matcher.tcc: Same.
514         * include/bits/regex_nfa.h: Same.
515         * include/bits/regex_nfa.tcc: Same.
516         * include/bits/regex.h: Same. Remove static from global constants.
518         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
520         * include/bits/locale_classes.tcc: Add use_facet, has_facet to
521         locales group.
523 2012-06-25  Edward Smith-Rowland  <3dw4rd@verizon.net>
525         * include/tr2/bool_set (count, size, num_blocks, empty, max_size):
526         Add noexcept.
528 2012-06-25  Edward Smith-Rowland  <3dw4rd@verizon.net>
530         * include/tr2/dynamic_bitset (count, size, num_blocks, empty, max_size):
531         Add noexcept.
533 2012-06-25  Benjamin Kosnik  <bkoz@redhat.com>
535         * doc/doxygen/user.cfg.in: Change COMPACT_LATEX to NO.
537 2012-06-24  Benjamin Kosnik  <bkoz@redhat.com>
539         * testsuite/28_regex/algorithms/02_match: To...
540         * testsuite/28_regex/algorithms/match: ...this.
541         * testsuite/28_regex/headers/04_header/regex/std_c++0x_neg.cc: Remove
542         duplicate.
544 2012-06-18  Jörg Sonnenberger <joerg@britannica.bec.de>
545             Jonathan Wakely  <jwakely.gcc@gmail.com>
547         PR libstdc++/53678
548         * config/os/bsd/netbsd/ctype_base.h: Check for _CTYPE_U.
549         * testsuite/22_locale/ctype_base/53678.cc: New.
551 2012-06-15  Jonathan Wakely  <jwakely.gcc@gmail.com>
553         PR libstdc++/53578
554         * include/ext/concurrence.h (__recursive_mutex::_S_destroy): Fix
555         narrowing conversion.
556         * include/std/mutex (__recursive_mutex_base::_S_destroy): Likewise.
558 2012-06-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
560         PR libstdc++/53270
561         * include/ext/concurrence.h (__mutex, __recursive_mutex, __cond): Use
562         NSDMI in C++11 mode.
563         * include/ext/rope (_Refcount_Base): Likewise. Destroy mutex in
564         destructor when initialized by function.
566 2012-06-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
568         PR libstdc++/53648
569         * include/std/tuple (__empty_not_final): Do not use EBO for tuples.
570         * testsuite/20_util/tuple/53648.cc: New.
571         * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line
572         number.
574 2012-06-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
576         * doc/xml/manual/status_cxx2011.xml: Correct C++11 status table.
578 2012-06-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
580         * doc/xml/manual/status_cxx2011.xml: Correct C++11 status table.
582 2012-05-31  Benjamin Kosnik  <bkoz@redhat.com>
584         PR libstdc++/53543
585         * include/bits/hashtable_policy.h (_Insert::__is_convertible):
586         Rename to __is_conv to avoid clash with clang built-in.
588 2012-05-29  François Dumont  <fdumont@gcc.gnu.org>
590         * include/bits/stl_tempbuf.h (__uninitialized_construct_buf)
591         (__uninitialized_construct_buf_dispatch<>::__ucr): Fix to work
592         with iterator returning rvalue.
593         * testsuite/25_algorithms/stable_sort/3.cc: New.
595 2012-05-28  Paolo Carlini  <paolo.carlini@oracle.com>
597         PR c++/53503
598         * testsuite/26_numerics/headers/cmath/53503.cc: New.
600 2012-05-22  Dodji Seketeli  <dodji@redhat.com>
602         PR c++/53322
603         * include/bits/stl_algobase.h (lower_bound)
604         (lexicographical_compare): Do not declare unused local typedefs
605         here when Concepts are turned off.
607 2012-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
609         * testsuite/22_locale/num_put/put/char/9780-2.cc: Avoid -Wall warnings.
610         * testsuite/29_atomics/atomic/cons/49445.cc: Likewise.
611         * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
612         * Likewise.
613         * testsuite/23_containers/unordered_map/observers.cc: Likewise.
614         * testsuite/23_containers/unordered_map/erase/1.cc: Likewise.
615         * testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise.
616         * testsuite/23_containers/unordered_multimap/erase/2.cc: Likewise.
617         * testsuite/23_containers/unordered_multimap/insert/53115.cc: Likewise.
618         * testsuite/23_containers/unordered_multimap/observers.cc: Likewise.
619         * testsuite/23_containers/vector/debug/alloc_prop.cc: Likewise.
620         * testsuite/23_containers/unordered_set/observers.cc: Likewise.
621         * testsuite/23_containers/unordered_set/erase/1.cc: Likewise.
622         * testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
623         * testsuite/23_containers/unordered_multiset/erase/2.cc: Likewise.
624         * testsuite/23_containers/unordered_multiset/insert/53115.cc: Likewise.
625         * testsuite/23_containers/unordered_multiset/insert/multiset_range.cc:
626         * Likewise.
627         * testsuite/23_containers/unordered_multiset/observers.cc: Likewise.
629 2012-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
631         PR c++/53361
632         * testsuite/23_containers/array/cons/53361.cc: New.
634 2012-05-17  Paolo Carlini  <paolo.carlini@oracle.com>
636         PR c++/44516
637         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust
638         dg-error line number.
640 2012-05-16  H.J. Lu  <hongjiu.lu@intel.com>
642         * configure: Regenerated.
644 2012-05-15  Paolo Carlini  <paolo.carlini@oracle.com>
646         PR libstdc++/53339
647         * include/bits/hashtable_policy.h (__detail::_Identity,
648         __detail::_Select1st): Add.
649         (_Map_base, _Hashtable_base): Use the latter, adjust parameters.
650         * include/bits/hashtable.h (_Hashtable::__key_extract): Adjust.
651         * include/bits/unordered_set.h (__uset_hashtable, __umset_hashtable):
652         Likewise.
653         * include/bits/unordered_map.h (__umap_hashtable, __ummap_hashtable):
654         Likewise.
655         * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd)
656         Unconditionally derive from unary_function.
657         * include/ext/functional (identity, select1st, select2nd): Remove
658         #ifdef __GXX_EXPERIMENTAL_CXX0X__ bits.
659         * testsuite/23_containers/unordered_map/requirements/53339.cc: New.
660         * testsuite/23_containers/unordered_multimap/requirements/
661         53339.cc: Likewise.
663 2012-05-11  François Dumont  <fdumont@gcc.gnu.org>
665         PR libstdc++/53263
666         * include/debug/safe_iterator.h (__gnu_debug::__base): Move...
667         * include/debug/functions.h: ... Here.
668         (__check_sorted_aux): Add overload for random access safe
669         iterators.
670         (__check_partition_lower_aux): New.
671         (__check_partition_lower): Use latter.
672         (__check_partition_upper_aux): New.
673         (__check_partition_upper): Use latter.
674         * include/debug/macros.h (__glibcxx_check_heap)
675         (__glibcxx_check_heap_pred): Use __gnu_debug::__base on iterator range.
677 2012-05-10  DJ Delorie  <dj@redhat.com>
679         * include/bits/random.tcc (seed_seq::generate): Cast max()
680         operands to size_t to ensure a template match.
681         * include/std/bitset (_M_copy_from_ptr): Cast min() operands to
682         size_t to ensure a template match.
684 2012-05-03  Benjamin Kosnik  <bkoz@redhat.com>
686         * scripts/testsuite_flags.in (cxxflags): Remove
687         -ftrack-macro-expansion=0.
689 2012-05-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
691         * doc/xml/faq.xml: Update outdated allocator documentation.
692         * doc/xml/manual/allocator.xml: Likewise.
693         * doc/xml/manual/debug.xml: Likewise.
694         * doc/xml/manual/evolution.xml: Likewise.
695         * doc/xml/manual/using.xml: Likewise.
697 2012-05-02  Benjamin Kosnik  <bkoz@redhat.com>
699         PR libstdc++/44015
700         * include/bits/basic_ios.h: Add tparam markup for
701         * doxygen.  include/bits/basic_string.h: Same.
702         * include/bits/forward_list.h: Same.
703         * include/bits/stl_bvector.h: Same.
704         * include/bits/stl_deque.h: Same.
705         * include/bits/stl_list.h: Same.  include/bits/stl_map.h:
706         * Same.  include/bits/stl_multimap.h: Same.
707         * include/bits/stl_multiset.h: Same.
708         * include/bits/stl_pair.h: Same.
709         * include/bits/stl_queue.h: Same.
710         * include/bits/stl_set.h: Same.
711         * include/bits/stl_stack.h: Same.
712         * include/bits/stl_vector.h: Same.
713         * include/bits/unordered_map.h: Same.
714         * include/bits/unordered_set.h: Same.  include/std/array:
715         * Same.  include/std/atomic: Same.  include/std/fstream:
716         * Same.  include/std/istream: Same.  include/std/ostream:
717         * Same.  include/std/sstream: Same.
718         * include/std/streambuf: Same.
719         * testsuite/23_containers/deque/requirements/dr438/*:
720         Adjust line numbers.
721         * testsuite/23_containers/list/requirements/dr438/*: Same.
722         * testsuite/23_containers/vector/requirements/dr438/*: Same.
724 2012-05-02  DJ Delorie  <dj@redhat.com>
726         * crossconfig.m4: Since we know that all TPF builds are cross-
727         builds and cannot run configuration-time link tests, do not
728         allow it; just go with known supported linker options.
729         * configure: Regenerate (called as GLIBCXX_CROSSCONFIG).
731 2012-05-02  Benjamin Kosnik  <bkoz@redhat.com>
733         * include/bits/hashtable_policy.h: Correct namepace nesting for
734         _Hashtable forward declaration.
736 2012-05-01  François Dumont  <fdumont@gcc.gnu.org>
738         PR libstdc++/53115
739         * include/bits/hashtable.h
740         (_Hashtable<>::_M_rehash_aux(size_type, false_type)): Fix buckets
741         after insertion of several equivalent elements.
742         * testsuite/23_containers/unordered_multiset/insert/53115.cc: New.
743         * testsuite/23_containers/unordered_multimap/insert/53115.cc: New.
745 2012-04-29  Marc Glisse  <marc.glisse@inria.fr>
746             Paolo Carlini  <paolo.carlini@oracle.com>
748         PR libstdc++/51795
749         * include/bits/stl_algobase.h (__lg<>(_Size)): Remove.
750         (__lg(int), __lg(unsigned), __lg(long), __lg(unsigned long),
751         __lg(long long), __lg(unsigned long long)): Define constexpr.
752         * include/bits/random.h (_Mod<>): Overcome Schrage's algorithm
753         limitations.
754         (__mod): Adjust.
755         (linear_congruential): Remove FIXME static_assert.
756         * include/bits/random.tcc (_Mod<>): Adjust.
757         * testsuite/26_numerics/random/linear_congruential_engine/operators/
758         51795.cc: New.
760 2012-04-29  Jonathan Wakely  <jwakely.gcc@gmail.com>
762         * include/std/functional (function::function(F)): LWG 2132: Disable
763         constructor if argument isn't callable.
764         * testsuite/20_util/function/cons/callable.cc: New.
766 2012-04-29  Marc Glisse  <marc.glisse@inria.fr>
768         PR libstdc++/22200
769         * include/std/limits (numeric_limits<>::is_modulo): False for
770         signed types.
772 2012-04-25  Benjamin Kosnik  <bkoz@redhat.com>
774         * include/bits/hashtable.h: Adjust doxygen markup for base
775         classes.
776         * include/bits/hashtable_policy.h: Same.
778 2012-04-25  Benjamin Kosnik  <bkoz@redhat.com>
780         PR libstdc++/52689
781         * testsuite/17_intro/static.cc: Fix.
782         * testsuite/lib/dg-options.exp (dg-require-static-libstdcxx): New.
783         * testsuite/lib/libstdc++.exp (check_v3_target_static_libstdcxx): New.
785 2012-04-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
787         * include/std/scoped_allocator (scoped_allocator::__outermost): Do
788         not pass non-POD to varargs function.
789         * testsuite/20_util/scoped_allocator/1.cc: Fix test.
791 2012-04-24  Benjamin Kosnik  <bkoz@redhat.com>
793         PR libstdc++/52689
794         * testsuite/17_intro/static.cc: New.
796 2012-04-23  Daniel Krugler  <daniel.kruegler@googlemail.com>
798         * include/std/type_traits (is_nothrow_destructible): Implement.
799         (is_destructible): Implement LWG 2049.
800         * testsuite/util/testsuite_tr1.h: Add tests.
801         * testsuite/20_util/is_nothrow_destructible/value.cc: New.
802         * testsuite/20_util/is_nothrow_destructible/requirements/typedefs.cc:
803         * testsuite/20_util/is_nothrow_destructible/requirements/
804         explicit_instantiation.cc: Likewise.
805         * testsuite/20_util/is_destructible/value.cc: Adjust and extend.
806         * testsuite/20_util/is_default_constructible/value.cc: Tweak.
807         * testsuite/20_util/is_constructible/value-2.cc: Likewise.
808         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
809         dg-error line numbers.
810         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
811         Likewise.
812         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
814 2012-04-23  Paolo Carlini  <paolo.carlini@oracle.com>
816         PR libstdc++/53080
817         * include/std/array (tuple_element, get): static_assert I < N.
818         * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
819         New.
820         * testsuite/23_containers/array/tuple_interface/get_neg.cc: Likewise.
821         * testsuite/23_containers/array/tuple_interface/tuple_element.cc: Fix.
823 2012-04-23  Chris Jefferson  <chris@bubblescope.net>
825         PR testsuite/53046
826         * testsuite/25_algorithms/stable_partition/mem_check.cc: Fix size
827         of array A.
828         * testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise.
830 2012-04-22  Paolo Carlini  <paolo.carlini@oracle.com>
832         PR libstdc++/53067
833         * include/bits/hashtable_policy.h: Change inheritances to public.
834         * testsuite/23_containers/unordered_map/requirements/53067.cc: New.
835         * testsuite/23_containers/unordered_set/requirements/53067.cc: Likewise.
837 2012-04-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
839         * include/ext/alloc_traits.h (__alloc_traits::difference_type):
840         Define.
842 2012-04-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
844         PR libstdc++/53027
845         * include/bits/ptr_traits.h (pointer_traits::rebind): Make public.
846         * testsuite/20_util/pointer_traits/requirements/typedefs.cc: Check
847         rebind works.
849 2012-04-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
851         * include/debug/forward_list (forward_list::splice_after): Check
852         allocators are equal.
853         * src/c++11/debug.cc: Fix spelling.
854         * testsuite/23_containers/forward_list/debug/splice_after5_neg.cc:
855         New.
856         * testsuite/23_containers/forward_list/debug/splice_after6_neg.cc:
857         Likewise.
858         * testsuite/23_containers/forward_list/debug/splice_after7_neg.cc:
859         Likewise.
861 2012-04-20  Paolo Carlini  <paolo.carlini@oracle.com>
863         PR libstdc++/53052
864         * include/std/type_traits (is_explicitly_convertible): Remove.
865         * testsuite/20_util/is_explicitly_convertible: Likewise.
866         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
867         Adjust dg-error line numbers.
868         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
869         Likewise.
870         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
872 2012-04-17  Benjamin Kosnik  <bkoz@redhat.com>
874         * testsuite/20_util/specialized_algorithms/uninitialized_copy/
875         808590.cc: New.
877 2012-04-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
879         * testsuite/util/testsuite_abi.cc (compare_symbols): Change
880         summary header to avoid confusion with DejaGnu header.
882 2012-04-15  Paolo Carlini  <paolo.carlini@oracle.com>
884         PR libstdc++/52702
885         * include/std/type_traits (is_trivially_destructible): Add.
886         (has_trivial_destructor): Remove.
887         * testsuite/util/testsuite_common_types.h: Adjust.
888         * testsuite/20_util/tuple/requirements/dr801.cc: Likewise.
889         * testsuite/20_util/pair/requirements/dr801.cc: Likewise.
890         * testsuite/20_util/is_trivially_destructible/value.cc: New.
891         * testsuite/20_util/is_trivially_destructible/requirements/
892         typedefs.cc: Likewise.
893         * testsuite/20_util/is_trivially_destructible/requirements/
894         explicit_instantiation.cc: Likewise.
895         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
896         Adjust dg-error line numbers.
897         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
898         Likewise.
899         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
901 2012-04-14  Paolo Carlini  <paolo.carlini@oracle.com>
903         PR libstdc++/52699
904         * include/bits/random.tcc (independent_bits_engine<>::operator()())
905         Avoid various overflows; use common_type on result_type and
906         _RandomNumberEngine::result_type; avoid floating point computations;
907         other smaller tweaks.
909         * include/bits/random.tcc (uniform_int_distribution<>::operator())
910         Use common_type; assume _UniformRandomNumberGenerator::result_type
911         unsigned; tidy.
913         * include/bits/stl_algobase.h (__lg(unsigned), __lg(unsigned long),
914         __lg(unsigned long long)): Add.
916 2012-04-14  Alan Modra  <amodra@gmail.com>
918         PR libstdc++/52839
919         * acinclude.m4 (_GLIBCXX_ATOMIC_BUILTINS): Do not depend on
920         glibcxx_cv_atomic_long_long.
921         * configure: Regenerate.
923 2012-04-13  Paolo Carlini  <paolo.carlini@oracle.com>
925         * testsuite/26_numerics/cmath/51083.cc: Move...
926         * testsuite/26_numerics/headers/cmath/51083.cc: ... here.
928 2012-04-13  Laurent Alfonsi  <laurent.alfonsi@st.com>
930         PR libstdc++/52604
931         * src/c++98/mt_allocator.cc: (__freelist::~__freelist): Reset pointer.
933 2012-04-13  Paolo Carlini  <paolo.carlini@oracle.com>
935         * include/debug/safe_iterator.h (_BeforeBeginHelper<>::
936         _S_Is_Beginnest): Add.
937         * include/debug/forward_list (_BeforeBeginHelper<>::
938         _S_Is_Beginnest): Likewise.
939         (_Safe_iterator<>::_M_is_beginnest): Add.
940         * include/debug/safe_iterator.tcc (_Safe_iterator<>::_M_valid_range):
941         Use the latter.
942         * testsuite/23_containers/forward_list/debug/splice_after.cc:
943         Add test.
945 2012-04-12  Benjamin Kosnik  <bkoz@redhat.com>
947         * include/bits/unordered_map.h (__unordered_map): Remove.
948         (__unordered_multimap): Remove.
949         Add aliases for __umap_traits, __umap_hashtable, __ummap_traits,
950         __ummap_hashtable.
951         (unordered_map): Derive from __umap_hashtable.
952         (unordered_multimap): Derive from __ummap_hashtable.
953         * include/bits/unordered_set.h (__unordered_set): Remove.
954         (__unordered_multiset): Remove.
955         Add aliases for __uset_traits, __uset_hashtable, __umset_traits,
956         __umset_hashtable.
957         (unordered_set): Derive from __uset_hashtable.
958         (unordered_multiset): Derive from __umset_hashtable.
959         * include/bits/hashtable.h (__cache_default): New, consolidated
960         cache defaults for _Hashtable. Adjust comments for doxygen.
961         (_Hashtable): Consolidate bool template parameters into new,
962         _Traits class. Inherited base classes synthesize _Hashtable in
963         CRTP via original 10 parameters. Prefer using declarations to
964         typedefs, add __node_type, __bucket_type, etc. Push many nested
965         types down hierarchy to _Hashtable_base. Add constructors
966         necessary for top-level unordered_containers. Consolidate insert
967         member functions and logic in new base class, __detail::_Insert
968         and __detail::_Insert_base.
969         (_Hashtable::operator=(initializer_list)): Add.
970         * include/bits/hashtable_policy.h: Convert to doxygen markup.
971         (_Hashtable_traits) New. Consolidate bool template parameters here.
972         (_Insert, _Insert_base): New, consolidated insert member functions.
973         (_Map_base, _Equality, _Rehash_base): Adjust template parameters,
974         use base types.
975         (_Hashtable_base): Move type declarations useful to other base
976         classes into this class.
977         * python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Update.
978         * testsuite/23_containers/unordered_set/instantiation_neg.cc:
979         Adjust traits, line numbers.
981 2012-04-12   Jeffrey Yasskin  <jyasskin@google.com>
983         PR libstdc++/52822
984         * include/bits/stl_algo.h (__find_if_not): Expose in C++98 mode.
985         (__find_if_not_n): Like __find_if_not, but works on and updates a
986         counted range instead of a bounded range.
987         (stable_partition): Guarantee !__pred(*__first) in call to
988         __stable_partition_adaptive() or __inplace_stable_partition().
989         (__stable_partition_adaptive): Use new precondition to avoid
990         moving/copying objects onto themselves.  Guarantee new
991         precondition to recursive calls.
992         (__inplace_stable_partition): Use new precondition to simplify
993         base case, remove __last parameter.  Guarantee new precondition to
994         recursive calls.
995         * testsuite/25_algorithms/stable_partition/moveable.cc (test02):
996         Test a sequence that starts with a value matching the predicate.
997         * testsuite/25_algorithms/stable_partition/pr52822.cc: Test
998         vectors, which have a destructive self-move-assignment.
1000 2012-04-12  Andreas Schwab  <schwab@linux-m68k.org>
1002         * testsuite/Makefile.am (check_DEJAGNUnormal0): Run
1003         prettyprinters.exp.
1004         * testsuite/Makefile.in: Regenerated.
1006 2012-04-12  Paolo Carlini  <paolo.carlini@oracle.com>
1008         PR libstdc++/52942
1009         * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd):
1010         In C++11 mode do not derive from std::unary_function.
1011         * include/ext/functional (identity, select1st, select2nd): Adjust.
1012         * testsuite/23_containers/unordered_map/requirements/52942.cc: New.
1013         * testsuite/23_containers/unordered_set/requirements/52942.cc: Likewise.
1015 2012-04-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
1017         PR libstdc++/52924
1018         * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Add
1019         user-defined destructor.
1020         (_Sp_counted_inplace): Likewise.
1021         * testsuite/20_util/shared_ptr/cons/52924.cc: New.
1022         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
1023         line numbers.
1025 2012-04-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
1027         * doc/xml/manual/debug.xml (Debug Versions of Library Binary Files):
1028         Re-arrange text slightly.
1030 2012-04-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
1032         * testsuite/performance/30_threads/future/polling.cc: Adjust.
1034 2012-04-11  Paolo Carlini  <paolo.carlini@oracle.com>
1036         * include/bits/forward_list.h (splice_after(const_iterator,
1037         forward_list&), splice_after(const_iterator, forward_list&,
1038         const_iterator), splice_after(const_iterator, forward_list&,
1039         const_iterator, const_iterator), merge(forward_list&),
1040         merge(forward_list&, _Comp)): Add per C++11 as published (and
1041         LWG 1310).
1042         * include/debug/forward_list: Adjust.
1044         * include/bits/forward_list.h (splice_after(const_iterator,
1045         forward_list&&, const_iterator)): Only declare.
1046         (_M_transfer_after): Remove.
1047         (_M_splice_after(const_iterator, forward_list&&)): Change signature.
1048         (splice_after(const_iterator, forward_list&&, const_iterator,
1049         const_iterator)): Use the latter.
1050         * include/bits/forward_list.tcc (splice_after(const_iterator,
1051         forward_list&&, const_iterator)): Define here.
1052         (_M_splice_after): Define, use throughout.
1054         * include/bits/forward_list.h (insert_after(const_iterator,
1055         std::initializer_list<_Tp>)): Forward to insert_after(const_iterator,
1056         _InputIterator, _InputIterator).
1057         * include/bits/forward_list.tcc: Remove definition.
1059         * testsuite/23_containers/forward_list/modifiers/6.cc: New.
1060         * testsuite/23_containers/forward_list/operations/1.cc: Adjust.
1062 2012-04-11  Paolo Carlini  <paolo.carlini@oracle.com>
1064         PR libstdc++/52931
1065         * include/bits/functional_hash.h (struct hash): Remove definition.
1066         * testsuite/20_util/hash/52931.cc: New.
1068 2012-04-11  Manuel López-Ibáñez  <manu@gcc.gnu.org>
1070         PR 24985
1071         * testsuite/lib/prune.exp: Handle caret.
1073 2012-04-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1075         Partially revert:
1076         2012-03-28  Benjamin Kosnik  <bkoz@redhat.com>
1078         PR libstdc++/52689
1079         * src/c++98/compatibility-list.cc: Same.
1081 2012-04-05  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>
1083         PR bootstrap/52840
1084         * src/Makefile.am (build-debug): Do not adjust vpath dir, remove
1085         Makefile.tmp
1086         * src/Makefile.in: Adjust as per above.
1088 2012-04-04  Uros Bizjak  <ubizjak@gmail.com>
1090         Partially revert:
1091         2012-03-28  Benjamin Kosnik  <bkoz@redhat.com>
1093         PR libstdc++/52689
1094         * src/c++98/compatibility-ldbl.cc: Guard with PIC
1096 2012-04-02  Tristan Gingold  <gingold@adacore.com>
1098         * crossconfig.m4 (*-*-*vms*): Add.
1099         * configure: Regenerate.
1101 2012-04-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
1103         PR libstdc++/52591
1104         * include/bits/stl_vector.h (vector::operator=(vector&&)): Dispatch
1105         to _M_move_assign depending on whether allocator is moved.
1106         (vector::_M_move_assign): Add overloaded functions.
1107         * testsuite/23_containers/vector/52591.cc: New.
1108         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1109         Adjust dg-error line number.
1110         * testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc:
1111         Likewise.
1112         * testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc:
1113         Likewise.
1114         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1115         Likewise.
1117 2012-04-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
1119         * include/std/functional (__callable_functor): Overload for
1120         volatile-qualified pointers.
1121         * testsuite/20_util/function/10.cc: New.
1123 2012-03-30  Jeffrey Yasskin  <jyasskin@gcc.gnu.org>
1124             Paolo Carlini  <paolo.carlini@oracle.com>
1126         PR libstdc++/52799
1127         * include/bits/deque.tcc (emplace): Fix thinko, replace push_front
1128         -> emplace_front, and likewise for *_back.
1129         * testsuite/23_containers/deque/modifiers/emplace/52799.cc: New.
1130         * testsuite/23_containers/list/modifiers/emplace/52799.cc: Likewise.
1131         * testsuite/23_containers/vector/modifiers/emplace/52799.cc: Likewise.
1133 2012-03-28  Benjamin Kosnik  <bkoz@redhat.com>
1135         PR libstdc++/52689
1136         * libsupc++/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
1137         * libsupc++/Makefile.in: Regenerated.
1138         * src/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
1139         (libstdc___la_SOURCES): Add in compatiblity files, with content
1140         that varies with -DPIC.
1141         * src/Makefile.in: Regenerated.
1142         * src/c++11/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
1143         * src/c++11/Makefile.in: Regenerated.
1144         * src/c++11/compatibility-atomic-c++0x.cc: Guard with PIC.
1145         * src/c++11/compatibility-c++0x.cc: Same.
1146         * src/c++11/future.cc: Consolidate compatibility bits into..
1147         * src/c++11/mutex.cc: Consolidate compatibility bits into..
1148         * src/c++11/compatibility-thread-cxx0x.cc: ...here. New.
1149         * src/c++98/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
1150         * src/c++98/Makefile.in: Regenerated.
1151         * src/c++98/compatibility-ldbl.cc: Guard with PIC
1152         * src/c++98/compatibility-list-2.cc: Same.
1153         * src/c++98/compatibility-list.cc: Same.
1154         * src/c++98/compatibility.cc: Tweak comments.
1156 2012-03-28  Terry Guo  <terry.guo@arm.com>
1158         * testsuite/Makefile.am (TEST_GCC_EXEC_PREFIX): New.
1159         * testsuite/Makefile.in: Regenerated.
1161 2012-03-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
1163         * include/std/functional (mem_fn): Qualify to prevent ADL.
1164         * testsuite/20_util/function_objects/mem_fn/adl.cc: New.
1166 2012-03-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
1168         * include/std/type_traits (result_of): Fix handling of cv-quals.
1169         * testsuite/20_util/result_of/1.cc: New.
1170         * testsuite/20_util/result_of/2.cc: New.
1171         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1172         line numbers.
1173         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1174         Likewise.
1175         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1176         Likewise.
1178 2012-03-23  David S. Miller  <davem@davemloft.net>
1180         * config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Update.
1182 2012-03-23  Benjamin Kosnik  <bkoz@redhat.com>
1184         * scripts/testsuite_flags.in (--cxxflags): Let CXXFLAGS set -g -O2.
1185         * testsuite/lib/libstdc++.exp: Same.
1187 2012-03-23  Paolo Carlini  <paolo.carlini@oracle.com>
1189         * include/bits/forward_list.h: Slightly tweak two comments.
1191 2012-03-22  Benjamin Kosnik  <bkoz@redhat.com>
1193         * doc/Makefile.am: XML output names have only .xml suffix.
1194         * doc/Makefile.in: Regenerate.
1196 2012-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
1198         * include/std/array (array<>::at(size_type) const): Fix version
1199         for undefined __EXCEPTIONS.
1201 2013-03-21  Andreas Tobler  <andreast@fgznet.ch>
1203         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
1204         Skip this test on powerpc64-*-freebsd*.
1206 2012-03-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
1208         * include/bits/stl_list.h (list::_M_size): Use NSDMI.
1209         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1210         Adjust line numbers.
1211         * testsuite/23_containers/list/requirements/dr438/
1212         constructor_1_neg.cc: Likewise.
1213         * testsuite/23_containers/list/requirements/dr438/
1214         constructor_2_neg.cc: Likewise.
1215         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1216         Likewise.
1218 2012-03-19  Paweł Sikora  <pawel.sikora@agmk.net>
1220         PR libstdc++/52540
1221         * include/Makefile.am (c++config.h): Fix sed rule to not break
1222         the _GLIBCXX_EXTERN_TEMPLATE redefinition.
1223         * include/Makefile.in: Regenerate.
1225 2012-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
1227         * testsuite/Makefile.in: Regenerate.
1229 2012-03-19  Benjamin Kosnik  <bkoz@redhat.com>
1231         * include/bits/allocator.h (std::allocator): Base class is
1232         __allocator_base.
1233         (uses_allocator): Add to sub-grouping.
1234         * include/ext/new_allocator.h: Doxygen markup for tparm.
1236         * config/allocator/bitmap_allocator_base.h: Use __allocator_base
1237         template alias in C++11.
1238         * config/allocator/malloc_allocator_base.h: Same.
1239         * config/allocator/mt_allocator_base.h: Same.
1240         * config/allocator/new_allocator_base.h: Same.
1241         * config/allocator/pool_allocator_base.h: Same.
1243 2012-03-19  Benjamin Kosnik  <bkoz@redhat.com>
1245         * include/ext/pb_ds/detail/pat_trie_/
1246         constructors_destructor_fn_imps.hpp: Increment after recursion.
1247         * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Convert
1248         node_type markup from brief.
1250 2012-03-16  François Dumont  <fdumont@gcc.gnu.org>
1252         PR libstdc++/52476
1253         * include/bits/hashtable.h (_Hashtable<>::_M_rehash_aux): Add.
1254         (_Hashtable<>::_M_rehash): Use the latter.
1255         * testsuite/23_containers/unordered_multimap/insert/52476.cc: New.
1256         * testsuite/23_containers/unordered_multiset/insert/52476.cc: New.
1258 2012-03-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1260         * config/os/solaris/solaris2.8: Rename to ...
1261         * config/os/solaris/solaris2.9: ... this.
1262         * config/abi/post/solaris2.8: Rename to ...
1263         * config/abi/post/solaris2.9: ... this.
1264         * configure.host (os_include_dir): Remove solaris2.8.
1265         Reflect renaming.
1266         (abi_baseline_pair): Remove *-*-solaris2.8.
1267         Reflect renaming.
1269         * configure.ac (GLIBCXX_CHECK_MATH_PROTO): Remove
1270         (GLIBCXX_CHECK_STDLIB_PROTO): Remove.
1271         * acinclude.m4 (GLIBCXX_CHECK_MATH_PROTO): Remove
1272         (GLIBCXX_CHECK_STDLIB_PROTO): Remove.
1273         (GLIBCXX_CHECK_GTHREADS): Remove Solaris 8 handling.
1274         * crossconfig.m4 (GLIBCXX_CROSSCONFIG): Remove *-solaris2.8
1275         handling.
1276         * configure: Regenerate.
1277         * config.h.in: Regenerate.
1279         * config/os/solaris/solaris2.9/os_defines.h
1280         (__CORRECT_ISO_CPP_MATH_H_PROTO): Define.
1281         (__CORRECT_ISO_CPP_STDLIB_H_PROTO): Define.
1282         * include/c_global/cmath: Rename __CORRECT_ISO_CPP_MATH_H_PROTO1
1283         to __CORRECT_ISO_CPP_MATH_H_PROTO.
1284         [!__CORRECT_ISO_CPP_MATH_H_PROTO2]: Remove.
1285         * include/tr1/cmath: Rename __CORRECT_ISO_CPP_MATH_H_PROTO1 to
1286         __CORRECT_ISO_CPP_MATH_H_PROTO.
1288         * doc/xml/manual/configure.xml (Configure, --enable-libstdcxx-threads):
1289         Remove Solaris 8 reference.
1291         * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
1292         Don't xfail on *-*-solaris2.8.
1293         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
1294         Likewise.
1295         * testsuite/ext/enc_filebuf/char/13598.cc: Don't xfail on
1296         *-*-solaris2.8.
1298 2012-03-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1300         * configure.host (irix6.5*): Remove.
1301         * config/os/irix: Remove.
1302         * config/io/basic_file_stdio.cc (__basic_file<char>::showmanyc())
1303         [_GLIBCXX_FIONREAD_TAKES_OFF_T]: Remove.
1305         * doc/xml/faq.xml: Remove IRIX reference.
1306         * doc/xml/manual/using.xml (Finding Dynamic or Shared Libraries):
1307         Remove IRIX example.
1309         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
1310         Remove mips-sgi-irix6* handling.
1311         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
1312         * testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
1313         * testsuite/21_strings/basic_string/pthread4.cc: Likewise.
1314         * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
1315         * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
1316         * testsuite/23_containers/list/pthread1.cc: Likewise.
1317         * testsuite/23_containers/list/pthread5.cc: Likewise.
1318         * testsuite/23_containers/map/pthread6.cc: Likewise.
1319         * testsuite/23_containers/vector/debug/multithreaded_swap.cc: Likewise.
1320         * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
1321         * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
1322         * testsuite/30_threads/async/42819.cc: Likewise.
1323         * testsuite/30_threads/async/49668.cc: Likewise.
1324         * testsuite/30_threads/async/any.cc: Likewise.
1325         * testsuite/30_threads/async/async.cc: Likewise.
1326         * testsuite/30_threads/async/launch.cc: Likewise.
1327         * testsuite/30_threads/async/sync.cc: Likewise.
1328         * testsuite/30_threads/call_once/39909.cc: Likewise.
1329         * testsuite/30_threads/call_once/49668.cc: Likewise.
1330         * testsuite/30_threads/call_once/call_once1.cc: Likewise.
1331         * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
1332         * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
1333         * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
1334         * testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
1335         Likewise.
1336         * testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
1337         * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
1338         * testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
1339         * testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
1340         * testsuite/30_threads/future/cons/move.cc: Likewise.
1341         * testsuite/30_threads/future/members/45133.cc: Likewise.
1342         * testsuite/30_threads/future/members/get.cc: Likewise.
1343         * testsuite/30_threads/future/members/get2.cc: Likewise.
1344         * testsuite/30_threads/future/members/share.cc: Likewise.
1345         * testsuite/30_threads/future/members/valid.cc: Likewise.
1346         * testsuite/30_threads/future/members/wait.cc: Likewise.
1347         * testsuite/30_threads/future/members/wait_for.cc: Likewise.
1348         * testsuite/30_threads/future/members/wait_until.cc: Likewise.
1349         * testsuite/30_threads/lock/1.cc: Likewise.
1350         * testsuite/30_threads/lock/2.cc: Likewise.
1351         * testsuite/30_threads/lock/3.cc: Likewise.
1352         * testsuite/30_threads/lock/4.cc: Likewise.
1353         * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
1354         * testsuite/30_threads/mutex/cons/1.cc: Likewise.
1355         * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
1356         * testsuite/30_threads/mutex/lock/1.cc: Likewise.
1357         * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
1358         * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
1359         * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
1360         * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
1361         * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
1362         * testsuite/30_threads/packaged_task/49668.cc: Likewise.
1363         * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
1364         * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
1365         * testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
1366         * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
1367         * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
1368         * testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
1369         * testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
1370         * testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
1371         * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
1372         * testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
1373         * testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
1374         * testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
1375         * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
1376         * testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
1377         * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
1378         * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
1379         * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
1380         * testsuite/30_threads/promise/cons/1.cc: Likewise.
1381         * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
1382         * testsuite/30_threads/promise/cons/move.cc: Likewise.
1383         * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
1384         * testsuite/30_threads/promise/members/get_future.cc: Likewise.
1385         * testsuite/30_threads/promise/members/get_future2.cc: Likewise.
1386         * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
1387         * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
1388         * testsuite/30_threads/promise/members/set_value.cc: Likewise.
1389         * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
1390         * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
1391         * testsuite/30_threads/promise/members/swap.cc: Likewise.
1392         * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
1393         * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
1394         Likewise.
1395         * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
1396         * testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
1397         * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
1398         Likewise.
1399         * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
1400         * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
1401         * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
1402         * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
1403         * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
1404         Likewise.
1405         * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
1406         * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
1407         * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
1408         Likewise.
1409         * testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
1410         Likewise.
1411         * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
1412         * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
1413         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
1414         Likewise.
1415         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
1416         Likewise.
1417         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
1418         Likewise.
1419         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
1420         Likewise.
1421         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
1422         Likewise.
1423         * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
1424         * testsuite/30_threads/shared_future/cons/move.cc: Likewise.
1425         * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
1426         * testsuite/30_threads/shared_future/members/get.cc: Likewise.
1427         * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
1428         * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
1429         * testsuite/30_threads/shared_future/members/wait.cc: Likewise.
1430         * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
1431         * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
1432         * testsuite/30_threads/this_thread/1.cc: Likewise.
1433         * testsuite/30_threads/this_thread/2.cc: Likewise.
1434         * testsuite/30_threads/this_thread/3.cc: Likewise.
1435         * testsuite/30_threads/this_thread/4.cc: Likewise.
1436         * testsuite/30_threads/thread/cons/1.cc: Likewise.
1437         * testsuite/30_threads/thread/cons/2.cc: Likewise.
1438         * testsuite/30_threads/thread/cons/3.cc: Likewise.
1439         * testsuite/30_threads/thread/cons/4.cc: Likewise.
1440         * testsuite/30_threads/thread/cons/49668.cc: Likewise.
1441         * testsuite/30_threads/thread/cons/5.cc: Likewise.
1442         * testsuite/30_threads/thread/cons/6.cc: Likewise.
1443         * testsuite/30_threads/thread/cons/7.cc: Likewise.
1444         * testsuite/30_threads/thread/cons/8.cc: Likewise.
1445         * testsuite/30_threads/thread/cons/9.cc: Likewise.
1446         * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
1447         * testsuite/30_threads/thread/members/1.cc: Likewise.
1448         * testsuite/30_threads/thread/members/2.cc: Likewise.
1449         * testsuite/30_threads/thread/members/3.cc: Likewise.
1450         * testsuite/30_threads/thread/members/4.cc: Likewise.
1451         * testsuite/30_threads/thread/members/5.cc: Likewise.
1452         * testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
1453         * testsuite/30_threads/thread/native_handle/typesizes.cc: Likewise.
1454         * testsuite/30_threads/thread/swap/1.cc: Likewise.
1455         * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
1456         * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
1457         * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
1458         * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
1459         * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Likewise.
1460         * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
1461         * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
1462         * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
1463         * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
1464         * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
1465         * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
1466         * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
1467         * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
1468         * testsuite/30_threads/try_lock/1.cc: Likewise.
1469         * testsuite/30_threads/try_lock/2.cc: Likewise.
1470         * testsuite/30_threads/try_lock/3.cc: Likewise.
1471         * testsuite/30_threads/try_lock/4.cc: Likewise.
1472         * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
1473         * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
1474         * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
1475         * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
1476         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
1477         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
1478         * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
1479         * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
1480         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
1481         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
1482         * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
1483         * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
1484         * testsuite/ext/rope/pthread7-rope.cc: Likewise.
1485         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
1486         default_weaktoshared.cc: Likewise.
1487         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
1488         mutex_weaktoshared.cc: Likewise.
1490         * testsuite/23_containers/vector/capacity/resize/1.cc: Remove
1491         dg-options for mips*-*-irix6*.
1493         * testsuite/27_io/ios_base/storage/1.cc: Likewise.
1494         * testsuite/27_io/ios_base/storage/2.cc: Likewise.
1495         * testsuite/27_io/ios_base/storage/3.cc: Likewise.
1497         * testsuite/lib/libstdc++.exp (v3-build_support): Remove IRIX 6
1498         workaround.
1500 2012-03-14  Paolo Carlini  <paolo.carlini@oracle.com>
1502         * include/bits/forward_list.h: Fix comments.
1504 2012-03-13  Terry Guo  <terry.guo@arm.com>
1506         * testsuite/Makefile.in (TEST_GCC_EXEC_PREFIX): New.
1508 2012-03-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1510         * configure.host: Remove osf* handling.
1511         * config/os/osf: Remove.
1512         * doc/xml/manual/using.xml: Remove OSF reference.
1514         * testsuite/18_support/pthread_guard.cc: Remove alpha*-*-osf* handling.
1515         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Likewise.
1516         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
1517         * testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
1518         * testsuite/21_strings/basic_string/pthread4.cc: Likewise.
1519         * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
1520         * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
1521         * testsuite/23_containers/list/pthread1.cc: Likewise.
1522         * testsuite/23_containers/list/pthread5.cc: Likewise.
1523         * testsuite/23_containers/map/pthread6.cc: Likewise.
1524         * testsuite/23_containers/vector/debug/multithreaded_swap.cc: Likewise.
1525         * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
1526         * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
1527         * testsuite/30_threads/async/42819.cc: Likewise.
1528         * testsuite/30_threads/async/49668.cc: Likewise.
1529         * testsuite/30_threads/async/any.cc: Likewise.
1530         * testsuite/30_threads/async/async.cc: Likewise.
1531         * testsuite/30_threads/async/launch.cc: Likewise.
1532         * testsuite/30_threads/async/sync.cc: Likewise.
1533         * testsuite/30_threads/call_once/39909.cc: Likewise.
1534         * testsuite/30_threads/call_once/49668.cc: Likewise.
1535         * testsuite/30_threads/call_once/call_once1.cc: Likewise.
1536         * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
1537         * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
1538         * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
1539         * testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
1540         Likewise.
1541         * testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
1542         * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
1543         * testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
1544         * testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
1545         * testsuite/30_threads/future/cons/move.cc: Likewise.
1546         * testsuite/30_threads/future/members/45133.cc: Likewise.
1547         * testsuite/30_threads/future/members/get.cc: Likewise.
1548         * testsuite/30_threads/future/members/get2.cc: Likewise.
1549         * testsuite/30_threads/future/members/share.cc: Likewise.
1550         * testsuite/30_threads/future/members/valid.cc: Likewise.
1551         * testsuite/30_threads/future/members/wait.cc: Likewise.
1552         * testsuite/30_threads/future/members/wait_for.cc: Likewise.
1553         * testsuite/30_threads/future/members/wait_until.cc: Likewise.
1554         * testsuite/30_threads/lock/1.cc: Likewise.
1555         * testsuite/30_threads/lock/2.cc: Likewise.
1556         * testsuite/30_threads/lock/3.cc: Likewise.
1557         * testsuite/30_threads/lock/4.cc: Likewise.
1558         * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
1559         * testsuite/30_threads/mutex/cons/1.cc: Likewise.
1560         * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
1561         * testsuite/30_threads/mutex/lock/1.cc: Likewise.
1562         * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
1563         * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
1564         * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
1565         * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
1566         * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
1567         * testsuite/30_threads/packaged_task/49668.cc: Likewise.
1568         * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
1569         * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
1570         * testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
1571         * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
1572         * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
1573         * testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
1574         * testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
1575         * testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
1576         * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
1577         * testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
1578         * testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
1579         * testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
1580         * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
1581         * testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
1582         * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
1583         * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
1584         * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
1585         * testsuite/30_threads/promise/cons/1.cc: Likewise.
1586         * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
1587         * testsuite/30_threads/promise/cons/move.cc: Likewise.
1588         * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
1589         * testsuite/30_threads/promise/members/get_future.cc: Likewise.
1590         * testsuite/30_threads/promise/members/get_future2.cc: Likewise.
1591         * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
1592         * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
1593         * testsuite/30_threads/promise/members/set_value.cc: Likewise.
1594         * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
1595         * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
1596         * testsuite/30_threads/promise/members/swap.cc: Likewise.
1597         * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
1598         * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
1599         Likewise.
1600         * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
1601         * testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
1602         * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
1603         Likewise.
1604         * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
1605         * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
1606         * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
1607         * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
1608         * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
1609         Likewise.
1610         * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
1611         * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
1612         * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
1613         Likewise.
1614         * testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
1615         Likewise.
1616         * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
1617         * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
1618         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
1619         Likewise.
1620         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
1621         Likewise.
1622         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
1623         Likewise.
1624         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
1625         Likewise.
1626         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
1627         Likewise.
1628         * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
1629         * testsuite/30_threads/shared_future/cons/move.cc: Likewise.
1630         * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
1631         * testsuite/30_threads/shared_future/members/get.cc: Likewise.
1632         * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
1633         * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
1634         * testsuite/30_threads/shared_future/members/wait.cc: Likewise.
1635         * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
1636         * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
1637         * testsuite/30_threads/this_thread/1.cc: Likewise.
1638         * testsuite/30_threads/this_thread/2.cc: Likewise.
1639         * testsuite/30_threads/this_thread/3.cc: Likewise.
1640         * testsuite/30_threads/this_thread/4.cc: Likewise.
1641         * testsuite/30_threads/thread/cons/1.cc: Likewise.
1642         * testsuite/30_threads/thread/cons/2.cc: Likewise.
1643         * testsuite/30_threads/thread/cons/3.cc: Likewise.
1644         * testsuite/30_threads/thread/cons/4.cc: Likewise.
1645         * testsuite/30_threads/thread/cons/49668.cc: Likewise.
1646         * testsuite/30_threads/thread/cons/5.cc: Likewise.
1647         * testsuite/30_threads/thread/cons/6.cc: Likewise.
1648         * testsuite/30_threads/thread/cons/7.cc: Likewise.
1649         * testsuite/30_threads/thread/cons/8.cc: Likewise.
1650         * testsuite/30_threads/thread/cons/9.cc: Likewise.
1651         * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
1652         * testsuite/30_threads/thread/members/1.cc: Likewise.
1653         * testsuite/30_threads/thread/members/2.cc: Likewise.
1654         * testsuite/30_threads/thread/members/3.cc: Likewise.
1655         * testsuite/30_threads/thread/members/4.cc: Likewise.
1656         * testsuite/30_threads/thread/members/5.cc: Likewise.
1657         * testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
1658         * testsuite/30_threads/thread/swap/1.cc: Likewise.
1659         * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
1660         * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
1661         * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
1662         * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
1663         * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Likewise.
1664         * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
1665         * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
1666         * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
1667         * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
1668         * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
1669         * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
1670         * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
1671         * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
1672         * testsuite/30_threads/try_lock/1.cc: Likewise.
1673         * testsuite/30_threads/try_lock/2.cc: Likewise.
1674         * testsuite/30_threads/try_lock/3.cc: Likewise.
1675         * testsuite/30_threads/try_lock/4.cc: Likewise.
1676         * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
1677         * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
1678         * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
1679         * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
1680         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
1681         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
1682         * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
1683         * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
1684         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
1685         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
1686         * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
1687         * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
1688         * testsuite/ext/rope/pthread7-rope.cc: Likewise.
1689         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
1690         default_weaktoshared.cc: Likewise.
1691         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
1692         mutex_weaktoshared.cc: Likewise.
1694 2012-03-12  Paolo Carlini  <paolo.carlini@oracle.com>
1696         PR libstdc++/52562
1697         * libsupc++/typeinfo (type_info::name, before, operator==,
1698         operator!=): Mark noexcept in C++11 mode.
1699         * libsupc++/tinfo.cc (type_info::operator==): Adjust.
1700         * libsupc++/tinfo2.cc (type_info::before): Likewise.
1701         * testsuite/18_support/type_info/52562.cc: New.
1703 2012-03-10  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1705         * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
1706         symbols added in last change.
1708         PR libstdc++/52456
1709         * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
1711 2012-03-09  Andreas Schwab  <schwab@linux-m68k.org>
1713         * config/locale/gnu/monetary_members.cc
1714         (moneypunct<char,true>::_M_initialize_moneypunct): Throw caught
1715         exception again.
1716         (moneypunct<char,false>::_M_initialize_moneypunct): Likewise.
1717         * testsuite/22_locale/locale/cons/12352.cc: Also test en_US
1718         locale.
1720 2012-03-09  Paolo Carlini  <paolo.carlini@oracle.com>
1722         * include/debug/formatter.h (enum _Debug_msg_id): Add
1723         __msg_self_move_assign.
1724         * include/debug/macros.h (__glibcxx_check_self_move_assign): Add.
1725         * src/c++11/debug.cc (_S_debug_messages): Update.
1726         * include/debug/safe_iterator.h (_Safe_iterator<>::operator=
1727         (_Safe_iterator&&)): Add check for self move assignment.
1728         * include/debug/set.h: Likewise.
1729         * include/debug/unordered_map: Likewise.
1730         * include/debug/multiset.h: Likewise.
1731         * include/debug/forward_list: Likewise.
1732         * include/debug/unordered_set: Likewise.
1733         * include/debug/vector: Likewise.
1734         * include/debug/map.h: Likewise.
1735         * include/debug/deque: Likewise.
1736         * include/debug/string: Likewise.
1737         * include/debug/list: Likewise.
1738         * include/debug/multimap.h: Likewise.
1739         * testsuite/21_strings/debug/self_move_assign_neg.cc: New.
1740         * testsuite/21_strings/debug/iterator_self_move_assign_neg.cc: Likewise.
1741         * testsuite/23_containers/unordered_map/debug/self_move_assign_neg.cc:
1742         Likewise.
1743         * testsuite/23_containers/unordered_map/debug/
1744         iterator_self_move_assign_neg.cc: Likewise.
1745         * testsuite/23_containers/multimap/debug/self_move_assign_neg.cc:
1746         Likewise.
1747         * testsuite/23_containers/multimap/debug/
1748         iterator_self_move_assign_neg.cc: Likewise.
1749         * testsuite/23_containers/set/debug/self_move_assign_neg.cc: Likewise.
1750         * testsuite/23_containers/set/debug/iterator_self_move_assign_neg.cc:
1751         Likewise.
1752         * testsuite/23_containers/unordered_multimap/debug/
1753         self_move_assign_neg.cc: Likewise.
1754         * testsuite/23_containers/unordered_multimap/debug/
1755         iterator_self_move_assign_neg.cc: Likewise.
1756         * testsuite/23_containers/forward_list/debug/self_move_assign_neg.cc:
1757         Likewise.
1758         * testsuite/23_containers/forward_list/debug/
1759         iterator_self_move_assign_neg.cc: Likewise.
1760         * testsuite/23_containers/unordered_set/debug/self_move_assign_neg.cc:
1761         Likewise.
1762         * testsuite/23_containers/unordered_set/debug/
1763         iterator_self_move_assign_neg.cc: Likewise.
1764         * testsuite/23_containers/vector/debug/self_move_assign_neg.cc:
1765         Likewise.
1766         * testsuite/23_containers/vector/debug/
1767         iterator_self_move_assign_neg.cc: Likewise.
1768         * testsuite/23_containers/deque/debug/self_move_assign_neg.cc: Likewise.
1769         * testsuite/23_containers/deque/debug/iterator_self_move_assign_neg.cc:
1770         Likewise.
1771         * testsuite/23_containers/multiset/debug/self_move_assign_neg.cc:
1772         Likewise.
1773         * testsuite/23_containers/multiset/debug/
1774         iterator_self_move_assign_neg.cc: Likewise.
1775         * testsuite/23_containers/list/debug/self_move_assign_neg.cc:
1776         Likewise.
1777         * testsuite/23_containers/list/debug/iterator_self_move_assign_neg.cc:
1778         Likewise.
1779         * testsuite/23_containers/unordered_multiset/debug/
1780         self_move_assign_neg.cc: Likewise.
1781         * testsuite/23_containers/unordered_multiset/debug/
1782         iterator_self_move_assign_neg.cc: Likewise.
1783         * testsuite/23_containers/map/debug/self_move_assign_neg.cc:
1784         Likewise.
1785         * testsuite/23_containers/map/debug/iterator_self_move_assign_neg.cc:
1786         Likewise.
1788 2012-03-08  Benjamin Kosnik  <bkoz@redhat.com>
1790         * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.0.
1791         * include/bits/locale_facets.h: Adjust markup to avoid warnings.
1792         * include/ext/pb_ds/assoc_container.hpp: Same.
1793         * include/ext/pb_ds/priority_queue.hpp: Same.
1794         * include/std/fstream: Same.
1795         * include/std/ratio: Same.
1796         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust line
1797         numbers.
1798         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Same.
1800 2012-03-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
1802         PR libstdc++/52433
1803         * include/debug/safe_iterator.h (_Safe_iterator): Add debug checks
1804         to move constructor and move assignment operator.
1806 2012-03-05  Paolo Carlini  <paolo.carlini@oracle.com>
1808         * include/bits/stl_algobase.h (iter_swap): In C++11 mode simply
1809         call swap.
1810         * include/bits/stl_bvector.h (swap(_Bit_reference,
1811         _Bit_reference), swap(_Bit_reference, bool&),
1812         swap(bool&, _Bit_reference)): Add.
1813         * testsuite/23_containers/vector/bool/swap.cc: New.
1815 2012-03-04  Paolo Carlini  <paolo.carlini@oracle.com>
1816             Jonathan Wakely  <jwakely.gcc@gmail.com>
1818         PR libstdc++/43813
1819         * include/bits/stl_iterator_base_types.h (_RequireInputIter): New.
1820         * include/ext/vstring.h (__versa_string<>::__versa_string
1821         (_InputIterator, _InputIterator, const _Alloc&),
1822         __versa_string<>::append(_InputIterator, _InputIterator),
1823         __versa_string<>::assign(_InputIterator, _InputIterator),
1824         __versa_string<>::insert(iterator, _InputIterator,
1825         _InputIterator), __versa_string<>::replace(iterator, iterator,
1826         _InputIterator, _InputIterator)): Use it.
1827         * include/bits/stl_list.h (list<>::list(_InputIterator,
1828         _InputIterator, const allocator_type&), list<>::assign(_InputIterator,
1829         _InputIterator), list<>::insert(iterator, _InputIterator,
1830         _InputIterator)): Likewise.
1831         * include/bits/stl_vector.h (vector<>::vector(_InputIterator,
1832         _InputIterator, const allocator_type&), vector<>::assign(_InputIterator,
1833         _InputIterator), vectort<>::insert(iterator, _InputIterator,
1834         _InputIterator)): Likewise.
1835         * include/bits/stl_deque.h (deque<>::deque(_InputIterator,
1836         _InputIterator, const allocator_type&), deque<>::deque(_InputIterator,
1837         _InputIterator), deque<>::insert(iterator, _InputIterator,
1838         _InputIterator)): Likewise.
1839         * include/bits/stl_bvector.h (vector<>::vector(_InputIterator,
1840         _InputIterator, const allocator_type&), vector<>::deque(_InputIterator,
1841         _InputIterator), vector<>::insert(iterator, _InputIterator,
1842         _InputIterator)): Likewise.
1843         * include/bits/forward_list.h (forward_list<>::forward_list
1844         (_InputIterator, _InputIterator, const allocator_type&),
1845         forward_list<>::assign(_InputIterator, _InputIterator),
1846         forward_list<>::insert_after(const_iterator, _InputIterator,
1847         _InputIterator)): Likewise.
1848         (forward_list<>::_M_initialize_dispatch(,, __true_type): Remove.
1849         (forward_list<>::_M_range_initialize): Add, adjust everywhere.
1850         * include/bits/forward_list.tcc: Adjust.
1851         * include/debug/forward_list: Adjust.
1852         * include/debug/vector: Likewise.
1853         * include/debug/deque: Likewise.
1854         * include/debug/list: Likewise.
1855         * testsuite/ext/vstring/requirements/do_the_right_thing.cc: New.
1856         * testsuite/23_containers/forward_list/requirements/
1857         do_the_right_thing.cc: Likewise.
1858         * testsuite/23_containers/vector/requirements/
1859         do_the_right_thing.cc: Likewise.
1860         * testsuite/23_containers/deque/requirements/
1861         do_the_right_thing.cc: Likewise.
1862         * testsuite/23_containers/list/requirements/
1863         do_the_right_thing.cc: Likewise.
1864         * testsuite/23_containers/forward_list/requirements/dr438/
1865         assign_neg.cc: Adjust dg-error line number.
1866         * testsuite/23_containers/forward_list/requirements/dr438/
1867         insert_neg.cc: Likewise.
1868         * testsuite/23_containers/forward_list/requirements/dr438/
1869         constructor_1_neg.cc: Likewise.
1870         * testsuite/23_containers/forward_list/requirements/dr438/
1871         constructor_2_neg.cc: Likewise.
1872         * testsuite/23_containers/vector/requirements/dr438/
1873         assign_neg.cc: Likewise.
1874         * testsuite/23_containers/vector/requirements/dr438/
1875         insert_neg.cc: Likewise.
1876         * testsuite/23_containers/vector/requirements/dr438/
1877         constructor_1_neg.cc: Likewise.
1878         * testsuite/23_containers/vector/requirements/dr438/
1879         constructor_2_neg.cc: Likewise.
1880         * testsuite/23_containers/deque/requirements/dr438/
1881         assign_neg.cc: Likewise.
1882         * testsuite/23_containers/deque/requirements/dr438/
1883         insert_neg.cc: Likewise.
1884         * testsuite/23_containers/deque/requirements/dr438/
1885         constructor_1_neg.cc: Likewise.
1886         * testsuite/23_containers/deque/requirements/dr438/
1887         constructor_2_neg.cc: Likewise.
1888         * testsuite/23_containers/list/requirements/dr438/
1889         assign_neg.cc: Likewise.
1890         * testsuite/23_containers/list/requirements/dr438/
1891         insert_neg.cc: Likewise.
1892         * testsuite/23_containers/list/requirements/dr438/
1893         constructor_1_neg.cc: Likewise.
1894         * testsuite/23_containers/list/requirements/dr438/
1895         constructor_2_neg.cc: Likewise.
1897 2012-03-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
1899         PR libstdc++/52433
1900         * include/debug/safe_iterator.h (_Safe_iterator): Add move
1901         constructor and move assignment operator.
1902         * testsuite/23_containers/vector/debug/52433.cc: New.
1904 2012-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
1906         * include/std/limits (numeric_limits): Fix returns per C++11.
1907         * testsuite/18_support/numeric_limits/primary.cc: New.
1909 2012-03-02  Benjamin Kosnik  <bkoz@redhat.com>
1911         * include/c_global/cstdio: Remove extraneous extern.
1912         * include/c_std/cstdio: Same.
1914 2012-03-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1916         * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate.
1917         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
1918         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
1919         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
1920         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
1922 2012-03-01  Benjamin Kosnik  <bkoz@redhat.com>
1923             Ramana Radhakrishnan <ramana@gcc.gnu.org>
1925         PR libstdc++/51785
1926         * acinclude.m4 (GLIBCXX_CHECK_STDIO_PROTO): New.
1927         * configure.ac: Call it.
1928         * configure: Regenerate.
1929         * config.h.in: Same.
1930         * config/os/gnu-linux/os_defines.h: Conditionally undefine
1931         _GLIBCXX_HAVE_GETS.
1932         * include/c_global/cstdio: Conditionally declare deprecated gets.
1933         * include/c_std/cstdio: Same.
1935 2012-03-01  Michael Spertus  <mike_spertus@symantec.com>
1937         * include/tr2/type_traits (typelist): To __reflection_typelist.
1938         (first, rest, empty): Remove.
1940 2012-03-01  Benjamin Kosnik  <bkoz@redhat.com>
1942         * testsuite/Makefile.am (CLEANFILES): Add *.gdb.
1943         * testsuite/Makefile.in: Regenerate.
1945 2012-02-29  H.J. Lu  <hongjiu.lu@intel.com>
1947         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
1949 2012-02-28  Benjamin Kosnik  <bkoz@redhat.com>
1951         PR libstdc++/52191
1952         * testsuite/util/testsuite_abi.cc (compare_symbols): Check new
1953         symbols added into the latest version. Mark tls entities as
1954         undesignated.
1956 2012-02-28  Jakub Jelinek  <jakub@redhat.com>
1958         PR bootstrap/52414
1959         * src/Makefile.am (libstdc++-symbols.ver): Only remove comment lines
1960         if they are at the beginning of lines (with optional whitespace before
1961         #).
1962         * src/Makefile.in: Regenerated.
1964 2012-02-27  Jakub Jelinek  <jakub@redhat.com>
1966         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
1967         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
1968         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
1969         Likewise.
1970         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
1971         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
1972         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
1973         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
1974         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
1975         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1977 2012-02-27  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1979         PR libstdc++/52188
1980         * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Remove symvers_renaming.
1981         Remove ENABLE_SYMVERS_SOL2.
1982         * configure: Regenerate.
1983         * src/Makefile.am [ENABLE_SYMVERS] (libstdc++-symbols.ver):
1984         Postprocess mapfile.
1985         [ENABLE_SYMVERS_GNU]: Remove ENABLE_SYMVERS_SOL2 handling.
1986         * src/Makefile.in: Regenerate.
1988         * config/abi/pre/gnu.ver (GLIBCXX_3.4.5) [!__sun__ && !__svr4__]:
1989         Don't export
1990         _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv.
1992 2012-02-25  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1994         PR testsuite/52201
1995         * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
1996         Require atomic builtins.
1997         * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
1999 2012-02-23  Jason Merrill  <jason@redhat.com>
2001         * include/bits/locale_facets.h (class num_get): Undo reordering of
2002         do_get virtual functions.
2004 2012-02-14  Edward Smith-Rowland  <3dw4rd@verizon.net>
2006         * testsuite/26_numerics/random/
2007         uniform_real_distribution/requirements/typedefs.cc: Check param_type.
2008         * testsuite/26_numerics/random/
2009         piecewise_constant_distribution/requirements/typedefs.cc: Ditto.
2010         * testsuite/26_numerics/random/
2011         chi_squared_distribution/requirements/typedefs.cc: Ditto.
2012         * testsuite/26_numerics/random/
2013         normal_distribution/requirements/typedefs.cc: Ditto.
2014         * testsuite/26_numerics/random/
2015         uniform_int_distribution/requirements/typedefs.cc: Ditto.
2016         * testsuite/26_numerics/random/
2017         poisson_distribution/requirements/typedefs.cc: Ditto.
2018         * testsuite/26_numerics/random/
2019         bernoulli_distribution/requirements/typedefs.cc: Ditto.
2020         * testsuite/26_numerics/random/
2021         discrete_distribution/requirements/typedefs.cc: Ditto.
2022         * testsuite/26_numerics/random/
2023         weibull_distribution/requirements/typedefs.cc: Ditto.
2024         * testsuite/26_numerics/random/
2025         cauchy_distribution/requirements/typedefs.cc: Ditto.
2026         * testsuite/26_numerics/random/
2027         negative_binomial_distribution/requirements/typedefs.cc: Ditto.
2028         * testsuite/26_numerics/random/
2029         gamma_distribution/requirements/typedefs.cc: Ditto.
2030         * testsuite/26_numerics/random/
2031         fisher_f_distribution/requirements/typedefs.cc: Ditto.
2032         * testsuite/26_numerics/random/
2033         exponential_distribution/requirements/typedefs.cc: Ditto.
2034         * testsuite/26_numerics/random/
2035         binomial_distribution/requirements/typedefs.cc: Ditto.
2036         * testsuite/26_numerics/random/
2037         lognormal_distribution/requirements/typedefs.cc: Ditto.
2038         * testsuite/26_numerics/random/
2039         extreme_value_distribution/requirements/typedefs.cc: Ditto.
2040         * testsuite/26_numerics/random/
2041         piecewise_linear_distribution/requirements/typedefs.cc: Ditto.
2042         * testsuite/26_numerics/random/
2043         student_t_distribution/requirements/typedefs.cc: Ditto.
2044         * testsuite/26_numerics/random/
2045         geometric_distribution/requirements/typedefs.cc: Ditto.
2047 2012-02-21  Benjamin Kosnik  <bkoz@redhat.com>
2049         PR libstdc++/50349
2050         * config/abi/pre/gnu.ver: Only one local.
2051         * config/abi/pre/gnu-versioned-namespace.ver: Same.
2053 2012-02-21  Paolo Carlini  <paolo.carlini@oracle.com>
2055         PR libstdc++/52317 (cont)
2056         * include/profile/unordered_map: Ad Library Exception comment.
2057         * include/profile/set: Likewise.
2058         * include/profile/base.h: Likewise.
2059         * include/profile/impl/profiler_list_to_slist.h: Likewise.
2060         * include/profile/impl/profiler_container_size.h: Likewise.
2061         * include/profile/impl/profiler_vector_size.h: Likewise.
2062         * include/profile/impl/profiler_hash_func.h: Likewise.
2063         * include/profile/impl/profiler_trace.h: Likewise.
2064         * include/profile/impl/profiler_list_to_vector.h: Likewise.
2065         * include/profile/impl/profiler_vector_to_list.h: Likewise.
2066         * include/profile/impl/profiler.h: Likewise.
2067         * include/profile/impl/profiler_state.h: Likewise.
2068         * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
2069         * include/profile/impl/profiler_algos.h: Likewise.
2070         * include/profile/impl/profiler_hashtable_size.h: Likewise.
2071         * include/profile/impl/profiler_node.h: Likewise.
2072         * include/profile/vector: Likewise.
2073         * include/profile/unordered_set: Likewise.
2074         * include/profile/map.h: Likewise.
2075         * include/profile/map: Likewise.
2077 2012-02-21  Paolo Carlini  <paolo.carlini@oracle.com>
2079         PR libstdc++/52317
2080         * python/Makefile.am: Update boilerplate license text to GPLv3.
2081         * include/profile/unordered_map: Likewise.
2082         * include/profile/set: Likewise.
2083         * include/profile/base.h: Likewise.
2084         * include/profile/impl/profiler_list_to_slist.h: Likewise.
2085         * include/profile/impl/profiler_container_size.h: Likewise.
2086         * include/profile/impl/profiler_vector_size.h: Likewise.
2087         * include/profile/impl/profiler_hash_func.h: Likewise.
2088         * include/profile/impl/profiler_trace.h: Likewise.
2089         * include/profile/impl/profiler_list_to_vector.h: Likewise.
2090         * include/profile/impl/profiler_vector_to_list.h: Likewise.
2091         * include/profile/impl/profiler.h: Likewise.
2092         * include/profile/impl/profiler_state.h: Likewise.
2093         * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
2094         * include/profile/impl/profiler_algos.h: Likewise.
2095         * include/profile/impl/profiler_hashtable_size.h: Likewise.
2096         * include/profile/impl/profiler_node.h: Likewise.
2097         * include/profile/vector: Likewise.
2098         * include/profile/unordered_set: Likewise.
2099         * include/profile/map.h: Likewise.
2100         * include/profile/map: Likewise.
2101         * testsuite/21_strings/basic_string/numeric_conversions/
2102         wchar_t/dr1261.cc: Likewise.
2103         * testsuite/21_strings/basic_string/numeric_conversions/
2104         char/dr1261.cc: Likewise.
2105         * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
2107 2012-02-20  Paolo Carlini  <paolo.carlini@oracle.com>
2109         PR libstdc++/52241
2110         * src/c++98/tree.cc (local_Rb_tree_increment,
2111         local_Rb_tree_decrement): Add.
2112         (_Rb_tree_increment(const _Rb_tree_node_base*),
2113         _Rb_tree_decrement(const _Rb_tree_node_base*)): Use the latter.
2114         (_Rb_tree_increment(_Rb_tree_node_base*),
2115         _Rb_tree_decrement(_Rb_tree_node_base*)): New.
2117 2012-02-20  Paolo Carlini  <paolo.carlini@oracle.com>
2119         PR libstdc++/52309
2120         * include/bits/hashtable_policy.h (_Equality_base<, true,>::
2121         _M_equal(const _Hashtable&)): Compare values with operator==.
2122         * testsuite/23_containers/unordered_set/operators/52309.cc: New.
2124 2012-02-17  Benjamin Kosnik  <bkoz@redhat.com>
2126         PR libstdc++/51798 continued.
2127         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Grep for
2128         __atomic_, not __sync.
2129         * configure: Regenerated.
2131 2012-02-17  Benjamin Kosnik  <bkoz@redhat.com>
2133         PR libstdc++/47058
2134         * acinclude.m4 (GLIBCXX_ENABLE_WERROR): New.
2135         (GLIBCXX_EXPORT_FLAGS): Add -Wabi to WARN_FLAGS
2136         * configure.ac: Use it.
2137         * fragment.am: Set WERROR_FLAG conditionally on --disable-werror.
2138         * configure: Regenerate.
2139         * python/Makefile.in: Same.
2140         * Makefile.in: Same.
2141         * doc/Makefile.in: Same.
2142         * include/Makefile.in: Same.
2143         * po/Makefile.in: Same.
2144         * python/Makefile.in: Same.
2145         * src/Makefile.in: Same.
2146         * src/c++11/Makefile.in: Same.
2147         * src/c++98/Makefile.in: Same.
2148         * testsuite/Makefile.in: Same.
2150 2012-02-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2152         PR libstdc++/52189
2153         * acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Handle
2154         --enable-libstdcxx-threads.
2155         Disable on Solaris 8/9 with symbol versioning.
2156         * configure.ac (GLIBCXX_CHECK_GTHREADS): Move after
2157         GLIBCXX_ENABLE_SYMVERS.
2158         * configure: Regenerate.
2159         * doc/xml/manual/configure.xml (--enable-libstdcxx-threads): Explain.
2161 2012-02-15  DJ Delorie  <dj@redhat.com>
2163         * src/c++98/locale.cc (locale::facet::_S_get_c_locale): Fix typo.
2165 2012-02-15  Benjamin Kosnik  <bkoz@redhat.com>
2167         PR libstdc++/51368
2168         * acinclude.m4 (GLIBCXX_ENABLE_PYTHON): New.
2169         * configure.ac: Use it.
2170         * python/Makefile.am: Same.
2171         * configure: Regenerate.
2172         * python/Makefile.in: Regenerate.
2173         * Makefile.in: Same.
2174         * doc/Makefile.in: Same.
2175         * include/Makefile.in: Same.
2176         * po/Makefile.in: Same.
2177         * src/Makefile.in: Same.
2178         * src/c++11/Makefile.in: Same.
2179         * src/c++98/Makefile.in: Same.
2180         * testsuite/Makefile.in: Same.
2182 2012-02-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
2184         * 30_threads/thread/native_handle/typesizes.cc: Do not run on cygwin.
2186 2012-02-14  Tom Tromey  <tromey@redhat.com>
2188         * testsuite/libstdc++-prettyprinters/cxx11.cc (main): Add new
2189         tests.
2190         * python/libstdcxx/v6/printers.py (Tr1HashtableIterator.__init__):
2191         Rewrite.
2192         (Tr1HashtableIterator.update): Remove.
2193         (Tr1HashtableIterator.next): Rewrite.
2195 2012-02-13  Benjamin Kosnik  <bkoz@redhat.com>
2197         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
2198         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
2200 2012-02-13  Richard Henderson  <rth@redhat.com>
2202         PR libstdc++/51798 continued.
2203         * include/bits/shared_ptr_base.h
2204         (_Sp_counted_base<_S_atomic>::_M_add_ref_lock): Hoist initial load
2205         outside compare_exchange loop.
2206         * include/tr1/shared_ptr.h: Same.
2207         * include/parallel/compatibility.h (__compare_and_swap_32): Use strong
2208         version of compare_exchange.
2209         (__compare_and_swap_64): Same.
2210         * include/profile/impl/profiler_state.h (__gnu_profile::__turn): Same.
2211         * libsupc++/guard.cc (__cxa_guard_acquire): Same.
2213 2012-02-10  Benjamin Kosnik  <bkoz@redhat.com>
2214             Jonathan Wakely  <jwakely.gcc@gmail.com>
2216         PR libstdc++/51798 continued.
2217         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Use __atomic_*
2218         builtins instead of __sync_* builtins for atomic functionality.
2219         * include/bits/shared_ptr_base.h: Same.
2220         * include/parallel/compatibility.h: Same.
2221         * include/profile/impl/profiler_state.h: Same.
2222         * include/tr1/shared_ptr.h: Same.
2223         * libsupc++/eh_ptr.cc: Same.
2224         * libsupc++/eh_throw.cc: Same.
2225         * libsupc++/eh_tm.cc: Same.
2226         * libsupc++/guard.cc: Same.
2227         * configure: Regenerated.
2228         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
2229         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
2231 2012-02-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2233         PR libstdc++/51296
2234         * config/os/osf/ctype_base.h,
2235         config/os/osf/ctype_configure_char.cc,
2236         config/os/osf/ctype_inline.h, config/os/osf/error_constants.h:
2237         Copy from config/os/generic.
2238         * config/os/osf/os_defines.h: Likewise.
2239         (_GTHREAD_USE_MUTEX_INIT_FUNC, _GTHREAD_USE_COND_INIT_FUNC):
2240         Define.
2241         * configure.host <osf*>: Use os/osf for os_include_dir.
2243 2012-02-10  Uros Bizjak  <ubizjak@gmail.com>
2245         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Regenerated.
2247 2012-02-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2249         * doc/xml/manual/documentation_hacking.xml: Fix invalid attribute.
2251 2012-02-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
2253         * doc/xml/manual/status_cxx2011.xml: Update C++11 status table.
2255 2012-02-07  Benjamin Kosnik  <bkoz@redhat.com>
2257         * doc/doxygen/user.cfg.in: Update to doxygen 1.7.6.1.
2258         * doc/xml/manual/documentation_hacking.xml: Update.
2260 2012-02-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
2262         * testsuite/30_threads/call_once/39909.cc: Remove duplicate target
2263         selector.
2264         * testsuite/30_threads/call_once/49668.cc: Likewise.
2265         * testsuite/30_threads/call_once/call_once1.cc: Likewise.
2266         * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
2267         * testsuite/30_threads/mutex/cons/1.cc: Likewise.
2268         * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
2269         * testsuite/30_threads/mutex/lock/1.cc: Likewise.
2270         * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
2271         * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
2272         * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
2273         * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
2274         * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
2275         * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
2276         * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
2277         * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
2278         * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
2279         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
2280         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
2281         * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
2282         * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
2283         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
2284         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
2285         * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
2286         * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
2288 2012-02-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
2290         PR libstdc++/51296
2291         * include/std/mutex (__mutex_base::~__mutex_base): Declare noexcept.
2292         * src/c++11/condition_variable.cc (condition_variable): Use macro for
2293         initializer function.
2295         PR libstdc++/51906
2296         * config/os/bsd/darwin/os_defines.h: Disable static initializer for
2297         recursive mutexes.
2299 2012-02-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
2301         PR libstdc++/52128
2302         * src/c++11/future.cc: Add explicit instantiation.
2304 2012-02-06  François Dumont  <fdumont@gcc.gnu.org>
2306         * include/debug/safe_iterator.h
2307         (_Safe_iterator::_M_before_dereferenceable): Avoid the expensive
2308         creation of a _Safe_iterator instance to do the check.
2310 2012-02-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
2312         PR libstdc++/52104
2313         * include/std/future (__future_base::_Async_state_common): Define
2314         destructor inline for targets without TLS.
2315         * src/c++11/future.cc (__future_base::_Async_state_common): Only
2316         define destructor for TLS targets.
2318 2012-02-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
2320         PR libstdc++/51956
2321         * python/libstdcxx/v6/printers.py (StdPointerPrinter): Rename to...
2322         (SharedPointerPrinter): This. Also show weak count.
2323         * testsuite/libstdc++-prettyprinters/shared_ptr.cc: New.
2325 2012-02-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
2327         * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Modify to
2328         PASS instead of XFAIL.
2330 2012-02-05  Jeffrey Yasskin  <jyasskin@gcc.gnu.org>
2331             Paolo Carlini  <paolo.carlini@oracle.com>
2333         PR libstdc++/52119
2334         * include/std/limits (__glibcxx_min): Fix to avoid undefined behavior.
2336 2012-02-03  Benjamin Kosnik  <bkoz@redhat.com>
2338         PR libstdc++/49445
2339         * testsuite/29_atomics/atomic/cons/49445.cc: Add.
2341 2012-02-03  Benjamin Kosnik  <bkoz@redhat.com>
2343         PR libstdc++/51811
2344         * include/bits/atomic_base.h (atomic<_Tp*>): Fix offsets.
2345         * testsuite/29_atomics/atomic/operators/51811.cc: New.
2346         * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: New.
2348 2012-02-03  Jakub Jelinek  <jakub@redhat.com>
2350         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
2351         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
2352         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
2353         Likewise.
2354         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
2355         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
2356         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
2357         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
2358         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
2359         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
2361 2012-02-02  Benjamin Kosnik  <bkoz@redhat.com>
2363         PR libstdc++/52068
2364         * src/c++11/Makefile.am (toolexeclib_LTLIBRARIES,
2365         libc__11_la_SOURCES): Remove.
2366         * src/c++11/Makefile.in: Regenerate.
2367         * src/c++98/Makefile.am (toolexeclib_LTLIBRARIES,
2368         libc__98_la_SOURCES): Remove.
2369         * src/c++98/Makefile.in: Regenerate.
2371 2012-02-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
2373         PR libstdc++/49204
2374         * include/std/future (__future_base::_State_base::wait()): Use lambda
2375         expression for predicate and remove redundant test.
2376         (__future_base::_State_base::wait_for()): Return future_status and
2377         use lambda expression for predicate.
2378         (__future_base::_State_base::wait_until()): Likewise.
2379         (__basic_future::wait_for(), __basic_future::wait_until()): Likewise.
2380         (__future_base::_Async_state): Replace with _Async_state_common
2381         class for non-dependent functionality and _Async_state_impl class
2382         template for dependent functionality.
2383         (__future_base::_Async_state_common::_M_join): Serialize attempts to
2384         join thread.
2385         (__future_base::_Async_state_common::_M_run_deferred): Join.
2386         (__future_base::_Async_state::_M_do_run): Replace with lambda.
2387         * src/c++11/future.cc (__future_base::_Async_state_common): Define
2388         destructor, so key function is in the library.
2389         * config/abi/pre/gnu.ver: Add exports for ~_Async_state_common.
2390         * testsuite/30_threads/packaged_task/members/get_future.cc: Expect
2391         future_status return instead of bool.
2392         * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
2393         * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
2394         * testsuite/30_threads/future/members/wait_until.cc: Likewise.
2395         * testsuite/30_threads/future/members/wait_for.cc: Likewise.
2396         * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
2397         * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
2398         * testsuite/30_threads/promise/members/swap.cc: Likewise.
2400 2012-01-30  Tom Tromey  <tromey@redhat.com>
2402         PR libstdc++/51649:
2403         * testsuite/libstdc++-prettyprinters/debug.cc: New file.
2404         * testsuite/lib/gdb-test.exp (regexp-test): New proc.
2405         (note-test): Update.
2406         (gdb-test): Handle regexp tests.  Add some logging.
2407         * testsuite/libstdc++-prettyprinters/simple.cc: Compile with -O0.
2408         (placeholder, use): Remove.
2409         (main): Add tests for deque, list, map, and set iterators.  Add
2410         tests for slist and slist iterator.
2411         * testsuite/libstdc++-prettyprinters/48362.cc (main): Handle __7
2412         namespace.
2413         * python/libstdcxx/v6/printers.py (StdListPrinter.children): Use
2414         the type's _Node typedef.
2415         (StdListIteratorPrinter.to_string): Change how node type is
2416         computed.
2417         (StdSlistPrinter.children): Use the type's _Node typedef.
2418         (StdSlistIteratorPrinter.to_string): Likewise.
2419         (StdRbtreeIteratorPrinter.to_string): Use the type's _Link_type
2420         typedef.
2421         (StdMapPrinter.children): Change how the node's type is computed.
2422         (StdSetPrinter.children): Likewise.
2423         (StdForwardListPrinter.children): Use the type's _Node typedef.
2424         (Printer.add_version): New method.
2425         (Printer.add_container): New method.
2426         (build_libstdcxx_dictionary): Handle __7 and __cxx1998
2427         namespaces.
2428         (find_type): New function.
2430 2012-01-27  Paolo Carlini  <paolo.carlini@oracle.com>
2432         PR libstdc++/51795
2433         * include/bits/random.h (linear_congruential_generator): Add
2434         static_assert preventing instantiation for values of 'a' and 'm'
2435         currently handled incorrectly by _Mod::__calc.
2436         * include/bits/random.tcc (seed_seq::generate): Avoid unsafe
2437         uses of _Mod::__calc.
2439 2012-01-27  Jakub Jelinek  <jakub@redhat.com>
2441         PR libstdc++/51798
2442         * config/cpu/generic/atomicity_builtins/atomicity.h
2443         (__exchange_and_add, __atomic_add): Use __atomic_fetch_add
2444         with __ATOMIC_ACQ_REL semantics instead of __sync_fetch_and_add.
2445         * include/ext/atomicity.h (__exchange_and_add, __atomic_add):
2446         Likewise.
2448 2011-01-27  Rafael Avila de Espindola  <rafael.espindola@gmail.com>
2450         * libsupc++/typeinfo: Correctly match #pragma GCC visibility
2451         pop with #pragma GCC visibility push.
2453 2012-01-27  Benjamin Kosnik  <bkoz@redhat.com>
2454             Matthias Klose  <doko@ubuntu.com>
2456         * configure.ac (GLIBCXX_ENABLE_DEBUG_FLAGS): Use -gdwarf-4 -g3 -O0.
2457         * configure.in: Regenerated.
2458         * src/Makefile.am (all-once, install-data-once): New rules.
2459         (all-local, install-data-local): Use them.
2460         (build-debug, install-debug): Tweak.
2461         * src/Makefile.in: Regenerate.
2463 2012-01-27  Richard Henderson  <rth@redhat.com>
2465         * include/bits/atomic_base.h (__atomic_flag_base): Define _M_i
2466         based on the value of __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
2467         (ATOMIC_FLAG_INIT): Initialize with 0, not false.
2468         (atomic_flag::atomic_flag): Use __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
2470 2012-01-26  Jakub Jelinek  <jakub@redhat.com>
2472         PR bootstrap/51985
2473         * src/c++98/Makefile.am (libc__98_la_SOURCES,
2474         libc__98convenience_la_SOURCES): Remove $(inst_sources).
2475         * src/c++98/Makefile.in: Regenerated.
2477 2012-01-25  Richard Sandiford  <rdsandiford@googlemail.com>
2479         * testsuite/20_util/system_clock/1.cc: Add dg-require-time.
2480         * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
2481         * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
2482         * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
2483         * testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Add
2484         dg-require-fileio.
2485         * testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise.
2486         * testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise.
2487         * testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise.
2488         * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-fstream.cc:
2489         Likewise.
2490         * testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
2492 2012-01-25  Matthias Klose  <doko@ubuntu.com>
2494         * testsuite/30_threads/condition_variable_any/requirements: Remove
2495         empty directory.
2497 2012-01-23  Benjamin Kosnik  <bkoz@redhat.com>
2499         * src/Makefile.am (libstdc++convenience.la): Correct stamp rule, copy.
2500         * src/Makefile.in: Regenerate.
2502 2012-01-23  Benjamin Kosnik  <bkoz@redhat.com>
2504         PR libstdc++/49829
2505         Add libc++98convenience.la, libc++11convenience.la.
2506         * src/c++98: New directory.
2507         * src/c++11: New directory.
2508         * acinclude.m4: (GLIBCXX_CONFIGURE): Add src-c++98, src-c++11.
2509         * configure: Regenerated.
2510         * Makefile.am (hosted_source): Add src-c++98, src-c++11 to SUBDIRS.
2511         * Makefile.in: Regenerate.
2512         * libsupc++/Makefile.am (AM_CXXFLAGS): USe XTEMPLATE_FLAGS for
2513         -fno-implicit-templates.
2514         * libsupc++/Makefile.in: Regenerate.
2515         * src/Makefile.am (inst_sources): Move... C++11 files into
2516         separate directory for libstdc++11convenience.la. Files are:
2517         fstream-inst.cc, string-inst.cc, wlocale-inst.cc, wstring-inst.cc).
2518         (sources): Move C++11 files. Files are: compatibility-c++0x.cc,
2519         compatibility-atomic-c++0x.cc, debug.cc, functexcept.cc,
2520         functional.cc, hash_c++0x.cc, hashtable_c++0x.cc, limits.cc,
2521         system_error.cc, placeholders.cc, regex.cc, shared_ptr.cc,
2522         mutex.cc, condition_variable.cc, chrono.cc, thread.cc, future.cc.
2523         (libstdc++convenience.la): Add new target.
2524         (SUBDIRS): Add c++11, c++98.
2525         * src/Makefile.in: Regenerate.
2526         * src/c++11/Makefile.am: New.
2527         * src/c++11/Makefile.in: Generate.
2528         * src/c++98/Makefile.am: New, C++98 files.
2529         * src/c++98/Makefile.in: Generate.
2531 2012-01-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2533         libstdc++-v3:
2534         * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on
2535         32-bit Solaris 10/x86.
2536         * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
2538 2012-01-21  Jonathan Wakely  <jwakely.gcc@gmail.com>
2540         PR libstdc++/50982
2541         * testsuite/30_threads/*: Add powerpc-ibm-aix* to target selectors.
2543 2012-01-19  Jakub Jelinek  <jakub@redhat.com>
2545         PR libstdc++/51845
2546         * include/bits/hashtable.h
2547         (_Hashtable<>::erase(const_iterator, const_iterator)): Also update
2548         _M_buckets[__n_bkt] if __is_bucket_begin.
2549         * testsuite/23_containers/unordered_multimap/erase/51845-multimap.cc:
2550         New test.
2552 2012-01-18  Benjamin Kosnik  <bkoz@redhat.com>
2554         * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): Fix quoting.
2556 2012-01-18  Benjamin Kosnik  <bkoz@redhat.com>
2558         * configure.ac: Move epub checks...
2559         * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): ...here, use
2560         test -f instead of AC_CHECK_FILES.
2562 2012-01-18  François Dumont  <fdumont@gcc.gnu.org>
2563             Roman Kononov  <roman@binarylife.net>
2565         PR libstdc++/51866
2566         * include/bits/hashtable.h (_Hashtable<>::_M_insert(_Arg, false_type)):
2567         Do not keep a reference to a potentially moved instance.
2568         * testsuite/23_containers/unordered_multiset/insert/51866.cc: New.
2569         * testsuite/23_containers/unordered_multimap/insert/51866.cc: New.
2571 2012-01-17  Benjamin Kosnik  <bkoz@redhat.com>
2573         * doc/html/*: Regenerate.
2575 2012-01-17  Benjamin Kosnik  <bkoz@redhat.com>
2577         * configure.ac (BUILD_EPUB): Adjust for epub3.
2578         * configure: Regenerate.
2579         * Makefile.in: Same.
2580         * doc/Makefile.am (stamp-epub-docbook): Update for epub3.
2581         * doc/Makefile.in: Regenerate.
2582         * include/Makefile.in: Same.
2583         * libsupc++/Makefile.in: Same.
2584         * po/Makefile.in: Same.
2585         * python/Makefile.in: Same.
2586         * src/Makefile.in: Same.
2587         * testsuite/Makefile.in: Same.
2589         * doc/xml/manual/documentation_hacking.xml: Update.
2591 2012-01-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2593         PR target/47852
2594         * configure.host (irix6.5*): Add -lpthread to OPT_LDFLAGS.
2596 2012-01-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
2598         * include/bits/stl_iterator.h (reverse_iterator): Doxygen comments.
2600 2012-01-13  François Dumont  <fdumont@gcc.gnu.org>
2602         * include/bits/hashtable_policy.h (_Hash_node_base): New, use it as
2603         base class of ...
2604         (_Hash_node<Value, true>, _Hash_node<Value, false>): ... those.
2605         * include/bits/hashtable.h (_Hashtable): Replace _M_begin_bucket_index
2606         by _M_before_begin. Review implementation so that we do not need to
2607         look for previous non-empty bucket when inserting nodes.
2609 2012-01-09  Kai Tietz  <ktietz@redhat.com>
2611         PR libstc++/51673 part 2
2612         * config/abi/pre/gnu-versioned-namespace.ver: Adjusted new/delete
2613         operators signature for LLP64 size_t, and adjusted signatures for
2614         mt-allocator using size_t.
2616 2012-01-09  Benjamin Kosnik  <bkoz@redhat.com>
2618         PR libstc++/51673 part 1
2619         * config/abi/pre/gnu-versioned-namespace.ver: Sync cxxabi symbols
2620         with gnu.ver.
2622 2012-01-09  Benjamin Kosnik  <bkoz@redhat.com>
2624         * fragment.am (WARN_CXXFLAGS): Add -Wabi.
2625         * Makefile.in: Regenerate.
2626         * doc/Makefile.in: Same.
2627         * include/Makefile.in: Same.
2628         * libsupc++/Makefile.in: Same.
2629         * src/Makefile.in: Same.
2630         * testsuite/Makefile.in: Same.
2631         * po/Makefile.in: Same.
2632         * python/Makefile.in: Same.
2634 2012-01-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
2636         * python/libstdcxx/v6/printers.py (StdForwardListPrinter): Add.
2637         * testsuite/libstdc++-prettyprinters/cxx11.cc: New.
2639 2012-01-06  Jason Merrill  <jason@redhat.com>
2641         * testsuite/abi/demangle/regression/cw-16.cc (main): Adjust
2642         expected demangling.
2644 2012-01-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
2646         PR libstdc++/51504
2647         * doc/xml/manual/debug.xml: Suggest using symbol interposition
2648         to override symbols using annotation macros.
2650 2012-01-05  François Dumont  <fdumont@gcc.gnu.org>
2652         * include/bits/hashtable_policy.h (_Hashtable_base<>::_M_eq()):
2653         protected rather than private, use it...
2654         * include/bits/hashtable.h (_Hashtable<>::key_eq()): ... here.
2655         * testsuite/23_containers/unordered_set/observers.cc: New.
2656         * testsuite/23_containers/unordered_multiset/observers.cc: New.
2657         * testsuite/23_containers/unordered_map/observers.cc: New.
2658         * testsuite/23_containers/unordered_multimap/observers.cc: New.
2660 2012-01-03  François Dumont  <fdumont@gcc.gnu.org>
2662         * include/bits/hashtable_policy.h (_Ebo_helper<>): Rename to the more
2663         specific _Hashtable_ebo_helper. Hide this implementation detail thanks
2664         to private inheritance.
2666 2012-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
2668         PR c++/51738
2669         * testsuite/23_containers/map/element_access/39901.cc: New.