From: Benjamin Kosnik Date: Tue, 3 Jun 2003 18:06:09 +0000 (+0000) Subject: fstream.tcc (pbackfail): Make a rarely taken 'if' branch less obscure. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=f24ce7c1c37f7f7990d78e3c0f9467f76d4cfee6;p=gcc.git fstream.tcc (pbackfail): Make a rarely taken 'if' branch less obscure. 2003-06-03 Benjamin Kosnik * include/bits/fstream.tcc (pbackfail): Make a rarely taken 'if' branch less obscure. From-SVN: r67394 --- diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 0848e64d020..b64a1547aee 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,8 @@ +2003-06-03 Benjamin Kosnik + + * include/bits/fstream.tcc (pbackfail): Make a rarely taken + 'if' branch less obscure. + 2003-06-02 Andrew Pinski PR libstdc++/9815 diff --git a/libstdc++-v3/include/bits/fstream.tcc b/libstdc++-v3/include/bits/fstream.tcc index e84eee04efd..e4119bfcff2 100644 --- a/libstdc++-v3/include/bits/fstream.tcc +++ b/libstdc++-v3/include/bits/fstream.tcc @@ -284,9 +284,13 @@ namespace std // But the seek may fail (f.i., at the beginning of // a file, see libstdc++/9439) and in that case // we return traits_type::eof(). - else if (this->seekoff(-1, ios_base::cur) < 0 - || traits_type::eq_int_type(__tmp = this->underflow(), - traits_type::eof())) + else if (this->seekoff(-1, ios_base::cur) >= 0) + { + __tmp = this->underflow(); + if (traits_type::eq_int_type(__tmp, __ret)) + return __ret; + } + else return __ret; // Try to put back __i into input sequence in one of three ways.