aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/ChangeLog
AgeCommit message (Collapse)AuthorFilesLines
2012-06-01* doc/xml/manual/status_cxx2011.xml: Correct C++11 status table.Jonathan Wakely1-0/+4
From-SVN: r188095
2012-05-31re PR libstdc++/53543 ([unordered_map] conflict with __is_convertible clang ↵Benjamin Kosnik1-0/+6
intrinsic) 2012-05-31 Benjamin Kosnik <bkoz@redhat.com> PR libstdc++/53543 * include/bits/hashtable_policy.h (_Insert::__is_convertible): Rename to __is_conv to avoid clash with clang built-in. From-SVN: r188088
2012-05-292012-05-29 François Dumont <fdumont@gcc.gnu.org>François Dumont1-0/+7
* include/bits/stl_tempbuf.h (__uninitialized_construct_buf) (__uninitialized_construct_buf_dispatch<>::__ucr): Fix to work with iterator returning rvalue. * testsuite/25_algorithms/stable_sort/3.cc: New. From-SVN: r187985
2012-05-28re PR c++/53503 ([C++0x] unexpected AST of kind ltgt_expr)Paolo Carlini1-0/+5
gcc/cp 2012-05-28 Paolo Carlini <paolo.carlini@oracle.com> PR c++/53503 * semantics.c (potential_constant_expression_1): Handle LTGT_EXPR. libstdc++-v3 2012-05-28 Paolo Carlini <paolo.carlini@oracle.com> PR c++/53503 * testsuite/26_numerics/headers/cmath/53503.cc: New. From-SVN: r187928
2012-05-22PR c++/53322 - -Wunused-local-typedefs is not enabled by Wall or WunusedDodji Seketeli1-0/+7
As the audit trail of this shows, -Wunused-local-typedefs is not turned on by -Wunused after all. Sigh. Now that we have the EnabledBy construct for the *.opt files, it's more precise and concise to use that to make -Wunused-local-typedefs be triggered by -Wunused. I have changed the gcc+.dg/warn/Wunused-local-typedefs.C test case to make it use -Wunused instead of -Wunused-local-typedefs. I had to adjust it to avoid the warnings due to the other -W* options triggered by -Wunused there. While testing the compiler, it turned out that some local typedefs were not being used when the experimental "Concepts" support is turned off, in the libstdc++ test suite. I also had to remove some obvious useless local typedef usage in the fortran front-end. Fixed thus. Bootstrapped and tested on x86_64-unknown-linux-gnu against trunk. gcc/c-family/ PR c++/53322 * c.opt (Wunused-local-typedefs): Use EnabledBy(Wunused). libstdc++-v3/ PR c++/53322 * include/bits/stl_algobase.h (lower_bound) (lexicographical_compare): Do not declare unused local typedefs here when Concepts are turned off. gcc/fortran/ PR c++/53322 * f95-lang.c (gfc_init_builtin_functions): Remove the unused typedef builtin_type. gcc/testsuite/ PR c++/53322 * g++.dg/warn/Wunused-local-typedefs.C: Adjust to use -Wunused instead of -Wunused-local-typedefs. From-SVN: r187757
2012-05-219780-2.cc: Avoid -Wall warnings.Paolo Carlini1-0/+22
2012-05-21 Paolo Carlini <paolo.carlini@oracle.com> * testsuite/22_locale/num_put/put/char/9780-2.cc: Avoid -Wall warnings. * testsuite/29_atomics/atomic/cons/49445.cc: Likewise. * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: * Likewise. * testsuite/23_containers/unordered_map/observers.cc: Likewise. * testsuite/23_containers/unordered_map/erase/1.cc: Likewise. * testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise. * testsuite/23_containers/unordered_multimap/erase/2.cc: Likewise. * testsuite/23_containers/unordered_multimap/insert/53115.cc: Likewise. * testsuite/23_containers/unordered_multimap/observers.cc: Likewise. * testsuite/23_containers/vector/debug/alloc_prop.cc: Likewise. * testsuite/23_containers/unordered_set/observers.cc: Likewise. * testsuite/23_containers/unordered_set/erase/1.cc: Likewise. * testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise. * testsuite/23_containers/unordered_multiset/erase/2.cc: Likewise. * testsuite/23_containers/unordered_multiset/insert/53115.cc: Likewise. * testsuite/23_containers/unordered_multiset/insert/multiset_range.cc: * Likewise. * testsuite/23_containers/unordered_multiset/observers.cc: Likewise. From-SVN: r187751
2012-05-21re PR c++/53361 (Could not convert ‘{0, 0, 0}’ from ‘<brace-enclosed ↵Paolo Carlini1-0/+5
initializer list>’ to ‘std::array<unsigned int, 3ul>’) 2012-05-21 Paolo Carlini <paolo.carlini@oracle.com> PR c++/53361 * testsuite/23_containers/array/cons/53361.cc: New. From-SVN: r187746
2012-05-17re PR c++/44516 (improve error message when no matching operator)Paolo Carlini1-0/+6
gcc/cp 2012-05-17 Paolo Carlini <paolo.carlini@oracle.com> PR c++/44516 * typeck.c (build_x_array_ref, build_x_conditional_expr, build_x_compound_expr, build_x_modify_expr): Add location_t parameter. (finish_class_member_access_expr, build_x_indirect_ref, build_x_binary_op, build_x_compound_expr_from_list, build_x_compound_expr_from_vec): Adjust callers. * tree.c (build_min_nt_loc): New. (build_min_nt): Remove. * typeck2.c (build_x_arrow): Adjust callers. * pt.c (tsubst_qualified_id, tsubst_omp_for_iterator, tsubst_copy_and_build): Likewise. * semantics.c (finish_mem_initializers, handle_omp_for_class_iterator, finish_omp_atomic): Likewise. * decl2.c (grok_array_decl, build_anon_union_vars): Adjust. * parser.c (cp_parser_question_colon_clause, cp_parser_assignment_expression, cp_parser_expression, cp_parser_template_id, cp_parser_omp_for_loop): Likewise. * cp-tree.h: Update. gcc/testsuite 2012-05-17 Paolo Carlini <paolo.carlini@oracle.com> PR c++/44516 * g++.dg/parse/error48.C: New. * g++.dg/template/crash89.C: Adjust dg-error line numbers. * g++.old-deja/g++.robertl/eb109.C: Add column info to dg-error string. libstdc++ 2012-05-17 Paolo Carlini <paolo.carlini@oracle.com> PR c++/44516 * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust dg-error line number. From-SVN: r187627
2012-05-16Regenerate configure files for libtool.m4 changeH.J. Lu1-0/+4
boehm-gc/ * configure: Regenerated. gcc/ * configure: Regenerated. libatomic/ * configure: Regenerated. libffi/ * configure: Regenerated. libgfortran/ * configure: Regenerated. libgomp/ * configure: Regenerated. libitm/ * configure: Regenerated. libjava/classpath/ * configure: Regenerated. libjava/ * configure: Regenerated. libmudflap/ * configure: Regenerated. libobjc/ * configure: Regenerated. libquadmath/ * configure: Regenerated. libssp/ * configure: Regenerated. libstdc++-v3/ * configure: Regenerated. lto-plugin/ * configure: Regenerated. zlib/ * configure: Regenerated. From-SVN: r187616
2012-05-15Add name of the functions impacted by the patch.François Dumont1-2/+7
From-SVN: r187551
2012-05-15re PR libstdc++/53339 (unordered_map::iterator requires Value to be complete ↵Paolo Carlini1-0/+19
type) 2012-05-15 Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/53339 * include/bits/hashtable_policy.h (__detail::_Identity, __detail::_Select1st): Add. (_Map_base, _Hashtable_base): Use the latter, adjust parameters. * include/bits/hashtable.h (_Hashtable::__key_extract): Adjust. * include/bits/unordered_set.h (__uset_hashtable, __umset_hashtable): Likewise. * include/bits/unordered_map.h (__umap_hashtable, __ummap_hashtable): Likewise. * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd) Unconditionally derive from unary_function. * include/ext/functional (identity, select1st, select2nd): Remove #ifdef __GXX_EXPERIMENTAL_CXX0X__ bits. * testsuite/23_containers/unordered_map/requirements/53339.cc: New. * testsuite/23_containers/unordered_multimap/requirements/ 53339.cc: Likewise. From-SVN: r187515
2012-05-11re PR libstdc++/53263 (priority_queue is very slow if -D_GLIBCXX_DEBUG is used)François Dumont1-0/+9
2012-05-11 François Dumont <fdumont@gcc.gnu.org> PR libstdc++/53263 * include/debug/safe_iterator.h (__gnu_debug::__base): Move... * include/debug/functions.h: ... Here. Add debug function overloads to perform checks on normal iterators when possible. * include/debug/macros.h (__glibcxx_check_heap) (__glibcxx_check_heap_pred): Use __gnu_debug::__base on iterator range. From-SVN: r187414
2012-05-10random.tcc (seed_seq::generate): Cast max() operands to size_t to ensure a ↵DJ Delorie1-0/+7
template match. * include/bits/random.tcc (seed_seq::generate): Cast max() operands to size_t to ensure a template match. * include/std/bitset (_M_copy_from_ptr): Cast min() operands to size_t to ensure a template match. From-SVN: r187376
2012-05-03testsuite_flags.in (cxxflags): Remove -ftrack-macro-expansion=0.Benjamin Kosnik1-0/+5
2012-05-03 Benjamin Kosnik <bkoz@redhat.com> * scripts/testsuite_flags.in (cxxflags): Remove -ftrack-macro-expansion=0. From-SVN: r187117
2012-05-03faq.xml: Update outdated allocator documentation.Jonathan Wakely1-1/+9
* doc/xml/faq.xml: Update outdated allocator documentation. * doc/xml/manual/allocator.xml: Likewise. * doc/xml/manual/debug.xml: Likewise. * doc/xml/manual/evolution.xml: Likewise. * doc/xml/manual/using.xml: Likewise. From-SVN: r187068
2012-05-02re PR libstdc++/44015 (template parameters not documented)Benjamin Kosnik1-0/+27
2012-05-02 Benjamin Kosnik <bkoz@redhat.com> PR libstdc++/44015 * include/bits/basic_ios.h: Add tparam markup for * doxygen. include/bits/basic_string.h: Same. * include/bits/forward_list.h: Same. * include/bits/stl_bvector.h: Same. * include/bits/stl_deque.h: Same. * include/bits/stl_list.h: Same. include/bits/stl_map.h: * Same. include/bits/stl_multimap.h: Same. * include/bits/stl_multiset.h: Same. * include/bits/stl_pair.h: Same. * include/bits/stl_queue.h: Same. * include/bits/stl_set.h: Same. * include/bits/stl_stack.h: Same. * include/bits/stl_vector.h: Same. * include/bits/unordered_map.h: Same. * include/bits/unordered_set.h: Same. include/std/array: * Same. include/std/atomic: Same. include/std/fstream: * Same. include/std/istream: Same. include/std/ostream: * Same. include/std/sstream: Same. * include/std/streambuf: Same. * testsuite/23_containers/deque/requirements/dr438/*: Adjust line numbers. * testsuite/23_containers/list/requirements/dr438/*: Same. * testsuite/23_containers/vector/requirements/dr438/*: Same. From-SVN: r187066
2012-05-02crossconfig.m4: Since we know that all TPF builds are cross- builds and ↵DJ Delorie1-0/+7
cannot run... * crossconfig.m4: Since we know that all TPF builds are cross- builds and cannot run configuration-time link tests, do not allow it; just go with known supported linker options. * configure: Regenerate (called as GLIBCXX_CROSSCONFIG). From-SVN: r187062
2012-05-02hashtable_policy.h: Correct namepace nesting for _Hashtable forward declaration.Benjamin Kosnik1-0/+5
2012-05-02 Benjamin Kosnik <bkoz@redhat.com> * include/bits/hashtable_policy.h: Correct namepace nesting for _Hashtable forward declaration. From-SVN: r187052
2012-05-01re PR libstdc++/53115 (_Hashtable::_M_rehash_aux(false_type) is broken)François Dumont1-0/+9
2012-05-01 François Dumont <fdumont@gcc.gnu.org> PR libstdc++/53115 * include/bits/hashtable.h (_Hashtable<>::_M_rehash_aux(size_type, false_type)): Fix buckets after insertion of several equivalent elements. * testsuite/23_containers/unordered_multiset/insert/53115.cc: New. * testsuite/23_containers/unordered_multimap/insert/53115.cc: New. From-SVN: r187025
2012-04-29re PR libstdc++/51795 (linear_congruential_engine doesn't work correctly)Marc Glisse1-0/+15
2012-04-29 Marc Glisse <marc.glisse@inria.fr> Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/51795 * include/bits/stl_algobase.h (__lg<>(_Size)): Remove. (__lg(int), __lg(unsigned), __lg(long), __lg(unsigned long), __lg(long long), __lg(unsigned long long)): Define constexpr. * include/bits/random.h (_Mod<>): Overcome Schrage's algorithm limitations. (__mod): Adjust. (linear_congruential): Remove FIXME static_assert. * include/bits/random.tcc (_Mod<>): Adjust. * testsuite/26_numerics/random/linear_congruential_engine/operators/ 51795.cc: New. Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com> From-SVN: r186948
2012-04-29functional (function::function(F)): LWG 2132: Disable constructor if ↵Jonathan Wakely1-0/+6
argument isn't callable. * include/std/functional (function::function(F)): LWG 2132: Disable constructor if argument isn't callable. * testsuite/20_util/function/cons/callable.cc: New. From-SVN: r186947
2012-04-29re PR libstdc++/22200 (numeric_limits<signed>::is_modulo is inconsistent ↵Marc Glisse1-2/+9
with gcc) 2012-04-29 Marc Glisse <marc.glisse@inria.fr> PR libstdc++/22200 * include/std/limits (numeric_limits<>::is_modulo): False for signed types. From-SVN: r186944
2012-04-26hashtable.h: Adjust doxygen markup for base classes.Benjamin Kosnik1-0/+5
2012-04-25 Benjamin Kosnik <bkoz@redhat.com> * include/bits/hashtable.h: Adjust doxygen markup for base classes. * include/bits/hashtable_policy.h: Same. From-SVN: r186856
2012-04-25re PR libstdc++/52689 (static linking with libstdc++ fails)Benjamin Kosnik1-0/+7
2012-04-25 Benjamin Kosnik <bkoz@redhat.com> PR libstdc++/52689 * testsuite/17_intro/static.cc: Fix. * testsuite/lib/dg-options.exp (dg-require-static-libstdcxx): New. From-SVN: r186845
2012-04-25scoped_allocator (scoped_allocator::__outermost): Do not pass non-POD to ↵Jonathan Wakely1-0/+6
varargs function. * include/std/scoped_allocator (scoped_allocator::__outermost): Do not pass non-POD to varargs function. * testsuite/20_util/scoped_allocator/1.cc: Fix test. From-SVN: r186836
2012-04-25re PR libstdc++/52689 (static linking with libstdc++ fails)Benjamin Kosnik1-0/+5
2012-04-24 Benjamin Kosnik <bkoz@redhat.com> PR libstdc++/52689 * testsuite/17_intro/static.cc: New. From-SVN: r186794
2012-04-23type_traits (is_nothrow_destructible): Implement.Daniel Krugler1-0/+18
2012-04-23 Daniel Krugler <daniel.kruegler@googlemail.com> * include/std/type_traits (is_nothrow_destructible): Implement. (is_destructible): Implement LWG 2049. * testsuite/util/testsuite_tr1.h: Add tests. * testsuite/20_util/is_nothrow_destructible/value.cc: New. * testsuite/20_util/is_nothrow_destructible/requirements/typedefs.cc: * testsuite/20_util/is_nothrow_destructible/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_destructible/value.cc: Adjust and extend. * testsuite/20_util/is_default_constructible/value.cc: Tweak. * testsuite/20_util/is_constructible/value-2.cc: Likewise. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust dg-error line numbers. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/declval/requirements/1_neg.cc: Likewise. From-SVN: r186726
2012-04-23re PR libstdc++/53080 (tuple interface to std::array doesn't check bounds)Paolo Carlini1-0/+9
2012-04-23 Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/53080 * include/std/array (tuple_element, get): static_assert I < N. * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc: New. * testsuite/23_containers/array/tuple_interface/get_neg.cc: Likewise. * testsuite/23_containers/array/tuple_interface/tuple_element.cc: Fix. From-SVN: r186702
2012-04-23re PR testsuite/53046 (New libstdc++ test failures)Chris Jefferson1-0/+7
2012-04-23 Chris Jefferson <chris@bubblescope.net> PR testsuite/53046 * testsuite/25_algorithms/stable_partition/mem_check.cc: Fix size of array A. * testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise. From-SVN: r186701
2012-04-22re PR c++/53067 (c++0x GCC 4.7.0 Regression std::ref with unordered sets)Paolo Carlini1-0/+7
2012-04-22 Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/53067 * include/bits/hashtable_policy.h: Change inheritances to public. * testsuite/23_containers/unordered_map/requirements/53067.cc: New. * testsuite/23_containers/unordered_set/requirements/53067.cc: Likewise. From-SVN: r186676
2012-04-22alloc_traits.h (__alloc_traits::difference_type): Define.Jonathan Wakely1-0/+5
* include/ext/alloc_traits.h (__alloc_traits::difference_type): Define. From-SVN: r186673
2012-04-22Add PR number to ChangeLog entry.Jonathan Wakely1-0/+1
From-SVN: r186672
2012-04-22ptr_traits.h (pointer_traits::rebind): Make public.Jonathan Wakely1-0/+6
* include/bits/ptr_traits.h (pointer_traits::rebind): Make public. * testsuite/20_util/pointer_traits/requirements/typedefs.cc: Check rebind works. From-SVN: r186670
2012-04-22forward_list (forward_list::splice_after): Check allocators are equal.Jonathan Wakely1-0/+12
* include/debug/forward_list (forward_list::splice_after): Check allocators are equal. * src/c++11/debug.cc: Fix spelling. * testsuite/23_containers/forward_list/debug/splice_after5_neg.cc: New. * testsuite/23_containers/forward_list/debug/splice_after6_neg.cc: Likewise. * testsuite/23_containers/forward_list/debug/splice_after7_neg.cc: Likewise. From-SVN: r186669
2012-04-20re PR libstdc++/53052 ([C++11] is_explicitly_convertible still part of ↵Paolo Carlini1-0/+11
<type_traits> header) 2012-04-20 Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/53052 * include/std/type_traits (is_explicitly_convertible): Remove. * testsuite/20_util/is_explicitly_convertible: Likewise. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust dg-error line numbers. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/declval/requirements/1_neg.cc: Likewise. From-SVN: r186617
2012-04-17808590.cc: New.Benjamin Kosnik1-0/+5
2012-04-17 Benjamin Kosnik <bkoz@redhat.com> * testsuite/20_util/specialized_algorithms/uninitialized_copy/ 808590.cc: New. From-SVN: r186539
2012-04-17Fix merging default libstdc++.logRainer Orth1-0/+5
* testsuite/util/testsuite_abi.cc (compare_symbols): Change summary header to avoid confusion with DejaGnu header. From-SVN: r186524
2012-04-15re PR libstdc++/52702 ([C++11] std::is_trivially_destructible is missing)Paolo Carlini1-0/+19
2012-04-15 Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/52702 * include/std/type_traits (is_trivially_destructible): Add. (has_trivial_destructor): Remove. * testsuite/util/testsuite_common_types.h: Adjust. * testsuite/20_util/tuple/requirements/dr801.cc: Likewise. * testsuite/20_util/pair/requirements/dr801.cc: Likewise. * testsuite/20_util/is_trivially_destructible/value.cc: New. * testsuite/20_util/is_trivially_destructible/requirements/ typedefs.cc: Likewise. * testsuite/20_util/is_trivially_destructible/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust dg-error line numbers. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/declval/requirements/1_neg.cc: Likewise. From-SVN: r186474
2012-04-14re PR libstdc++/52699 (infinite loop generated with -O0)Paolo Carlini1-0/+15
2012-04-14 Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/52699 * include/bits/random.tcc (independent_bits_engine<>::operator()()) Avoid various overflows; use common_type on result_type and _RandomNumberEngine::result_type; avoid floating point computations; other smaller tweaks. * include/bits/random.tcc (uniform_int_distribution<>::operator()) Use common_type; assume _UniformRandomNumberGenerator::result_type unsigned; tidy. * include/bits/stl_algobase.h (__lg(unsigned), __lg(unsigned long), __lg(unsigned long long)): Add. From-SVN: r186456
2012-04-14re PR libstdc++/52839 (double free or corruption running ↵Alan Modra1-0/+7
tr1/.../default_weaktoshared.exe) PR libstdc++/52839 * acinclude.m4 (_GLIBCXX_ATOMIC_BUILTINS): Do not depend on glibcxx_cv_atomic_long_long. * configure: Regenerate. From-SVN: r186453
2012-04-1451083.cc: Move...Paolo Carlini1-0/+5
2012-04-13 Paolo Carlini <paolo.carlini@oracle.com> * testsuite/26_numerics/cmath/51083.cc: Move... * testsuite/26_numerics/headers/cmath/51083.cc: ... here. From-SVN: r186445
2012-04-13fix last entryChristian Bruel1-1/+1
From-SVN: r186415
2012-04-13PR:52604: (~__freelist): Reset pointerLaurent Alfonsi1-0/+5
From-SVN: r186414
2012-04-13safe_iterator.h (_BeforeBeginHelper<>:: _S_Is_Beginnest): Add.Paolo Carlini1-0/+12
2012-04-13 Paolo Carlini <paolo.carlini@oracle.com> * include/debug/safe_iterator.h (_BeforeBeginHelper<>:: _S_Is_Beginnest): Add. * include/debug/forward_list (_BeforeBeginHelper<>:: _S_Is_Beginnest): Likewise. (_Safe_iterator<>::_M_is_beginnest): Add. * include/debug/safe_iterator.tcc (_Safe_iterator<>::_M_valid_range): Use the latter. * testsuite/23_containers/forward_list/debug/splice_after.cc: Add test. From-SVN: r186411
2012-04-13unordered_map.h (__unordered_map): Remove.Benjamin Kosnik1-0/+36
2012-04-12 Benjamin Kosnik <bkoz@redhat.com> * include/bits/unordered_map.h (__unordered_map): Remove. (__unordered_multimap): Remove. Add aliases for __umap_traits, __umap_hashtable, __ummap_traits, __ummap_hashtable. (unordered_map): Derive from __umap_hashtable. (unordered_multimap): Derive from __ummap_hashtable. * include/bits/unordered_set.h (__unordered_set): Remove. (__unordered_multiset): Remove. Add aliases for __uset_traits, __uset_hashtable, __umset_traits, __umset_hashtable. (unordered_set): Derive from __uset_hashtable. (unordered_multiset): Derive from __umset_hashtable. * include/bits/hashtable.h (__cache_default): New, consolidated cache defaults for _Hashtable. Adjust comments for doxygen. (_Hashtable): Consolidate bool template parameters into new, _Traits class. Inherited base classes synthesize _Hashtable in CRTP via original 10 parameters. Prefer using declarations to typedefs, add __node_type, __bucket_type, etc. Push many nested types down hierarchy to _Hashtable_base. Add constructors necessary for top-level unordered_containers. Consolidate insert member functions and logic in new base class, __detail::_Insert and __detail::_Insert_base. (_Hashtable::operator=(initializer_list)): Add. * include/bits/hashtable_policy.h: Convert to doxygen markup. (_Hashtable_traits) New. Consolidate bool template parameters here. (_Insert, _Insert_base): New, consolidated insert member functions. (_Map_base, _Equality, _Rehash_base): Adjust template parameters, use base types. (_Hashtable_base): Move type declarations useful to other base classes into this class. * python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Update. * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust traits, line numbers. From-SVN: r186403
2012-04-12Fix PR52822 (stable_partition move-assigns object to itself) by scanning for...Jeffrey Yasskin1-0/+19
Fix PR52822 (stable_partition move-assigns object to itself) by scanning for the first value that doesn't match the predicate before starting to rearrange values. 2012-04-03 Jeffrey Yasskin <jyasskin@google.com> PR libstdc++/52822 * include/bits/stl_algo.h (__find_if_not): Expose in C++98 mode. (__find_if_not_n): Like __find_if_not, but works on and updates a counted range instead of a bounded range. (stable_partition): Guarantee !__pred(*__first) in call to __stable_partition_adaptive() or __inplace_stable_partition(). (__stable_partition_adaptive): Use new precondition to avoid moving/copying objects onto themselves. Guarantee new precondition to recursive calls. (__inplace_stable_partition): Use new precondition to simplify base case, remove __last parameter. Guarantee new precondition to recursive calls. * testsuite/25_algorithms/stable_partition/moveable.cc (test02): Test a sequence that starts with a value matching the predicate. * testsuite/25_algorithms/stable_partition/pr52822.cc: Test vectors, which have a destructive self-move-assignment. From-SVN: r186391
2012-04-12Makefile.am (check_DEJAGNUnormal0): Run prettyprinters.exp.Andreas Schwab1-0/+6
* testsuite/Makefile.am (check_DEJAGNUnormal0): Run prettyprinters.exp. * testsuite/Makefile.in: Regenerated. From-SVN: r186389
2012-04-12re PR libstdc++/52942 (using std::ref with a std::unordered_map fails to ↵Paolo Carlini1-0/+9
compile) 2012-04-12 Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/52942 * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd): In C++11 mode do not derive from std::unary_function. * include/ext/functional (identity, select1st, select2nd): Adjust. * testsuite/23_containers/unordered_map/requirements/52942.cc: New. * testsuite/23_containers/unordered_set/requirements/52942.cc: Likewise. From-SVN: r186375
2012-04-11Fix date of previous ChangeLog entry.Jonathan Wakely1-1/+1
From-SVN: r186364
2012-04-11re PR c++/52924 (Using an std::function object as deleter of shared_ptr in ↵Jonathan Wakely1-0/+10
C++0x mode does not compile) PR libstdc++/52924 * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Add user-defined destructor. (_Sp_counted_inplace): Likewise. * testsuite/20_util/shared_ptr/cons/52924.cc: New. * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line numbers. From-SVN: r186363