OSDN Git Service

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