OSDN Git Service

PR libstdc++/52924
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2012-04-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2
3         PR libstdc++/52924
4         * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Add
5         user-defined destructor.
6         (_Sp_counted_inplace): Likewise.
7         * testsuite/20_util/shared_ptr/cons/52924.cc: New.
8         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
9         line numbers.
10
11 2012-04-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
12
13         * testsuite/performance/30_threads/future/polling.cc: Adjust.
14
15 2012-04-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
16
17         PR libstdc++/52591
18         * include/bits/stl_vector.h (vector::operator=(vector&&)): Dispatch
19         to _M_move_assign depending on whether allocator is moved.
20         (vector::_M_move_assign): Add overloaded functions.
21         * testsuite/23_containers/vector/52591.cc: New.
22         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
23         Adjust dg-error line number.
24         * testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc:
25         Likewise.
26         * testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc:
27         Likewise.
28         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
29         Likewise.
30
31 2012-04-09  François Dumont  <fdumont@gcc.gnu.org>
32
33         PR libstdc++/52476
34         * include/bits/hashtable.h (_Hashtable<>::_M_rehash_aux): Add.
35         (_Hashtable<>::_M_rehash): Use the latter.
36         * testsuite/23_containers/unordered_multimap/insert/52476.cc: New.
37         * testsuite/23_containers/unordered_multiset/insert/52476.cc: New.
38
39 2012-04-09  Terry Guo  <terry.guo@arm.com>
40
41         Backport from mainline
42         2012-03-28  Terry Guo  <terry.guo@arm.com>
43
44         * testsuite/Makefile.am (TEST_GCC_EXEC_PREFIX): New.
45         * testsuite/Makefile.in: Regenerated.
46
47 2012-03-30  Jeffrey Yasskin  <jyasskin@gcc.gnu.org>
48             Paolo Carlini  <paolo.carlini@oracle.com>
49
50         PR libstdc++/52799
51         * include/bits/deque.tcc (emplace): Fix thinko, replace push_front
52         -> emplace_front, and likewise for *_back.
53         * testsuite/23_containers/deque/modifiers/emplace/52799.cc: New.
54         * testsuite/23_containers/list/modifiers/emplace/52799.cc: Likewise.
55         * testsuite/23_containers/vector/modifiers/emplace/52799.cc: Likewise.
56
57 2012-03-23  David S. Miller  <davem@davemloft.net>
58
59         * config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Update.
60
61 2012-03-23  Paolo Carlini  <paolo.carlini@oracle.com>
62
63         * include/bits/forward_list.h: Fix comments.
64
65 2012-03-23  Paweł Sikora  <pawel.sikora@agmk.net>
66
67         PR libstdc++/52540
68         * include/Makefile.am (c++config.h): Fix sed rule to not break
69         the _GLIBCXX_EXTERN_TEMPLATE redefinition.
70         * include/Makefile.in: Regenerate.
71
72 2012-03-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
73
74         PR libstdc++/52433
75         * include/debug/safe_iterator.h (_Safe_iterator): Add move
76         constructor and move assignment operator.
77         * testsuite/23_containers/vector/debug/52433.cc: New.
78
79 2012-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
80
81         * include/std/array (array<>::at(size_type) const): Fix version
82         for undefined __EXCEPTIONS.
83
84 2012-03-22  Release Manager
85
86         * GCC 4.7.0 released.
87
88 2012-03-10  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
89
90         PR libstdc++/52456
91         * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
92
93 2012-03-09  Andreas Schwab  <schwab@linux-m68k.org>
94
95         * config/locale/gnu/monetary_members.cc
96         (moneypunct<char,true>::_M_initialize_moneypunct): Throw caught
97         exception again.
98         (moneypunct<char,false>::_M_initialize_moneypunct): Likewise.
99         * testsuite/22_locale/locale/cons/12352.cc: Also test en_US
100         locale.
101
102 2012-03-02  Benjamin Kosnik  <bkoz@redhat.com>
103
104         * include/c_global/cstdio: Remove extraneous extern.
105         * include/c_std/cstdio: Same.
106
107 2012-03-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
108
109         * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate.
110         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
111         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
112         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
113         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
114
115 2012-03-01  Benjamin Kosnik  <bkoz@redhat.com>
116             Ramana Radhakrishnan <ramana@gcc.gnu.org>
117
118         PR libstdc++/51785
119         * acinclude.m4 (GLIBCXX_CHECK_STDIO_PROTO): New.
120         * configure.ac: Call it.
121         * configure: Regenerate.
122         * config.h.in: Same.
123         * config/os/gnu-linux/os_defines.h: Conditionally undefine
124         _GLIBCXX_HAVE_GETS.
125         * include/c_global/cstdio: Conditionally declare deprecated gets.
126         * include/c_std/cstdio: Same.
127
128 2012-03-01  Michael Spertus  <mike_spertus@symantec.com>
129
130         * include/tr2/type_traits (typelist): To __reflection_typelist.
131         (first, rest, empty): Remove.
132
133 2012-03-01  Benjamin Kosnik  <bkoz@redhat.com>
134
135         * testsuite/Makefile.am (CLEANFILES): Add *.gdb.
136         * testsuite/Makefile.in: Regenerate.
137
138 2012-02-29  H.J. Lu  <hongjiu.lu@intel.com>
139
140         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
141
142 2012-02-28  Benjamin Kosnik  <bkoz@redhat.com>
143
144         PR libstdc++/52191
145         * testsuite/util/testsuite_abi.cc (compare_symbols): Check new
146         symbols added into the latest version. Mark tls entities as
147         undesignated.
148
149 2012-02-28  Jakub Jelinek  <jakub@redhat.com>
150
151         PR bootstrap/52414
152         * src/Makefile.am (libstdc++-symbols.ver): Only remove comment lines
153         if they are at the beginning of lines (with optional whitespace before
154         #).
155         * src/Makefile.in: Regenerated.
156
157 2012-02-27  Jakub Jelinek  <jakub@redhat.com>
158
159         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
160         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
161         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
162         Likewise.
163         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
164         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
165         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
166         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
167         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
168         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
169
170 2012-02-27  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
171
172         PR libstdc++/52188
173         * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Remove symvers_renaming.
174         Remove ENABLE_SYMVERS_SOL2.
175         * configure: Regenerate.
176         * src/Makefile.am [ENABLE_SYMVERS] (libstdc++-symbols.ver):
177         Postprocess mapfile.
178         [ENABLE_SYMVERS_GNU]: Remove ENABLE_SYMVERS_SOL2 handling.
179         * src/Makefile.in: Regenerate.
180
181         * config/abi/pre/gnu.ver (GLIBCXX_3.4.5) [!__sun__ && !__svr4__]:
182         Don't export
183         _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv.
184
185 2012-02-25  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
186
187         PR testsuite/52201
188         * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
189         Require atomic builtins.
190         * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
191
192 2012-02-23  Jason Merrill  <jason@redhat.com>
193
194         * include/bits/locale_facets.h (class num_get): Undo reordering of
195         do_get virtual functions.
196
197 2012-02-14  Edward Smith-Rowland  <3dw4rd@verizon.net>
198
199         * testsuite/26_numerics/random/
200         uniform_real_distribution/requirements/typedefs.cc: Check param_type.
201         * testsuite/26_numerics/random/
202         piecewise_constant_distribution/requirements/typedefs.cc: Ditto.
203         * testsuite/26_numerics/random/
204         chi_squared_distribution/requirements/typedefs.cc: Ditto.
205         * testsuite/26_numerics/random/
206         normal_distribution/requirements/typedefs.cc: Ditto.
207         * testsuite/26_numerics/random/
208         uniform_int_distribution/requirements/typedefs.cc: Ditto.
209         * testsuite/26_numerics/random/
210         poisson_distribution/requirements/typedefs.cc: Ditto.
211         * testsuite/26_numerics/random/
212         bernoulli_distribution/requirements/typedefs.cc: Ditto.
213         * testsuite/26_numerics/random/
214         discrete_distribution/requirements/typedefs.cc: Ditto.
215         * testsuite/26_numerics/random/
216         weibull_distribution/requirements/typedefs.cc: Ditto.
217         * testsuite/26_numerics/random/
218         cauchy_distribution/requirements/typedefs.cc: Ditto.
219         * testsuite/26_numerics/random/
220         negative_binomial_distribution/requirements/typedefs.cc: Ditto.
221         * testsuite/26_numerics/random/
222         gamma_distribution/requirements/typedefs.cc: Ditto.
223         * testsuite/26_numerics/random/
224         fisher_f_distribution/requirements/typedefs.cc: Ditto.
225         * testsuite/26_numerics/random/
226         exponential_distribution/requirements/typedefs.cc: Ditto.
227         * testsuite/26_numerics/random/
228         binomial_distribution/requirements/typedefs.cc: Ditto.
229         * testsuite/26_numerics/random/
230         lognormal_distribution/requirements/typedefs.cc: Ditto.
231         * testsuite/26_numerics/random/
232         extreme_value_distribution/requirements/typedefs.cc: Ditto.
233         * testsuite/26_numerics/random/
234         piecewise_linear_distribution/requirements/typedefs.cc: Ditto.
235         * testsuite/26_numerics/random/
236         student_t_distribution/requirements/typedefs.cc: Ditto.
237         * testsuite/26_numerics/random/
238         geometric_distribution/requirements/typedefs.cc: Ditto.
239
240 2012-02-21  Benjamin Kosnik  <bkoz@redhat.com>
241
242         PR libstdc++/50349
243         * config/abi/pre/gnu.ver: Only one local.
244         * config/abi/pre/gnu-versioned-namespace.ver: Same.
245
246 2012-02-21  Paolo Carlini  <paolo.carlini@oracle.com>
247
248         PR libstdc++/52317 (cont)
249         * include/profile/unordered_map: Ad Library Exception comment.
250         * include/profile/set: Likewise.
251         * include/profile/base.h: Likewise.
252         * include/profile/impl/profiler_list_to_slist.h: Likewise.
253         * include/profile/impl/profiler_container_size.h: Likewise.
254         * include/profile/impl/profiler_vector_size.h: Likewise.
255         * include/profile/impl/profiler_hash_func.h: Likewise.
256         * include/profile/impl/profiler_trace.h: Likewise.
257         * include/profile/impl/profiler_list_to_vector.h: Likewise.
258         * include/profile/impl/profiler_vector_to_list.h: Likewise.
259         * include/profile/impl/profiler.h: Likewise.
260         * include/profile/impl/profiler_state.h: Likewise.
261         * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
262         * include/profile/impl/profiler_algos.h: Likewise.
263         * include/profile/impl/profiler_hashtable_size.h: Likewise.
264         * include/profile/impl/profiler_node.h: Likewise.
265         * include/profile/vector: Likewise.
266         * include/profile/unordered_set: Likewise.
267         * include/profile/map.h: Likewise.
268         * include/profile/map: Likewise.
269
270 2012-02-21  Paolo Carlini  <paolo.carlini@oracle.com>
271
272         PR libstdc++/52317
273         * python/Makefile.am: Update boilerplate license text to GPLv3.
274         * include/profile/unordered_map: Likewise.
275         * include/profile/set: Likewise.
276         * include/profile/base.h: Likewise.
277         * include/profile/impl/profiler_list_to_slist.h: Likewise.
278         * include/profile/impl/profiler_container_size.h: Likewise.
279         * include/profile/impl/profiler_vector_size.h: Likewise.
280         * include/profile/impl/profiler_hash_func.h: Likewise.
281         * include/profile/impl/profiler_trace.h: Likewise.
282         * include/profile/impl/profiler_list_to_vector.h: Likewise.
283         * include/profile/impl/profiler_vector_to_list.h: Likewise.
284         * include/profile/impl/profiler.h: Likewise.
285         * include/profile/impl/profiler_state.h: Likewise.
286         * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
287         * include/profile/impl/profiler_algos.h: Likewise.
288         * include/profile/impl/profiler_hashtable_size.h: Likewise.
289         * include/profile/impl/profiler_node.h: Likewise.
290         * include/profile/vector: Likewise.
291         * include/profile/unordered_set: Likewise.
292         * include/profile/map.h: Likewise.
293         * include/profile/map: Likewise.
294         * testsuite/21_strings/basic_string/numeric_conversions/
295         wchar_t/dr1261.cc: Likewise.
296         * testsuite/21_strings/basic_string/numeric_conversions/
297         char/dr1261.cc: Likewise.
298         * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
299
300 2012-02-20  Paolo Carlini  <paolo.carlini@oracle.com>
301
302         PR libstdc++/52241
303         * src/c++98/tree.cc (local_Rb_tree_increment,
304         local_Rb_tree_decrement): Add.
305         (_Rb_tree_increment(const _Rb_tree_node_base*),
306         _Rb_tree_decrement(const _Rb_tree_node_base*)): Use the latter.
307         (_Rb_tree_increment(_Rb_tree_node_base*),
308         _Rb_tree_decrement(_Rb_tree_node_base*)): New.
309
310 2012-02-20  Paolo Carlini  <paolo.carlini@oracle.com>
311
312         PR libstdc++/52309
313         * include/bits/hashtable_policy.h (_Equality_base<, true,>::
314         _M_equal(const _Hashtable&)): Compare values with operator==.
315         * testsuite/23_containers/unordered_set/operators/52309.cc: New.
316
317 2012-02-17  Benjamin Kosnik  <bkoz@redhat.com>
318
319         PR libstdc++/51798 continued.
320         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Grep for
321         __atomic_, not __sync.
322         * configure: Regenerated.
323
324 2012-02-17  Benjamin Kosnik  <bkoz@redhat.com>
325
326         PR libstdc++/47058
327         * acinclude.m4 (GLIBCXX_ENABLE_WERROR): New.
328         (GLIBCXX_EXPORT_FLAGS): Add -Wabi to WARN_FLAGS
329         * configure.ac: Use it.
330         * fragment.am: Set WERROR_FLAG conditionally on --disable-werror.
331         * configure: Regenerate.
332         * python/Makefile.in: Same.
333         * Makefile.in: Same.
334         * doc/Makefile.in: Same.
335         * include/Makefile.in: Same.
336         * po/Makefile.in: Same.
337         * python/Makefile.in: Same.
338         * src/Makefile.in: Same.
339         * src/c++11/Makefile.in: Same.
340         * src/c++98/Makefile.in: Same.
341         * testsuite/Makefile.in: Same.
342
343 2012-02-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
344
345         PR libstdc++/52189
346         * acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Handle
347         --enable-libstdcxx-threads.
348         Disable on Solaris 8/9 with symbol versioning.
349         * configure.ac (GLIBCXX_CHECK_GTHREADS): Move after
350         GLIBCXX_ENABLE_SYMVERS.
351         * configure: Regenerate.
352         * doc/xml/manual/configure.xml (--enable-libstdcxx-threads): Explain.
353
354 2012-02-15  DJ Delorie  <dj@redhat.com>
355
356         * src/c++98/locale.cc (locale::facet::_S_get_c_locale): Fix typo.
357
358 2012-02-15  Benjamin Kosnik  <bkoz@redhat.com>
359
360         PR libstdc++/51368
361         * acinclude.m4 (GLIBCXX_ENABLE_PYTHON): New.
362         * configure.ac: Use it.
363         * python/Makefile.am: Same.
364         * configure: Regenerate.
365         * python/Makefile.in: Regenerate.
366         * Makefile.in: Same.
367         * doc/Makefile.in: Same.
368         * include/Makefile.in: Same.
369         * po/Makefile.in: Same.
370         * src/Makefile.in: Same.
371         * src/c++11/Makefile.in: Same.
372         * src/c++98/Makefile.in: Same.
373         * testsuite/Makefile.in: Same.
374
375 2012-02-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
376
377         * 30_threads/thread/native_handle/typesizes.cc: Do not run on cygwin.
378
379 2012-02-14  Tom Tromey  <tromey@redhat.com>
380
381         * testsuite/libstdc++-prettyprinters/cxx11.cc (main): Add new
382         tests.
383         * python/libstdcxx/v6/printers.py (Tr1HashtableIterator.__init__):
384         Rewrite.
385         (Tr1HashtableIterator.update): Remove.
386         (Tr1HashtableIterator.next): Rewrite.
387
388 2012-02-13  Benjamin Kosnik  <bkoz@redhat.com>
389
390         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
391         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
392
393 2012-02-13  Richard Henderson  <rth@redhat.com>
394
395         PR libstdc++/51798 continued.
396         * include/bits/shared_ptr_base.h
397         (_Sp_counted_base<_S_atomic>::_M_add_ref_lock): Hoist initial load
398         outside compare_exchange loop.
399         * include/tr1/shared_ptr.h: Same.
400         * include/parallel/compatibility.h (__compare_and_swap_32): Use strong
401         version of compare_exchange.
402         (__compare_and_swap_64): Same.
403         * include/profile/impl/profiler_state.h (__gnu_profile::__turn): Same.
404         * libsupc++/guard.cc (__cxa_guard_acquire): Same.
405
406 2012-02-10  Benjamin Kosnik  <bkoz@redhat.com>
407             Jonathan Wakely  <jwakely.gcc@gmail.com>
408
409         PR libstdc++/51798 continued.
410         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Use __atomic_*
411         builtins instead of __sync_* builtins for atomic functionality.
412         * include/bits/shared_ptr_base.h: Same.
413         * include/parallel/compatibility.h: Same.
414         * include/profile/impl/profiler_state.h: Same.
415         * include/tr1/shared_ptr.h: Same.
416         * libsupc++/eh_ptr.cc: Same.
417         * libsupc++/eh_throw.cc: Same.
418         * libsupc++/eh_tm.cc: Same.
419         * libsupc++/guard.cc: Same.
420         * configure: Regenerated.
421         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
422         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
423
424 2012-02-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
425
426         PR libstdc++/51296
427         * config/os/osf/ctype_base.h,
428         config/os/osf/ctype_configure_char.cc,
429         config/os/osf/ctype_inline.h, config/os/osf/error_constants.h:
430         Copy from config/os/generic.
431         * config/os/osf/os_defines.h: Likewise.
432         (_GTHREAD_USE_MUTEX_INIT_FUNC, _GTHREAD_USE_COND_INIT_FUNC):
433         Define.
434         * configure.host <osf*>: Use os/osf for os_include_dir.
435
436 2012-02-10  Uros Bizjak  <ubizjak@gmail.com>
437
438         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Regenerated.
439
440 2012-02-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
441
442         * doc/xml/manual/documentation_hacking.xml: Fix invalid attribute.
443
444 2012-02-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
445
446         * doc/xml/manual/status_cxx2011.xml: Update C++11 status table.
447
448 2012-02-07  Benjamin Kosnik  <bkoz@redhat.com>
449
450         * doc/doxygen/user.cfg.in: Update to doxygen 1.7.6.1.
451         * doc/xml/manual/documentation_hacking.xml: Update.
452
453 2012-02-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
454
455         * testsuite/30_threads/call_once/39909.cc: Remove duplicate target
456         selector.
457         * testsuite/30_threads/call_once/49668.cc: Likewise.
458         * testsuite/30_threads/call_once/call_once1.cc: Likewise.
459         * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
460         * testsuite/30_threads/mutex/cons/1.cc: Likewise.
461         * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
462         * testsuite/30_threads/mutex/lock/1.cc: Likewise.
463         * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
464         * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
465         * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
466         * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
467         * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
468         * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
469         * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
470         * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
471         * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
472         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
473         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
474         * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
475         * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
476         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
477         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
478         * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
479         * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
480
481 2012-02-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
482
483         PR libstdc++/51296
484         * include/std/mutex (__mutex_base::~__mutex_base): Declare noexcept.
485         * src/c++11/condition_variable.cc (condition_variable): Use macro for
486         initializer function.
487
488         PR libstdc++/51906
489         * config/os/bsd/darwin/os_defines.h: Disable static initializer for
490         recursive mutexes.
491
492 2012-02-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
493
494         PR libstdc++/52128
495         * src/c++11/future.cc: Add explicit instantiation.
496
497 2012-02-06  François Dumont  <fdumont@gcc.gnu.org>
498
499         * include/debug/safe_iterator.h
500         (_Safe_iterator::_M_before_dereferenceable): Avoid the expensive
501         creation of a _Safe_iterator instance to do the check.
502
503 2012-02-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
504
505         PR libstdc++/52104
506         * include/std/future (__future_base::_Async_state_common): Define
507         destructor inline for targets without TLS.
508         * src/c++11/future.cc (__future_base::_Async_state_common): Only
509         define destructor for TLS targets.
510
511 2012-02-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
512
513         PR libstdc++/51956
514         * python/libstdcxx/v6/printers.py (StdPointerPrinter): Rename to...
515         (SharedPointerPrinter): This. Also show weak count.
516         * testsuite/libstdc++-prettyprinters/shared_ptr.cc: New.
517
518 2012-02-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
519
520         * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Modify to
521         PASS instead of XFAIL.
522
523 2012-02-05  Jeffrey Yasskin  <jyasskin@gcc.gnu.org>
524             Paolo Carlini  <paolo.carlini@oracle.com>
525
526         PR libstdc++/52119
527         * include/std/limits (__glibcxx_min): Fix to avoid undefined behavior.
528
529 2012-02-03  Benjamin Kosnik  <bkoz@redhat.com>
530
531         PR libstdc++/49445
532         * testsuite/29_atomics/atomic/cons/49445.cc: Add.
533
534 2012-02-03  Benjamin Kosnik  <bkoz@redhat.com>
535
536         PR libstdc++/51811
537         * include/bits/atomic_base.h (atomic<_Tp*>): Fix offsets.
538         * testsuite/29_atomics/atomic/operators/51811.cc: New.
539         * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: New.
540
541 2012-02-03  Jakub Jelinek  <jakub@redhat.com>
542
543         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
544         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
545         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
546         Likewise.
547         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
548         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
549         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
550         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
551         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
552         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
553
554 2012-02-02  Benjamin Kosnik  <bkoz@redhat.com>
555
556         PR libstdc++/52068
557         * src/c++11/Makefile.am (toolexeclib_LTLIBRARIES,
558         libc__11_la_SOURCES): Remove.
559         * src/c++11/Makefile.in: Regenerate.
560         * src/c++98/Makefile.am (toolexeclib_LTLIBRARIES,
561         libc__98_la_SOURCES): Remove.
562         * src/c++98/Makefile.in: Regenerate.
563
564 2012-02-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
565
566         PR libstdc++/49204
567         * include/std/future (__future_base::_State_base::wait()): Use lambda
568         expression for predicate and remove redundant test.
569         (__future_base::_State_base::wait_for()): Return future_status and
570         use lambda expression for predicate.
571         (__future_base::_State_base::wait_until()): Likewise.
572         (__basic_future::wait_for(), __basic_future::wait_until()): Likewise.
573         (__future_base::_Async_state): Replace with _Async_state_common
574         class for non-dependent functionality and _Async_state_impl class
575         template for dependent functionality.
576         (__future_base::_Async_state_common::_M_join): Serialize attempts to
577         join thread.
578         (__future_base::_Async_state_common::_M_run_deferred): Join.
579         (__future_base::_Async_state::_M_do_run): Replace with lambda.
580         * src/c++11/future.cc (__future_base::_Async_state_common): Define
581         destructor, so key function is in the library.
582         * config/abi/pre/gnu.ver: Add exports for ~_Async_state_common.
583         * testsuite/30_threads/packaged_task/members/get_future.cc: Expect
584         future_status return instead of bool.
585         * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
586         * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
587         * testsuite/30_threads/future/members/wait_until.cc: Likewise.
588         * testsuite/30_threads/future/members/wait_for.cc: Likewise.
589         * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
590         * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
591         * testsuite/30_threads/promise/members/swap.cc: Likewise.
592
593 2012-01-30  Tom Tromey  <tromey@redhat.com>
594
595         PR libstdc++/51649:
596         * testsuite/libstdc++-prettyprinters/debug.cc: New file.
597         * testsuite/lib/gdb-test.exp (regexp-test): New proc.
598         (note-test): Update.
599         (gdb-test): Handle regexp tests.  Add some logging.
600         * testsuite/libstdc++-prettyprinters/simple.cc: Compile with -O0.
601         (placeholder, use): Remove.
602         (main): Add tests for deque, list, map, and set iterators.  Add
603         tests for slist and slist iterator.
604         * testsuite/libstdc++-prettyprinters/48362.cc (main): Handle __7
605         namespace.
606         * python/libstdcxx/v6/printers.py (StdListPrinter.children): Use
607         the type's _Node typedef.
608         (StdListIteratorPrinter.to_string): Change how node type is
609         computed.
610         (StdSlistPrinter.children): Use the type's _Node typedef.
611         (StdSlistIteratorPrinter.to_string): Likewise.
612         (StdRbtreeIteratorPrinter.to_string): Use the type's _Link_type
613         typedef.
614         (StdMapPrinter.children): Change how the node's type is computed.
615         (StdSetPrinter.children): Likewise.
616         (StdForwardListPrinter.children): Use the type's _Node typedef.
617         (Printer.add_version): New method.
618         (Printer.add_container): New method.
619         (build_libstdcxx_dictionary): Handle __7 and __cxx1998
620         namespaces.
621         (find_type): New function.
622
623 2012-01-27  Paolo Carlini  <paolo.carlini@oracle.com>
624
625         PR libstdc++/51795
626         * include/bits/random.h (linear_congruential_generator): Add
627         static_assert preventing instantiation for values of 'a' and 'm'
628         currently handled incorrectly by _Mod::__calc.
629         * include/bits/random.tcc (seed_seq::generate): Avoid unsafe
630         uses of _Mod::__calc.
631
632 2012-01-27  Jakub Jelinek  <jakub@redhat.com>
633
634         PR libstdc++/51798
635         * config/cpu/generic/atomicity_builtins/atomicity.h
636         (__exchange_and_add, __atomic_add): Use __atomic_fetch_add
637         with __ATOMIC_ACQ_REL semantics instead of __sync_fetch_and_add.
638         * include/ext/atomicity.h (__exchange_and_add, __atomic_add):
639         Likewise.
640
641 2011-01-27  Rafael Avila de Espindola  <rafael.espindola@gmail.com>
642
643         * libsupc++/typeinfo: Correctly match #pragma GCC visibility
644         pop with #pragma GCC visibility push.
645
646 2012-01-27  Benjamin Kosnik  <bkoz@redhat.com>
647             Matthias Klose  <doko@ubuntu.com>
648
649         * configure.ac (GLIBCXX_ENABLE_DEBUG_FLAGS): Use -gdwarf-4 -g3 -O0.
650         * configure.in: Regenerated.
651         * src/Makefile.am (all-once, install-data-once): New rules.
652         (all-local, install-data-local): Use them.
653         (build-debug, install-debug): Tweak.
654         * src/Makefile.in: Regenerate.
655
656 2012-01-27  Richard Henderson  <rth@redhat.com>
657
658         * include/bits/atomic_base.h (__atomic_flag_base): Define _M_i
659         based on the value of __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
660         (ATOMIC_FLAG_INIT): Initialize with 0, not false.
661         (atomic_flag::atomic_flag): Use __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
662
663 2012-01-26  Jakub Jelinek  <jakub@redhat.com>
664
665         PR bootstrap/51985
666         * src/c++98/Makefile.am (libc__98_la_SOURCES,
667         libc__98convenience_la_SOURCES): Remove $(inst_sources).
668         * src/c++98/Makefile.in: Regenerated.
669
670 2012-01-25  Richard Sandiford  <rdsandiford@googlemail.com>
671
672         * testsuite/20_util/system_clock/1.cc: Add dg-require-time.
673         * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
674         * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
675         * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
676         * testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Add
677         dg-require-fileio.
678         * testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise.
679         * testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise.
680         * testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise.
681         * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-fstream.cc:
682         Likewise.
683         * testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
684
685 2012-01-25  Matthias Klose  <doko@ubuntu.com>
686
687         * testsuite/30_threads/condition_variable_any/requirements: Remove
688         empty directory.
689
690 2012-01-23  Benjamin Kosnik  <bkoz@redhat.com>
691
692         * src/Makefile.am (libstdc++convenience.la): Correct stamp rule, copy.
693         * src/Makefile.in: Regenerate.
694
695 2012-01-23  Benjamin Kosnik  <bkoz@redhat.com>
696
697         PR libstdc++/49829
698         Add libc++98convenience.la, libc++11convenience.la.
699         * src/c++98: New directory.
700         * src/c++11: New directory.
701         * acinclude.m4: (GLIBCXX_CONFIGURE): Add src-c++98, src-c++11.
702         * configure: Regenerated.
703         * Makefile.am (hosted_source): Add src-c++98, src-c++11 to SUBDIRS.
704         * Makefile.in: Regenerate.
705         * libsupc++/Makefile.am (AM_CXXFLAGS): USe XTEMPLATE_FLAGS for
706         -fno-implicit-templates.
707         * libsupc++/Makefile.in: Regenerate.
708         * src/Makefile.am (inst_sources): Move... C++11 files into
709         separate directory for libstdc++11convenience.la. Files are:
710         fstream-inst.cc, string-inst.cc, wlocale-inst.cc, wstring-inst.cc).
711         (sources): Move C++11 files. Files are: compatibility-c++0x.cc,
712         compatibility-atomic-c++0x.cc, debug.cc, functexcept.cc,
713         functional.cc, hash_c++0x.cc, hashtable_c++0x.cc, limits.cc,
714         system_error.cc, placeholders.cc, regex.cc, shared_ptr.cc,
715         mutex.cc, condition_variable.cc, chrono.cc, thread.cc, future.cc.
716         (libstdc++convenience.la): Add new target.
717         (SUBDIRS): Add c++11, c++98.
718         * src/Makefile.in: Regenerate.
719         * src/c++11/Makefile.am: New.
720         * src/c++11/Makefile.in: Generate.
721         * src/c++98/Makefile.am: New, C++98 files.
722         * src/c++98/Makefile.in: Generate.
723
724 2012-01-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
725
726         libstdc++-v3:
727         * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on
728         32-bit Solaris 10/x86.
729         * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
730
731 2012-01-21  Jonathan Wakely  <jwakely.gcc@gmail.com>
732
733         PR libstdc++/50982
734         * testsuite/30_threads/*: Add powerpc-ibm-aix* to target selectors.
735
736 2012-01-19  Jakub Jelinek  <jakub@redhat.com>
737
738         PR libstdc++/51845
739         * include/bits/hashtable.h
740         (_Hashtable<>::erase(const_iterator, const_iterator)): Also update
741         _M_buckets[__n_bkt] if __is_bucket_begin.
742         * testsuite/23_containers/unordered_multimap/erase/51845-multimap.cc:
743         New test.
744
745 2012-01-18  Benjamin Kosnik  <bkoz@redhat.com>
746
747         * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): Fix quoting.
748
749 2012-01-18  Benjamin Kosnik  <bkoz@redhat.com>
750
751         * configure.ac: Move epub checks...
752         * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): ...here, use
753         test -f instead of AC_CHECK_FILES.
754
755 2012-01-18  François Dumont  <fdumont@gcc.gnu.org>
756             Roman Kononov  <roman@binarylife.net>
757
758         PR libstdc++/51866
759         * include/bits/hashtable.h (_Hashtable<>::_M_insert(_Arg, false_type)):
760         Do not keep a reference to a potentially moved instance.
761         * testsuite/23_containers/unordered_multiset/insert/51866.cc: New.
762         * testsuite/23_containers/unordered_multimap/insert/51866.cc: New.
763
764 2012-01-17  Benjamin Kosnik  <bkoz@redhat.com>
765
766         * doc/html/*: Regenerate.
767
768 2012-01-17  Benjamin Kosnik  <bkoz@redhat.com>
769
770         * configure.ac (BUILD_EPUB): Adjust for epub3.
771         * configure: Regenerate.
772         * Makefile.in: Same.
773         * doc/Makefile.am (stamp-epub-docbook): Update for epub3.
774         * doc/Makefile.in: Regenerate.
775         * include/Makefile.in: Same.
776         * libsupc++/Makefile.in: Same.
777         * po/Makefile.in: Same.
778         * python/Makefile.in: Same.
779         * src/Makefile.in: Same.
780         * testsuite/Makefile.in: Same.
781
782         * doc/xml/manual/documentation_hacking.xml: Update.
783
784 2012-01-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
785
786         PR target/47852
787         * configure.host (irix6.5*): Add -lpthread to OPT_LDFLAGS.
788
789 2012-01-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
790
791         * include/bits/stl_iterator.h (reverse_iterator): Doxygen comments.
792
793 2012-01-13  François Dumont  <fdumont@gcc.gnu.org>
794
795         * include/bits/hashtable_policy.h (_Hash_node_base): New, use it as
796         base class of ...
797         (_Hash_node<Value, true>, _Hash_node<Value, false>): ... those.
798         * include/bits/hashtable.h (_Hashtable): Replace _M_begin_bucket_index
799         by _M_before_begin. Review implementation so that we do not need to
800         look for previous non-empty bucket when inserting nodes.
801
802 2012-01-09  Kai Tietz  <ktietz@redhat.com>
803
804         PR libstc++/51673 part 2
805         * config/abi/pre/gnu-versioned-namespace.ver: Adjusted new/delete
806         operators signature for LLP64 size_t, and adjusted signatures for
807         mt-allocator using size_t.
808
809 2012-01-09  Benjamin Kosnik  <bkoz@redhat.com>
810
811         PR libstc++/51673 part 1
812         * config/abi/pre/gnu-versioned-namespace.ver: Sync cxxabi symbols
813         with gnu.ver.
814
815 2012-01-09  Benjamin Kosnik  <bkoz@redhat.com>
816
817         * fragment.am (WARN_CXXFLAGS): Add -Wabi.
818         * Makefile.in: Regenerate.
819         * doc/Makefile.in: Same.
820         * include/Makefile.in: Same.
821         * libsupc++/Makefile.in: Same.
822         * src/Makefile.in: Same.
823         * testsuite/Makefile.in: Same.
824         * po/Makefile.in: Same.
825         * python/Makefile.in: Same.
826
827 2012-01-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
828
829         * python/libstdcxx/v6/printers.py (StdForwardListPrinter): Add.
830         * testsuite/libstdc++-prettyprinters/cxx11.cc: New.
831
832 2012-01-06  Jason Merrill  <jason@redhat.com>
833
834         * testsuite/abi/demangle/regression/cw-16.cc (main): Adjust
835         expected demangling.
836
837 2012-01-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
838
839         PR libstdc++/51504
840         * doc/xml/manual/debug.xml: Suggest using symbol interposition
841         to override symbols using annotation macros.
842
843 2012-01-05  François Dumont  <fdumont@gcc.gnu.org>
844
845         * include/bits/hashtable_policy.h (_Hashtable_base<>::_M_eq()):
846         protected rather than private, use it...
847         * include/bits/hashtable.h (_Hashtable<>::key_eq()): ... here.
848         * testsuite/23_containers/unordered_set/observers.cc: New.
849         * testsuite/23_containers/unordered_multiset/observers.cc: New.
850         * testsuite/23_containers/unordered_map/observers.cc: New.
851         * testsuite/23_containers/unordered_multimap/observers.cc: New.
852
853 2012-01-03  François Dumont  <fdumont@gcc.gnu.org>
854
855         * include/bits/hashtable_policy.h (_Ebo_helper<>): Rename to the more
856         specific _Hashtable_ebo_helper. Hide this implementation detail thanks
857         to private inheritance.
858
859 2012-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
860
861         PR c++/51738
862         * testsuite/23_containers/map/element_access/39901.cc: New.