OSDN Git Service

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