OSDN Git Service

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