Author
anonymous
about 7 years ago
Language
C++
Compiler
gcc 7.2.0
Options
Optimization
Boost 1.66.0
C++17
no pedantic
Author
anonymous
about 7 years ago
$ g++ prog.cc -O2 -march=native -I/opt/wandbox/boost-1.66.0/gcc-7.2.0/include -std=c++17
In file included from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/algo/detail/adaptive_sort_merge.hpp:50:0,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/algo/adaptive_merge.hpp:16,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/vector.hpp:58,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/detail/flat_tree.hpp:30,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/flat_set.hpp:29,
from prog.cc:1:
/opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/algo/detail/insertion_sort.hpp: In instantiation of 'void boost::movelib::insertion_sort_uninitialized_copy(BirdirectionalIterator, BirdirectionalIterator, BirdirectionalRawIterator, Compare) [with Compare = boost::container::container_detail::flat_tree_value_compare<Comparator, std::_Rb_tree_const_iterator<int>, boost::move_detail::identity<std::_Rb_tree_const_iterator<int> > >; BirdirectionalIterator = std::_Rb_tree_const_iterator<int>*; BirdirectionalRawIterator = std::_Rb_tree_const_iterator<int>*]':
/opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/algo/detail/merge_sort.hpp:92:40: required from 'void boost::movelib::merge_sort_uninitialized_copy(RandIt, RandIt, RandItRaw, Compare) [with RandIt = std::_Rb_tree_const_iterator<int>*; RandItRaw = std::_Rb_tree_const_iterator<int>*; Compare = boost::container::container_detail::flat_tree_value_compare<Comparator, std::_Rb_tree_const_iterator<int>, boost::move_detail::identity<std::_Rb_tree_const_iterator<int> > >]'
/opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/algo/detail/merge_sort.hpp:125:36: required from 'void boost::movelib::merge_sort(RandIt, RandIt, Compare, RandItRaw) [with RandIt = std::_Rb_tree_const_iterator<int>*; RandItRaw = std::_Rb_tree_const_iterator<int>*; Compare = boost::container::container_detail::flat_tree_value_compare<Comparator, std::_Rb_tree_const_iterator<int>, boost::move_detail::identity<std::_Rb_tree_const_iterator<int> > >]'
/opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/algo/detail/adaptive_sort_merge.hpp:885:17: required from 'void boost::movelib::detail_adaptive::stable_sort(RandIt, RandIt, Compare, XBuf&) [with RandIt = std::_Rb_tree_const_iterator<int>*; Compare = boost::container::container_detail::flat_tree_value_compare<Comparator, std::_Rb_tree_const_iterator<int>, boost::move_detail::identity<std::_Rb_tree_const_iterator<int> > >; XBuf = boost::movelib::detail_adaptive::adaptive_xbuf<std::_Rb_tree_const_iterator<int>, std::_Rb_tree_const_iterator<int>*>]'
/opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/algo/detail/adaptive_sort_merge.hpp:2192:24: required from 'void boost::movelib::detail_adaptive::adaptive_merge_final_merge(RandIt, typename boost::movelib::iterator_traits<I>::size_type, typename boost::movelib::iterator_traits<I>::size_type, typename boost::movelib::iterator_traits<I>::size_type, typename boost::movelib::iterator_traits<I>::size_type, typename boost::movelib::iterator_traits<I>::size_type, bool, bool, Compare, XBuf&) [with RandIt = std::_Rb_tree_const_iterator<int>*; Compare = boost::container::container_detail::flat_tree_value_compare<Comparator, std::_Rb_tree_const_iterator<int>, boost::move_detail::identity<std::_Rb_tree_const_iterator<int> > >; XBuf = boost::movelib::detail_adaptive::adaptive_xbuf<std::_Rb_tree_const_iterator<int>, std::_Rb_tree_const_iterator<int>*>; typename boost::movelib::iterator_traits<I>::size_type = long unsigned int]'
/opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/algo/detail/adaptive_sort_merge.hpp:2459:36: [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/vector.hpp:2198:43: required from 'void boost::container::vector<T, Allocator>::priv_merge(UniqueBool, BidirIt, BidirIt, Compare) [with UniqueBool = boost::move_detail::integral_constant<bool, true>; BidirIt = boost::move_iterator<boost::container::container_detail::vec_iterator<std::_Rb_tree_const_iterator<int>*, false> >; Compare = boost::container::container_detail::flat_tree_value_compare<Comparator, std::_Rb_tree_const_iterator<int>, boost::move_detail::identity<std::_Rb_tree_const_iterator<int> > >; T = std::_Rb_tree_const_iterator<int>; Allocator = boost::container::new_allocator<std::_Rb_tree_const_iterator<int> >]'
/opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/vector.hpp:2122:7: required from 'void boost::container::vector<T, Allocator>::merge_unique(BidirIt, BidirIt, Compare) [with BidirIt = boost::move_iterator<boost::container::container_detail::vec_iterator<std::_Rb_tree_const_iterator<int>*, false> >; Compare = boost::container::container_detail::flat_tree_value_compare<Comparator, std::_Rb_tree_const_iterator<int>, boost::move_detail::identity<std::_Rb_tree_const_iterator<int> > >; T = std::_Rb_tree_const_iterator<int>; Allocator = boost::container::new_allocator<std::_Rb_tree_const_iterator<int> >]'
/opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/detail/flat_tree.hpp:159:4: required from 'void boost::container::container_detail::flat_tree_merge_unique(SequenceContainer&, Iterator, Iterator, Compare, boost::move_detail::true_) [with SequenceContainer = boost::container::vector<std::_Rb_tree_const_iterator<int>, boost::container::new_allocator<std::_Rb_tree_const_iterator<int> > >; Iterator = boost::move_iterator<boost::container::container_detail::vec_iterator<std::_Rb_tree_const_iterator<int>*, false> >; Compare = boost::container::container_detail::flat_tree_value_compare<Comparator, std::_Rb_tree_const_iterator<int>, boost::move_detail::identity<std::_Rb_tree_const_iterator<int> > >; boost::move_detail::true_ = boost::move_detail::bool_<true>]'
/opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/detail/flat_tree.hpp:1147:10: required from 'void boost::container::container_detail::flat_tree<Value, KeyOfValue, Compare, AllocatorOrContainer>::merge_unique(boost::container::container_detail::flat_tree<Value, KeyOfValue, Compare, AllocatorOrContainer>&) [with Value = std::_Rb_tree_const_iterator<int>; KeyOfValue = boost::move_detail::identity<std::_Rb_tree_const_iterator<int> >; Compare = Comparator; AllocatorOrContainer = boost::container::new_allocator<std::_Rb_tree_const_iterator<int> >]'
/opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/flat_set.hpp:741:7: required from 'void boost::container::flat_set<Key, Compare, Allocator>::merge(boost::container::flat_set<Key, C2, AllocatorOrContainer>&) [with C2 = Comparator; Key = std::_Rb_tree_const_iterator<int>; Compare = Comparator; AllocatorOrContainer = boost::container::new_allocator<std::_Rb_tree_const_iterator<int> >]'
prog.cc:32:14: required from here
/opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/algo/detail/insertion_sort.hpp:104:82: error: call of overloaded 'move(std::_Rb_tree_const_iterator<int>&)' is ambiguous
::new((iterator_to_raw_pointer)(last2), boost_move_new_t()) value_type(move(*first1));
~~~~^~~~~~~~~
In file included from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/allocator_traits.hpp:42:0,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/flat_set.hpp:25,
from prog.cc:1:
/opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/utility_core.hpp:212:93: note: candidate: typename boost::move_detail::remove_reference<T>::type&& boost::move(T&&) [with T = std::_Rb_tree_const_iterator<int>&; typename boost::move_detail::remove_reference<T>::type = std::_Rb_tree_const_iterator<int>]
BOOST_MOVE_FORCEINLINE typename ::boost::move_detail::remove_reference<T>::type && move(T&& t) BOOST_NOEXCEPT
^~~~
In file included from /opt/wandbox/gcc-7.2.0/include/c++/7.2.0/bits/nested_exception.h:40:0,
from /opt/wandbox/gcc-7.2.0/include/c++/7.2.0/exception:143,
from /opt/wandbox/gcc-7.2.0/include/c++/7.2.0/stdexcept:38,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/throw_exception.hpp:26,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/new_allocator.hpp:24,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/flat_set.hpp:27,
from prog.cc:1:
/opt/wandbox/gcc-7.2.0/include/c++/7.2.0/bits/move.h:98:5: note: candidate: constexpr typename std::remove_reference< <template-parameter-1-1> >::type&& std::move(_Tp&&) [with _Tp = std::_Rb_tree_const_iterator<int>&; typename std::remove_reference< <template-parameter-1-1> >::type = std::_Rb_tree_const_iterator<int>]
move(_Tp&& __t) noexcept
^~~~
In file included from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/algo/detail/adaptive_sort_merge.hpp:50:0,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/algo/adaptive_merge.hpp:16,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/vector.hpp:58,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/detail/flat_tree.hpp:30,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/flat_set.hpp:29,
from prog.cc:1:
/opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/algo/detail/insertion_sort.hpp:111:85: error: call of overloaded 'move(std::_Rb_tree_const_iterator<int>&)' is ambiguous
::new((iterator_to_raw_pointer)(j2), boost_move_new_t()) value_type(move(*k2));
~~~~^~~~~
In file included from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/allocator_traits.hpp:42:0,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/flat_set.hpp:25,
from prog.cc:1:
/opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/utility_core.hpp:212:93: note: candidate: typename boost::move_detail::remove_reference<T>::type&& boost::move(T&&) [with T = std::_Rb_tree_const_iterator<int>&; typename boost::move_detail::remove_reference<T>::type = std::_Rb_tree_const_iterator<int>]
BOOST_MOVE_FORCEINLINE typename ::boost::move_detail::remove_reference<T>::type && move(T&& t) BOOST_NOEXCEPT
^~~~
In file included from /opt/wandbox/gcc-7.2.0/include/c++/7.2.0/bits/nested_exception.h:40:0,
from /opt/wandbox/gcc-7.2.0/include/c++/7.2.0/exception:143,
from /opt/wandbox/gcc-7.2.0/include/c++/7.2.0/stdexcept:38,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/throw_exception.hpp:26,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/new_allocator.hpp:24,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/flat_set.hpp:27,
from prog.cc:1:
/opt/wandbox/gcc-7.2.0/include/c++/7.2.0/bits/move.h:98:5: note: candidate: constexpr typename std::remove_reference< <template-parameter-1-1> >::type&& std::move(_Tp&&) [with _Tp = std::_Rb_tree_const_iterator<int>&; typename std::remove_reference< <template-parameter-1-1> >::type = std::_Rb_tree_const_iterator<int>]
move(_Tp&& __t) noexcept
^~~~
In file included from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/algo/detail/adaptive_sort_merge.hpp:50:0,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/algo/adaptive_merge.hpp:16,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/vector.hpp:58,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/detail/flat_tree.hpp:30,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/flat_set.hpp:29,
from prog.cc:1:
/opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/algo/detail/insertion_sort.hpp:114:26: error: call of overloaded 'move(std::_Rb_tree_const_iterator<int>&)' is ambiguous
*j2 = move(*k2);
~~~~^~~~~
In file included from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/allocator_traits.hpp:42:0,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/flat_set.hpp:25,
from prog.cc:1:
/opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/utility_core.hpp:212:93: note: candidate: typename boost::move_detail::remove_reference<T>::type&& boost::move(T&&) [with T = std::_Rb_tree_const_iterator<int>&; typename boost::move_detail::remove_reference<T>::type = std::_Rb_tree_const_iterator<int>]
BOOST_MOVE_FORCEINLINE typename ::boost::move_detail::remove_reference<T>::type && move(T&& t) BOOST_NOEXCEPT
^~~~
In file included from /opt/wandbox/gcc-7.2.0/include/c++/7.2.0/bits/nested_exception.h:40:0,
from /opt/wandbox/gcc-7.2.0/include/c++/7.2.0/exception:143,
from /opt/wandbox/gcc-7.2.0/include/c++/7.2.0/stdexcept:38,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/throw_exception.hpp:26,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/new_allocator.hpp:24,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/flat_set.hpp:27,
from prog.cc:1:
/opt/wandbox/gcc-7.2.0/include/c++/7.2.0/bits/move.h:98:5: note: candidate: constexpr typename std::remove_reference< <template-parameter-1-1> >::type&& std::move(_Tp&&) [with _Tp = std::_Rb_tree_const_iterator<int>&; typename std::remove_reference< <template-parameter-1-1> >::type = std::_Rb_tree_const_iterator<int>]
move(_Tp&& __t) noexcept
^~~~
In file included from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/algo/detail/adaptive_sort_merge.hpp:50:0,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/algo/adaptive_merge.hpp:16,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/vector.hpp:58,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/detail/flat_tree.hpp:30,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/flat_set.hpp:29,
from prog.cc:1:
/opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/algo/detail/insertion_sort.hpp:115:23: error: call of overloaded 'move(std::_Rb_tree_const_iterator<int>&)' is ambiguous
*j2 = move(*first1);
~~~~^~~~~~~~~
In file included from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/allocator_traits.hpp:42:0,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/flat_set.hpp:25,
from prog.cc:1:
/opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/utility_core.hpp:212:93: note: candidate: typename boost::move_detail::remove_reference<T>::type&& boost::move(T&&) [with T = std::_Rb_tree_const_iterator<int>&; typename boost::move_detail::remove_reference<T>::type = std::_Rb_tree_const_iterator<int>]
BOOST_MOVE_FORCEINLINE typename ::boost::move_detail::remove_reference<T>::type && move(T&& t) BOOST_NOEXCEPT
^~~~
In file included from /opt/wandbox/gcc-7.2.0/include/c++/7.2.0/bits/nested_exception.h:40:0,
from /opt/wandbox/gcc-7.2.0/include/c++/7.2.0/exception:143,
from /opt/wandbox/gcc-7.2.0/include/c++/7.2.0/stdexcept:38,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/throw_exception.hpp:26,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/new_allocator.hpp:24,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/flat_set.hpp:27,
from prog.cc:1:
/opt/wandbox/gcc-7.2.0/include/c++/7.2.0/bits/move.h:98:5: note: candidate: constexpr typename std::remove_reference< <template-parameter-1-1> >::type&& std::move(_Tp&&) [with _Tp = std::_Rb_tree_const_iterator<int>&; typename std::remove_reference< <template-parameter-1-1> >::type = std::_Rb_tree_const_iterator<int>]
move(_Tp&& __t) noexcept
^~~~
In file included from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/algo/detail/adaptive_sort_merge.hpp:50:0,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/algo/adaptive_merge.hpp:16,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/vector.hpp:58,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/detail/flat_tree.hpp:30,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/flat_set.hpp:29,
from prog.cc:1:
/opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/algo/detail/insertion_sort.hpp:118:85: error: call of overloaded 'move(std::_Rb_tree_const_iterator<int>&)' is ambiguous
::new((iterator_to_raw_pointer)(j2), boost_move_new_t()) value_type(move(*first1));
~~~~^~~~~~~~~
In file included from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/allocator_traits.hpp:42:0,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/flat_set.hpp:25,
from prog.cc:1:
/opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/move/utility_core.hpp:212:93: note: candidate: typename boost::move_detail::remove_reference<T>::type&& boost::move(T&&) [with T = std::_Rb_tree_const_iterator<int>&; typename boost::move_detail::remove_reference<T>::type = std::_Rb_tree_const_iterator<int>]
BOOST_MOVE_FORCEINLINE typename ::boost::move_detail::remove_reference<T>::type && move(T&& t) BOOST_NOEXCEPT
^~~~
In file included from /opt/wandbox/gcc-7.2.0/include/c++/7.2.0/bits/nested_exception.h:40:0,
from /opt/wandbox/gcc-7.2.0/include/c++/7.2.0/exception:143,
from /opt/wandbox/gcc-7.2.0/include/c++/7.2.0/stdexcept:38,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/throw_exception.hpp:26,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/new_allocator.hpp:24,
from /opt/wandbox/boost-1.66.0/gcc-7.2.0/include/boost/container/flat_set.hpp:27,
from prog.cc:1:
/opt/wandbox/gcc-7.2.0/include/c++/7.2.0/bits/move.h:98:5: note: candidate: constexpr typename std::remove_reference< <template-parameter-1-1> >::type&& std::move(_Tp&&) [with _Tp = std::_Rb_tree_const_iterator<int>&; typename std::remove_reference< <template-parameter-1-1> >::type = std::_Rb_tree_const_iterator<int>]
move(_Tp&& __t) noexcept
^~~~
Exit Code:
1