1 2012-04-16 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
4 * src/Makefile.am (build-debug): Do not adjust vpath dir, remove
6 * src/Makefile.in: Adjust as per above.
8 2012-04-16 Benjamin Kosnik <bkoz@redhat.com>
11 * libsupc++/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
12 * libsupc++/Makefile.in: Regenerated.
13 * src/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
14 (libstdc___la_SOURCES): Add in compatiblity files, with content
15 that varies with -DPIC.
16 * src/Makefile.in: Regenerated.
17 * src/c++11/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
18 * src/c++11/Makefile.in: Regenerated.
19 * src/c++11/compatibility-atomic-c++0x.cc: Guard with PIC.
20 * src/c++11/compatibility-c++0x.cc: Same.
21 * src/c++11/future.cc: Consolidate compatibility bits into..
22 * src/c++11/mutex.cc: Consolidate compatibility bits into..
23 * src/c++11/compatibility-thread-cxx0x.cc: ...here. New.
24 * src/c++98/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
25 * src/c++98/Makefile.in: Regenerated.
26 * src/c++98/compatibility-list-2.cc: Guard with PIC.
27 * src/c++98/compatibility.cc: Tweak comments.
29 2012-04-16 Benjamin Kosnik <bkoz@redhat.com>
31 * include/ext/pb_ds/detail/pat_trie_/
32 constructors_destructor_fn_imps.hpp: Increment after recursion.
33 * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Convert
34 node_type markup from brief.
36 2012-04-14 Paolo Carlini <paolo.carlini@oracle.com>
39 * include/bits/random.tcc (independent_bits_engine<>::operator()())
40 Avoid various overflows; use common_type on result_type and
41 _RandomNumberEngine::result_type; avoid floating point computations;
44 * include/bits/random.tcc (uniform_int_distribution<>::operator())
45 Use common_type; assume _UniformRandomNumberGenerator::result_type
48 * include/bits/stl_algobase.h (__lg(unsigned), __lg(unsigned long),
49 __lg(unsigned long long)): Add.
51 2012-04-13 Paolo Carlini <paolo.carlini@oracle.com>
53 * include/debug/safe_iterator.h (_BeforeBeginHelper<>::
54 _S_Is_Beginnest): Add.
55 * include/debug/forward_list (_BeforeBeginHelper<>::
56 _S_Is_Beginnest): Likewise.
57 (_Safe_iterator<>::_M_is_beginnest): Add.
58 * include/debug/safe_iterator.tcc (_Safe_iterator<>::_M_valid_range):
60 * testsuite/23_containers/forward_list/debug/splice_after.cc:
63 2012-04-12 Paolo Carlini <paolo.carlini@oracle.com>
65 * include/bits/forward_list.h (splice_after(const_iterator,
66 forward_list&), splice_after(const_iterator, forward_list&,
67 consst_iterator), splice_after(const_iterator, forward_list&,
68 const_iterator, const_iterator), merge(forward_list&),
69 merge(forward_list&, _Comp)): Add per C++11 as published (and
71 * include/debug/forward_list: Adjust.
73 * include/bits/forward_list.h (splice_after(const_iterator,
74 forward_list&&, const_iterator)): Only declare.
75 (_M_transfer_after): Remove.
76 (_M_splice_after(const_iterator, forward_list&&)): Change signature.
77 (splice_after(const_iterator, forward_list&&, const_iterator,
78 const_iterator)): Use the latter.
79 * include/bits/forward_list.tcc (splice_after(const_iterator,
80 forward_list&&, const_iterator)): Define here.
81 (_M_splice_after): Define, use throughout.
83 * include/bits/forward_list.h (insert_after(const_iterator,
84 std::initializer_list<_Tp>)): Forward to insert_after(const_iterator,
85 _InputIterator, _InputIterator).
86 * include/bits/forward_list.tcc: Remove definition.
88 * testsuite/23_containers/forward_list/modifiers/6.cc: New.
89 * testsuite/23_containers/forward_list/operations/1.cc: Adjust.
91 * testsuite/23_containers/forward_list/requirements/dr438/
92 assign_neg.cc: Adjust dg-error line number.
93 * testsuite/23_containers/forward_list/requirements/dr438/
94 insert_neg.cc: Likewise.
95 * testsuite/23_containers/forward_list/requirements/dr438/
96 constructor_1_neg.cc: Likewise.
97 * testsuite/23_containers/forward_list/requirements/dr438/
98 constructor_2_neg.cc: Likewise.
100 2012-04-12 Jeffrey Yasskin <jyasskin@google.com>
103 * include/bits/stl_algo.h (__find_if_not): Expose in C++98 mode.
104 (__find_if_not_n): Like __find_if_not, but works on and updates a
105 counted range instead of a bounded range.
106 (stable_partition): Guarantee !__pred(*__first) in call to
107 __stable_partition_adaptive() or __inplace_stable_partition().
108 (__stable_partition_adaptive): Use new precondition to avoid
109 moving/copying objects onto themselves. Guarantee new
110 precondition to recursive calls.
111 (__inplace_stable_partition): Use new precondition to simplify
112 base case, remove __last parameter. Guarantee new precondition to
114 * testsuite/25_algorithms/stable_partition/moveable.cc (test02):
115 Test a sequence that starts with a value matching the predicate.
116 * testsuite/25_algorithms/stable_partition/pr52822.cc: Test
117 vectors, which have a destructive self-move-assignment.
119 2012-04-12 Paolo Carlini <paolo.carlini@oracle.com>
122 * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd):
123 In C++11 mode do not derive from std::unary_function.
124 * include/ext/functional (identity, select1st, select2nd): Adjust.
125 * testsuite/23_containers/unordered_map/requirements/52942.cc: New.
126 * testsuite/23_containers/unordered_set/requirements/52942.cc: Likewise.
128 2012-04-11 Jonathan Wakely <jwakely.gcc@gmail.com>
131 * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Add
132 user-defined destructor.
133 (_Sp_counted_inplace): Likewise.
134 * testsuite/20_util/shared_ptr/cons/52924.cc: New.
135 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
138 2012-04-11 Jonathan Wakely <jwakely.gcc@gmail.com>
140 * testsuite/performance/30_threads/future/polling.cc: Adjust.
142 2012-04-11 Jonathan Wakely <jwakely.gcc@gmail.com>
145 * include/bits/stl_vector.h (vector::operator=(vector&&)): Dispatch
146 to _M_move_assign depending on whether allocator is moved.
147 (vector::_M_move_assign): Add overloaded functions.
148 * testsuite/23_containers/vector/52591.cc: New.
149 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
150 Adjust dg-error line number.
151 * testsuite/23_containers/vector/requirements/dr438/
152 constructor_1_neg.cc:
154 * testsuite/23_containers/vector/requirements/dr438/
155 constructor_2_neg.cc:
157 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
160 2012-04-09 François Dumont <fdumont@gcc.gnu.org>
163 * include/bits/hashtable.h (_Hashtable<>::_M_rehash_aux): Add.
164 (_Hashtable<>::_M_rehash): Use the latter.
165 * testsuite/23_containers/unordered_multimap/insert/52476.cc: New.
166 * testsuite/23_containers/unordered_multiset/insert/52476.cc: New.
168 2012-04-09 Terry Guo <terry.guo@arm.com>
170 Backport from mainline
171 2012-03-28 Terry Guo <terry.guo@arm.com>
173 * testsuite/Makefile.am (TEST_GCC_EXEC_PREFIX): New.
174 * testsuite/Makefile.in: Regenerated.
176 2012-03-30 Jeffrey Yasskin <jyasskin@gcc.gnu.org>
177 Paolo Carlini <paolo.carlini@oracle.com>
180 * include/bits/deque.tcc (emplace): Fix thinko, replace push_front
181 -> emplace_front, and likewise for *_back.
182 * testsuite/23_containers/deque/modifiers/emplace/52799.cc: New.
183 * testsuite/23_containers/list/modifiers/emplace/52799.cc: Likewise.
184 * testsuite/23_containers/vector/modifiers/emplace/52799.cc: Likewise.
186 2012-03-23 David S. Miller <davem@davemloft.net>
188 * config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Update.
190 2012-03-23 Paolo Carlini <paolo.carlini@oracle.com>
192 * include/bits/forward_list.h: Fix comments.
194 2012-03-23 Paweł Sikora <pawel.sikora@agmk.net>
197 * include/Makefile.am (c++config.h): Fix sed rule to not break
198 the _GLIBCXX_EXTERN_TEMPLATE redefinition.
199 * include/Makefile.in: Regenerate.
201 2012-03-22 Jonathan Wakely <jwakely.gcc@gmail.com>
204 * include/debug/safe_iterator.h (_Safe_iterator): Add move
205 constructor and move assignment operator.
206 * testsuite/23_containers/vector/debug/52433.cc: New.
208 2012-03-22 Paolo Carlini <paolo.carlini@oracle.com>
210 * include/std/array (array<>::at(size_type) const): Fix version
211 for undefined __EXCEPTIONS.
213 2012-03-22 Release Manager
215 * GCC 4.7.0 released.
217 2012-03-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
220 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
222 2012-03-09 Andreas Schwab <schwab@linux-m68k.org>
224 * config/locale/gnu/monetary_members.cc
225 (moneypunct<char,true>::_M_initialize_moneypunct): Throw caught
227 (moneypunct<char,false>::_M_initialize_moneypunct): Likewise.
228 * testsuite/22_locale/locale/cons/12352.cc: Also test en_US
231 2012-03-02 Benjamin Kosnik <bkoz@redhat.com>
233 * include/c_global/cstdio: Remove extraneous extern.
234 * include/c_std/cstdio: Same.
236 2012-03-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
238 * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate.
239 * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
240 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
241 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
242 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
244 2012-03-01 Benjamin Kosnik <bkoz@redhat.com>
245 Ramana Radhakrishnan <ramana@gcc.gnu.org>
248 * acinclude.m4 (GLIBCXX_CHECK_STDIO_PROTO): New.
249 * configure.ac: Call it.
250 * configure: Regenerate.
252 * config/os/gnu-linux/os_defines.h: Conditionally undefine
254 * include/c_global/cstdio: Conditionally declare deprecated gets.
255 * include/c_std/cstdio: Same.
257 2012-03-01 Michael Spertus <mike_spertus@symantec.com>
259 * include/tr2/type_traits (typelist): To __reflection_typelist.
260 (first, rest, empty): Remove.
262 2012-03-01 Benjamin Kosnik <bkoz@redhat.com>
264 * testsuite/Makefile.am (CLEANFILES): Add *.gdb.
265 * testsuite/Makefile.in: Regenerate.
267 2012-02-29 H.J. Lu <hongjiu.lu@intel.com>
269 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
271 2012-02-28 Benjamin Kosnik <bkoz@redhat.com>
274 * testsuite/util/testsuite_abi.cc (compare_symbols): Check new
275 symbols added into the latest version. Mark tls entities as
278 2012-02-28 Jakub Jelinek <jakub@redhat.com>
281 * src/Makefile.am (libstdc++-symbols.ver): Only remove comment lines
282 if they are at the beginning of lines (with optional whitespace before
284 * src/Makefile.in: Regenerated.
286 2012-02-27 Jakub Jelinek <jakub@redhat.com>
288 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
289 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
290 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
292 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
293 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
294 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
295 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
296 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
297 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
299 2012-02-27 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
302 * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Remove symvers_renaming.
303 Remove ENABLE_SYMVERS_SOL2.
304 * configure: Regenerate.
305 * src/Makefile.am [ENABLE_SYMVERS] (libstdc++-symbols.ver):
307 [ENABLE_SYMVERS_GNU]: Remove ENABLE_SYMVERS_SOL2 handling.
308 * src/Makefile.in: Regenerate.
310 * config/abi/pre/gnu.ver (GLIBCXX_3.4.5) [!__sun__ && !__svr4__]:
312 _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv.
314 2012-02-25 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
317 * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
318 Require atomic builtins.
319 * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
321 2012-02-23 Jason Merrill <jason@redhat.com>
323 * include/bits/locale_facets.h (class num_get): Undo reordering of
324 do_get virtual functions.
326 2012-02-14 Edward Smith-Rowland <3dw4rd@verizon.net>
328 * testsuite/26_numerics/random/
329 uniform_real_distribution/requirements/typedefs.cc: Check param_type.
330 * testsuite/26_numerics/random/
331 piecewise_constant_distribution/requirements/typedefs.cc: Ditto.
332 * testsuite/26_numerics/random/
333 chi_squared_distribution/requirements/typedefs.cc: Ditto.
334 * testsuite/26_numerics/random/
335 normal_distribution/requirements/typedefs.cc: Ditto.
336 * testsuite/26_numerics/random/
337 uniform_int_distribution/requirements/typedefs.cc: Ditto.
338 * testsuite/26_numerics/random/
339 poisson_distribution/requirements/typedefs.cc: Ditto.
340 * testsuite/26_numerics/random/
341 bernoulli_distribution/requirements/typedefs.cc: Ditto.
342 * testsuite/26_numerics/random/
343 discrete_distribution/requirements/typedefs.cc: Ditto.
344 * testsuite/26_numerics/random/
345 weibull_distribution/requirements/typedefs.cc: Ditto.
346 * testsuite/26_numerics/random/
347 cauchy_distribution/requirements/typedefs.cc: Ditto.
348 * testsuite/26_numerics/random/
349 negative_binomial_distribution/requirements/typedefs.cc: Ditto.
350 * testsuite/26_numerics/random/
351 gamma_distribution/requirements/typedefs.cc: Ditto.
352 * testsuite/26_numerics/random/
353 fisher_f_distribution/requirements/typedefs.cc: Ditto.
354 * testsuite/26_numerics/random/
355 exponential_distribution/requirements/typedefs.cc: Ditto.
356 * testsuite/26_numerics/random/
357 binomial_distribution/requirements/typedefs.cc: Ditto.
358 * testsuite/26_numerics/random/
359 lognormal_distribution/requirements/typedefs.cc: Ditto.
360 * testsuite/26_numerics/random/
361 extreme_value_distribution/requirements/typedefs.cc: Ditto.
362 * testsuite/26_numerics/random/
363 piecewise_linear_distribution/requirements/typedefs.cc: Ditto.
364 * testsuite/26_numerics/random/
365 student_t_distribution/requirements/typedefs.cc: Ditto.
366 * testsuite/26_numerics/random/
367 geometric_distribution/requirements/typedefs.cc: Ditto.
369 2012-02-21 Benjamin Kosnik <bkoz@redhat.com>
372 * config/abi/pre/gnu.ver: Only one local.
373 * config/abi/pre/gnu-versioned-namespace.ver: Same.
375 2012-02-21 Paolo Carlini <paolo.carlini@oracle.com>
377 PR libstdc++/52317 (cont)
378 * include/profile/unordered_map: Ad Library Exception comment.
379 * include/profile/set: Likewise.
380 * include/profile/base.h: Likewise.
381 * include/profile/impl/profiler_list_to_slist.h: Likewise.
382 * include/profile/impl/profiler_container_size.h: Likewise.
383 * include/profile/impl/profiler_vector_size.h: Likewise.
384 * include/profile/impl/profiler_hash_func.h: Likewise.
385 * include/profile/impl/profiler_trace.h: Likewise.
386 * include/profile/impl/profiler_list_to_vector.h: Likewise.
387 * include/profile/impl/profiler_vector_to_list.h: Likewise.
388 * include/profile/impl/profiler.h: Likewise.
389 * include/profile/impl/profiler_state.h: Likewise.
390 * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
391 * include/profile/impl/profiler_algos.h: Likewise.
392 * include/profile/impl/profiler_hashtable_size.h: Likewise.
393 * include/profile/impl/profiler_node.h: Likewise.
394 * include/profile/vector: Likewise.
395 * include/profile/unordered_set: Likewise.
396 * include/profile/map.h: Likewise.
397 * include/profile/map: Likewise.
399 2012-02-21 Paolo Carlini <paolo.carlini@oracle.com>
402 * python/Makefile.am: Update boilerplate license text to GPLv3.
403 * include/profile/unordered_map: Likewise.
404 * include/profile/set: Likewise.
405 * include/profile/base.h: Likewise.
406 * include/profile/impl/profiler_list_to_slist.h: Likewise.
407 * include/profile/impl/profiler_container_size.h: Likewise.
408 * include/profile/impl/profiler_vector_size.h: Likewise.
409 * include/profile/impl/profiler_hash_func.h: Likewise.
410 * include/profile/impl/profiler_trace.h: Likewise.
411 * include/profile/impl/profiler_list_to_vector.h: Likewise.
412 * include/profile/impl/profiler_vector_to_list.h: Likewise.
413 * include/profile/impl/profiler.h: Likewise.
414 * include/profile/impl/profiler_state.h: Likewise.
415 * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
416 * include/profile/impl/profiler_algos.h: Likewise.
417 * include/profile/impl/profiler_hashtable_size.h: Likewise.
418 * include/profile/impl/profiler_node.h: Likewise.
419 * include/profile/vector: Likewise.
420 * include/profile/unordered_set: Likewise.
421 * include/profile/map.h: Likewise.
422 * include/profile/map: Likewise.
423 * testsuite/21_strings/basic_string/numeric_conversions/
424 wchar_t/dr1261.cc: Likewise.
425 * testsuite/21_strings/basic_string/numeric_conversions/
426 char/dr1261.cc: Likewise.
427 * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
429 2012-02-20 Paolo Carlini <paolo.carlini@oracle.com>
432 * src/c++98/tree.cc (local_Rb_tree_increment,
433 local_Rb_tree_decrement): Add.
434 (_Rb_tree_increment(const _Rb_tree_node_base*),
435 _Rb_tree_decrement(const _Rb_tree_node_base*)): Use the latter.
436 (_Rb_tree_increment(_Rb_tree_node_base*),
437 _Rb_tree_decrement(_Rb_tree_node_base*)): New.
439 2012-02-20 Paolo Carlini <paolo.carlini@oracle.com>
442 * include/bits/hashtable_policy.h (_Equality_base<, true,>::
443 _M_equal(const _Hashtable&)): Compare values with operator==.
444 * testsuite/23_containers/unordered_set/operators/52309.cc: New.
446 2012-02-17 Benjamin Kosnik <bkoz@redhat.com>
448 PR libstdc++/51798 continued.
449 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Grep for
450 __atomic_, not __sync.
451 * configure: Regenerated.
453 2012-02-17 Benjamin Kosnik <bkoz@redhat.com>
456 * acinclude.m4 (GLIBCXX_ENABLE_WERROR): New.
457 (GLIBCXX_EXPORT_FLAGS): Add -Wabi to WARN_FLAGS
458 * configure.ac: Use it.
459 * fragment.am: Set WERROR_FLAG conditionally on --disable-werror.
460 * configure: Regenerate.
461 * python/Makefile.in: Same.
463 * doc/Makefile.in: Same.
464 * include/Makefile.in: Same.
465 * po/Makefile.in: Same.
466 * python/Makefile.in: Same.
467 * src/Makefile.in: Same.
468 * src/c++11/Makefile.in: Same.
469 * src/c++98/Makefile.in: Same.
470 * testsuite/Makefile.in: Same.
472 2012-02-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
475 * acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Handle
476 --enable-libstdcxx-threads.
477 Disable on Solaris 8/9 with symbol versioning.
478 * configure.ac (GLIBCXX_CHECK_GTHREADS): Move after
479 GLIBCXX_ENABLE_SYMVERS.
480 * configure: Regenerate.
481 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads): Explain.
483 2012-02-15 DJ Delorie <dj@redhat.com>
485 * src/c++98/locale.cc (locale::facet::_S_get_c_locale): Fix typo.
487 2012-02-15 Benjamin Kosnik <bkoz@redhat.com>
490 * acinclude.m4 (GLIBCXX_ENABLE_PYTHON): New.
491 * configure.ac: Use it.
492 * python/Makefile.am: Same.
493 * configure: Regenerate.
494 * python/Makefile.in: Regenerate.
496 * doc/Makefile.in: Same.
497 * include/Makefile.in: Same.
498 * po/Makefile.in: Same.
499 * src/Makefile.in: Same.
500 * src/c++11/Makefile.in: Same.
501 * src/c++98/Makefile.in: Same.
502 * testsuite/Makefile.in: Same.
504 2012-02-14 Jonathan Wakely <jwakely.gcc@gmail.com>
506 * 30_threads/thread/native_handle/typesizes.cc: Do not run on cygwin.
508 2012-02-14 Tom Tromey <tromey@redhat.com>
510 * testsuite/libstdc++-prettyprinters/cxx11.cc (main): Add new
512 * python/libstdcxx/v6/printers.py (Tr1HashtableIterator.__init__):
514 (Tr1HashtableIterator.update): Remove.
515 (Tr1HashtableIterator.next): Rewrite.
517 2012-02-13 Benjamin Kosnik <bkoz@redhat.com>
519 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
520 * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
522 2012-02-13 Richard Henderson <rth@redhat.com>
524 PR libstdc++/51798 continued.
525 * include/bits/shared_ptr_base.h
526 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock): Hoist initial load
527 outside compare_exchange loop.
528 * include/tr1/shared_ptr.h: Same.
529 * include/parallel/compatibility.h (__compare_and_swap_32): Use strong
530 version of compare_exchange.
531 (__compare_and_swap_64): Same.
532 * include/profile/impl/profiler_state.h (__gnu_profile::__turn): Same.
533 * libsupc++/guard.cc (__cxa_guard_acquire): Same.
535 2012-02-10 Benjamin Kosnik <bkoz@redhat.com>
536 Jonathan Wakely <jwakely.gcc@gmail.com>
538 PR libstdc++/51798 continued.
539 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Use __atomic_*
540 builtins instead of __sync_* builtins for atomic functionality.
541 * include/bits/shared_ptr_base.h: Same.
542 * include/parallel/compatibility.h: Same.
543 * include/profile/impl/profiler_state.h: Same.
544 * include/tr1/shared_ptr.h: Same.
545 * libsupc++/eh_ptr.cc: Same.
546 * libsupc++/eh_throw.cc: Same.
547 * libsupc++/eh_tm.cc: Same.
548 * libsupc++/guard.cc: Same.
549 * configure: Regenerated.
550 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
551 * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
553 2012-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
556 * config/os/osf/ctype_base.h,
557 config/os/osf/ctype_configure_char.cc,
558 config/os/osf/ctype_inline.h, config/os/osf/error_constants.h:
559 Copy from config/os/generic.
560 * config/os/osf/os_defines.h: Likewise.
561 (_GTHREAD_USE_MUTEX_INIT_FUNC, _GTHREAD_USE_COND_INIT_FUNC):
563 * configure.host <osf*>: Use os/osf for os_include_dir.
565 2012-02-10 Uros Bizjak <ubizjak@gmail.com>
567 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Regenerated.
569 2012-02-09 Jonathan Wakely <jwakely.gcc@gmail.com>
571 * doc/xml/manual/documentation_hacking.xml: Fix invalid attribute.
573 2012-02-08 Jonathan Wakely <jwakely.gcc@gmail.com>
575 * doc/xml/manual/status_cxx2011.xml: Update C++11 status table.
577 2012-02-07 Benjamin Kosnik <bkoz@redhat.com>
579 * doc/doxygen/user.cfg.in: Update to doxygen 1.7.6.1.
580 * doc/xml/manual/documentation_hacking.xml: Update.
582 2012-02-07 Jonathan Wakely <jwakely.gcc@gmail.com>
584 * testsuite/30_threads/call_once/39909.cc: Remove duplicate target
586 * testsuite/30_threads/call_once/49668.cc: Likewise.
587 * testsuite/30_threads/call_once/call_once1.cc: Likewise.
588 * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
589 * testsuite/30_threads/mutex/cons/1.cc: Likewise.
590 * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
591 * testsuite/30_threads/mutex/lock/1.cc: Likewise.
592 * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
593 * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
594 * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
595 * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
596 * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
597 * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
598 * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
599 * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
600 * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
601 * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
602 * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
603 * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
604 * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
605 * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
606 * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
607 * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
608 * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
610 2012-02-07 Jonathan Wakely <jwakely.gcc@gmail.com>
613 * include/std/mutex (__mutex_base::~__mutex_base): Declare noexcept.
614 * src/c++11/condition_variable.cc (condition_variable): Use macro for
615 initializer function.
618 * config/os/bsd/darwin/os_defines.h: Disable static initializer for
621 2012-02-06 Jonathan Wakely <jwakely.gcc@gmail.com>
624 * src/c++11/future.cc: Add explicit instantiation.
626 2012-02-06 François Dumont <fdumont@gcc.gnu.org>
628 * include/debug/safe_iterator.h
629 (_Safe_iterator::_M_before_dereferenceable): Avoid the expensive
630 creation of a _Safe_iterator instance to do the check.
632 2012-02-05 Jonathan Wakely <jwakely.gcc@gmail.com>
635 * include/std/future (__future_base::_Async_state_common): Define
636 destructor inline for targets without TLS.
637 * src/c++11/future.cc (__future_base::_Async_state_common): Only
638 define destructor for TLS targets.
640 2012-02-05 Jonathan Wakely <jwakely.gcc@gmail.com>
643 * python/libstdcxx/v6/printers.py (StdPointerPrinter): Rename to...
644 (SharedPointerPrinter): This. Also show weak count.
645 * testsuite/libstdc++-prettyprinters/shared_ptr.cc: New.
647 2012-02-05 Jonathan Wakely <jwakely.gcc@gmail.com>
649 * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Modify to
650 PASS instead of XFAIL.
652 2012-02-05 Jeffrey Yasskin <jyasskin@gcc.gnu.org>
653 Paolo Carlini <paolo.carlini@oracle.com>
656 * include/std/limits (__glibcxx_min): Fix to avoid undefined behavior.
658 2012-02-03 Benjamin Kosnik <bkoz@redhat.com>
661 * testsuite/29_atomics/atomic/cons/49445.cc: Add.
663 2012-02-03 Benjamin Kosnik <bkoz@redhat.com>
666 * include/bits/atomic_base.h (atomic<_Tp*>): Fix offsets.
667 * testsuite/29_atomics/atomic/operators/51811.cc: New.
668 * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: New.
670 2012-02-03 Jakub Jelinek <jakub@redhat.com>
672 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
673 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
674 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
676 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
677 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
678 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
679 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
680 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
681 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
683 2012-02-02 Benjamin Kosnik <bkoz@redhat.com>
686 * src/c++11/Makefile.am (toolexeclib_LTLIBRARIES,
687 libc__11_la_SOURCES): Remove.
688 * src/c++11/Makefile.in: Regenerate.
689 * src/c++98/Makefile.am (toolexeclib_LTLIBRARIES,
690 libc__98_la_SOURCES): Remove.
691 * src/c++98/Makefile.in: Regenerate.
693 2012-02-01 Jonathan Wakely <jwakely.gcc@gmail.com>
696 * include/std/future (__future_base::_State_base::wait()): Use lambda
697 expression for predicate and remove redundant test.
698 (__future_base::_State_base::wait_for()): Return future_status and
699 use lambda expression for predicate.
700 (__future_base::_State_base::wait_until()): Likewise.
701 (__basic_future::wait_for(), __basic_future::wait_until()): Likewise.
702 (__future_base::_Async_state): Replace with _Async_state_common
703 class for non-dependent functionality and _Async_state_impl class
704 template for dependent functionality.
705 (__future_base::_Async_state_common::_M_join): Serialize attempts to
707 (__future_base::_Async_state_common::_M_run_deferred): Join.
708 (__future_base::_Async_state::_M_do_run): Replace with lambda.
709 * src/c++11/future.cc (__future_base::_Async_state_common): Define
710 destructor, so key function is in the library.
711 * config/abi/pre/gnu.ver: Add exports for ~_Async_state_common.
712 * testsuite/30_threads/packaged_task/members/get_future.cc: Expect
713 future_status return instead of bool.
714 * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
715 * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
716 * testsuite/30_threads/future/members/wait_until.cc: Likewise.
717 * testsuite/30_threads/future/members/wait_for.cc: Likewise.
718 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
719 * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
720 * testsuite/30_threads/promise/members/swap.cc: Likewise.
722 2012-01-30 Tom Tromey <tromey@redhat.com>
725 * testsuite/libstdc++-prettyprinters/debug.cc: New file.
726 * testsuite/lib/gdb-test.exp (regexp-test): New proc.
728 (gdb-test): Handle regexp tests. Add some logging.
729 * testsuite/libstdc++-prettyprinters/simple.cc: Compile with -O0.
730 (placeholder, use): Remove.
731 (main): Add tests for deque, list, map, and set iterators. Add
732 tests for slist and slist iterator.
733 * testsuite/libstdc++-prettyprinters/48362.cc (main): Handle __7
735 * python/libstdcxx/v6/printers.py (StdListPrinter.children): Use
736 the type's _Node typedef.
737 (StdListIteratorPrinter.to_string): Change how node type is
739 (StdSlistPrinter.children): Use the type's _Node typedef.
740 (StdSlistIteratorPrinter.to_string): Likewise.
741 (StdRbtreeIteratorPrinter.to_string): Use the type's _Link_type
743 (StdMapPrinter.children): Change how the node's type is computed.
744 (StdSetPrinter.children): Likewise.
745 (StdForwardListPrinter.children): Use the type's _Node typedef.
746 (Printer.add_version): New method.
747 (Printer.add_container): New method.
748 (build_libstdcxx_dictionary): Handle __7 and __cxx1998
750 (find_type): New function.
752 2012-01-27 Paolo Carlini <paolo.carlini@oracle.com>
755 * include/bits/random.h (linear_congruential_generator): Add
756 static_assert preventing instantiation for values of 'a' and 'm'
757 currently handled incorrectly by _Mod::__calc.
758 * include/bits/random.tcc (seed_seq::generate): Avoid unsafe
759 uses of _Mod::__calc.
761 2012-01-27 Jakub Jelinek <jakub@redhat.com>
764 * config/cpu/generic/atomicity_builtins/atomicity.h
765 (__exchange_and_add, __atomic_add): Use __atomic_fetch_add
766 with __ATOMIC_ACQ_REL semantics instead of __sync_fetch_and_add.
767 * include/ext/atomicity.h (__exchange_and_add, __atomic_add):
770 2011-01-27 Rafael Avila de Espindola <rafael.espindola@gmail.com>
772 * libsupc++/typeinfo: Correctly match #pragma GCC visibility
773 pop with #pragma GCC visibility push.
775 2012-01-27 Benjamin Kosnik <bkoz@redhat.com>
776 Matthias Klose <doko@ubuntu.com>
778 * configure.ac (GLIBCXX_ENABLE_DEBUG_FLAGS): Use -gdwarf-4 -g3 -O0.
779 * configure.in: Regenerated.
780 * src/Makefile.am (all-once, install-data-once): New rules.
781 (all-local, install-data-local): Use them.
782 (build-debug, install-debug): Tweak.
783 * src/Makefile.in: Regenerate.
785 2012-01-27 Richard Henderson <rth@redhat.com>
787 * include/bits/atomic_base.h (__atomic_flag_base): Define _M_i
788 based on the value of __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
789 (ATOMIC_FLAG_INIT): Initialize with 0, not false.
790 (atomic_flag::atomic_flag): Use __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
792 2012-01-26 Jakub Jelinek <jakub@redhat.com>
795 * src/c++98/Makefile.am (libc__98_la_SOURCES,
796 libc__98convenience_la_SOURCES): Remove $(inst_sources).
797 * src/c++98/Makefile.in: Regenerated.
799 2012-01-25 Richard Sandiford <rdsandiford@googlemail.com>
801 * testsuite/20_util/system_clock/1.cc: Add dg-require-time.
802 * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
803 * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
804 * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
805 * testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Add
807 * testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise.
808 * testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise.
809 * testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise.
810 * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-fstream.cc:
812 * testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
814 2012-01-25 Matthias Klose <doko@ubuntu.com>
816 * testsuite/30_threads/condition_variable_any/requirements: Remove
819 2012-01-23 Benjamin Kosnik <bkoz@redhat.com>
821 * src/Makefile.am (libstdc++convenience.la): Correct stamp rule, copy.
822 * src/Makefile.in: Regenerate.
824 2012-01-23 Benjamin Kosnik <bkoz@redhat.com>
827 Add libc++98convenience.la, libc++11convenience.la.
828 * src/c++98: New directory.
829 * src/c++11: New directory.
830 * acinclude.m4: (GLIBCXX_CONFIGURE): Add src-c++98, src-c++11.
831 * configure: Regenerated.
832 * Makefile.am (hosted_source): Add src-c++98, src-c++11 to SUBDIRS.
833 * Makefile.in: Regenerate.
834 * libsupc++/Makefile.am (AM_CXXFLAGS): USe XTEMPLATE_FLAGS for
835 -fno-implicit-templates.
836 * libsupc++/Makefile.in: Regenerate.
837 * src/Makefile.am (inst_sources): Move... C++11 files into
838 separate directory for libstdc++11convenience.la. Files are:
839 fstream-inst.cc, string-inst.cc, wlocale-inst.cc, wstring-inst.cc).
840 (sources): Move C++11 files. Files are: compatibility-c++0x.cc,
841 compatibility-atomic-c++0x.cc, debug.cc, functexcept.cc,
842 functional.cc, hash_c++0x.cc, hashtable_c++0x.cc, limits.cc,
843 system_error.cc, placeholders.cc, regex.cc, shared_ptr.cc,
844 mutex.cc, condition_variable.cc, chrono.cc, thread.cc, future.cc.
845 (libstdc++convenience.la): Add new target.
846 (SUBDIRS): Add c++11, c++98.
847 * src/Makefile.in: Regenerate.
848 * src/c++11/Makefile.am: New.
849 * src/c++11/Makefile.in: Generate.
850 * src/c++98/Makefile.am: New, C++98 files.
851 * src/c++98/Makefile.in: Generate.
853 2012-01-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
856 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on
857 32-bit Solaris 10/x86.
858 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
860 2012-01-21 Jonathan Wakely <jwakely.gcc@gmail.com>
863 * testsuite/30_threads/*: Add powerpc-ibm-aix* to target selectors.
865 2012-01-19 Jakub Jelinek <jakub@redhat.com>
868 * include/bits/hashtable.h
869 (_Hashtable<>::erase(const_iterator, const_iterator)): Also update
870 _M_buckets[__n_bkt] if __is_bucket_begin.
871 * testsuite/23_containers/unordered_multimap/erase/51845-multimap.cc:
874 2012-01-18 Benjamin Kosnik <bkoz@redhat.com>
876 * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): Fix quoting.
878 2012-01-18 Benjamin Kosnik <bkoz@redhat.com>
880 * configure.ac: Move epub checks...
881 * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): ...here, use
882 test -f instead of AC_CHECK_FILES.
884 2012-01-18 François Dumont <fdumont@gcc.gnu.org>
885 Roman Kononov <roman@binarylife.net>
888 * include/bits/hashtable.h (_Hashtable<>::_M_insert(_Arg, false_type)):
889 Do not keep a reference to a potentially moved instance.
890 * testsuite/23_containers/unordered_multiset/insert/51866.cc: New.
891 * testsuite/23_containers/unordered_multimap/insert/51866.cc: New.
893 2012-01-17 Benjamin Kosnik <bkoz@redhat.com>
895 * doc/html/*: Regenerate.
897 2012-01-17 Benjamin Kosnik <bkoz@redhat.com>
899 * configure.ac (BUILD_EPUB): Adjust for epub3.
900 * configure: Regenerate.
902 * doc/Makefile.am (stamp-epub-docbook): Update for epub3.
903 * doc/Makefile.in: Regenerate.
904 * include/Makefile.in: Same.
905 * libsupc++/Makefile.in: Same.
906 * po/Makefile.in: Same.
907 * python/Makefile.in: Same.
908 * src/Makefile.in: Same.
909 * testsuite/Makefile.in: Same.
911 * doc/xml/manual/documentation_hacking.xml: Update.
913 2012-01-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
916 * configure.host (irix6.5*): Add -lpthread to OPT_LDFLAGS.
918 2012-01-14 Jonathan Wakely <jwakely.gcc@gmail.com>
920 * include/bits/stl_iterator.h (reverse_iterator): Doxygen comments.
922 2012-01-13 François Dumont <fdumont@gcc.gnu.org>
924 * include/bits/hashtable_policy.h (_Hash_node_base): New, use it as
926 (_Hash_node<Value, true>, _Hash_node<Value, false>): ... those.
927 * include/bits/hashtable.h (_Hashtable): Replace _M_begin_bucket_index
928 by _M_before_begin. Review implementation so that we do not need to
929 look for previous non-empty bucket when inserting nodes.
931 2012-01-09 Kai Tietz <ktietz@redhat.com>
933 PR libstc++/51673 part 2
934 * config/abi/pre/gnu-versioned-namespace.ver: Adjusted new/delete
935 operators signature for LLP64 size_t, and adjusted signatures for
936 mt-allocator using size_t.
938 2012-01-09 Benjamin Kosnik <bkoz@redhat.com>
940 PR libstc++/51673 part 1
941 * config/abi/pre/gnu-versioned-namespace.ver: Sync cxxabi symbols
944 2012-01-09 Benjamin Kosnik <bkoz@redhat.com>
946 * fragment.am (WARN_CXXFLAGS): Add -Wabi.
947 * Makefile.in: Regenerate.
948 * doc/Makefile.in: Same.
949 * include/Makefile.in: Same.
950 * libsupc++/Makefile.in: Same.
951 * src/Makefile.in: Same.
952 * testsuite/Makefile.in: Same.
953 * po/Makefile.in: Same.
954 * python/Makefile.in: Same.
956 2012-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
958 * python/libstdcxx/v6/printers.py (StdForwardListPrinter): Add.
959 * testsuite/libstdc++-prettyprinters/cxx11.cc: New.
961 2012-01-06 Jason Merrill <jason@redhat.com>
963 * testsuite/abi/demangle/regression/cw-16.cc (main): Adjust
966 2012-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
969 * doc/xml/manual/debug.xml: Suggest using symbol interposition
970 to override symbols using annotation macros.
972 2012-01-05 François Dumont <fdumont@gcc.gnu.org>
974 * include/bits/hashtable_policy.h (_Hashtable_base<>::_M_eq()):
975 protected rather than private, use it...
976 * include/bits/hashtable.h (_Hashtable<>::key_eq()): ... here.
977 * testsuite/23_containers/unordered_set/observers.cc: New.
978 * testsuite/23_containers/unordered_multiset/observers.cc: New.
979 * testsuite/23_containers/unordered_map/observers.cc: New.
980 * testsuite/23_containers/unordered_multimap/observers.cc: New.
982 2012-01-03 François Dumont <fdumont@gcc.gnu.org>
984 * include/bits/hashtable_policy.h (_Ebo_helper<>): Rename to the more
985 specific _Hashtable_ebo_helper. Hide this implementation detail thanks
986 to private inheritance.
988 2012-01-03 Paolo Carlini <paolo.carlini@oracle.com>
991 * testsuite/23_containers/map/element_access/39901.cc: New.