375f837be1
PR libstdc++/49561 * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_CXX11_ABI): Define. * configure.ac: Use GLIBCXX_ENABLE_LIBSTDCXX_CXX11_ABI. * configure: Regenerate. * include/Makefile.am (stamp-cxx11-abi): New target. (c++config.h): Set _GLIBCXX_USE_CXX11_ABI macro. * include/Makefile.in: Regenerate. * include/bits/c++config: Add _GLIBCXX_USE_CXX11_ABI placeholder and define _GLIBCXX_DEFAULT_ABI_TAG. * include/bits/list.tcc (list::emplace(const_iterator, _Args&...)): Increment size. (list::emplace(const_iterator, const value_type&)): Likewise. (list::merge(list&), list::merge(list&, _StrictWeakOrdering)): Adjust list sizes. * include/bits/stl_list.h (_List_base, list): Add ABI tag macro. (_List_base::_M_size): New data member in cxx11 ABI mode. (_List_base::_S_distance(_List_node_base*, _List_node_base*)): New function. (_List_base::_M_get_size(), _List_base::_M_set_size(size_t), _List_base::_M_inc_size(size_t), _List_base::_M_dec_size(size_t), _List_base::_M_distance, _List_base::_M_node_count): New functions for accessing list size correctly for the ABI mode. (_List_base::_List_base(_List_base&&)): Copy size and reset source. (_List_base::_M_init()): Initialize size member. (list::size()): Use _List_base::_M_node_count. (list::swap(list&)): Swap sizes. (list::splice(iterator, list&)): Update sizes. (list::splice(iterator, list&, iterator)): Likewise. (list::insert(iterator, const value_type&)): Update size. (list::insert(iterator, _Args&&...)): Likewise. (list::_M_erase(iterator)): Likewise. * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Adjust. * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc: Adjust. * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc: Adjust. * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Adjust. * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust. From-SVN: r216094 |
||
---|---|---|
.. | ||
algorithmfwd.h | ||
alloc_traits.h | ||
allocated_ptr.h | ||
allocator.h | ||
atomic_base.h | ||
basic_ios.h | ||
basic_ios.tcc | ||
basic_string.h | ||
basic_string.tcc | ||
boost_concept_check.h | ||
c++0x_warning.h | ||
c++14_warning.h | ||
c++config | ||
char_traits.h | ||
codecvt.h | ||
concept_check.h | ||
cpp_type_traits.h | ||
deque.tcc | ||
enable_special_members.h | ||
forward_list.h | ||
forward_list.tcc | ||
fstream.tcc | ||
functexcept.h | ||
functional_hash.h | ||
gslice_array.h | ||
gslice.h | ||
hashtable_policy.h | ||
hashtable.h | ||
indirect_array.h | ||
ios_base.h | ||
istream.tcc | ||
list.tcc | ||
locale_classes.h | ||
locale_classes.tcc | ||
locale_facets_nonio.h | ||
locale_facets_nonio.tcc | ||
locale_facets.h | ||
locale_facets.tcc | ||
localefwd.h | ||
mask_array.h | ||
memoryfwd.h | ||
move.h | ||
ostream_insert.h | ||
ostream.tcc | ||
parse_numbers.h | ||
postypes.h | ||
predefined_ops.h | ||
ptr_traits.h | ||
random.h | ||
random.tcc | ||
range_access.h | ||
regex_automaton.h | ||
regex_automaton.tcc | ||
regex_compiler.h | ||
regex_compiler.tcc | ||
regex_constants.h | ||
regex_error.h | ||
regex_executor.h | ||
regex_executor.tcc | ||
regex_scanner.h | ||
regex_scanner.tcc | ||
regex.h | ||
regex.tcc | ||
shared_ptr_base.h | ||
shared_ptr.h | ||
slice_array.h | ||
sstream.tcc | ||
stl_algo.h | ||
stl_algobase.h | ||
stl_bvector.h | ||
stl_construct.h | ||
stl_deque.h | ||
stl_function.h | ||
stl_heap.h | ||
stl_iterator_base_funcs.h | ||
stl_iterator_base_types.h | ||
stl_iterator.h | ||
stl_list.h | ||
stl_map.h | ||
stl_multimap.h | ||
stl_multiset.h | ||
stl_numeric.h | ||
stl_pair.h | ||
stl_queue.h | ||
stl_raw_storage_iter.h | ||
stl_relops.h | ||
stl_set.h | ||
stl_stack.h | ||
stl_tempbuf.h | ||
stl_tree.h | ||
stl_uninitialized.h | ||
stl_vector.h | ||
stream_iterator.h | ||
streambuf_iterator.h | ||
streambuf.tcc | ||
stringfwd.h | ||
unique_ptr.h | ||
unordered_map.h | ||
unordered_set.h | ||
uses_allocator.h | ||
valarray_after.h | ||
valarray_array.h | ||
valarray_array.tcc | ||
valarray_before.h | ||
vector.tcc |