Update doxygen for istream::tellg() to reflect PR/26211?

Brad Spencer spencer@starscale.com
Thu Apr 14 22:06:00 GMT 2011


Hey, all.

I recently started using gcc-4.6.0 and it seems that the behaviour of
std::istream::tellg() has changed when (just) the eofbit is set.  I
managed to track this down to PR/26211, and I'm not debating the
changes.

It took me a while to figure out what was wrong because the doxygen
for tellg() says:

  If fail() is not false, returns pos_type(-1) to indicate
  failure. Otherwise returns rdbuf()->pubseekoff(0,cur,in).

That's almost word for word what Langer and Kreft says, so I'm
presuming DR60's change to 27.6.1.3 paragraph 37 has lead to this
change in libstdc++ behaviour.
  
Should the libstdc++ doxygen be updated to say something about the
fact that calling tellg() when eof() will also return pos_type(-1)
(because of the fact that it constructs a sentry)?  Are there other
functions that also should have updated documentation as a result of
DR60?

Thanks!

-- 
----------------------------------------------------------
Brad Spencer - spencer@starscale.com - www.starscale.com



More information about the Libstdc++ mailing list