OSDN Git Service

2012-09-20 Benjamin Kosnik <bkoz@redhat.com>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2012-09-20  Benjamin Kosnik  <bkoz@redhat.com>
2
3         PR libstdc++/54102, part 2
4         * doc/Makefile.am (XSL_HTML_STYLE): use xhtml, not html.
5         * doc/Makefile.in: Regenerate.
6         * doc/html/*: Same.
7
8 2012-09-20  Benjamin Kosnik  <bkoz@redhat.com>
9
10         * doc/html/*: Regenerate.
11
12 2012-09-20  Benjamin Kosnik  <bkoz@redhat.com>
13
14         PR libstdc++/54102
15         * doc/xsl/customization.xsl.in: New.
16         * configure.ac: Output local copy of customization xsl.
17         * doc/Makefile.am (stamp-html-single-docbook): Use XSL_LOCAL_STYLE.
18         (stamp-html-docbook): Set stringparam to UTF-8.
19         * Makefile.in: Regenerated.
20         * configure: Same.
21         * doc/Makefile.in: Same.
22
23 2012-09-20  Release Manager
24
25         * GCC 4.7.2 released.
26
27 2012-09-11  Jakub Jelinek  <jakub@redhat.com>
28
29         PR libstdc++/54172
30         * libsupc++/guard.cc (__cxa_guard_acquire): Fix up the last
31         argument of the first __atomic_compare_exchange_n.
32
33 2012-09-09  Thiago Macieira  <thiago.macieira@intel.com>
34
35         PR libstdc++/54172
36         * libsupc++/guard.cc (__cxa_guard_acquire): Exit the loop earlier if
37         we detect that another thread has had success. Don't compare_exchange
38         from a finished state back to a waiting state. Comment.
39
40 2012-09-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
41
42         PR libstdc++/54388
43         * include/std/array (array::at() const): Ensure lvalue result.
44         * testsuite/23_containers/array/element_access/54388.cc: New.
45
46 2012-09-06  Marc Glisse  <marc.glisse@inria.fr>
47             Paolo Carlini  <paolo.carlini@oracle.com>
48
49         PR libstdc++/54376
50         * include/bits/random.h (lognormal_distribution<>::operator==,
51         gamma_distribution<>::operator==,
52         chi_squared_distribution<>::operator==,
53         fisher_f_distribution<>::operator==,
54         student_t_distribution<>::operator==,
55         binomial_distribution<>::operator==,
56         negative_binomial_distribution<>::operator==,
57         poisson_distribution<>::operator==): Change inline friend definition
58         to non-template.
59         * testsuite/26_numerics/random/binomial_distribution/requirements/
60         explicit_instantiation/1.cc: New.
61         * testsuite/26_numerics/random/cauchy_distribution/requirements/
62         explicit_instantiation/1.cc: Likewise.
63         * testsuite/26_numerics/random/chi_squared_distribution/
64         requirements/explicit_instantiation/1.cc: Likewise.
65         * testsuite/26_numerics/random/discrete_distribution/requirements/
66         explicit_instantiation/1.cc: Likewise.
67         * testsuite/26_numerics/random/exponential_distribution/
68         requirements/explicit_instantiation/1.cc: Likewise.
69         * testsuite/26_numerics/random/extreme_value_distribution/
70         requirements/explicit_instantiation/1.cc: Likewise.
71         * testsuite/26_numerics/random/fisher_f_distribution/requirements/
72         explicit_instantiation/1.cc: Likewise.
73         * testsuite/26_numerics/random/gamma_distribution/requirements/
74         explicit_instantiation/1.cc: Likewise.
75         * testsuite/26_numerics/random/geometric_distribution/requirements/
76         explicit_instantiation/1.cc: Likewise.
77         * testsuite/26_numerics/random/lognormal_distribution/requirements/
78         explicit_instantiation/1.cc: Likewise.
79         * testsuite/26_numerics/random/negative_binomial_distribution/
80         requirements/explicit_instantiation/1.cc: Likewise.
81         * testsuite/26_numerics/random/normal_distribution/requirements/
82         explicit_instantiation/1.cc: Likewise.
83         * testsuite/26_numerics/random/piecewise_constant_distribution/
84         requirements/explicit_instantiation/1.cc: Likewise.
85         * testsuite/26_numerics/random/piecewise_linear_distribution/
86         requirements/explicit_instantiation/1.cc: Likewise.
87         * testsuite/26_numerics/random/poisson_distribution/requirements/
88         explicit_instantiation/1.cc: Likewise.
89         * testsuite/26_numerics/random/student_t_distribution/requirements/
90         explicit_instantiation/1.cc: Likewise.
91         * testsuite/26_numerics/random/uniform_int_distribution/
92         requirements/explicit_instantiation/1.cc: Likewise.
93         * testsuite/26_numerics/random/uniform_real_distribution/
94         requirements/explicit_instantiation/1.cc: Likewise.
95         * testsuite/26_numerics/random/weibull_distribution/requirements/
96         explicit_instantiation/1.cc: Likewise.
97
98 2012-08-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
99
100         * testsuite/30_threads/async/54297.cc: Add dg-require-nanosleep.
101
102 2012-08-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
103
104         PR libstdc++/54297
105         * src/c++11/future.cc (~_Async_state_common): Move to...
106         * src/c++11/compatibility-thread-c++0x.cc (~_Async_state_common):
107         Here.
108         (_GLIBCXX_ABI_COMPAT_ASYNC): Rename to _GLIBCXX_ASYNC_ABI_COMPAT.
109         * include/std/future (_GLIBCXX_ABI_COMPAT_ASYNC): Likewise.
110
111 2012-08-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
112             Geoff Romer  <gromer@google.com>
113
114         PR libstdc++/54351
115         * include/bits/unique_ptr.h (unique_ptr<T>::~unique_ptr): Do not use
116         reset().
117         (unique_ptr<T[]>::~unique_ptr()): Likewise.
118         * testsuite/20_util/unique_ptr/54351.cc: New.
119         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error
120         line numbers.
121
122 2012-08-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
123
124         PR libstdc++/54297
125         * include/std/future (~_Async_state_impl): Join thread before
126         derived class members are destroyed.
127         (~_Async_state_common): Only define non-trivial destructor when
128         included from future.cc for ABI compatibility reasons.
129         * src/c++11/future.cc (_GLIBCXX_ABI_COMPAT_ASYNC): Define.
130         * testsuite/30_threads/async/54297.cc: New.
131
132 2012-08-13  David Adler  <d.adler.s@gmail.com>
133
134         PR libstdc++/54185
135         * src/c++11/condition_variable.cc (condition_variable): Always
136         destroy native type in destructor.
137         * testsuite/30_threads/condition_variable/54185.cc: New.
138
139 2012-08-06  Peter Bergner  <bergner@vnet.ibm.com>
140
141         PR libstdc++/54036
142         * include/decimal/decimal.h (_DEFINE_DECIMAL_UNARY_OP): Use _Op as
143         a unary operator.
144         * testsuite/decimal/pr54036-1.cc: New test.
145         * testsuite/decimal/pr54036-2.cc: Likewise.
146         * testsuite/decimal/pr54036-3.cc: Likewise.
147
148 2012-08-02  Michael Hope  <michael.hope@linaro.org>
149
150         Backport from mainline r186389:
151         2012-04-12  Andreas Schwab  <schwab@linux-m68k.org>
152
153         * testsuite/Makefile.am (check_DEJAGNUnormal0): Run
154         prettyprinters.exp.
155         * testsuite/Makefile.in: Regenerated.
156
157 2012-07-29  François Dumont  <fdumont@gcc.gnu.org>
158
159         PR libstdc++/54075
160         * include/bits/hashtable_policy.h
161         (_Prime_rehash_policy::_M_next_bkt): Add a growth factor set to 2
162         to boost growth in the number of buckets.
163         * testsuite/performance/23_containers/insert/unordered_set.cc: New.
164
165 2012-07-26  François Dumont  <fdumont@gcc.gnu.org>
166
167         PR libstdc++/54075
168         * include/bits/hashtable.h
169         (_Hashtable<>::_Hashtable(_InputIterator, _InputIterator,
170         size_type, ...): Remove std::max usage to guarantee that hashtable
171         state is consistent with hash policy state.
172         (_Hashtable<>::rehash): Likewise. Set _M_prev_resize to 0 to avoid
173         the hashtable shrinking on next insertion.
174         * testsuite/23_containers/unordered_set/modifiers/reserve.cc: New.
175         * testsuite/23_containers/unordered_multiset/modifiers/reserve.cc: New.
176         * testsuite/23_containers/unordered_map/modifiers/reserve.cc: New.
177         * testsuite/23_containers/unordered_multimap/modifiers/reserve.cc: New.
178
179 2012-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
180
181         * testsuite/30_threads/thread/adl.cc: Add missing dg-requires.
182
183 2012-07-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
184
185         PR libstdc++/53270
186         * include/ext/concurrence.h: Use NSDMI for gthreads types.
187         * include/ext/rope: Likewise. Destroy mutexes in destructors. Add
188         system_header pragma.
189
190         Revert:
191         2012-06-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
192
193         PR libstdc++/53270
194         * config/os/gnu-linux/os_defines.h: Disable static initializer macros
195         for gthreads types in C++11 mode.
196
197 2012-07-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
198
199         PR libstdc++/53978
200         * include/bits/alloc_traits.h (allocator_traits): Define static
201         constants.
202         * include/bits/ptr_traits.h (pointer_traits): Likewise.
203         * include/ext/alloc_traits.h (__allocator_always_compares_equal):
204         Likewise.
205
206 2012-07-13  Paolo Carlini  <paolo.carlini@oracle.com>
207
208         PR libstdc++/53657
209         * include/bits/stl_pair.h (pair<>::pair(pair&&)): Declare defaulted,
210         per C++11.
211         * include/bits/stl_map.h (map<>::insert(_Pair&&), map<>::insert
212         (const_iterator, _Pair&&)): Constrain with std::is_constructible,
213         per LWG2005.
214         * include/bits/stl_multimap.h (multimap<>::insert(_Pair&&),
215         multimap<>::insert(const_iterator, _Pair&&)): Likewise.
216         * include/bits/hashtable_policy.h (_Insert<>::insert(_Pair&&),
217         _Insert<>::insert(const_iterator, _Pair&&)): Likewise.
218         * include/debug/unordered_map: Adjust.
219         * include/debug/map.h: Likewise.
220         * include/debug/multimap.h: Likewise.
221         * include/profile/unordered_map: Likewise.
222         * include/profile/map.h: Likewise.
223         * include/profile/multimap.h: Likewise.
224
225 2012-07-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
226
227         PR libstdc++/53578
228         * include/ext/concurrence.h (__recursive_mutex::_S_destroy): Fix
229         narrowing conversion.
230         * include/std/mutex (__recursive_mutex_base::_S_destroy): Likewise.
231
232 2012-07-06  Paolo Carlini  <paolo.carlini@oracle.com>
233
234         PR libstdc++/53872
235         * include/std/thread (thread::_M_make_routine): Qualify make_shared
236         to prevent ADL.
237         * testsuite/30_threads/thread/adl.cc: New.
238
239 2012-07-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
240
241         * include/std/condition_variable: Update copyright years.
242
243 2012-07-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
244
245         PR libstdc++/53830
246         * include/std/condition_variable (condition_variable_any::wait):
247         Move _Unlock type to class scope.
248         (condition_variable_any::wait_until): Reuse it.
249         * testsuite/30_threads/condition_variable_any/53830.cc: New.
250
251 2012-07-02  Paolo Carlini  <paolo.carlini@oracle.com>
252
253         Revert:
254         2011-10-04  Paolo Carlini  <paolo.carlini@oracle.com>
255
256         PR libstdc++/49561
257         * include/bits/stl_list.h (_List_base<>::_List_impl::_M_size):
258         Add in C++0x mode.
259         (_List_base<>::_List_impl, _List_base<>::_M_get_node,
260         _List_base<>::_M_put_node, _List_base<>::_List_base(_List_base&&),
261         list<>::size, list<>::swap, list<>::splice): Use it.
262         (operator==(const list<>&, const list<>&)): Rewrite in C++0x mode.
263         * include/bits/list.tcc (list<>::erase): Likewise.
264         (list<>::merge): Adjust in C++0x mode.
265         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
266         Adjust dg-error line number.
267         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
268         Likewise.
269         * testsuite/23_containers/list/requirements/dr438/
270         constructor_1_neg.cc: Likewise.
271         * testsuite/23_containers/list/requirements/dr438/
272         constructor_2_neg.cc: Likewise.
273
274 2012-06-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
275
276         PR libstdc++/53270
277         * config/os/gnu-linux/os_defines.h: Disable static initializer macros
278         for gthreads types in C++11 mode.
279
280 2012-06-19  Jörg Sonnenberger <joerg@britannica.bec.de>
281             Jonathan Wakely  <jwakely.gcc@gmail.com>
282
283         PR libstdc++/53678
284         * config/os/bsd/netbsd/ctype_base.h: Check for _CTYPE_U.
285         * testsuite/22_locale/ctype_base/53678.cc: New.
286
287 2012-06-14  Release Manager
288
289         * GCC 4.7.1 released.
290
291 2012-05-28  Paolo Carlini  <paolo.carlini@oracle.com>
292
293         PR c++/53503
294         * testsuite/26_numerics/headers/cmath/53503.cc: New.
295
296 2012-05-10  DJ Delorie  <dj@redhat.com>
297
298         * include/bits/random.tcc (seed_seq::generate): Cast max()
299         operands to size_t to ensure a template match.
300         * include/std/bitset (_M_copy_from_ptr): Cast min() operands to
301         size_t to ensure a template match.
302
303 2012-05-02  Paolo Carlini  <paolo.carlini@oracle.com>
304
305         PR libstdc++/53193
306         * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
307         dg-error line number.
308
309 2012-05-01  François Dumont  <fdumont@gcc.gnu.org>
310
311         PR libstdc++/53115
312         * include/bits/hashtable.h
313         (_Hashtable<>::_M_rehash_aux(size_type, false_type)): Fix buckets
314         after insertion of several equivalent elements.
315         * testsuite/23_containers/unordered_multiset/insert/53115.cc: New.
316         * testsuite/23_containers/unordered_multimap/insert/53115.cc: New.
317
318 2012-04-30  Andreas Tobler  <andreast@fgznet.ch>
319
320         Backport from mainline
321         2012-03-21  Andreas Tobler  <andreast@fgznet.ch>
322
323         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
324         Skip this test on powerpc64-*-freebsd*.
325
326 2012-04-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
327
328         * include/std/scoped_allocator (scoped_allocator::__outermost): Do
329         not pass non-POD to varargs function.
330         * testsuite/20_util/scoped_allocator/1.cc: Fix test.
331
332 2012-04-23  Chris Jefferson  <chris@bubblescope.net>
333
334         PR testsuite/53046
335         * testsuite/25_algorithms/stable_partition/mem_check.cc: Fix size
336         of array A.
337         * testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise.
338
339 2012-04-22  Paolo Carlini  <paolo.carlini@oracle.com>
340
341         PR libstdc++/53067
342         * include/bits/hashtable_policy.h: Change inheritances to public.
343         * testsuite/23_containers/unordered_map/requirements/53067.cc: New.
344         * testsuite/23_containers/unordered_set/requirements/53067.cc: Likewise.
345
346 2012-04-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
347
348         PR libstdc++/53027
349         * include/bits/ptr_traits.h (pointer_traits::rebind): Make public.
350         * testsuite/20_util/pointer_traits/requirements/typedefs.cc: Check
351         rebind works.
352
353 2012-04-21  Alan Modra  <amodra@gmail.com>
354
355         PR libstdc++/52839
356         * acinclude.m4 (_GLIBCXX_ATOMIC_BUILTINS): Do not depend on
357         glibcxx_cv_atomic_long_long.
358         * configure: Regenerate.
359
360 2012-04-16  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>
361
362         PR bootstrap/52840
363         * src/Makefile.am (build-debug): Do not adjust vpath dir, remove
364         Makefile.tmp
365         * src/Makefile.in: Adjust as per above.
366
367 2012-04-16  Benjamin Kosnik  <bkoz@redhat.com>
368
369         PR libstdc++/52689
370         * libsupc++/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
371         * libsupc++/Makefile.in: Regenerated.
372         * src/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
373         (libstdc___la_SOURCES): Add in compatiblity files, with content
374         that varies with -DPIC.
375         * src/Makefile.in: Regenerated.
376         * src/c++11/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
377         * src/c++11/Makefile.in: Regenerated.
378         * src/c++11/compatibility-atomic-c++0x.cc: Guard with PIC.
379         * src/c++11/compatibility-c++0x.cc: Same.
380         * src/c++11/future.cc: Consolidate compatibility bits into..
381         * src/c++11/mutex.cc: Consolidate compatibility bits into..
382         * src/c++11/compatibility-thread-cxx0x.cc: ...here. New.
383         * src/c++98/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
384         * src/c++98/Makefile.in: Regenerated.
385         * src/c++98/compatibility-list-2.cc: Guard with PIC.
386         * src/c++98/compatibility.cc: Tweak comments.
387
388 2012-04-16  Benjamin Kosnik  <bkoz@redhat.com>
389
390             * include/ext/pb_ds/detail/pat_trie_/
391             constructors_destructor_fn_imps.hpp: Increment after recursion.
392             * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Convert
393             node_type markup from brief.
394
395 2012-04-14  Paolo Carlini  <paolo.carlini@oracle.com>
396
397         PR libstdc++/52699
398         * include/bits/random.tcc (independent_bits_engine<>::operator()())
399         Avoid various overflows; use common_type on result_type and
400         _RandomNumberEngine::result_type; avoid floating point computations;
401         other smaller tweaks.
402
403         * include/bits/random.tcc (uniform_int_distribution<>::operator())
404         Use common_type; assume _UniformRandomNumberGenerator::result_type
405         unsigned; tidy.
406
407         * include/bits/stl_algobase.h (__lg(unsigned), __lg(unsigned long),
408         __lg(unsigned long long)): Add.
409
410 2012-04-13  Paolo Carlini  <paolo.carlini@oracle.com>
411
412         * include/debug/safe_iterator.h (_BeforeBeginHelper<>::
413         _S_Is_Beginnest): Add.
414         * include/debug/forward_list (_BeforeBeginHelper<>::
415         _S_Is_Beginnest): Likewise.
416         (_Safe_iterator<>::_M_is_beginnest): Add.
417         * include/debug/safe_iterator.tcc (_Safe_iterator<>::_M_valid_range):
418         Use the latter.
419         * testsuite/23_containers/forward_list/debug/splice_after.cc:
420         Add test.
421
422 2012-04-12  Paolo Carlini  <paolo.carlini@oracle.com>
423
424         * include/bits/forward_list.h (splice_after(const_iterator,
425         forward_list&), splice_after(const_iterator, forward_list&,
426         consst_iterator), splice_after(const_iterator, forward_list&,
427         const_iterator, const_iterator), merge(forward_list&),
428         merge(forward_list&, _Comp)): Add per C++11 as published (and
429         LWG 1310).
430         * include/debug/forward_list: Adjust.
431
432         * include/bits/forward_list.h (splice_after(const_iterator,
433         forward_list&&, const_iterator)): Only declare.
434         (_M_transfer_after): Remove.
435         (_M_splice_after(const_iterator, forward_list&&)): Change signature.
436         (splice_after(const_iterator, forward_list&&, const_iterator,
437         const_iterator)): Use the latter.
438         * include/bits/forward_list.tcc (splice_after(const_iterator,
439         forward_list&&, const_iterator)): Define here.
440         (_M_splice_after): Define, use throughout.
441
442         * include/bits/forward_list.h (insert_after(const_iterator,
443         std::initializer_list<_Tp>)): Forward to insert_after(const_iterator,
444         _InputIterator, _InputIterator).
445         * include/bits/forward_list.tcc: Remove definition.
446
447         * testsuite/23_containers/forward_list/modifiers/6.cc: New.
448         * testsuite/23_containers/forward_list/operations/1.cc: Adjust.
449
450         * testsuite/23_containers/forward_list/requirements/dr438/
451         assign_neg.cc: Adjust dg-error line number.
452         * testsuite/23_containers/forward_list/requirements/dr438/
453         insert_neg.cc: Likewise.
454         * testsuite/23_containers/forward_list/requirements/dr438/
455         constructor_1_neg.cc: Likewise.
456         * testsuite/23_containers/forward_list/requirements/dr438/
457         constructor_2_neg.cc: Likewise.
458
459 2012-04-12   Jeffrey Yasskin  <jyasskin@google.com>
460
461         PR libstdc++/52822
462         * include/bits/stl_algo.h (__find_if_not): Expose in C++98 mode.
463         (__find_if_not_n): Like __find_if_not, but works on and updates a
464         counted range instead of a bounded range.
465         (stable_partition): Guarantee !__pred(*__first) in call to
466         __stable_partition_adaptive() or __inplace_stable_partition().
467         (__stable_partition_adaptive): Use new precondition to avoid
468         moving/copying objects onto themselves.  Guarantee new
469         precondition to recursive calls.
470         (__inplace_stable_partition): Use new precondition to simplify
471         base case, remove __last parameter.  Guarantee new precondition to
472         recursive calls.
473         * testsuite/25_algorithms/stable_partition/moveable.cc (test02):
474         Test a sequence that starts with a value matching the predicate.
475         * testsuite/25_algorithms/stable_partition/pr52822.cc: Test
476         vectors, which have a destructive self-move-assignment.
477
478 2012-04-12  Paolo Carlini  <paolo.carlini@oracle.com>
479
480         PR libstdc++/52942
481         * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd):
482         In C++11 mode do not derive from std::unary_function.
483         * include/ext/functional (identity, select1st, select2nd): Adjust.
484         * testsuite/23_containers/unordered_map/requirements/52942.cc: New.
485         * testsuite/23_containers/unordered_set/requirements/52942.cc: Likewise.
486
487 2012-04-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
488
489         PR libstdc++/52924
490         * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Add
491         user-defined destructor.
492         (_Sp_counted_inplace): Likewise.
493         * testsuite/20_util/shared_ptr/cons/52924.cc: New.
494         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
495         line numbers.
496
497 2012-04-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
498
499         * testsuite/performance/30_threads/future/polling.cc: Adjust.
500
501 2012-04-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
502
503         PR libstdc++/52591
504         * include/bits/stl_vector.h (vector::operator=(vector&&)): Dispatch
505         to _M_move_assign depending on whether allocator is moved.
506         (vector::_M_move_assign): Add overloaded functions.
507         * testsuite/23_containers/vector/52591.cc: New.
508         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
509         Adjust dg-error line number.
510         * testsuite/23_containers/vector/requirements/dr438/
511         constructor_1_neg.cc:
512         Likewise.
513         * testsuite/23_containers/vector/requirements/dr438/
514         constructor_2_neg.cc:
515         Likewise.
516         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
517         Likewise.
518
519 2012-04-09  François Dumont  <fdumont@gcc.gnu.org>
520
521         PR libstdc++/52476
522         * include/bits/hashtable.h (_Hashtable<>::_M_rehash_aux): Add.
523         (_Hashtable<>::_M_rehash): Use the latter.
524         * testsuite/23_containers/unordered_multimap/insert/52476.cc: New.
525         * testsuite/23_containers/unordered_multiset/insert/52476.cc: New.
526
527 2012-04-09  Terry Guo  <terry.guo@arm.com>
528
529         Backport from mainline
530         2012-03-28  Terry Guo  <terry.guo@arm.com>
531
532         * testsuite/Makefile.am (TEST_GCC_EXEC_PREFIX): New.
533         * testsuite/Makefile.in: Regenerated.
534
535 2012-03-30  Jeffrey Yasskin  <jyasskin@gcc.gnu.org>
536             Paolo Carlini  <paolo.carlini@oracle.com>
537
538         PR libstdc++/52799
539         * include/bits/deque.tcc (emplace): Fix thinko, replace push_front
540         -> emplace_front, and likewise for *_back.
541         * testsuite/23_containers/deque/modifiers/emplace/52799.cc: New.
542         * testsuite/23_containers/list/modifiers/emplace/52799.cc: Likewise.
543         * testsuite/23_containers/vector/modifiers/emplace/52799.cc: Likewise.
544
545 2012-03-23  David S. Miller  <davem@davemloft.net>
546
547         * config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Update.
548
549 2012-03-23  Paolo Carlini  <paolo.carlini@oracle.com>
550
551         * include/bits/forward_list.h: Fix comments.
552
553 2012-03-23  Paweł Sikora  <pawel.sikora@agmk.net>
554
555         PR libstdc++/52540
556         * include/Makefile.am (c++config.h): Fix sed rule to not break
557         the _GLIBCXX_EXTERN_TEMPLATE redefinition.
558         * include/Makefile.in: Regenerate.
559
560 2012-03-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
561
562         PR libstdc++/52433
563         * include/debug/safe_iterator.h (_Safe_iterator): Add move
564         constructor and move assignment operator.
565         * testsuite/23_containers/vector/debug/52433.cc: New.
566
567 2012-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
568
569         * include/std/array (array<>::at(size_type) const): Fix version
570         for undefined __EXCEPTIONS.
571
572 2012-03-22  Release Manager
573
574         * GCC 4.7.0 released.
575
576 2012-03-10  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
577
578         PR libstdc++/52456
579         * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
580
581 2012-03-09  Andreas Schwab  <schwab@linux-m68k.org>
582
583         * config/locale/gnu/monetary_members.cc
584         (moneypunct<char,true>::_M_initialize_moneypunct): Throw caught
585         exception again.
586         (moneypunct<char,false>::_M_initialize_moneypunct): Likewise.
587         * testsuite/22_locale/locale/cons/12352.cc: Also test en_US
588         locale.
589
590 2012-03-02  Benjamin Kosnik  <bkoz@redhat.com>
591
592         * include/c_global/cstdio: Remove extraneous extern.
593         * include/c_std/cstdio: Same.
594
595 2012-03-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
596
597         * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate.
598         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
599         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
600         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
601         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
602
603 2012-03-01  Benjamin Kosnik  <bkoz@redhat.com>
604             Ramana Radhakrishnan <ramana@gcc.gnu.org>
605
606         PR libstdc++/51785
607         * acinclude.m4 (GLIBCXX_CHECK_STDIO_PROTO): New.
608         * configure.ac: Call it.
609         * configure: Regenerate.
610         * config.h.in: Same.
611         * config/os/gnu-linux/os_defines.h: Conditionally undefine
612         _GLIBCXX_HAVE_GETS.
613         * include/c_global/cstdio: Conditionally declare deprecated gets.
614         * include/c_std/cstdio: Same.
615
616 2012-03-01  Michael Spertus  <mike_spertus@symantec.com>
617
618         * include/tr2/type_traits (typelist): To __reflection_typelist.
619         (first, rest, empty): Remove.
620
621 2012-03-01  Benjamin Kosnik  <bkoz@redhat.com>
622
623         * testsuite/Makefile.am (CLEANFILES): Add *.gdb.
624         * testsuite/Makefile.in: Regenerate.
625
626 2012-02-29  H.J. Lu  <hongjiu.lu@intel.com>
627
628         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
629
630 2012-02-28  Benjamin Kosnik  <bkoz@redhat.com>
631
632         PR libstdc++/52191
633         * testsuite/util/testsuite_abi.cc (compare_symbols): Check new
634         symbols added into the latest version. Mark tls entities as
635         undesignated.
636
637 2012-02-28  Jakub Jelinek  <jakub@redhat.com>
638
639         PR bootstrap/52414
640         * src/Makefile.am (libstdc++-symbols.ver): Only remove comment lines
641         if they are at the beginning of lines (with optional whitespace before
642         #).
643         * src/Makefile.in: Regenerated.
644
645 2012-02-27  Jakub Jelinek  <jakub@redhat.com>
646
647         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
648         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
649         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
650         Likewise.
651         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
652         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
653         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
654         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
655         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
656         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
657
658 2012-02-27  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
659
660         PR libstdc++/52188
661         * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Remove symvers_renaming.
662         Remove ENABLE_SYMVERS_SOL2.
663         * configure: Regenerate.
664         * src/Makefile.am [ENABLE_SYMVERS] (libstdc++-symbols.ver):
665         Postprocess mapfile.
666         [ENABLE_SYMVERS_GNU]: Remove ENABLE_SYMVERS_SOL2 handling.
667         * src/Makefile.in: Regenerate.
668
669         * config/abi/pre/gnu.ver (GLIBCXX_3.4.5) [!__sun__ && !__svr4__]:
670         Don't export
671         _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv.
672
673 2012-02-25  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
674
675         PR testsuite/52201
676         * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
677         Require atomic builtins.
678         * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
679
680 2012-02-23  Jason Merrill  <jason@redhat.com>
681
682         * include/bits/locale_facets.h (class num_get): Undo reordering of
683         do_get virtual functions.
684
685 2012-02-14  Edward Smith-Rowland  <3dw4rd@verizon.net>
686
687         * testsuite/26_numerics/random/
688         uniform_real_distribution/requirements/typedefs.cc: Check param_type.
689         * testsuite/26_numerics/random/
690         piecewise_constant_distribution/requirements/typedefs.cc: Ditto.
691         * testsuite/26_numerics/random/
692         chi_squared_distribution/requirements/typedefs.cc: Ditto.
693         * testsuite/26_numerics/random/
694         normal_distribution/requirements/typedefs.cc: Ditto.
695         * testsuite/26_numerics/random/
696         uniform_int_distribution/requirements/typedefs.cc: Ditto.
697         * testsuite/26_numerics/random/
698         poisson_distribution/requirements/typedefs.cc: Ditto.
699         * testsuite/26_numerics/random/
700         bernoulli_distribution/requirements/typedefs.cc: Ditto.
701         * testsuite/26_numerics/random/
702         discrete_distribution/requirements/typedefs.cc: Ditto.
703         * testsuite/26_numerics/random/
704         weibull_distribution/requirements/typedefs.cc: Ditto.
705         * testsuite/26_numerics/random/
706         cauchy_distribution/requirements/typedefs.cc: Ditto.
707         * testsuite/26_numerics/random/
708         negative_binomial_distribution/requirements/typedefs.cc: Ditto.
709         * testsuite/26_numerics/random/
710         gamma_distribution/requirements/typedefs.cc: Ditto.
711         * testsuite/26_numerics/random/
712         fisher_f_distribution/requirements/typedefs.cc: Ditto.
713         * testsuite/26_numerics/random/
714         exponential_distribution/requirements/typedefs.cc: Ditto.
715         * testsuite/26_numerics/random/
716         binomial_distribution/requirements/typedefs.cc: Ditto.
717         * testsuite/26_numerics/random/
718         lognormal_distribution/requirements/typedefs.cc: Ditto.
719         * testsuite/26_numerics/random/
720         extreme_value_distribution/requirements/typedefs.cc: Ditto.
721         * testsuite/26_numerics/random/
722         piecewise_linear_distribution/requirements/typedefs.cc: Ditto.
723         * testsuite/26_numerics/random/
724         student_t_distribution/requirements/typedefs.cc: Ditto.
725         * testsuite/26_numerics/random/
726         geometric_distribution/requirements/typedefs.cc: Ditto.
727
728 2012-02-21  Benjamin Kosnik  <bkoz@redhat.com>
729
730         PR libstdc++/50349
731         * config/abi/pre/gnu.ver: Only one local.
732         * config/abi/pre/gnu-versioned-namespace.ver: Same.
733
734 2012-02-21  Paolo Carlini  <paolo.carlini@oracle.com>
735
736         PR libstdc++/52317 (cont)
737         * include/profile/unordered_map: Ad Library Exception comment.
738         * include/profile/set: Likewise.
739         * include/profile/base.h: Likewise.
740         * include/profile/impl/profiler_list_to_slist.h: Likewise.
741         * include/profile/impl/profiler_container_size.h: Likewise.
742         * include/profile/impl/profiler_vector_size.h: Likewise.
743         * include/profile/impl/profiler_hash_func.h: Likewise.
744         * include/profile/impl/profiler_trace.h: Likewise.
745         * include/profile/impl/profiler_list_to_vector.h: Likewise.
746         * include/profile/impl/profiler_vector_to_list.h: Likewise.
747         * include/profile/impl/profiler.h: Likewise.
748         * include/profile/impl/profiler_state.h: Likewise.
749         * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
750         * include/profile/impl/profiler_algos.h: Likewise.
751         * include/profile/impl/profiler_hashtable_size.h: Likewise.
752         * include/profile/impl/profiler_node.h: Likewise.
753         * include/profile/vector: Likewise.
754         * include/profile/unordered_set: Likewise.
755         * include/profile/map.h: Likewise.
756         * include/profile/map: Likewise.
757
758 2012-02-21  Paolo Carlini  <paolo.carlini@oracle.com>
759
760         PR libstdc++/52317
761         * python/Makefile.am: Update boilerplate license text to GPLv3.
762         * include/profile/unordered_map: Likewise.
763         * include/profile/set: Likewise.
764         * include/profile/base.h: Likewise.
765         * include/profile/impl/profiler_list_to_slist.h: Likewise.
766         * include/profile/impl/profiler_container_size.h: Likewise.
767         * include/profile/impl/profiler_vector_size.h: Likewise.
768         * include/profile/impl/profiler_hash_func.h: Likewise.
769         * include/profile/impl/profiler_trace.h: Likewise.
770         * include/profile/impl/profiler_list_to_vector.h: Likewise.
771         * include/profile/impl/profiler_vector_to_list.h: Likewise.
772         * include/profile/impl/profiler.h: Likewise.
773         * include/profile/impl/profiler_state.h: Likewise.
774         * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
775         * include/profile/impl/profiler_algos.h: Likewise.
776         * include/profile/impl/profiler_hashtable_size.h: Likewise.
777         * include/profile/impl/profiler_node.h: Likewise.
778         * include/profile/vector: Likewise.
779         * include/profile/unordered_set: Likewise.
780         * include/profile/map.h: Likewise.
781         * include/profile/map: Likewise.
782         * testsuite/21_strings/basic_string/numeric_conversions/
783         wchar_t/dr1261.cc: Likewise.
784         * testsuite/21_strings/basic_string/numeric_conversions/
785         char/dr1261.cc: Likewise.
786         * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
787
788 2012-02-20  Paolo Carlini  <paolo.carlini@oracle.com>
789
790         PR libstdc++/52241
791         * src/c++98/tree.cc (local_Rb_tree_increment,
792         local_Rb_tree_decrement): Add.
793         (_Rb_tree_increment(const _Rb_tree_node_base*),
794         _Rb_tree_decrement(const _Rb_tree_node_base*)): Use the latter.
795         (_Rb_tree_increment(_Rb_tree_node_base*),
796         _Rb_tree_decrement(_Rb_tree_node_base*)): New.
797
798 2012-02-20  Paolo Carlini  <paolo.carlini@oracle.com>
799
800         PR libstdc++/52309
801         * include/bits/hashtable_policy.h (_Equality_base<, true,>::
802         _M_equal(const _Hashtable&)): Compare values with operator==.
803         * testsuite/23_containers/unordered_set/operators/52309.cc: New.
804
805 2012-02-17  Benjamin Kosnik  <bkoz@redhat.com>
806
807         PR libstdc++/51798 continued.
808         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Grep for
809         __atomic_, not __sync.
810         * configure: Regenerated.
811
812 2012-02-17  Benjamin Kosnik  <bkoz@redhat.com>
813
814         PR libstdc++/47058
815         * acinclude.m4 (GLIBCXX_ENABLE_WERROR): New.
816         (GLIBCXX_EXPORT_FLAGS): Add -Wabi to WARN_FLAGS
817         * configure.ac: Use it.
818         * fragment.am: Set WERROR_FLAG conditionally on --disable-werror.
819         * configure: Regenerate.
820         * python/Makefile.in: Same.
821         * Makefile.in: Same.
822         * doc/Makefile.in: Same.
823         * include/Makefile.in: Same.
824         * po/Makefile.in: Same.
825         * python/Makefile.in: Same.
826         * src/Makefile.in: Same.
827         * src/c++11/Makefile.in: Same.
828         * src/c++98/Makefile.in: Same.
829         * testsuite/Makefile.in: Same.
830
831 2012-02-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
832
833         PR libstdc++/52189
834         * acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Handle
835         --enable-libstdcxx-threads.
836         Disable on Solaris 8/9 with symbol versioning.
837         * configure.ac (GLIBCXX_CHECK_GTHREADS): Move after
838         GLIBCXX_ENABLE_SYMVERS.
839         * configure: Regenerate.
840         * doc/xml/manual/configure.xml (--enable-libstdcxx-threads): Explain.
841
842 2012-02-15  DJ Delorie  <dj@redhat.com>
843
844         * src/c++98/locale.cc (locale::facet::_S_get_c_locale): Fix typo.
845
846 2012-02-15  Benjamin Kosnik  <bkoz@redhat.com>
847
848         PR libstdc++/51368
849         * acinclude.m4 (GLIBCXX_ENABLE_PYTHON): New.
850         * configure.ac: Use it.
851         * python/Makefile.am: Same.
852         * configure: Regenerate.
853         * python/Makefile.in: Regenerate.
854         * Makefile.in: Same.
855         * doc/Makefile.in: Same.
856         * include/Makefile.in: Same.
857         * po/Makefile.in: Same.
858         * src/Makefile.in: Same.
859         * src/c++11/Makefile.in: Same.
860         * src/c++98/Makefile.in: Same.
861         * testsuite/Makefile.in: Same.
862
863 2012-02-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
864
865         * 30_threads/thread/native_handle/typesizes.cc: Do not run on cygwin.
866
867 2012-02-14  Tom Tromey  <tromey@redhat.com>
868
869         * testsuite/libstdc++-prettyprinters/cxx11.cc (main): Add new
870         tests.
871         * python/libstdcxx/v6/printers.py (Tr1HashtableIterator.__init__):
872         Rewrite.
873         (Tr1HashtableIterator.update): Remove.
874         (Tr1HashtableIterator.next): Rewrite.
875
876 2012-02-13  Benjamin Kosnik  <bkoz@redhat.com>
877
878         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
879         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
880
881 2012-02-13  Richard Henderson  <rth@redhat.com>
882
883         PR libstdc++/51798 continued.
884         * include/bits/shared_ptr_base.h
885         (_Sp_counted_base<_S_atomic>::_M_add_ref_lock): Hoist initial load
886         outside compare_exchange loop.
887         * include/tr1/shared_ptr.h: Same.
888         * include/parallel/compatibility.h (__compare_and_swap_32): Use strong
889         version of compare_exchange.
890         (__compare_and_swap_64): Same.
891         * include/profile/impl/profiler_state.h (__gnu_profile::__turn): Same.
892         * libsupc++/guard.cc (__cxa_guard_acquire): Same.
893
894 2012-02-10  Benjamin Kosnik  <bkoz@redhat.com>
895             Jonathan Wakely  <jwakely.gcc@gmail.com>
896
897         PR libstdc++/51798 continued.
898         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Use __atomic_*
899         builtins instead of __sync_* builtins for atomic functionality.
900         * include/bits/shared_ptr_base.h: Same.
901         * include/parallel/compatibility.h: Same.
902         * include/profile/impl/profiler_state.h: Same.
903         * include/tr1/shared_ptr.h: Same.
904         * libsupc++/eh_ptr.cc: Same.
905         * libsupc++/eh_throw.cc: Same.
906         * libsupc++/eh_tm.cc: Same.
907         * libsupc++/guard.cc: Same.
908         * configure: Regenerated.
909         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
910         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
911
912 2012-02-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
913
914         PR libstdc++/51296
915         * config/os/osf/ctype_base.h,
916         config/os/osf/ctype_configure_char.cc,
917         config/os/osf/ctype_inline.h, config/os/osf/error_constants.h:
918         Copy from config/os/generic.
919         * config/os/osf/os_defines.h: Likewise.
920         (_GTHREAD_USE_MUTEX_INIT_FUNC, _GTHREAD_USE_COND_INIT_FUNC):
921         Define.
922         * configure.host <osf*>: Use os/osf for os_include_dir.
923
924 2012-02-10  Uros Bizjak  <ubizjak@gmail.com>
925
926         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Regenerated.
927
928 2012-02-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
929
930         * doc/xml/manual/documentation_hacking.xml: Fix invalid attribute.
931
932 2012-02-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
933
934         * doc/xml/manual/status_cxx2011.xml: Update C++11 status table.
935
936 2012-02-07  Benjamin Kosnik  <bkoz@redhat.com>
937
938         * doc/doxygen/user.cfg.in: Update to doxygen 1.7.6.1.
939         * doc/xml/manual/documentation_hacking.xml: Update.
940
941 2012-02-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
942
943         * testsuite/30_threads/call_once/39909.cc: Remove duplicate target
944         selector.
945         * testsuite/30_threads/call_once/49668.cc: Likewise.
946         * testsuite/30_threads/call_once/call_once1.cc: Likewise.
947         * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
948         * testsuite/30_threads/mutex/cons/1.cc: Likewise.
949         * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
950         * testsuite/30_threads/mutex/lock/1.cc: Likewise.
951         * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
952         * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
953         * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
954         * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
955         * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
956         * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
957         * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
958         * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
959         * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
960         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
961         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
962         * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
963         * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
964         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
965         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
966         * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
967         * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
968
969 2012-02-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
970
971         PR libstdc++/51296
972         * include/std/mutex (__mutex_base::~__mutex_base): Declare noexcept.
973         * src/c++11/condition_variable.cc (condition_variable): Use macro for
974         initializer function.
975
976         PR libstdc++/51906
977         * config/os/bsd/darwin/os_defines.h: Disable static initializer for
978         recursive mutexes.
979
980 2012-02-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
981
982         PR libstdc++/52128
983         * src/c++11/future.cc: Add explicit instantiation.
984
985 2012-02-06  François Dumont  <fdumont@gcc.gnu.org>
986
987         * include/debug/safe_iterator.h
988         (_Safe_iterator::_M_before_dereferenceable): Avoid the expensive
989         creation of a _Safe_iterator instance to do the check.
990
991 2012-02-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
992
993         PR libstdc++/52104
994         * include/std/future (__future_base::_Async_state_common): Define
995         destructor inline for targets without TLS.
996         * src/c++11/future.cc (__future_base::_Async_state_common): Only
997         define destructor for TLS targets.
998
999 2012-02-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
1000
1001         PR libstdc++/51956
1002         * python/libstdcxx/v6/printers.py (StdPointerPrinter): Rename to...
1003         (SharedPointerPrinter): This. Also show weak count.
1004         * testsuite/libstdc++-prettyprinters/shared_ptr.cc: New.
1005
1006 2012-02-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
1007
1008         * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Modify to
1009         PASS instead of XFAIL.
1010
1011 2012-02-05  Jeffrey Yasskin  <jyasskin@gcc.gnu.org>
1012             Paolo Carlini  <paolo.carlini@oracle.com>
1013
1014         PR libstdc++/52119
1015         * include/std/limits (__glibcxx_min): Fix to avoid undefined behavior.
1016
1017 2012-02-03  Benjamin Kosnik  <bkoz@redhat.com>
1018
1019         PR libstdc++/49445
1020         * testsuite/29_atomics/atomic/cons/49445.cc: Add.
1021
1022 2012-02-03  Benjamin Kosnik  <bkoz@redhat.com>
1023
1024         PR libstdc++/51811
1025         * include/bits/atomic_base.h (atomic<_Tp*>): Fix offsets.
1026         * testsuite/29_atomics/atomic/operators/51811.cc: New.
1027         * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: New.
1028
1029 2012-02-03  Jakub Jelinek  <jakub@redhat.com>
1030
1031         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
1032         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
1033         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
1034         Likewise.
1035         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
1036         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
1037         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
1038         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
1039         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
1040         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1041
1042 2012-02-02  Benjamin Kosnik  <bkoz@redhat.com>
1043
1044         PR libstdc++/52068
1045         * src/c++11/Makefile.am (toolexeclib_LTLIBRARIES,
1046         libc__11_la_SOURCES): Remove.
1047         * src/c++11/Makefile.in: Regenerate.
1048         * src/c++98/Makefile.am (toolexeclib_LTLIBRARIES,
1049         libc__98_la_SOURCES): Remove.
1050         * src/c++98/Makefile.in: Regenerate.
1051
1052 2012-02-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
1053
1054         PR libstdc++/49204
1055         * include/std/future (__future_base::_State_base::wait()): Use lambda
1056         expression for predicate and remove redundant test.
1057         (__future_base::_State_base::wait_for()): Return future_status and
1058         use lambda expression for predicate.
1059         (__future_base::_State_base::wait_until()): Likewise.
1060         (__basic_future::wait_for(), __basic_future::wait_until()): Likewise.
1061         (__future_base::_Async_state): Replace with _Async_state_common
1062         class for non-dependent functionality and _Async_state_impl class
1063         template for dependent functionality.
1064         (__future_base::_Async_state_common::_M_join): Serialize attempts to
1065         join thread.
1066         (__future_base::_Async_state_common::_M_run_deferred): Join.
1067         (__future_base::_Async_state::_M_do_run): Replace with lambda.
1068         * src/c++11/future.cc (__future_base::_Async_state_common): Define
1069         destructor, so key function is in the library.
1070         * config/abi/pre/gnu.ver: Add exports for ~_Async_state_common.
1071         * testsuite/30_threads/packaged_task/members/get_future.cc: Expect
1072         future_status return instead of bool.
1073         * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
1074         * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
1075         * testsuite/30_threads/future/members/wait_until.cc: Likewise.
1076         * testsuite/30_threads/future/members/wait_for.cc: Likewise.
1077         * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
1078         * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
1079         * testsuite/30_threads/promise/members/swap.cc: Likewise.
1080
1081 2012-01-30  Tom Tromey  <tromey@redhat.com>
1082
1083         PR libstdc++/51649:
1084         * testsuite/libstdc++-prettyprinters/debug.cc: New file.
1085         * testsuite/lib/gdb-test.exp (regexp-test): New proc.
1086         (note-test): Update.
1087         (gdb-test): Handle regexp tests.  Add some logging.
1088         * testsuite/libstdc++-prettyprinters/simple.cc: Compile with -O0.
1089         (placeholder, use): Remove.
1090         (main): Add tests for deque, list, map, and set iterators.  Add
1091         tests for slist and slist iterator.
1092         * testsuite/libstdc++-prettyprinters/48362.cc (main): Handle __7
1093         namespace.
1094         * python/libstdcxx/v6/printers.py (StdListPrinter.children): Use
1095         the type's _Node typedef.
1096         (StdListIteratorPrinter.to_string): Change how node type is
1097         computed.
1098         (StdSlistPrinter.children): Use the type's _Node typedef.
1099         (StdSlistIteratorPrinter.to_string): Likewise.
1100         (StdRbtreeIteratorPrinter.to_string): Use the type's _Link_type
1101         typedef.
1102         (StdMapPrinter.children): Change how the node's type is computed.
1103         (StdSetPrinter.children): Likewise.
1104         (StdForwardListPrinter.children): Use the type's _Node typedef.
1105         (Printer.add_version): New method.
1106         (Printer.add_container): New method.
1107         (build_libstdcxx_dictionary): Handle __7 and __cxx1998
1108         namespaces.
1109         (find_type): New function.
1110
1111 2012-01-27  Paolo Carlini  <paolo.carlini@oracle.com>
1112
1113         PR libstdc++/51795
1114         * include/bits/random.h (linear_congruential_generator): Add
1115         static_assert preventing instantiation for values of 'a' and 'm'
1116         currently handled incorrectly by _Mod::__calc.
1117         * include/bits/random.tcc (seed_seq::generate): Avoid unsafe
1118         uses of _Mod::__calc.
1119
1120 2012-01-27  Jakub Jelinek  <jakub@redhat.com>
1121
1122         PR libstdc++/51798
1123         * config/cpu/generic/atomicity_builtins/atomicity.h
1124         (__exchange_and_add, __atomic_add): Use __atomic_fetch_add
1125         with __ATOMIC_ACQ_REL semantics instead of __sync_fetch_and_add.
1126         * include/ext/atomicity.h (__exchange_and_add, __atomic_add):
1127         Likewise.
1128
1129 2011-01-27  Rafael Avila de Espindola  <rafael.espindola@gmail.com>
1130
1131         * libsupc++/typeinfo: Correctly match #pragma GCC visibility
1132         pop with #pragma GCC visibility push.
1133
1134 2012-01-27  Benjamin Kosnik  <bkoz@redhat.com>
1135             Matthias Klose  <doko@ubuntu.com>
1136
1137         * configure.ac (GLIBCXX_ENABLE_DEBUG_FLAGS): Use -gdwarf-4 -g3 -O0.
1138         * configure.in: Regenerated.
1139         * src/Makefile.am (all-once, install-data-once): New rules.
1140         (all-local, install-data-local): Use them.
1141         (build-debug, install-debug): Tweak.
1142         * src/Makefile.in: Regenerate.
1143
1144 2012-01-27  Richard Henderson  <rth@redhat.com>
1145
1146         * include/bits/atomic_base.h (__atomic_flag_base): Define _M_i
1147         based on the value of __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
1148         (ATOMIC_FLAG_INIT): Initialize with 0, not false.
1149         (atomic_flag::atomic_flag): Use __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
1150
1151 2012-01-26  Jakub Jelinek  <jakub@redhat.com>
1152
1153         PR bootstrap/51985
1154         * src/c++98/Makefile.am (libc__98_la_SOURCES,
1155         libc__98convenience_la_SOURCES): Remove $(inst_sources).
1156         * src/c++98/Makefile.in: Regenerated.
1157
1158 2012-01-25  Richard Sandiford  <rdsandiford@googlemail.com>
1159
1160         * testsuite/20_util/system_clock/1.cc: Add dg-require-time.
1161         * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
1162         * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
1163         * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
1164         * testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Add
1165         dg-require-fileio.
1166         * testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise.
1167         * testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise.
1168         * testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise.
1169         * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-fstream.cc:
1170         Likewise.
1171         * testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
1172
1173 2012-01-25  Matthias Klose  <doko@ubuntu.com>
1174
1175         * testsuite/30_threads/condition_variable_any/requirements: Remove
1176         empty directory.
1177
1178 2012-01-23  Benjamin Kosnik  <bkoz@redhat.com>
1179
1180         * src/Makefile.am (libstdc++convenience.la): Correct stamp rule, copy.
1181         * src/Makefile.in: Regenerate.
1182
1183 2012-01-23  Benjamin Kosnik  <bkoz@redhat.com>
1184
1185         PR libstdc++/49829
1186         Add libc++98convenience.la, libc++11convenience.la.
1187         * src/c++98: New directory.
1188         * src/c++11: New directory.
1189         * acinclude.m4: (GLIBCXX_CONFIGURE): Add src-c++98, src-c++11.
1190         * configure: Regenerated.
1191         * Makefile.am (hosted_source): Add src-c++98, src-c++11 to SUBDIRS.
1192         * Makefile.in: Regenerate.
1193         * libsupc++/Makefile.am (AM_CXXFLAGS): USe XTEMPLATE_FLAGS for
1194         -fno-implicit-templates.
1195         * libsupc++/Makefile.in: Regenerate.
1196         * src/Makefile.am (inst_sources): Move... C++11 files into
1197         separate directory for libstdc++11convenience.la. Files are:
1198         fstream-inst.cc, string-inst.cc, wlocale-inst.cc, wstring-inst.cc).
1199         (sources): Move C++11 files. Files are: compatibility-c++0x.cc,
1200         compatibility-atomic-c++0x.cc, debug.cc, functexcept.cc,
1201         functional.cc, hash_c++0x.cc, hashtable_c++0x.cc, limits.cc,
1202         system_error.cc, placeholders.cc, regex.cc, shared_ptr.cc,
1203         mutex.cc, condition_variable.cc, chrono.cc, thread.cc, future.cc.
1204         (libstdc++convenience.la): Add new target.
1205         (SUBDIRS): Add c++11, c++98.
1206         * src/Makefile.in: Regenerate.
1207         * src/c++11/Makefile.am: New.
1208         * src/c++11/Makefile.in: Generate.
1209         * src/c++98/Makefile.am: New, C++98 files.
1210         * src/c++98/Makefile.in: Generate.
1211
1212 2012-01-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1213
1214         libstdc++-v3:
1215         * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on
1216         32-bit Solaris 10/x86.
1217         * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
1218
1219 2012-01-21  Jonathan Wakely  <jwakely.gcc@gmail.com>
1220
1221         PR libstdc++/50982
1222         * testsuite/30_threads/*: Add powerpc-ibm-aix* to target selectors.
1223
1224 2012-01-19  Jakub Jelinek  <jakub@redhat.com>
1225
1226         PR libstdc++/51845
1227         * include/bits/hashtable.h
1228         (_Hashtable<>::erase(const_iterator, const_iterator)): Also update
1229         _M_buckets[__n_bkt] if __is_bucket_begin.
1230         * testsuite/23_containers/unordered_multimap/erase/51845-multimap.cc:
1231         New test.
1232
1233 2012-01-18  Benjamin Kosnik  <bkoz@redhat.com>
1234
1235         * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): Fix quoting.
1236
1237 2012-01-18  Benjamin Kosnik  <bkoz@redhat.com>
1238
1239         * configure.ac: Move epub checks...
1240         * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): ...here, use
1241         test -f instead of AC_CHECK_FILES.
1242
1243 2012-01-18  François Dumont  <fdumont@gcc.gnu.org>
1244             Roman Kononov  <roman@binarylife.net>
1245
1246         PR libstdc++/51866
1247         * include/bits/hashtable.h (_Hashtable<>::_M_insert(_Arg, false_type)):
1248         Do not keep a reference to a potentially moved instance.
1249         * testsuite/23_containers/unordered_multiset/insert/51866.cc: New.
1250         * testsuite/23_containers/unordered_multimap/insert/51866.cc: New.
1251
1252 2012-01-17  Benjamin Kosnik  <bkoz@redhat.com>
1253
1254         * doc/html/*: Regenerate.
1255
1256 2012-01-17  Benjamin Kosnik  <bkoz@redhat.com>
1257
1258         * configure.ac (BUILD_EPUB): Adjust for epub3.
1259         * configure: Regenerate.
1260         * Makefile.in: Same.
1261         * doc/Makefile.am (stamp-epub-docbook): Update for epub3.
1262         * doc/Makefile.in: Regenerate.
1263         * include/Makefile.in: Same.
1264         * libsupc++/Makefile.in: Same.
1265         * po/Makefile.in: Same.
1266         * python/Makefile.in: Same.
1267         * src/Makefile.in: Same.
1268         * testsuite/Makefile.in: Same.
1269
1270         * doc/xml/manual/documentation_hacking.xml: Update.
1271
1272 2012-01-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1273
1274         PR target/47852
1275         * configure.host (irix6.5*): Add -lpthread to OPT_LDFLAGS.
1276
1277 2012-01-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
1278
1279         * include/bits/stl_iterator.h (reverse_iterator): Doxygen comments.
1280
1281 2012-01-13  François Dumont  <fdumont@gcc.gnu.org>
1282
1283         * include/bits/hashtable_policy.h (_Hash_node_base): New, use it as
1284         base class of ...
1285         (_Hash_node<Value, true>, _Hash_node<Value, false>): ... those.
1286         * include/bits/hashtable.h (_Hashtable): Replace _M_begin_bucket_index
1287         by _M_before_begin. Review implementation so that we do not need to
1288         look for previous non-empty bucket when inserting nodes.
1289
1290 2012-01-09  Kai Tietz  <ktietz@redhat.com>
1291
1292         PR libstc++/51673 part 2
1293         * config/abi/pre/gnu-versioned-namespace.ver: Adjusted new/delete
1294         operators signature for LLP64 size_t, and adjusted signatures for
1295         mt-allocator using size_t.
1296
1297 2012-01-09  Benjamin Kosnik  <bkoz@redhat.com>
1298
1299         PR libstc++/51673 part 1
1300         * config/abi/pre/gnu-versioned-namespace.ver: Sync cxxabi symbols
1301         with gnu.ver.
1302
1303 2012-01-09  Benjamin Kosnik  <bkoz@redhat.com>
1304
1305         * fragment.am (WARN_CXXFLAGS): Add -Wabi.
1306         * Makefile.in: Regenerate.
1307         * doc/Makefile.in: Same.
1308         * include/Makefile.in: Same.
1309         * libsupc++/Makefile.in: Same.
1310         * src/Makefile.in: Same.
1311         * testsuite/Makefile.in: Same.
1312         * po/Makefile.in: Same.
1313         * python/Makefile.in: Same.
1314
1315 2012-01-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
1316
1317         * python/libstdcxx/v6/printers.py (StdForwardListPrinter): Add.
1318         * testsuite/libstdc++-prettyprinters/cxx11.cc: New.
1319
1320 2012-01-06  Jason Merrill  <jason@redhat.com>
1321
1322         * testsuite/abi/demangle/regression/cw-16.cc (main): Adjust
1323         expected demangling.
1324
1325 2012-01-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
1326
1327         PR libstdc++/51504
1328         * doc/xml/manual/debug.xml: Suggest using symbol interposition
1329         to override symbols using annotation macros.
1330
1331 2012-01-05  François Dumont  <fdumont@gcc.gnu.org>
1332
1333         * include/bits/hashtable_policy.h (_Hashtable_base<>::_M_eq()):
1334         protected rather than private, use it...
1335         * include/bits/hashtable.h (_Hashtable<>::key_eq()): ... here.
1336         * testsuite/23_containers/unordered_set/observers.cc: New.
1337         * testsuite/23_containers/unordered_multiset/observers.cc: New.
1338         * testsuite/23_containers/unordered_map/observers.cc: New.
1339         * testsuite/23_containers/unordered_multimap/observers.cc: New.
1340
1341 2012-01-03  François Dumont  <fdumont@gcc.gnu.org>
1342
1343         * include/bits/hashtable_policy.h (_Ebo_helper<>): Rename to the more
1344         specific _Hashtable_ebo_helper. Hide this implementation detail thanks
1345         to private inheritance.
1346
1347 2012-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
1348
1349         PR c++/51738
1350         * testsuite/23_containers/map/element_access/39901.cc: New.