1 2012-04-12 Paolo Carlini <paolo.carlini@oracle.com>
3 * include/bits/forward_list.h (splice_after(const_iterator,
4 forward_list&), splice_after(const_iterator, forward_list&,
5 consst_iterator), splice_after(const_iterator, forward_list&,
6 const_iterator, const_iterator), merge(forward_list&),
7 merge(forward_list&, _Comp)): Add per C++11 as published (and
9 * include/debug/forward_list: Adjust.
11 * include/bits/forward_list.h (splice_after(const_iterator,
12 forward_list&&, const_iterator)): Only declare.
13 (_M_transfer_after): Remove.
14 (_M_splice_after(const_iterator, forward_list&&)): Change signature.
15 (splice_after(const_iterator, forward_list&&, const_iterator,
16 const_iterator)): Use the latter.
17 * include/bits/forward_list.tcc (splice_after(const_iterator,
18 forward_list&&, const_iterator)): Define here.
19 (_M_splice_after): Define, use throughout.
21 * include/bits/forward_list.h (insert_after(const_iterator,
22 std::initializer_list<_Tp>)): Forward to insert_after(const_iterator,
23 _InputIterator, _InputIterator).
24 * include/bits/forward_list.tcc: Remove definition.
26 * testsuite/23_containers/forward_list/modifiers/6.cc: New.
27 * testsuite/23_containers/forward_list/operations/1.cc: Adjust.
29 * testsuite/23_containers/forward_list/requirements/dr438/
30 assign_neg.cc: Adjust dg-error line number.
31 * testsuite/23_containers/forward_list/requirements/dr438/
32 insert_neg.cc: Likewise.
33 * testsuite/23_containers/forward_list/requirements/dr438/
34 constructor_1_neg.cc: Likewise.
35 * testsuite/23_containers/forward_list/requirements/dr438/
36 constructor_2_neg.cc: Likewise.
38 2012-04-12 Jeffrey Yasskin <jyasskin@google.com>
41 * include/bits/stl_algo.h (__find_if_not): Expose in C++98 mode.
42 (__find_if_not_n): Like __find_if_not, but works on and updates a
43 counted range instead of a bounded range.
44 (stable_partition): Guarantee !__pred(*__first) in call to
45 __stable_partition_adaptive() or __inplace_stable_partition().
46 (__stable_partition_adaptive): Use new precondition to avoid
47 moving/copying objects onto themselves. Guarantee new
48 precondition to recursive calls.
49 (__inplace_stable_partition): Use new precondition to simplify
50 base case, remove __last parameter. Guarantee new precondition to
52 * testsuite/25_algorithms/stable_partition/moveable.cc (test02):
53 Test a sequence that starts with a value matching the predicate.
54 * testsuite/25_algorithms/stable_partition/pr52822.cc: Test
55 vectors, which have a destructive self-move-assignment.
57 2012-04-12 Paolo Carlini <paolo.carlini@oracle.com>
60 * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd):
61 In C++11 mode do not derive from std::unary_function.
62 * include/ext/functional (identity, select1st, select2nd): Adjust.
63 * testsuite/23_containers/unordered_map/requirements/52942.cc: New.
64 * testsuite/23_containers/unordered_set/requirements/52942.cc: Likewise.
66 2012-04-11 Jonathan Wakely <jwakely.gcc@gmail.com>
69 * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Add
70 user-defined destructor.
71 (_Sp_counted_inplace): Likewise.
72 * testsuite/20_util/shared_ptr/cons/52924.cc: New.
73 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
76 2012-04-11 Jonathan Wakely <jwakely.gcc@gmail.com>
78 * testsuite/performance/30_threads/future/polling.cc: Adjust.
80 2012-04-11 Jonathan Wakely <jwakely.gcc@gmail.com>
83 * include/bits/stl_vector.h (vector::operator=(vector&&)): Dispatch
84 to _M_move_assign depending on whether allocator is moved.
85 (vector::_M_move_assign): Add overloaded functions.
86 * testsuite/23_containers/vector/52591.cc: New.
87 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
88 Adjust dg-error line number.
89 * testsuite/23_containers/vector/requirements/dr438/
92 * testsuite/23_containers/vector/requirements/dr438/
95 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
98 2012-04-09 François Dumont <fdumont@gcc.gnu.org>
101 * include/bits/hashtable.h (_Hashtable<>::_M_rehash_aux): Add.
102 (_Hashtable<>::_M_rehash): Use the latter.
103 * testsuite/23_containers/unordered_multimap/insert/52476.cc: New.
104 * testsuite/23_containers/unordered_multiset/insert/52476.cc: New.
106 2012-04-09 Terry Guo <terry.guo@arm.com>
108 Backport from mainline
109 2012-03-28 Terry Guo <terry.guo@arm.com>
111 * testsuite/Makefile.am (TEST_GCC_EXEC_PREFIX): New.
112 * testsuite/Makefile.in: Regenerated.
114 2012-03-30 Jeffrey Yasskin <jyasskin@gcc.gnu.org>
115 Paolo Carlini <paolo.carlini@oracle.com>
118 * include/bits/deque.tcc (emplace): Fix thinko, replace push_front
119 -> emplace_front, and likewise for *_back.
120 * testsuite/23_containers/deque/modifiers/emplace/52799.cc: New.
121 * testsuite/23_containers/list/modifiers/emplace/52799.cc: Likewise.
122 * testsuite/23_containers/vector/modifiers/emplace/52799.cc: Likewise.
124 2012-03-23 David S. Miller <davem@davemloft.net>
126 * config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Update.
128 2012-03-23 Paolo Carlini <paolo.carlini@oracle.com>
130 * include/bits/forward_list.h: Fix comments.
132 2012-03-23 Paweł Sikora <pawel.sikora@agmk.net>
135 * include/Makefile.am (c++config.h): Fix sed rule to not break
136 the _GLIBCXX_EXTERN_TEMPLATE redefinition.
137 * include/Makefile.in: Regenerate.
139 2012-03-22 Jonathan Wakely <jwakely.gcc@gmail.com>
142 * include/debug/safe_iterator.h (_Safe_iterator): Add move
143 constructor and move assignment operator.
144 * testsuite/23_containers/vector/debug/52433.cc: New.
146 2012-03-22 Paolo Carlini <paolo.carlini@oracle.com>
148 * include/std/array (array<>::at(size_type) const): Fix version
149 for undefined __EXCEPTIONS.
151 2012-03-22 Release Manager
153 * GCC 4.7.0 released.
155 2012-03-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
158 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
160 2012-03-09 Andreas Schwab <schwab@linux-m68k.org>
162 * config/locale/gnu/monetary_members.cc
163 (moneypunct<char,true>::_M_initialize_moneypunct): Throw caught
165 (moneypunct<char,false>::_M_initialize_moneypunct): Likewise.
166 * testsuite/22_locale/locale/cons/12352.cc: Also test en_US
169 2012-03-02 Benjamin Kosnik <bkoz@redhat.com>
171 * include/c_global/cstdio: Remove extraneous extern.
172 * include/c_std/cstdio: Same.
174 2012-03-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
176 * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate.
177 * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
178 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
179 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
180 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
182 2012-03-01 Benjamin Kosnik <bkoz@redhat.com>
183 Ramana Radhakrishnan <ramana@gcc.gnu.org>
186 * acinclude.m4 (GLIBCXX_CHECK_STDIO_PROTO): New.
187 * configure.ac: Call it.
188 * configure: Regenerate.
190 * config/os/gnu-linux/os_defines.h: Conditionally undefine
192 * include/c_global/cstdio: Conditionally declare deprecated gets.
193 * include/c_std/cstdio: Same.
195 2012-03-01 Michael Spertus <mike_spertus@symantec.com>
197 * include/tr2/type_traits (typelist): To __reflection_typelist.
198 (first, rest, empty): Remove.
200 2012-03-01 Benjamin Kosnik <bkoz@redhat.com>
202 * testsuite/Makefile.am (CLEANFILES): Add *.gdb.
203 * testsuite/Makefile.in: Regenerate.
205 2012-02-29 H.J. Lu <hongjiu.lu@intel.com>
207 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
209 2012-02-28 Benjamin Kosnik <bkoz@redhat.com>
212 * testsuite/util/testsuite_abi.cc (compare_symbols): Check new
213 symbols added into the latest version. Mark tls entities as
216 2012-02-28 Jakub Jelinek <jakub@redhat.com>
219 * src/Makefile.am (libstdc++-symbols.ver): Only remove comment lines
220 if they are at the beginning of lines (with optional whitespace before
222 * src/Makefile.in: Regenerated.
224 2012-02-27 Jakub Jelinek <jakub@redhat.com>
226 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
227 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
228 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
230 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
231 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
232 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
233 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
234 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
235 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
237 2012-02-27 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
240 * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Remove symvers_renaming.
241 Remove ENABLE_SYMVERS_SOL2.
242 * configure: Regenerate.
243 * src/Makefile.am [ENABLE_SYMVERS] (libstdc++-symbols.ver):
245 [ENABLE_SYMVERS_GNU]: Remove ENABLE_SYMVERS_SOL2 handling.
246 * src/Makefile.in: Regenerate.
248 * config/abi/pre/gnu.ver (GLIBCXX_3.4.5) [!__sun__ && !__svr4__]:
250 _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv.
252 2012-02-25 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
255 * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
256 Require atomic builtins.
257 * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
259 2012-02-23 Jason Merrill <jason@redhat.com>
261 * include/bits/locale_facets.h (class num_get): Undo reordering of
262 do_get virtual functions.
264 2012-02-14 Edward Smith-Rowland <3dw4rd@verizon.net>
266 * testsuite/26_numerics/random/
267 uniform_real_distribution/requirements/typedefs.cc: Check param_type.
268 * testsuite/26_numerics/random/
269 piecewise_constant_distribution/requirements/typedefs.cc: Ditto.
270 * testsuite/26_numerics/random/
271 chi_squared_distribution/requirements/typedefs.cc: Ditto.
272 * testsuite/26_numerics/random/
273 normal_distribution/requirements/typedefs.cc: Ditto.
274 * testsuite/26_numerics/random/
275 uniform_int_distribution/requirements/typedefs.cc: Ditto.
276 * testsuite/26_numerics/random/
277 poisson_distribution/requirements/typedefs.cc: Ditto.
278 * testsuite/26_numerics/random/
279 bernoulli_distribution/requirements/typedefs.cc: Ditto.
280 * testsuite/26_numerics/random/
281 discrete_distribution/requirements/typedefs.cc: Ditto.
282 * testsuite/26_numerics/random/
283 weibull_distribution/requirements/typedefs.cc: Ditto.
284 * testsuite/26_numerics/random/
285 cauchy_distribution/requirements/typedefs.cc: Ditto.
286 * testsuite/26_numerics/random/
287 negative_binomial_distribution/requirements/typedefs.cc: Ditto.
288 * testsuite/26_numerics/random/
289 gamma_distribution/requirements/typedefs.cc: Ditto.
290 * testsuite/26_numerics/random/
291 fisher_f_distribution/requirements/typedefs.cc: Ditto.
292 * testsuite/26_numerics/random/
293 exponential_distribution/requirements/typedefs.cc: Ditto.
294 * testsuite/26_numerics/random/
295 binomial_distribution/requirements/typedefs.cc: Ditto.
296 * testsuite/26_numerics/random/
297 lognormal_distribution/requirements/typedefs.cc: Ditto.
298 * testsuite/26_numerics/random/
299 extreme_value_distribution/requirements/typedefs.cc: Ditto.
300 * testsuite/26_numerics/random/
301 piecewise_linear_distribution/requirements/typedefs.cc: Ditto.
302 * testsuite/26_numerics/random/
303 student_t_distribution/requirements/typedefs.cc: Ditto.
304 * testsuite/26_numerics/random/
305 geometric_distribution/requirements/typedefs.cc: Ditto.
307 2012-02-21 Benjamin Kosnik <bkoz@redhat.com>
310 * config/abi/pre/gnu.ver: Only one local.
311 * config/abi/pre/gnu-versioned-namespace.ver: Same.
313 2012-02-21 Paolo Carlini <paolo.carlini@oracle.com>
315 PR libstdc++/52317 (cont)
316 * include/profile/unordered_map: Ad Library Exception comment.
317 * include/profile/set: Likewise.
318 * include/profile/base.h: Likewise.
319 * include/profile/impl/profiler_list_to_slist.h: Likewise.
320 * include/profile/impl/profiler_container_size.h: Likewise.
321 * include/profile/impl/profiler_vector_size.h: Likewise.
322 * include/profile/impl/profiler_hash_func.h: Likewise.
323 * include/profile/impl/profiler_trace.h: Likewise.
324 * include/profile/impl/profiler_list_to_vector.h: Likewise.
325 * include/profile/impl/profiler_vector_to_list.h: Likewise.
326 * include/profile/impl/profiler.h: Likewise.
327 * include/profile/impl/profiler_state.h: Likewise.
328 * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
329 * include/profile/impl/profiler_algos.h: Likewise.
330 * include/profile/impl/profiler_hashtable_size.h: Likewise.
331 * include/profile/impl/profiler_node.h: Likewise.
332 * include/profile/vector: Likewise.
333 * include/profile/unordered_set: Likewise.
334 * include/profile/map.h: Likewise.
335 * include/profile/map: Likewise.
337 2012-02-21 Paolo Carlini <paolo.carlini@oracle.com>
340 * python/Makefile.am: Update boilerplate license text to GPLv3.
341 * include/profile/unordered_map: Likewise.
342 * include/profile/set: Likewise.
343 * include/profile/base.h: Likewise.
344 * include/profile/impl/profiler_list_to_slist.h: Likewise.
345 * include/profile/impl/profiler_container_size.h: Likewise.
346 * include/profile/impl/profiler_vector_size.h: Likewise.
347 * include/profile/impl/profiler_hash_func.h: Likewise.
348 * include/profile/impl/profiler_trace.h: Likewise.
349 * include/profile/impl/profiler_list_to_vector.h: Likewise.
350 * include/profile/impl/profiler_vector_to_list.h: Likewise.
351 * include/profile/impl/profiler.h: Likewise.
352 * include/profile/impl/profiler_state.h: Likewise.
353 * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
354 * include/profile/impl/profiler_algos.h: Likewise.
355 * include/profile/impl/profiler_hashtable_size.h: Likewise.
356 * include/profile/impl/profiler_node.h: Likewise.
357 * include/profile/vector: Likewise.
358 * include/profile/unordered_set: Likewise.
359 * include/profile/map.h: Likewise.
360 * include/profile/map: Likewise.
361 * testsuite/21_strings/basic_string/numeric_conversions/
362 wchar_t/dr1261.cc: Likewise.
363 * testsuite/21_strings/basic_string/numeric_conversions/
364 char/dr1261.cc: Likewise.
365 * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
367 2012-02-20 Paolo Carlini <paolo.carlini@oracle.com>
370 * src/c++98/tree.cc (local_Rb_tree_increment,
371 local_Rb_tree_decrement): Add.
372 (_Rb_tree_increment(const _Rb_tree_node_base*),
373 _Rb_tree_decrement(const _Rb_tree_node_base*)): Use the latter.
374 (_Rb_tree_increment(_Rb_tree_node_base*),
375 _Rb_tree_decrement(_Rb_tree_node_base*)): New.
377 2012-02-20 Paolo Carlini <paolo.carlini@oracle.com>
380 * include/bits/hashtable_policy.h (_Equality_base<, true,>::
381 _M_equal(const _Hashtable&)): Compare values with operator==.
382 * testsuite/23_containers/unordered_set/operators/52309.cc: New.
384 2012-02-17 Benjamin Kosnik <bkoz@redhat.com>
386 PR libstdc++/51798 continued.
387 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Grep for
388 __atomic_, not __sync.
389 * configure: Regenerated.
391 2012-02-17 Benjamin Kosnik <bkoz@redhat.com>
394 * acinclude.m4 (GLIBCXX_ENABLE_WERROR): New.
395 (GLIBCXX_EXPORT_FLAGS): Add -Wabi to WARN_FLAGS
396 * configure.ac: Use it.
397 * fragment.am: Set WERROR_FLAG conditionally on --disable-werror.
398 * configure: Regenerate.
399 * python/Makefile.in: Same.
401 * doc/Makefile.in: Same.
402 * include/Makefile.in: Same.
403 * po/Makefile.in: Same.
404 * python/Makefile.in: Same.
405 * src/Makefile.in: Same.
406 * src/c++11/Makefile.in: Same.
407 * src/c++98/Makefile.in: Same.
408 * testsuite/Makefile.in: Same.
410 2012-02-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
413 * acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Handle
414 --enable-libstdcxx-threads.
415 Disable on Solaris 8/9 with symbol versioning.
416 * configure.ac (GLIBCXX_CHECK_GTHREADS): Move after
417 GLIBCXX_ENABLE_SYMVERS.
418 * configure: Regenerate.
419 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads): Explain.
421 2012-02-15 DJ Delorie <dj@redhat.com>
423 * src/c++98/locale.cc (locale::facet::_S_get_c_locale): Fix typo.
425 2012-02-15 Benjamin Kosnik <bkoz@redhat.com>
428 * acinclude.m4 (GLIBCXX_ENABLE_PYTHON): New.
429 * configure.ac: Use it.
430 * python/Makefile.am: Same.
431 * configure: Regenerate.
432 * python/Makefile.in: Regenerate.
434 * doc/Makefile.in: Same.
435 * include/Makefile.in: Same.
436 * po/Makefile.in: Same.
437 * src/Makefile.in: Same.
438 * src/c++11/Makefile.in: Same.
439 * src/c++98/Makefile.in: Same.
440 * testsuite/Makefile.in: Same.
442 2012-02-14 Jonathan Wakely <jwakely.gcc@gmail.com>
444 * 30_threads/thread/native_handle/typesizes.cc: Do not run on cygwin.
446 2012-02-14 Tom Tromey <tromey@redhat.com>
448 * testsuite/libstdc++-prettyprinters/cxx11.cc (main): Add new
450 * python/libstdcxx/v6/printers.py (Tr1HashtableIterator.__init__):
452 (Tr1HashtableIterator.update): Remove.
453 (Tr1HashtableIterator.next): Rewrite.
455 2012-02-13 Benjamin Kosnik <bkoz@redhat.com>
457 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
458 * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
460 2012-02-13 Richard Henderson <rth@redhat.com>
462 PR libstdc++/51798 continued.
463 * include/bits/shared_ptr_base.h
464 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock): Hoist initial load
465 outside compare_exchange loop.
466 * include/tr1/shared_ptr.h: Same.
467 * include/parallel/compatibility.h (__compare_and_swap_32): Use strong
468 version of compare_exchange.
469 (__compare_and_swap_64): Same.
470 * include/profile/impl/profiler_state.h (__gnu_profile::__turn): Same.
471 * libsupc++/guard.cc (__cxa_guard_acquire): Same.
473 2012-02-10 Benjamin Kosnik <bkoz@redhat.com>
474 Jonathan Wakely <jwakely.gcc@gmail.com>
476 PR libstdc++/51798 continued.
477 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Use __atomic_*
478 builtins instead of __sync_* builtins for atomic functionality.
479 * include/bits/shared_ptr_base.h: Same.
480 * include/parallel/compatibility.h: Same.
481 * include/profile/impl/profiler_state.h: Same.
482 * include/tr1/shared_ptr.h: Same.
483 * libsupc++/eh_ptr.cc: Same.
484 * libsupc++/eh_throw.cc: Same.
485 * libsupc++/eh_tm.cc: Same.
486 * libsupc++/guard.cc: Same.
487 * configure: Regenerated.
488 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
489 * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
491 2012-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
494 * config/os/osf/ctype_base.h,
495 config/os/osf/ctype_configure_char.cc,
496 config/os/osf/ctype_inline.h, config/os/osf/error_constants.h:
497 Copy from config/os/generic.
498 * config/os/osf/os_defines.h: Likewise.
499 (_GTHREAD_USE_MUTEX_INIT_FUNC, _GTHREAD_USE_COND_INIT_FUNC):
501 * configure.host <osf*>: Use os/osf for os_include_dir.
503 2012-02-10 Uros Bizjak <ubizjak@gmail.com>
505 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Regenerated.
507 2012-02-09 Jonathan Wakely <jwakely.gcc@gmail.com>
509 * doc/xml/manual/documentation_hacking.xml: Fix invalid attribute.
511 2012-02-08 Jonathan Wakely <jwakely.gcc@gmail.com>
513 * doc/xml/manual/status_cxx2011.xml: Update C++11 status table.
515 2012-02-07 Benjamin Kosnik <bkoz@redhat.com>
517 * doc/doxygen/user.cfg.in: Update to doxygen 1.7.6.1.
518 * doc/xml/manual/documentation_hacking.xml: Update.
520 2012-02-07 Jonathan Wakely <jwakely.gcc@gmail.com>
522 * testsuite/30_threads/call_once/39909.cc: Remove duplicate target
524 * testsuite/30_threads/call_once/49668.cc: Likewise.
525 * testsuite/30_threads/call_once/call_once1.cc: Likewise.
526 * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
527 * testsuite/30_threads/mutex/cons/1.cc: Likewise.
528 * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
529 * testsuite/30_threads/mutex/lock/1.cc: Likewise.
530 * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
531 * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
532 * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
533 * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
534 * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
535 * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
536 * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
537 * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
538 * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
539 * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
540 * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
541 * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
542 * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
543 * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
544 * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
545 * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
546 * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
548 2012-02-07 Jonathan Wakely <jwakely.gcc@gmail.com>
551 * include/std/mutex (__mutex_base::~__mutex_base): Declare noexcept.
552 * src/c++11/condition_variable.cc (condition_variable): Use macro for
553 initializer function.
556 * config/os/bsd/darwin/os_defines.h: Disable static initializer for
559 2012-02-06 Jonathan Wakely <jwakely.gcc@gmail.com>
562 * src/c++11/future.cc: Add explicit instantiation.
564 2012-02-06 François Dumont <fdumont@gcc.gnu.org>
566 * include/debug/safe_iterator.h
567 (_Safe_iterator::_M_before_dereferenceable): Avoid the expensive
568 creation of a _Safe_iterator instance to do the check.
570 2012-02-05 Jonathan Wakely <jwakely.gcc@gmail.com>
573 * include/std/future (__future_base::_Async_state_common): Define
574 destructor inline for targets without TLS.
575 * src/c++11/future.cc (__future_base::_Async_state_common): Only
576 define destructor for TLS targets.
578 2012-02-05 Jonathan Wakely <jwakely.gcc@gmail.com>
581 * python/libstdcxx/v6/printers.py (StdPointerPrinter): Rename to...
582 (SharedPointerPrinter): This. Also show weak count.
583 * testsuite/libstdc++-prettyprinters/shared_ptr.cc: New.
585 2012-02-05 Jonathan Wakely <jwakely.gcc@gmail.com>
587 * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Modify to
588 PASS instead of XFAIL.
590 2012-02-05 Jeffrey Yasskin <jyasskin@gcc.gnu.org>
591 Paolo Carlini <paolo.carlini@oracle.com>
594 * include/std/limits (__glibcxx_min): Fix to avoid undefined behavior.
596 2012-02-03 Benjamin Kosnik <bkoz@redhat.com>
599 * testsuite/29_atomics/atomic/cons/49445.cc: Add.
601 2012-02-03 Benjamin Kosnik <bkoz@redhat.com>
604 * include/bits/atomic_base.h (atomic<_Tp*>): Fix offsets.
605 * testsuite/29_atomics/atomic/operators/51811.cc: New.
606 * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: New.
608 2012-02-03 Jakub Jelinek <jakub@redhat.com>
610 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
611 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
612 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
614 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
615 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
616 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
617 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
618 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
619 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
621 2012-02-02 Benjamin Kosnik <bkoz@redhat.com>
624 * src/c++11/Makefile.am (toolexeclib_LTLIBRARIES,
625 libc__11_la_SOURCES): Remove.
626 * src/c++11/Makefile.in: Regenerate.
627 * src/c++98/Makefile.am (toolexeclib_LTLIBRARIES,
628 libc__98_la_SOURCES): Remove.
629 * src/c++98/Makefile.in: Regenerate.
631 2012-02-01 Jonathan Wakely <jwakely.gcc@gmail.com>
634 * include/std/future (__future_base::_State_base::wait()): Use lambda
635 expression for predicate and remove redundant test.
636 (__future_base::_State_base::wait_for()): Return future_status and
637 use lambda expression for predicate.
638 (__future_base::_State_base::wait_until()): Likewise.
639 (__basic_future::wait_for(), __basic_future::wait_until()): Likewise.
640 (__future_base::_Async_state): Replace with _Async_state_common
641 class for non-dependent functionality and _Async_state_impl class
642 template for dependent functionality.
643 (__future_base::_Async_state_common::_M_join): Serialize attempts to
645 (__future_base::_Async_state_common::_M_run_deferred): Join.
646 (__future_base::_Async_state::_M_do_run): Replace with lambda.
647 * src/c++11/future.cc (__future_base::_Async_state_common): Define
648 destructor, so key function is in the library.
649 * config/abi/pre/gnu.ver: Add exports for ~_Async_state_common.
650 * testsuite/30_threads/packaged_task/members/get_future.cc: Expect
651 future_status return instead of bool.
652 * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
653 * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
654 * testsuite/30_threads/future/members/wait_until.cc: Likewise.
655 * testsuite/30_threads/future/members/wait_for.cc: Likewise.
656 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
657 * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
658 * testsuite/30_threads/promise/members/swap.cc: Likewise.
660 2012-01-30 Tom Tromey <tromey@redhat.com>
663 * testsuite/libstdc++-prettyprinters/debug.cc: New file.
664 * testsuite/lib/gdb-test.exp (regexp-test): New proc.
666 (gdb-test): Handle regexp tests. Add some logging.
667 * testsuite/libstdc++-prettyprinters/simple.cc: Compile with -O0.
668 (placeholder, use): Remove.
669 (main): Add tests for deque, list, map, and set iterators. Add
670 tests for slist and slist iterator.
671 * testsuite/libstdc++-prettyprinters/48362.cc (main): Handle __7
673 * python/libstdcxx/v6/printers.py (StdListPrinter.children): Use
674 the type's _Node typedef.
675 (StdListIteratorPrinter.to_string): Change how node type is
677 (StdSlistPrinter.children): Use the type's _Node typedef.
678 (StdSlistIteratorPrinter.to_string): Likewise.
679 (StdRbtreeIteratorPrinter.to_string): Use the type's _Link_type
681 (StdMapPrinter.children): Change how the node's type is computed.
682 (StdSetPrinter.children): Likewise.
683 (StdForwardListPrinter.children): Use the type's _Node typedef.
684 (Printer.add_version): New method.
685 (Printer.add_container): New method.
686 (build_libstdcxx_dictionary): Handle __7 and __cxx1998
688 (find_type): New function.
690 2012-01-27 Paolo Carlini <paolo.carlini@oracle.com>
693 * include/bits/random.h (linear_congruential_generator): Add
694 static_assert preventing instantiation for values of 'a' and 'm'
695 currently handled incorrectly by _Mod::__calc.
696 * include/bits/random.tcc (seed_seq::generate): Avoid unsafe
697 uses of _Mod::__calc.
699 2012-01-27 Jakub Jelinek <jakub@redhat.com>
702 * config/cpu/generic/atomicity_builtins/atomicity.h
703 (__exchange_and_add, __atomic_add): Use __atomic_fetch_add
704 with __ATOMIC_ACQ_REL semantics instead of __sync_fetch_and_add.
705 * include/ext/atomicity.h (__exchange_and_add, __atomic_add):
708 2011-01-27 Rafael Avila de Espindola <rafael.espindola@gmail.com>
710 * libsupc++/typeinfo: Correctly match #pragma GCC visibility
711 pop with #pragma GCC visibility push.
713 2012-01-27 Benjamin Kosnik <bkoz@redhat.com>
714 Matthias Klose <doko@ubuntu.com>
716 * configure.ac (GLIBCXX_ENABLE_DEBUG_FLAGS): Use -gdwarf-4 -g3 -O0.
717 * configure.in: Regenerated.
718 * src/Makefile.am (all-once, install-data-once): New rules.
719 (all-local, install-data-local): Use them.
720 (build-debug, install-debug): Tweak.
721 * src/Makefile.in: Regenerate.
723 2012-01-27 Richard Henderson <rth@redhat.com>
725 * include/bits/atomic_base.h (__atomic_flag_base): Define _M_i
726 based on the value of __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
727 (ATOMIC_FLAG_INIT): Initialize with 0, not false.
728 (atomic_flag::atomic_flag): Use __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
730 2012-01-26 Jakub Jelinek <jakub@redhat.com>
733 * src/c++98/Makefile.am (libc__98_la_SOURCES,
734 libc__98convenience_la_SOURCES): Remove $(inst_sources).
735 * src/c++98/Makefile.in: Regenerated.
737 2012-01-25 Richard Sandiford <rdsandiford@googlemail.com>
739 * testsuite/20_util/system_clock/1.cc: Add dg-require-time.
740 * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
741 * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
742 * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
743 * testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Add
745 * testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise.
746 * testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise.
747 * testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise.
748 * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-fstream.cc:
750 * testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
752 2012-01-25 Matthias Klose <doko@ubuntu.com>
754 * testsuite/30_threads/condition_variable_any/requirements: Remove
757 2012-01-23 Benjamin Kosnik <bkoz@redhat.com>
759 * src/Makefile.am (libstdc++convenience.la): Correct stamp rule, copy.
760 * src/Makefile.in: Regenerate.
762 2012-01-23 Benjamin Kosnik <bkoz@redhat.com>
765 Add libc++98convenience.la, libc++11convenience.la.
766 * src/c++98: New directory.
767 * src/c++11: New directory.
768 * acinclude.m4: (GLIBCXX_CONFIGURE): Add src-c++98, src-c++11.
769 * configure: Regenerated.
770 * Makefile.am (hosted_source): Add src-c++98, src-c++11 to SUBDIRS.
771 * Makefile.in: Regenerate.
772 * libsupc++/Makefile.am (AM_CXXFLAGS): USe XTEMPLATE_FLAGS for
773 -fno-implicit-templates.
774 * libsupc++/Makefile.in: Regenerate.
775 * src/Makefile.am (inst_sources): Move... C++11 files into
776 separate directory for libstdc++11convenience.la. Files are:
777 fstream-inst.cc, string-inst.cc, wlocale-inst.cc, wstring-inst.cc).
778 (sources): Move C++11 files. Files are: compatibility-c++0x.cc,
779 compatibility-atomic-c++0x.cc, debug.cc, functexcept.cc,
780 functional.cc, hash_c++0x.cc, hashtable_c++0x.cc, limits.cc,
781 system_error.cc, placeholders.cc, regex.cc, shared_ptr.cc,
782 mutex.cc, condition_variable.cc, chrono.cc, thread.cc, future.cc.
783 (libstdc++convenience.la): Add new target.
784 (SUBDIRS): Add c++11, c++98.
785 * src/Makefile.in: Regenerate.
786 * src/c++11/Makefile.am: New.
787 * src/c++11/Makefile.in: Generate.
788 * src/c++98/Makefile.am: New, C++98 files.
789 * src/c++98/Makefile.in: Generate.
791 2012-01-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
794 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on
795 32-bit Solaris 10/x86.
796 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
798 2012-01-21 Jonathan Wakely <jwakely.gcc@gmail.com>
801 * testsuite/30_threads/*: Add powerpc-ibm-aix* to target selectors.
803 2012-01-19 Jakub Jelinek <jakub@redhat.com>
806 * include/bits/hashtable.h
807 (_Hashtable<>::erase(const_iterator, const_iterator)): Also update
808 _M_buckets[__n_bkt] if __is_bucket_begin.
809 * testsuite/23_containers/unordered_multimap/erase/51845-multimap.cc:
812 2012-01-18 Benjamin Kosnik <bkoz@redhat.com>
814 * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): Fix quoting.
816 2012-01-18 Benjamin Kosnik <bkoz@redhat.com>
818 * configure.ac: Move epub checks...
819 * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): ...here, use
820 test -f instead of AC_CHECK_FILES.
822 2012-01-18 François Dumont <fdumont@gcc.gnu.org>
823 Roman Kononov <roman@binarylife.net>
826 * include/bits/hashtable.h (_Hashtable<>::_M_insert(_Arg, false_type)):
827 Do not keep a reference to a potentially moved instance.
828 * testsuite/23_containers/unordered_multiset/insert/51866.cc: New.
829 * testsuite/23_containers/unordered_multimap/insert/51866.cc: New.
831 2012-01-17 Benjamin Kosnik <bkoz@redhat.com>
833 * doc/html/*: Regenerate.
835 2012-01-17 Benjamin Kosnik <bkoz@redhat.com>
837 * configure.ac (BUILD_EPUB): Adjust for epub3.
838 * configure: Regenerate.
840 * doc/Makefile.am (stamp-epub-docbook): Update for epub3.
841 * doc/Makefile.in: Regenerate.
842 * include/Makefile.in: Same.
843 * libsupc++/Makefile.in: Same.
844 * po/Makefile.in: Same.
845 * python/Makefile.in: Same.
846 * src/Makefile.in: Same.
847 * testsuite/Makefile.in: Same.
849 * doc/xml/manual/documentation_hacking.xml: Update.
851 2012-01-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
854 * configure.host (irix6.5*): Add -lpthread to OPT_LDFLAGS.
856 2012-01-14 Jonathan Wakely <jwakely.gcc@gmail.com>
858 * include/bits/stl_iterator.h (reverse_iterator): Doxygen comments.
860 2012-01-13 François Dumont <fdumont@gcc.gnu.org>
862 * include/bits/hashtable_policy.h (_Hash_node_base): New, use it as
864 (_Hash_node<Value, true>, _Hash_node<Value, false>): ... those.
865 * include/bits/hashtable.h (_Hashtable): Replace _M_begin_bucket_index
866 by _M_before_begin. Review implementation so that we do not need to
867 look for previous non-empty bucket when inserting nodes.
869 2012-01-09 Kai Tietz <ktietz@redhat.com>
871 PR libstc++/51673 part 2
872 * config/abi/pre/gnu-versioned-namespace.ver: Adjusted new/delete
873 operators signature for LLP64 size_t, and adjusted signatures for
874 mt-allocator using size_t.
876 2012-01-09 Benjamin Kosnik <bkoz@redhat.com>
878 PR libstc++/51673 part 1
879 * config/abi/pre/gnu-versioned-namespace.ver: Sync cxxabi symbols
882 2012-01-09 Benjamin Kosnik <bkoz@redhat.com>
884 * fragment.am (WARN_CXXFLAGS): Add -Wabi.
885 * Makefile.in: Regenerate.
886 * doc/Makefile.in: Same.
887 * include/Makefile.in: Same.
888 * libsupc++/Makefile.in: Same.
889 * src/Makefile.in: Same.
890 * testsuite/Makefile.in: Same.
891 * po/Makefile.in: Same.
892 * python/Makefile.in: Same.
894 2012-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
896 * python/libstdcxx/v6/printers.py (StdForwardListPrinter): Add.
897 * testsuite/libstdc++-prettyprinters/cxx11.cc: New.
899 2012-01-06 Jason Merrill <jason@redhat.com>
901 * testsuite/abi/demangle/regression/cw-16.cc (main): Adjust
904 2012-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
907 * doc/xml/manual/debug.xml: Suggest using symbol interposition
908 to override symbols using annotation macros.
910 2012-01-05 François Dumont <fdumont@gcc.gnu.org>
912 * include/bits/hashtable_policy.h (_Hashtable_base<>::_M_eq()):
913 protected rather than private, use it...
914 * include/bits/hashtable.h (_Hashtable<>::key_eq()): ... here.
915 * testsuite/23_containers/unordered_set/observers.cc: New.
916 * testsuite/23_containers/unordered_multiset/observers.cc: New.
917 * testsuite/23_containers/unordered_map/observers.cc: New.
918 * testsuite/23_containers/unordered_multimap/observers.cc: New.
920 2012-01-03 François Dumont <fdumont@gcc.gnu.org>
922 * include/bits/hashtable_policy.h (_Ebo_helper<>): Rename to the more
923 specific _Hashtable_ebo_helper. Hide this implementation detail thanks
924 to private inheritance.
926 2012-01-03 Paolo Carlini <paolo.carlini@oracle.com>
929 * testsuite/23_containers/map/element_access/39901.cc: New.