https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68190

--- Comment #2 from Howard Hinnant <howard.hinnant at gmail dot com> ---
LWG 103 isn't the issue.

http://melpon.org/wandbox/permlink/MzOWaFpvFRtgaa7t

C::iterator is       std::_Rb_tree_const_iterator<int>
C::const_iterator is std::_Rb_tree_const_iterator<int>
C::find(1u) returns  std::_Rb_tree_iterator<int>

s.erase returns a std::_Rb_tree_const_iterator<int> which can not be converted
into a std::_Rb_tree_iterator<int>.

If C::find(1u) returned a C::iterator (as specified in 23.4.6.1) instead of a
std::_Rb_tree_iterator<int>, this bug would be fixed.

Reply via email to