1 2012-11-12 Jonathan Wakely <jwakely.gcc@gmail.com>
3 * include/std/future (atomic_future): Remove declaration of
6 2012-11-08 François Dumont <fdumont@gcc.gnu.org>
9 * include/bits/hashtable.h (_Hashtable<>::rehash): Reset hash
10 policy state if no rehash.
11 * testsuite/23_containers/unordered_set/modifiers/reserve.cc
14 2012-11-08 Jonathan Wakely <jwakely.gcc@gmail.com>
16 * include/profile/iterator_tracker.h (operator++): Fix returning
18 (operator--): Likewise.
20 2012-11-06 Jonathan Wakely <jwakely.gcc@gmail.com>
22 * testsuite/20_util/shared_ptr/cons/55123.cc: Remove duplicate
25 2012-11-06 Jonathan Wakely <jwakely.gcc@gmail.com>
27 * testsuite/*: Fix copying permission statements.
29 2012-11-05 Benjamin Kosnik <bkoz@redhat.com>
33 * configure.ac (glibcxx_lt_pic_flag,
34 glibcxx_compiler_pic_flag,
35 glibcxx_compiler_shared_flag): New. Use them.
36 (lt_prog_compiler_pic_CXX): Set via glibcxx_*_flag(s) above.
37 (pic_mode): Set to default.
38 (PIC_CXXFLAGS): Remove.
39 * Makefile.am (PICFLAG, PICFLAG_FOR_TARGET): Remove. Comment.
40 * libsupc++/Makefile.am: Use glibcxx_ld_pic_flag and
41 glibcxx_compiler_shared_flag. Comment.
42 * src/c++11/Makefile.am: Same.
43 * src/c++98/Makefile.am: Same.
44 * src/Makefile.am: Use glibcxx_compiler_pic_flag.
46 * Makefile.in: Regenerated.
49 * doc/Makefile.in: Same.
50 * include/Makefile.in: Same.
51 * libsupc++/Makefile.in: Same.
52 * po/Makefile.in: Same.
53 * python/Makefile.in: Same.
54 * src/Makefile.in: Same.
55 * src/c++11/Makefile.in: Same.
56 * src/c++98/Makefile.in: Same.
57 * testsuite/Makefile.in: Same.
59 * src/c++11/compatibility-atomic-c++0x.cc: Use
60 _GLIBCXX_SHARED instead of PIC to designate shared-only
62 * src/c++11/compatibility-c++0x.cc: Same.
63 * src/c++11/compatibility-thread-c++0x.cc: Same.
64 * src/c++98/compatibility-list-2.cc: Same.
65 * src/c++98/compatibility.cc: : Same.
67 * testsuite/17_intro/shared_with_static_deps.cc: New.
69 * doc/xml/manual/build_hacking.xml: Separate configure from
70 make/build issues, add build details.
72 2012-11-05 Benjamin Kosnik <bkoz@redhat.com>
73 Oleg Smolsky <oleg@smolsky.net>
76 * config/abi/pre/gnu-versioned-namespace.ver: Add symbols.
77 * testsuite/23_containers/unordered_multimap/insert/55028-debug.cc: New.
79 2012-11-05 Paolo Carlini <paolo.carlini@oracle.com>
82 * include/bits/random.tcc (mersenne_twister_engine<>::seed(_Sseq&)):
83 Assign state_size to _M_p.
84 * testsuite/26_numerics/random/mersenne_twister_engine/cons/55215.cc:
86 * testsuite/26_numerics/random/independent_bits_engine/cons/55215.cc:
88 * testsuite/26_numerics/random/shuffle_order_engine/cons/55215.cc:
90 * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
92 * testsuite/26_numerics/random/discard_block_engine/cons/55215.cc:
94 * testsuite/26_numerics/random/linear_congruential_engine/cons/
97 2012-11-02 Paolo Carlini <paolo.carlini@oracle.com>
100 * include/bits/random.h: Remove all uses of param().
102 2012-11-01 Haakan Younes <hyounes@google.com>
103 Paolo Carlini <paolo.carlini@oracle.com>
106 * include/bits/random.h (exponential_distribution<>::operator):
107 Fix formula to std::log(result_type(1) - __aurng()).
108 * include/bits/random.tcc: Likewise, everywhere.
110 2012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com>
113 * include/bits/shared_ptr_base.h (__shared_count::_S_create_from_up):
114 Do not instantiate allocator with element_type.
115 * testsuite/20_util/shared_ptr/cons/55123.cc: New.
117 2012-10-10 Andrew MacLeod <amacleod@redhat.com>
120 * include/bits/atomic_base.h (atomic_signal_fence): Call
121 __atomic_signal_fence instead of __atomic_thread_fence.
123 2012-09-20 Benjamin Kosnik <bkoz@redhat.com>
125 PR libstdc++/54102, part 2
126 * doc/Makefile.am (XSL_HTML_STYLE): use xhtml, not html.
127 * doc/Makefile.in: Regenerate.
130 2012-09-20 Benjamin Kosnik <bkoz@redhat.com>
132 * doc/html/*: Regenerate.
134 2012-09-20 Benjamin Kosnik <bkoz@redhat.com>
137 * doc/xsl/customization.xsl.in: New.
138 * configure.ac: Output local copy of customization xsl.
139 * doc/Makefile.am (stamp-html-single-docbook): Use XSL_LOCAL_STYLE.
140 (stamp-html-docbook): Set stringparam to UTF-8.
141 * Makefile.in: Regenerated.
143 * doc/Makefile.in: Same.
145 2012-09-20 Release Manager
147 * GCC 4.7.2 released.
149 2012-09-11 Jakub Jelinek <jakub@redhat.com>
152 * libsupc++/guard.cc (__cxa_guard_acquire): Fix up the last
153 argument of the first __atomic_compare_exchange_n.
155 2012-09-09 Thiago Macieira <thiago.macieira@intel.com>
158 * libsupc++/guard.cc (__cxa_guard_acquire): Exit the loop earlier if
159 we detect that another thread has had success. Don't compare_exchange
160 from a finished state back to a waiting state. Comment.
162 2012-09-09 Jonathan Wakely <jwakely.gcc@gmail.com>
165 * include/std/array (array::at() const): Ensure lvalue result.
166 * testsuite/23_containers/array/element_access/54388.cc: New.
168 2012-09-06 Marc Glisse <marc.glisse@inria.fr>
169 Paolo Carlini <paolo.carlini@oracle.com>
172 * include/bits/random.h (lognormal_distribution<>::operator==,
173 gamma_distribution<>::operator==,
174 chi_squared_distribution<>::operator==,
175 fisher_f_distribution<>::operator==,
176 student_t_distribution<>::operator==,
177 binomial_distribution<>::operator==,
178 negative_binomial_distribution<>::operator==,
179 poisson_distribution<>::operator==): Change inline friend definition
181 * testsuite/26_numerics/random/binomial_distribution/requirements/
182 explicit_instantiation/1.cc: New.
183 * testsuite/26_numerics/random/cauchy_distribution/requirements/
184 explicit_instantiation/1.cc: Likewise.
185 * testsuite/26_numerics/random/chi_squared_distribution/
186 requirements/explicit_instantiation/1.cc: Likewise.
187 * testsuite/26_numerics/random/discrete_distribution/requirements/
188 explicit_instantiation/1.cc: Likewise.
189 * testsuite/26_numerics/random/exponential_distribution/
190 requirements/explicit_instantiation/1.cc: Likewise.
191 * testsuite/26_numerics/random/extreme_value_distribution/
192 requirements/explicit_instantiation/1.cc: Likewise.
193 * testsuite/26_numerics/random/fisher_f_distribution/requirements/
194 explicit_instantiation/1.cc: Likewise.
195 * testsuite/26_numerics/random/gamma_distribution/requirements/
196 explicit_instantiation/1.cc: Likewise.
197 * testsuite/26_numerics/random/geometric_distribution/requirements/
198 explicit_instantiation/1.cc: Likewise.
199 * testsuite/26_numerics/random/lognormal_distribution/requirements/
200 explicit_instantiation/1.cc: Likewise.
201 * testsuite/26_numerics/random/negative_binomial_distribution/
202 requirements/explicit_instantiation/1.cc: Likewise.
203 * testsuite/26_numerics/random/normal_distribution/requirements/
204 explicit_instantiation/1.cc: Likewise.
205 * testsuite/26_numerics/random/piecewise_constant_distribution/
206 requirements/explicit_instantiation/1.cc: Likewise.
207 * testsuite/26_numerics/random/piecewise_linear_distribution/
208 requirements/explicit_instantiation/1.cc: Likewise.
209 * testsuite/26_numerics/random/poisson_distribution/requirements/
210 explicit_instantiation/1.cc: Likewise.
211 * testsuite/26_numerics/random/student_t_distribution/requirements/
212 explicit_instantiation/1.cc: Likewise.
213 * testsuite/26_numerics/random/uniform_int_distribution/
214 requirements/explicit_instantiation/1.cc: Likewise.
215 * testsuite/26_numerics/random/uniform_real_distribution/
216 requirements/explicit_instantiation/1.cc: Likewise.
217 * testsuite/26_numerics/random/weibull_distribution/requirements/
218 explicit_instantiation/1.cc: Likewise.
220 2012-08-26 Jonathan Wakely <jwakely.gcc@gmail.com>
222 * testsuite/30_threads/async/54297.cc: Add dg-require-nanosleep.
224 2012-08-26 Jonathan Wakely <jwakely.gcc@gmail.com>
227 * src/c++11/future.cc (~_Async_state_common): Move to...
228 * src/c++11/compatibility-thread-c++0x.cc (~_Async_state_common):
230 (_GLIBCXX_ABI_COMPAT_ASYNC): Rename to _GLIBCXX_ASYNC_ABI_COMPAT.
231 * include/std/future (_GLIBCXX_ABI_COMPAT_ASYNC): Likewise.
233 2012-08-26 Jonathan Wakely <jwakely.gcc@gmail.com>
234 Geoff Romer <gromer@google.com>
237 * include/bits/unique_ptr.h (unique_ptr<T>::~unique_ptr): Do not use
239 (unique_ptr<T[]>::~unique_ptr()): Likewise.
240 * testsuite/20_util/unique_ptr/54351.cc: New.
241 * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error
244 2012-08-25 Jonathan Wakely <jwakely.gcc@gmail.com>
247 * include/std/future (~_Async_state_impl): Join thread before
248 derived class members are destroyed.
249 (~_Async_state_common): Only define non-trivial destructor when
250 included from future.cc for ABI compatibility reasons.
251 * src/c++11/future.cc (_GLIBCXX_ABI_COMPAT_ASYNC): Define.
252 * testsuite/30_threads/async/54297.cc: New.
254 2012-08-13 David Adler <d.adler.s@gmail.com>
257 * src/c++11/condition_variable.cc (condition_variable): Always
258 destroy native type in destructor.
259 * testsuite/30_threads/condition_variable/54185.cc: New.
261 2012-08-06 Peter Bergner <bergner@vnet.ibm.com>
264 * include/decimal/decimal.h (_DEFINE_DECIMAL_UNARY_OP): Use _Op as
266 * testsuite/decimal/pr54036-1.cc: New test.
267 * testsuite/decimal/pr54036-2.cc: Likewise.
268 * testsuite/decimal/pr54036-3.cc: Likewise.
270 2012-08-02 Michael Hope <michael.hope@linaro.org>
272 Backport from mainline r186389:
273 2012-04-12 Andreas Schwab <schwab@linux-m68k.org>
275 * testsuite/Makefile.am (check_DEJAGNUnormal0): Run
277 * testsuite/Makefile.in: Regenerated.
279 2012-07-29 François Dumont <fdumont@gcc.gnu.org>
282 * include/bits/hashtable_policy.h
283 (_Prime_rehash_policy::_M_next_bkt): Add a growth factor set to 2
284 to boost growth in the number of buckets.
285 * testsuite/performance/23_containers/insert/unordered_set.cc: New.
287 2012-07-26 François Dumont <fdumont@gcc.gnu.org>
290 * include/bits/hashtable.h
291 (_Hashtable<>::_Hashtable(_InputIterator, _InputIterator,
292 size_type, ...): Remove std::max usage to guarantee that hashtable
293 state is consistent with hash policy state.
294 (_Hashtable<>::rehash): Likewise. Set _M_prev_resize to 0 to avoid
295 the hashtable shrinking on next insertion.
296 * testsuite/23_containers/unordered_set/modifiers/reserve.cc: New.
297 * testsuite/23_containers/unordered_multiset/modifiers/reserve.cc: New.
298 * testsuite/23_containers/unordered_map/modifiers/reserve.cc: New.
299 * testsuite/23_containers/unordered_multimap/modifiers/reserve.cc: New.
301 2012-07-20 Paolo Carlini <paolo.carlini@oracle.com>
303 * testsuite/30_threads/thread/adl.cc: Add missing dg-requires.
305 2012-07-16 Jonathan Wakely <jwakely.gcc@gmail.com>
308 * include/ext/concurrence.h: Use NSDMI for gthreads types.
309 * include/ext/rope: Likewise. Destroy mutexes in destructors. Add
310 system_header pragma.
313 2012-06-19 Jonathan Wakely <jwakely.gcc@gmail.com>
316 * config/os/gnu-linux/os_defines.h: Disable static initializer macros
317 for gthreads types in C++11 mode.
319 2012-07-16 Jonathan Wakely <jwakely.gcc@gmail.com>
322 * include/bits/alloc_traits.h (allocator_traits): Define static
324 * include/bits/ptr_traits.h (pointer_traits): Likewise.
325 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
328 2012-07-13 Paolo Carlini <paolo.carlini@oracle.com>
331 * include/bits/stl_pair.h (pair<>::pair(pair&&)): Declare defaulted,
333 * include/bits/stl_map.h (map<>::insert(_Pair&&), map<>::insert
334 (const_iterator, _Pair&&)): Constrain with std::is_constructible,
336 * include/bits/stl_multimap.h (multimap<>::insert(_Pair&&),
337 multimap<>::insert(const_iterator, _Pair&&)): Likewise.
338 * include/bits/hashtable_policy.h (_Insert<>::insert(_Pair&&),
339 _Insert<>::insert(const_iterator, _Pair&&)): Likewise.
340 * include/debug/unordered_map: Adjust.
341 * include/debug/map.h: Likewise.
342 * include/debug/multimap.h: Likewise.
343 * include/profile/unordered_map: Likewise.
344 * include/profile/map.h: Likewise.
345 * include/profile/multimap.h: Likewise.
347 2012-07-07 Jonathan Wakely <jwakely.gcc@gmail.com>
350 * include/ext/concurrence.h (__recursive_mutex::_S_destroy): Fix
351 narrowing conversion.
352 * include/std/mutex (__recursive_mutex_base::_S_destroy): Likewise.
354 2012-07-06 Paolo Carlini <paolo.carlini@oracle.com>
357 * include/std/thread (thread::_M_make_routine): Qualify make_shared
359 * testsuite/30_threads/thread/adl.cc: New.
361 2012-07-05 Jonathan Wakely <jwakely.gcc@gmail.com>
363 * include/std/condition_variable: Update copyright years.
365 2012-07-05 Jonathan Wakely <jwakely.gcc@gmail.com>
368 * include/std/condition_variable (condition_variable_any::wait):
369 Move _Unlock type to class scope.
370 (condition_variable_any::wait_until): Reuse it.
371 * testsuite/30_threads/condition_variable_any/53830.cc: New.
373 2012-07-02 Paolo Carlini <paolo.carlini@oracle.com>
376 2011-10-04 Paolo Carlini <paolo.carlini@oracle.com>
379 * include/bits/stl_list.h (_List_base<>::_List_impl::_M_size):
381 (_List_base<>::_List_impl, _List_base<>::_M_get_node,
382 _List_base<>::_M_put_node, _List_base<>::_List_base(_List_base&&),
383 list<>::size, list<>::swap, list<>::splice): Use it.
384 (operator==(const list<>&, const list<>&)): Rewrite in C++0x mode.
385 * include/bits/list.tcc (list<>::erase): Likewise.
386 (list<>::merge): Adjust in C++0x mode.
387 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
388 Adjust dg-error line number.
389 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
391 * testsuite/23_containers/list/requirements/dr438/
392 constructor_1_neg.cc: Likewise.
393 * testsuite/23_containers/list/requirements/dr438/
394 constructor_2_neg.cc: Likewise.
396 2012-06-19 Jonathan Wakely <jwakely.gcc@gmail.com>
399 * config/os/gnu-linux/os_defines.h: Disable static initializer macros
400 for gthreads types in C++11 mode.
402 2012-06-19 Jörg Sonnenberger <joerg@britannica.bec.de>
403 Jonathan Wakely <jwakely.gcc@gmail.com>
406 * config/os/bsd/netbsd/ctype_base.h: Check for _CTYPE_U.
407 * testsuite/22_locale/ctype_base/53678.cc: New.
409 2012-06-14 Release Manager
411 * GCC 4.7.1 released.
413 2012-05-28 Paolo Carlini <paolo.carlini@oracle.com>
416 * testsuite/26_numerics/headers/cmath/53503.cc: New.
418 2012-05-10 DJ Delorie <dj@redhat.com>
420 * include/bits/random.tcc (seed_seq::generate): Cast max()
421 operands to size_t to ensure a template match.
422 * include/std/bitset (_M_copy_from_ptr): Cast min() operands to
423 size_t to ensure a template match.
425 2012-05-02 Paolo Carlini <paolo.carlini@oracle.com>
428 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
429 dg-error line number.
431 2012-05-01 François Dumont <fdumont@gcc.gnu.org>
434 * include/bits/hashtable.h
435 (_Hashtable<>::_M_rehash_aux(size_type, false_type)): Fix buckets
436 after insertion of several equivalent elements.
437 * testsuite/23_containers/unordered_multiset/insert/53115.cc: New.
438 * testsuite/23_containers/unordered_multimap/insert/53115.cc: New.
440 2012-04-30 Andreas Tobler <andreast@fgznet.ch>
442 Backport from mainline
443 2012-03-21 Andreas Tobler <andreast@fgznet.ch>
445 * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
446 Skip this test on powerpc64-*-freebsd*.
448 2012-04-25 Jonathan Wakely <jwakely.gcc@gmail.com>
450 * include/std/scoped_allocator (scoped_allocator::__outermost): Do
451 not pass non-POD to varargs function.
452 * testsuite/20_util/scoped_allocator/1.cc: Fix test.
454 2012-04-23 Chris Jefferson <chris@bubblescope.net>
457 * testsuite/25_algorithms/stable_partition/mem_check.cc: Fix size
459 * testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise.
461 2012-04-22 Paolo Carlini <paolo.carlini@oracle.com>
464 * include/bits/hashtable_policy.h: Change inheritances to public.
465 * testsuite/23_containers/unordered_map/requirements/53067.cc: New.
466 * testsuite/23_containers/unordered_set/requirements/53067.cc: Likewise.
468 2012-04-22 Jonathan Wakely <jwakely.gcc@gmail.com>
471 * include/bits/ptr_traits.h (pointer_traits::rebind): Make public.
472 * testsuite/20_util/pointer_traits/requirements/typedefs.cc: Check
475 2012-04-21 Alan Modra <amodra@gmail.com>
478 * acinclude.m4 (_GLIBCXX_ATOMIC_BUILTINS): Do not depend on
479 glibcxx_cv_atomic_long_long.
480 * configure: Regenerate.
482 2012-04-16 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
485 * src/Makefile.am (build-debug): Do not adjust vpath dir, remove
487 * src/Makefile.in: Adjust as per above.
489 2012-04-16 Benjamin Kosnik <bkoz@redhat.com>
492 * libsupc++/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
493 * libsupc++/Makefile.in: Regenerated.
494 * src/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
495 (libstdc___la_SOURCES): Add in compatiblity files, with content
496 that varies with -DPIC.
497 * src/Makefile.in: Regenerated.
498 * src/c++11/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
499 * src/c++11/Makefile.in: Regenerated.
500 * src/c++11/compatibility-atomic-c++0x.cc: Guard with PIC.
501 * src/c++11/compatibility-c++0x.cc: Same.
502 * src/c++11/future.cc: Consolidate compatibility bits into..
503 * src/c++11/mutex.cc: Consolidate compatibility bits into..
504 * src/c++11/compatibility-thread-cxx0x.cc: ...here. New.
505 * src/c++98/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
506 * src/c++98/Makefile.in: Regenerated.
507 * src/c++98/compatibility-list-2.cc: Guard with PIC.
508 * src/c++98/compatibility.cc: Tweak comments.
510 2012-04-16 Benjamin Kosnik <bkoz@redhat.com>
512 * include/ext/pb_ds/detail/pat_trie_/
513 constructors_destructor_fn_imps.hpp: Increment after recursion.
514 * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Convert
515 node_type markup from brief.
517 2012-04-14 Paolo Carlini <paolo.carlini@oracle.com>
520 * include/bits/random.tcc (independent_bits_engine<>::operator()())
521 Avoid various overflows; use common_type on result_type and
522 _RandomNumberEngine::result_type; avoid floating point computations;
523 other smaller tweaks.
525 * include/bits/random.tcc (uniform_int_distribution<>::operator())
526 Use common_type; assume _UniformRandomNumberGenerator::result_type
529 * include/bits/stl_algobase.h (__lg(unsigned), __lg(unsigned long),
530 __lg(unsigned long long)): Add.
532 2012-04-13 Paolo Carlini <paolo.carlini@oracle.com>
534 * include/debug/safe_iterator.h (_BeforeBeginHelper<>::
535 _S_Is_Beginnest): Add.
536 * include/debug/forward_list (_BeforeBeginHelper<>::
537 _S_Is_Beginnest): Likewise.
538 (_Safe_iterator<>::_M_is_beginnest): Add.
539 * include/debug/safe_iterator.tcc (_Safe_iterator<>::_M_valid_range):
541 * testsuite/23_containers/forward_list/debug/splice_after.cc:
544 2012-04-12 Paolo Carlini <paolo.carlini@oracle.com>
546 * include/bits/forward_list.h (splice_after(const_iterator,
547 forward_list&), splice_after(const_iterator, forward_list&,
548 consst_iterator), splice_after(const_iterator, forward_list&,
549 const_iterator, const_iterator), merge(forward_list&),
550 merge(forward_list&, _Comp)): Add per C++11 as published (and
552 * include/debug/forward_list: Adjust.
554 * include/bits/forward_list.h (splice_after(const_iterator,
555 forward_list&&, const_iterator)): Only declare.
556 (_M_transfer_after): Remove.
557 (_M_splice_after(const_iterator, forward_list&&)): Change signature.
558 (splice_after(const_iterator, forward_list&&, const_iterator,
559 const_iterator)): Use the latter.
560 * include/bits/forward_list.tcc (splice_after(const_iterator,
561 forward_list&&, const_iterator)): Define here.
562 (_M_splice_after): Define, use throughout.
564 * include/bits/forward_list.h (insert_after(const_iterator,
565 std::initializer_list<_Tp>)): Forward to insert_after(const_iterator,
566 _InputIterator, _InputIterator).
567 * include/bits/forward_list.tcc: Remove definition.
569 * testsuite/23_containers/forward_list/modifiers/6.cc: New.
570 * testsuite/23_containers/forward_list/operations/1.cc: Adjust.
572 * testsuite/23_containers/forward_list/requirements/dr438/
573 assign_neg.cc: Adjust dg-error line number.
574 * testsuite/23_containers/forward_list/requirements/dr438/
575 insert_neg.cc: Likewise.
576 * testsuite/23_containers/forward_list/requirements/dr438/
577 constructor_1_neg.cc: Likewise.
578 * testsuite/23_containers/forward_list/requirements/dr438/
579 constructor_2_neg.cc: Likewise.
581 2012-04-12 Jeffrey Yasskin <jyasskin@google.com>
584 * include/bits/stl_algo.h (__find_if_not): Expose in C++98 mode.
585 (__find_if_not_n): Like __find_if_not, but works on and updates a
586 counted range instead of a bounded range.
587 (stable_partition): Guarantee !__pred(*__first) in call to
588 __stable_partition_adaptive() or __inplace_stable_partition().
589 (__stable_partition_adaptive): Use new precondition to avoid
590 moving/copying objects onto themselves. Guarantee new
591 precondition to recursive calls.
592 (__inplace_stable_partition): Use new precondition to simplify
593 base case, remove __last parameter. Guarantee new precondition to
595 * testsuite/25_algorithms/stable_partition/moveable.cc (test02):
596 Test a sequence that starts with a value matching the predicate.
597 * testsuite/25_algorithms/stable_partition/pr52822.cc: Test
598 vectors, which have a destructive self-move-assignment.
600 2012-04-12 Paolo Carlini <paolo.carlini@oracle.com>
603 * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd):
604 In C++11 mode do not derive from std::unary_function.
605 * include/ext/functional (identity, select1st, select2nd): Adjust.
606 * testsuite/23_containers/unordered_map/requirements/52942.cc: New.
607 * testsuite/23_containers/unordered_set/requirements/52942.cc: Likewise.
609 2012-04-11 Jonathan Wakely <jwakely.gcc@gmail.com>
612 * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Add
613 user-defined destructor.
614 (_Sp_counted_inplace): Likewise.
615 * testsuite/20_util/shared_ptr/cons/52924.cc: New.
616 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
619 2012-04-11 Jonathan Wakely <jwakely.gcc@gmail.com>
621 * testsuite/performance/30_threads/future/polling.cc: Adjust.
623 2012-04-11 Jonathan Wakely <jwakely.gcc@gmail.com>
626 * include/bits/stl_vector.h (vector::operator=(vector&&)): Dispatch
627 to _M_move_assign depending on whether allocator is moved.
628 (vector::_M_move_assign): Add overloaded functions.
629 * testsuite/23_containers/vector/52591.cc: New.
630 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
631 Adjust dg-error line number.
632 * testsuite/23_containers/vector/requirements/dr438/
633 constructor_1_neg.cc:
635 * testsuite/23_containers/vector/requirements/dr438/
636 constructor_2_neg.cc:
638 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
641 2012-04-09 François Dumont <fdumont@gcc.gnu.org>
644 * include/bits/hashtable.h (_Hashtable<>::_M_rehash_aux): Add.
645 (_Hashtable<>::_M_rehash): Use the latter.
646 * testsuite/23_containers/unordered_multimap/insert/52476.cc: New.
647 * testsuite/23_containers/unordered_multiset/insert/52476.cc: New.
649 2012-04-09 Terry Guo <terry.guo@arm.com>
651 Backport from mainline
652 2012-03-28 Terry Guo <terry.guo@arm.com>
654 * testsuite/Makefile.am (TEST_GCC_EXEC_PREFIX): New.
655 * testsuite/Makefile.in: Regenerated.
657 2012-03-30 Jeffrey Yasskin <jyasskin@gcc.gnu.org>
658 Paolo Carlini <paolo.carlini@oracle.com>
661 * include/bits/deque.tcc (emplace): Fix thinko, replace push_front
662 -> emplace_front, and likewise for *_back.
663 * testsuite/23_containers/deque/modifiers/emplace/52799.cc: New.
664 * testsuite/23_containers/list/modifiers/emplace/52799.cc: Likewise.
665 * testsuite/23_containers/vector/modifiers/emplace/52799.cc: Likewise.
667 2012-03-23 David S. Miller <davem@davemloft.net>
669 * config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Update.
671 2012-03-23 Paolo Carlini <paolo.carlini@oracle.com>
673 * include/bits/forward_list.h: Fix comments.
675 2012-03-23 Paweł Sikora <pawel.sikora@agmk.net>
678 * include/Makefile.am (c++config.h): Fix sed rule to not break
679 the _GLIBCXX_EXTERN_TEMPLATE redefinition.
680 * include/Makefile.in: Regenerate.
682 2012-03-22 Jonathan Wakely <jwakely.gcc@gmail.com>
685 * include/debug/safe_iterator.h (_Safe_iterator): Add move
686 constructor and move assignment operator.
687 * testsuite/23_containers/vector/debug/52433.cc: New.
689 2012-03-22 Paolo Carlini <paolo.carlini@oracle.com>
691 * include/std/array (array<>::at(size_type) const): Fix version
692 for undefined __EXCEPTIONS.
694 2012-03-22 Release Manager
696 * GCC 4.7.0 released.
698 2012-03-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
701 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
703 2012-03-09 Andreas Schwab <schwab@linux-m68k.org>
705 * config/locale/gnu/monetary_members.cc
706 (moneypunct<char,true>::_M_initialize_moneypunct): Throw caught
708 (moneypunct<char,false>::_M_initialize_moneypunct): Likewise.
709 * testsuite/22_locale/locale/cons/12352.cc: Also test en_US
712 2012-03-02 Benjamin Kosnik <bkoz@redhat.com>
714 * include/c_global/cstdio: Remove extraneous extern.
715 * include/c_std/cstdio: Same.
717 2012-03-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
719 * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate.
720 * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
721 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
722 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
723 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
725 2012-03-01 Benjamin Kosnik <bkoz@redhat.com>
726 Ramana Radhakrishnan <ramana@gcc.gnu.org>
729 * acinclude.m4 (GLIBCXX_CHECK_STDIO_PROTO): New.
730 * configure.ac: Call it.
731 * configure: Regenerate.
733 * config/os/gnu-linux/os_defines.h: Conditionally undefine
735 * include/c_global/cstdio: Conditionally declare deprecated gets.
736 * include/c_std/cstdio: Same.
738 2012-03-01 Michael Spertus <mike_spertus@symantec.com>
740 * include/tr2/type_traits (typelist): To __reflection_typelist.
741 (first, rest, empty): Remove.
743 2012-03-01 Benjamin Kosnik <bkoz@redhat.com>
745 * testsuite/Makefile.am (CLEANFILES): Add *.gdb.
746 * testsuite/Makefile.in: Regenerate.
748 2012-02-29 H.J. Lu <hongjiu.lu@intel.com>
750 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
752 2012-02-28 Benjamin Kosnik <bkoz@redhat.com>
755 * testsuite/util/testsuite_abi.cc (compare_symbols): Check new
756 symbols added into the latest version. Mark tls entities as
759 2012-02-28 Jakub Jelinek <jakub@redhat.com>
762 * src/Makefile.am (libstdc++-symbols.ver): Only remove comment lines
763 if they are at the beginning of lines (with optional whitespace before
765 * src/Makefile.in: Regenerated.
767 2012-02-27 Jakub Jelinek <jakub@redhat.com>
769 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
770 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
771 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
773 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
774 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
775 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
776 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
777 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
778 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
780 2012-02-27 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
783 * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Remove symvers_renaming.
784 Remove ENABLE_SYMVERS_SOL2.
785 * configure: Regenerate.
786 * src/Makefile.am [ENABLE_SYMVERS] (libstdc++-symbols.ver):
788 [ENABLE_SYMVERS_GNU]: Remove ENABLE_SYMVERS_SOL2 handling.
789 * src/Makefile.in: Regenerate.
791 * config/abi/pre/gnu.ver (GLIBCXX_3.4.5) [!__sun__ && !__svr4__]:
793 _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv.
795 2012-02-25 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
798 * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
799 Require atomic builtins.
800 * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
802 2012-02-23 Jason Merrill <jason@redhat.com>
804 * include/bits/locale_facets.h (class num_get): Undo reordering of
805 do_get virtual functions.
807 2012-02-14 Edward Smith-Rowland <3dw4rd@verizon.net>
809 * testsuite/26_numerics/random/
810 uniform_real_distribution/requirements/typedefs.cc: Check param_type.
811 * testsuite/26_numerics/random/
812 piecewise_constant_distribution/requirements/typedefs.cc: Ditto.
813 * testsuite/26_numerics/random/
814 chi_squared_distribution/requirements/typedefs.cc: Ditto.
815 * testsuite/26_numerics/random/
816 normal_distribution/requirements/typedefs.cc: Ditto.
817 * testsuite/26_numerics/random/
818 uniform_int_distribution/requirements/typedefs.cc: Ditto.
819 * testsuite/26_numerics/random/
820 poisson_distribution/requirements/typedefs.cc: Ditto.
821 * testsuite/26_numerics/random/
822 bernoulli_distribution/requirements/typedefs.cc: Ditto.
823 * testsuite/26_numerics/random/
824 discrete_distribution/requirements/typedefs.cc: Ditto.
825 * testsuite/26_numerics/random/
826 weibull_distribution/requirements/typedefs.cc: Ditto.
827 * testsuite/26_numerics/random/
828 cauchy_distribution/requirements/typedefs.cc: Ditto.
829 * testsuite/26_numerics/random/
830 negative_binomial_distribution/requirements/typedefs.cc: Ditto.
831 * testsuite/26_numerics/random/
832 gamma_distribution/requirements/typedefs.cc: Ditto.
833 * testsuite/26_numerics/random/
834 fisher_f_distribution/requirements/typedefs.cc: Ditto.
835 * testsuite/26_numerics/random/
836 exponential_distribution/requirements/typedefs.cc: Ditto.
837 * testsuite/26_numerics/random/
838 binomial_distribution/requirements/typedefs.cc: Ditto.
839 * testsuite/26_numerics/random/
840 lognormal_distribution/requirements/typedefs.cc: Ditto.
841 * testsuite/26_numerics/random/
842 extreme_value_distribution/requirements/typedefs.cc: Ditto.
843 * testsuite/26_numerics/random/
844 piecewise_linear_distribution/requirements/typedefs.cc: Ditto.
845 * testsuite/26_numerics/random/
846 student_t_distribution/requirements/typedefs.cc: Ditto.
847 * testsuite/26_numerics/random/
848 geometric_distribution/requirements/typedefs.cc: Ditto.
850 2012-02-21 Benjamin Kosnik <bkoz@redhat.com>
853 * config/abi/pre/gnu.ver: Only one local.
854 * config/abi/pre/gnu-versioned-namespace.ver: Same.
856 2012-02-21 Paolo Carlini <paolo.carlini@oracle.com>
858 PR libstdc++/52317 (cont)
859 * include/profile/unordered_map: Ad Library Exception comment.
860 * include/profile/set: Likewise.
861 * include/profile/base.h: Likewise.
862 * include/profile/impl/profiler_list_to_slist.h: Likewise.
863 * include/profile/impl/profiler_container_size.h: Likewise.
864 * include/profile/impl/profiler_vector_size.h: Likewise.
865 * include/profile/impl/profiler_hash_func.h: Likewise.
866 * include/profile/impl/profiler_trace.h: Likewise.
867 * include/profile/impl/profiler_list_to_vector.h: Likewise.
868 * include/profile/impl/profiler_vector_to_list.h: Likewise.
869 * include/profile/impl/profiler.h: Likewise.
870 * include/profile/impl/profiler_state.h: Likewise.
871 * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
872 * include/profile/impl/profiler_algos.h: Likewise.
873 * include/profile/impl/profiler_hashtable_size.h: Likewise.
874 * include/profile/impl/profiler_node.h: Likewise.
875 * include/profile/vector: Likewise.
876 * include/profile/unordered_set: Likewise.
877 * include/profile/map.h: Likewise.
878 * include/profile/map: Likewise.
880 2012-02-21 Paolo Carlini <paolo.carlini@oracle.com>
883 * python/Makefile.am: Update boilerplate license text to GPLv3.
884 * include/profile/unordered_map: Likewise.
885 * include/profile/set: Likewise.
886 * include/profile/base.h: Likewise.
887 * include/profile/impl/profiler_list_to_slist.h: Likewise.
888 * include/profile/impl/profiler_container_size.h: Likewise.
889 * include/profile/impl/profiler_vector_size.h: Likewise.
890 * include/profile/impl/profiler_hash_func.h: Likewise.
891 * include/profile/impl/profiler_trace.h: Likewise.
892 * include/profile/impl/profiler_list_to_vector.h: Likewise.
893 * include/profile/impl/profiler_vector_to_list.h: Likewise.
894 * include/profile/impl/profiler.h: Likewise.
895 * include/profile/impl/profiler_state.h: Likewise.
896 * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
897 * include/profile/impl/profiler_algos.h: Likewise.
898 * include/profile/impl/profiler_hashtable_size.h: Likewise.
899 * include/profile/impl/profiler_node.h: Likewise.
900 * include/profile/vector: Likewise.
901 * include/profile/unordered_set: Likewise.
902 * include/profile/map.h: Likewise.
903 * include/profile/map: Likewise.
904 * testsuite/21_strings/basic_string/numeric_conversions/
905 wchar_t/dr1261.cc: Likewise.
906 * testsuite/21_strings/basic_string/numeric_conversions/
907 char/dr1261.cc: Likewise.
908 * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
910 2012-02-20 Paolo Carlini <paolo.carlini@oracle.com>
913 * src/c++98/tree.cc (local_Rb_tree_increment,
914 local_Rb_tree_decrement): Add.
915 (_Rb_tree_increment(const _Rb_tree_node_base*),
916 _Rb_tree_decrement(const _Rb_tree_node_base*)): Use the latter.
917 (_Rb_tree_increment(_Rb_tree_node_base*),
918 _Rb_tree_decrement(_Rb_tree_node_base*)): New.
920 2012-02-20 Paolo Carlini <paolo.carlini@oracle.com>
923 * include/bits/hashtable_policy.h (_Equality_base<, true,>::
924 _M_equal(const _Hashtable&)): Compare values with operator==.
925 * testsuite/23_containers/unordered_set/operators/52309.cc: New.
927 2012-02-17 Benjamin Kosnik <bkoz@redhat.com>
929 PR libstdc++/51798 continued.
930 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Grep for
931 __atomic_, not __sync.
932 * configure: Regenerated.
934 2012-02-17 Benjamin Kosnik <bkoz@redhat.com>
937 * acinclude.m4 (GLIBCXX_ENABLE_WERROR): New.
938 (GLIBCXX_EXPORT_FLAGS): Add -Wabi to WARN_FLAGS
939 * configure.ac: Use it.
940 * fragment.am: Set WERROR_FLAG conditionally on --disable-werror.
941 * configure: Regenerate.
942 * python/Makefile.in: Same.
944 * doc/Makefile.in: Same.
945 * include/Makefile.in: Same.
946 * po/Makefile.in: Same.
947 * python/Makefile.in: Same.
948 * src/Makefile.in: Same.
949 * src/c++11/Makefile.in: Same.
950 * src/c++98/Makefile.in: Same.
951 * testsuite/Makefile.in: Same.
953 2012-02-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
956 * acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Handle
957 --enable-libstdcxx-threads.
958 Disable on Solaris 8/9 with symbol versioning.
959 * configure.ac (GLIBCXX_CHECK_GTHREADS): Move after
960 GLIBCXX_ENABLE_SYMVERS.
961 * configure: Regenerate.
962 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads): Explain.
964 2012-02-15 DJ Delorie <dj@redhat.com>
966 * src/c++98/locale.cc (locale::facet::_S_get_c_locale): Fix typo.
968 2012-02-15 Benjamin Kosnik <bkoz@redhat.com>
971 * acinclude.m4 (GLIBCXX_ENABLE_PYTHON): New.
972 * configure.ac: Use it.
973 * python/Makefile.am: Same.
974 * configure: Regenerate.
975 * python/Makefile.in: Regenerate.
977 * doc/Makefile.in: Same.
978 * include/Makefile.in: Same.
979 * po/Makefile.in: Same.
980 * src/Makefile.in: Same.
981 * src/c++11/Makefile.in: Same.
982 * src/c++98/Makefile.in: Same.
983 * testsuite/Makefile.in: Same.
985 2012-02-14 Jonathan Wakely <jwakely.gcc@gmail.com>
987 * 30_threads/thread/native_handle/typesizes.cc: Do not run on cygwin.
989 2012-02-14 Tom Tromey <tromey@redhat.com>
991 * testsuite/libstdc++-prettyprinters/cxx11.cc (main): Add new
993 * python/libstdcxx/v6/printers.py (Tr1HashtableIterator.__init__):
995 (Tr1HashtableIterator.update): Remove.
996 (Tr1HashtableIterator.next): Rewrite.
998 2012-02-13 Benjamin Kosnik <bkoz@redhat.com>
1000 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
1001 * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
1003 2012-02-13 Richard Henderson <rth@redhat.com>
1005 PR libstdc++/51798 continued.
1006 * include/bits/shared_ptr_base.h
1007 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock): Hoist initial load
1008 outside compare_exchange loop.
1009 * include/tr1/shared_ptr.h: Same.
1010 * include/parallel/compatibility.h (__compare_and_swap_32): Use strong
1011 version of compare_exchange.
1012 (__compare_and_swap_64): Same.
1013 * include/profile/impl/profiler_state.h (__gnu_profile::__turn): Same.
1014 * libsupc++/guard.cc (__cxa_guard_acquire): Same.
1016 2012-02-10 Benjamin Kosnik <bkoz@redhat.com>
1017 Jonathan Wakely <jwakely.gcc@gmail.com>
1019 PR libstdc++/51798 continued.
1020 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Use __atomic_*
1021 builtins instead of __sync_* builtins for atomic functionality.
1022 * include/bits/shared_ptr_base.h: Same.
1023 * include/parallel/compatibility.h: Same.
1024 * include/profile/impl/profiler_state.h: Same.
1025 * include/tr1/shared_ptr.h: Same.
1026 * libsupc++/eh_ptr.cc: Same.
1027 * libsupc++/eh_throw.cc: Same.
1028 * libsupc++/eh_tm.cc: Same.
1029 * libsupc++/guard.cc: Same.
1030 * configure: Regenerated.
1031 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
1032 * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
1034 2012-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1037 * config/os/osf/ctype_base.h,
1038 config/os/osf/ctype_configure_char.cc,
1039 config/os/osf/ctype_inline.h, config/os/osf/error_constants.h:
1040 Copy from config/os/generic.
1041 * config/os/osf/os_defines.h: Likewise.
1042 (_GTHREAD_USE_MUTEX_INIT_FUNC, _GTHREAD_USE_COND_INIT_FUNC):
1044 * configure.host <osf*>: Use os/osf for os_include_dir.
1046 2012-02-10 Uros Bizjak <ubizjak@gmail.com>
1048 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Regenerated.
1050 2012-02-09 Jonathan Wakely <jwakely.gcc@gmail.com>
1052 * doc/xml/manual/documentation_hacking.xml: Fix invalid attribute.
1054 2012-02-08 Jonathan Wakely <jwakely.gcc@gmail.com>
1056 * doc/xml/manual/status_cxx2011.xml: Update C++11 status table.
1058 2012-02-07 Benjamin Kosnik <bkoz@redhat.com>
1060 * doc/doxygen/user.cfg.in: Update to doxygen 1.7.6.1.
1061 * doc/xml/manual/documentation_hacking.xml: Update.
1063 2012-02-07 Jonathan Wakely <jwakely.gcc@gmail.com>
1065 * testsuite/30_threads/call_once/39909.cc: Remove duplicate target
1067 * testsuite/30_threads/call_once/49668.cc: Likewise.
1068 * testsuite/30_threads/call_once/call_once1.cc: Likewise.
1069 * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
1070 * testsuite/30_threads/mutex/cons/1.cc: Likewise.
1071 * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
1072 * testsuite/30_threads/mutex/lock/1.cc: Likewise.
1073 * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
1074 * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
1075 * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
1076 * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
1077 * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
1078 * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
1079 * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
1080 * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
1081 * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
1082 * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
1083 * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
1084 * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
1085 * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
1086 * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
1087 * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
1088 * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
1089 * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
1091 2012-02-07 Jonathan Wakely <jwakely.gcc@gmail.com>
1094 * include/std/mutex (__mutex_base::~__mutex_base): Declare noexcept.
1095 * src/c++11/condition_variable.cc (condition_variable): Use macro for
1096 initializer function.
1099 * config/os/bsd/darwin/os_defines.h: Disable static initializer for
1102 2012-02-06 Jonathan Wakely <jwakely.gcc@gmail.com>
1105 * src/c++11/future.cc: Add explicit instantiation.
1107 2012-02-06 François Dumont <fdumont@gcc.gnu.org>
1109 * include/debug/safe_iterator.h
1110 (_Safe_iterator::_M_before_dereferenceable): Avoid the expensive
1111 creation of a _Safe_iterator instance to do the check.
1113 2012-02-05 Jonathan Wakely <jwakely.gcc@gmail.com>
1116 * include/std/future (__future_base::_Async_state_common): Define
1117 destructor inline for targets without TLS.
1118 * src/c++11/future.cc (__future_base::_Async_state_common): Only
1119 define destructor for TLS targets.
1121 2012-02-05 Jonathan Wakely <jwakely.gcc@gmail.com>
1124 * python/libstdcxx/v6/printers.py (StdPointerPrinter): Rename to...
1125 (SharedPointerPrinter): This. Also show weak count.
1126 * testsuite/libstdc++-prettyprinters/shared_ptr.cc: New.
1128 2012-02-05 Jonathan Wakely <jwakely.gcc@gmail.com>
1130 * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Modify to
1131 PASS instead of XFAIL.
1133 2012-02-05 Jeffrey Yasskin <jyasskin@gcc.gnu.org>
1134 Paolo Carlini <paolo.carlini@oracle.com>
1137 * include/std/limits (__glibcxx_min): Fix to avoid undefined behavior.
1139 2012-02-03 Benjamin Kosnik <bkoz@redhat.com>
1142 * testsuite/29_atomics/atomic/cons/49445.cc: Add.
1144 2012-02-03 Benjamin Kosnik <bkoz@redhat.com>
1147 * include/bits/atomic_base.h (atomic<_Tp*>): Fix offsets.
1148 * testsuite/29_atomics/atomic/operators/51811.cc: New.
1149 * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: New.
1151 2012-02-03 Jakub Jelinek <jakub@redhat.com>
1153 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
1154 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
1155 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
1157 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
1158 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
1159 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
1160 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
1161 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
1162 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1164 2012-02-02 Benjamin Kosnik <bkoz@redhat.com>
1167 * src/c++11/Makefile.am (toolexeclib_LTLIBRARIES,
1168 libc__11_la_SOURCES): Remove.
1169 * src/c++11/Makefile.in: Regenerate.
1170 * src/c++98/Makefile.am (toolexeclib_LTLIBRARIES,
1171 libc__98_la_SOURCES): Remove.
1172 * src/c++98/Makefile.in: Regenerate.
1174 2012-02-01 Jonathan Wakely <jwakely.gcc@gmail.com>
1177 * include/std/future (__future_base::_State_base::wait()): Use lambda
1178 expression for predicate and remove redundant test.
1179 (__future_base::_State_base::wait_for()): Return future_status and
1180 use lambda expression for predicate.
1181 (__future_base::_State_base::wait_until()): Likewise.
1182 (__basic_future::wait_for(), __basic_future::wait_until()): Likewise.
1183 (__future_base::_Async_state): Replace with _Async_state_common
1184 class for non-dependent functionality and _Async_state_impl class
1185 template for dependent functionality.
1186 (__future_base::_Async_state_common::_M_join): Serialize attempts to
1188 (__future_base::_Async_state_common::_M_run_deferred): Join.
1189 (__future_base::_Async_state::_M_do_run): Replace with lambda.
1190 * src/c++11/future.cc (__future_base::_Async_state_common): Define
1191 destructor, so key function is in the library.
1192 * config/abi/pre/gnu.ver: Add exports for ~_Async_state_common.
1193 * testsuite/30_threads/packaged_task/members/get_future.cc: Expect
1194 future_status return instead of bool.
1195 * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
1196 * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
1197 * testsuite/30_threads/future/members/wait_until.cc: Likewise.
1198 * testsuite/30_threads/future/members/wait_for.cc: Likewise.
1199 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
1200 * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
1201 * testsuite/30_threads/promise/members/swap.cc: Likewise.
1203 2012-01-30 Tom Tromey <tromey@redhat.com>
1206 * testsuite/libstdc++-prettyprinters/debug.cc: New file.
1207 * testsuite/lib/gdb-test.exp (regexp-test): New proc.
1208 (note-test): Update.
1209 (gdb-test): Handle regexp tests. Add some logging.
1210 * testsuite/libstdc++-prettyprinters/simple.cc: Compile with -O0.
1211 (placeholder, use): Remove.
1212 (main): Add tests for deque, list, map, and set iterators. Add
1213 tests for slist and slist iterator.
1214 * testsuite/libstdc++-prettyprinters/48362.cc (main): Handle __7
1216 * python/libstdcxx/v6/printers.py (StdListPrinter.children): Use
1217 the type's _Node typedef.
1218 (StdListIteratorPrinter.to_string): Change how node type is
1220 (StdSlistPrinter.children): Use the type's _Node typedef.
1221 (StdSlistIteratorPrinter.to_string): Likewise.
1222 (StdRbtreeIteratorPrinter.to_string): Use the type's _Link_type
1224 (StdMapPrinter.children): Change how the node's type is computed.
1225 (StdSetPrinter.children): Likewise.
1226 (StdForwardListPrinter.children): Use the type's _Node typedef.
1227 (Printer.add_version): New method.
1228 (Printer.add_container): New method.
1229 (build_libstdcxx_dictionary): Handle __7 and __cxx1998
1231 (find_type): New function.
1233 2012-01-27 Paolo Carlini <paolo.carlini@oracle.com>
1236 * include/bits/random.h (linear_congruential_generator): Add
1237 static_assert preventing instantiation for values of 'a' and 'm'
1238 currently handled incorrectly by _Mod::__calc.
1239 * include/bits/random.tcc (seed_seq::generate): Avoid unsafe
1240 uses of _Mod::__calc.
1242 2012-01-27 Jakub Jelinek <jakub@redhat.com>
1245 * config/cpu/generic/atomicity_builtins/atomicity.h
1246 (__exchange_and_add, __atomic_add): Use __atomic_fetch_add
1247 with __ATOMIC_ACQ_REL semantics instead of __sync_fetch_and_add.
1248 * include/ext/atomicity.h (__exchange_and_add, __atomic_add):
1251 2011-01-27 Rafael Avila de Espindola <rafael.espindola@gmail.com>
1253 * libsupc++/typeinfo: Correctly match #pragma GCC visibility
1254 pop with #pragma GCC visibility push.
1256 2012-01-27 Benjamin Kosnik <bkoz@redhat.com>
1257 Matthias Klose <doko@ubuntu.com>
1259 * configure.ac (GLIBCXX_ENABLE_DEBUG_FLAGS): Use -gdwarf-4 -g3 -O0.
1260 * configure.in: Regenerated.
1261 * src/Makefile.am (all-once, install-data-once): New rules.
1262 (all-local, install-data-local): Use them.
1263 (build-debug, install-debug): Tweak.
1264 * src/Makefile.in: Regenerate.
1266 2012-01-27 Richard Henderson <rth@redhat.com>
1268 * include/bits/atomic_base.h (__atomic_flag_base): Define _M_i
1269 based on the value of __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
1270 (ATOMIC_FLAG_INIT): Initialize with 0, not false.
1271 (atomic_flag::atomic_flag): Use __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
1273 2012-01-26 Jakub Jelinek <jakub@redhat.com>
1276 * src/c++98/Makefile.am (libc__98_la_SOURCES,
1277 libc__98convenience_la_SOURCES): Remove $(inst_sources).
1278 * src/c++98/Makefile.in: Regenerated.
1280 2012-01-25 Richard Sandiford <rdsandiford@googlemail.com>
1282 * testsuite/20_util/system_clock/1.cc: Add dg-require-time.
1283 * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
1284 * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
1285 * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
1286 * testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Add
1288 * testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise.
1289 * testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise.
1290 * testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise.
1291 * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-fstream.cc:
1293 * testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
1295 2012-01-25 Matthias Klose <doko@ubuntu.com>
1297 * testsuite/30_threads/condition_variable_any/requirements: Remove
1300 2012-01-23 Benjamin Kosnik <bkoz@redhat.com>
1302 * src/Makefile.am (libstdc++convenience.la): Correct stamp rule, copy.
1303 * src/Makefile.in: Regenerate.
1305 2012-01-23 Benjamin Kosnik <bkoz@redhat.com>
1308 Add libc++98convenience.la, libc++11convenience.la.
1309 * src/c++98: New directory.
1310 * src/c++11: New directory.
1311 * acinclude.m4: (GLIBCXX_CONFIGURE): Add src-c++98, src-c++11.
1312 * configure: Regenerated.
1313 * Makefile.am (hosted_source): Add src-c++98, src-c++11 to SUBDIRS.
1314 * Makefile.in: Regenerate.
1315 * libsupc++/Makefile.am (AM_CXXFLAGS): USe XTEMPLATE_FLAGS for
1316 -fno-implicit-templates.
1317 * libsupc++/Makefile.in: Regenerate.
1318 * src/Makefile.am (inst_sources): Move... C++11 files into
1319 separate directory for libstdc++11convenience.la. Files are:
1320 fstream-inst.cc, string-inst.cc, wlocale-inst.cc, wstring-inst.cc).
1321 (sources): Move C++11 files. Files are: compatibility-c++0x.cc,
1322 compatibility-atomic-c++0x.cc, debug.cc, functexcept.cc,
1323 functional.cc, hash_c++0x.cc, hashtable_c++0x.cc, limits.cc,
1324 system_error.cc, placeholders.cc, regex.cc, shared_ptr.cc,
1325 mutex.cc, condition_variable.cc, chrono.cc, thread.cc, future.cc.
1326 (libstdc++convenience.la): Add new target.
1327 (SUBDIRS): Add c++11, c++98.
1328 * src/Makefile.in: Regenerate.
1329 * src/c++11/Makefile.am: New.
1330 * src/c++11/Makefile.in: Generate.
1331 * src/c++98/Makefile.am: New, C++98 files.
1332 * src/c++98/Makefile.in: Generate.
1334 2012-01-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1337 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on
1338 32-bit Solaris 10/x86.
1339 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
1341 2012-01-21 Jonathan Wakely <jwakely.gcc@gmail.com>
1344 * testsuite/30_threads/*: Add powerpc-ibm-aix* to target selectors.
1346 2012-01-19 Jakub Jelinek <jakub@redhat.com>
1349 * include/bits/hashtable.h
1350 (_Hashtable<>::erase(const_iterator, const_iterator)): Also update
1351 _M_buckets[__n_bkt] if __is_bucket_begin.
1352 * testsuite/23_containers/unordered_multimap/erase/51845-multimap.cc:
1355 2012-01-18 Benjamin Kosnik <bkoz@redhat.com>
1357 * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): Fix quoting.
1359 2012-01-18 Benjamin Kosnik <bkoz@redhat.com>
1361 * configure.ac: Move epub checks...
1362 * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): ...here, use
1363 test -f instead of AC_CHECK_FILES.
1365 2012-01-18 François Dumont <fdumont@gcc.gnu.org>
1366 Roman Kononov <roman@binarylife.net>
1369 * include/bits/hashtable.h (_Hashtable<>::_M_insert(_Arg, false_type)):
1370 Do not keep a reference to a potentially moved instance.
1371 * testsuite/23_containers/unordered_multiset/insert/51866.cc: New.
1372 * testsuite/23_containers/unordered_multimap/insert/51866.cc: New.
1374 2012-01-17 Benjamin Kosnik <bkoz@redhat.com>
1376 * doc/html/*: Regenerate.
1378 2012-01-17 Benjamin Kosnik <bkoz@redhat.com>
1380 * configure.ac (BUILD_EPUB): Adjust for epub3.
1381 * configure: Regenerate.
1382 * Makefile.in: Same.
1383 * doc/Makefile.am (stamp-epub-docbook): Update for epub3.
1384 * doc/Makefile.in: Regenerate.
1385 * include/Makefile.in: Same.
1386 * libsupc++/Makefile.in: Same.
1387 * po/Makefile.in: Same.
1388 * python/Makefile.in: Same.
1389 * src/Makefile.in: Same.
1390 * testsuite/Makefile.in: Same.
1392 * doc/xml/manual/documentation_hacking.xml: Update.
1394 2012-01-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1397 * configure.host (irix6.5*): Add -lpthread to OPT_LDFLAGS.
1399 2012-01-14 Jonathan Wakely <jwakely.gcc@gmail.com>
1401 * include/bits/stl_iterator.h (reverse_iterator): Doxygen comments.
1403 2012-01-13 François Dumont <fdumont@gcc.gnu.org>
1405 * include/bits/hashtable_policy.h (_Hash_node_base): New, use it as
1407 (_Hash_node<Value, true>, _Hash_node<Value, false>): ... those.
1408 * include/bits/hashtable.h (_Hashtable): Replace _M_begin_bucket_index
1409 by _M_before_begin. Review implementation so that we do not need to
1410 look for previous non-empty bucket when inserting nodes.
1412 2012-01-09 Kai Tietz <ktietz@redhat.com>
1414 PR libstc++/51673 part 2
1415 * config/abi/pre/gnu-versioned-namespace.ver: Adjusted new/delete
1416 operators signature for LLP64 size_t, and adjusted signatures for
1417 mt-allocator using size_t.
1419 2012-01-09 Benjamin Kosnik <bkoz@redhat.com>
1421 PR libstc++/51673 part 1
1422 * config/abi/pre/gnu-versioned-namespace.ver: Sync cxxabi symbols
1425 2012-01-09 Benjamin Kosnik <bkoz@redhat.com>
1427 * fragment.am (WARN_CXXFLAGS): Add -Wabi.
1428 * Makefile.in: Regenerate.
1429 * doc/Makefile.in: Same.
1430 * include/Makefile.in: Same.
1431 * libsupc++/Makefile.in: Same.
1432 * src/Makefile.in: Same.
1433 * testsuite/Makefile.in: Same.
1434 * po/Makefile.in: Same.
1435 * python/Makefile.in: Same.
1437 2012-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
1439 * python/libstdcxx/v6/printers.py (StdForwardListPrinter): Add.
1440 * testsuite/libstdc++-prettyprinters/cxx11.cc: New.
1442 2012-01-06 Jason Merrill <jason@redhat.com>
1444 * testsuite/abi/demangle/regression/cw-16.cc (main): Adjust
1445 expected demangling.
1447 2012-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
1450 * doc/xml/manual/debug.xml: Suggest using symbol interposition
1451 to override symbols using annotation macros.
1453 2012-01-05 François Dumont <fdumont@gcc.gnu.org>
1455 * include/bits/hashtable_policy.h (_Hashtable_base<>::_M_eq()):
1456 protected rather than private, use it...
1457 * include/bits/hashtable.h (_Hashtable<>::key_eq()): ... here.
1458 * testsuite/23_containers/unordered_set/observers.cc: New.
1459 * testsuite/23_containers/unordered_multiset/observers.cc: New.
1460 * testsuite/23_containers/unordered_map/observers.cc: New.
1461 * testsuite/23_containers/unordered_multimap/observers.cc: New.
1463 2012-01-03 François Dumont <fdumont@gcc.gnu.org>
1465 * include/bits/hashtable_policy.h (_Ebo_helper<>): Rename to the more
1466 specific _Hashtable_ebo_helper. Hide this implementation detail thanks
1467 to private inheritance.
1469 2012-01-03 Paolo Carlini <paolo.carlini@oracle.com>
1472 * testsuite/23_containers/map/element_access/39901.cc: New.