[Bug libstdc++/46906] istreambuf_iterator is late?

marc.glisse at normalesup dot org gcc-bugzilla@gcc.gnu.org
Mon Sep 5 14:02:00 GMT 2011


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46906

--- Comment #9 from Marc Glisse <marc.glisse at normalesup dot org> 2011-09-05 14:01:08 UTC ---
(In reply to comment #8)
> Why do you think that either implementation form could be
> considered as non-conforming?

When I read that operator* returns sgetc(), I understand that as 
assert(*i==buf.sgetc()).

If there really is a provision that lets *i return what buf.sgetc() used to
return (I am not convinced the (void)*a,*a thing is it), it would be nice to
remind it in the definition of operator*. And I guess I don't really like this
kind of unspecified behavior... (it is very different from copy elision for
instance)

But it wouldn't be the first time that it is my understanding of the standard
that is at fault ;-)



More information about the Gcc-bugs mailing list