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

Eric Gallager <egallager at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |WONTFIX
             Status|WAITING                     |RESOLVED

--- Comment #9 from Eric Gallager <egallager at gcc dot gnu.org> ---
(In reply to Eric Gallager from comment #8)
> (In reply to Jonathan Wakely from comment #7)
> > It's also diagnosed by libstdc++ Debug Mode:
> > 
> > /home/jwakely/gcc/10/include/c++/10.0.0/debug/safe_iterator.h:294:
> > In function:
> >     __gnu_debug::_Safe_iterator<_Iterator, _Sequence, _Category>::reference 
> >     __gnu_debug::_Safe_iterator<_Iterator, _Sequence, 
> >     _Category>::operator*() const [with _Iterator = 
> >     std::__cxx1998::_List_const_iterator<int>; _Sequence = 
> >     std::__debug::list<int>; _Category = std::forward_iterator_tag; 
> >     __gnu_debug::_Safe_iterator<_Iterator, _Sequence, _Category>::reference 
> >     = const int&]
> > 
> > Error: attempt to dereference a singular iterator.
> > 
> > Objects involved in the operation:
> >     iterator "this" @ 0x0x7ffffb1db7f0 {
> >       type = std::__cxx1998::_List_const_iterator<int> (constant iterator);
> >       state = singular;
> >     }
> > Aborted (core dumped)
> > 
> > 
> > I don't think it's feasible to warn about this. As far as the compiler
> > knows, the iterator is just a value type. It's not practical to expect the
> > compiler to track that it contains a pointer to a node that is about to be
> > destroyed by a container going out of scope.
> 
> Maybe not in the compiler proper; could be material for someone to write a
> plugin for...

eh, in any case, it doesn't look like anyone's going to work on this; closing
as WONTFIX

Reply via email to