mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-08 04:16:46 +08:00
re PR libstdc++/6414 (g++ 3.1 tellg() regression within last week)
PR libstdc++/6414 * include/bits/fstream.tcc (basic_filebuf::seekoff): Adjust return value properly in the trivial case. * testsuite/27_io/istream_seeks.cc (test04): Make sure that tellg() returns the right value after a read. From-SVN: r52679
This commit is contained in:
parent
29cece2e5d
commit
74c263af80
@ -1,3 +1,11 @@
|
||||
2002-04-23 Jason Merrill <jason@redhat.com>
|
||||
|
||||
PR libstdc++/6414
|
||||
* include/bits/fstream.tcc (basic_filebuf::seekoff): Adjust return
|
||||
value properly in the trivial case.
|
||||
* testsuite/27_io/istream_seeks.cc (test04): Make sure that
|
||||
tellg() returns the right value after a read.
|
||||
|
||||
2002-04-23 Hans-Peter Nilsson <hp@bitrange.com>
|
||||
|
||||
* config/cpu/mmix/bits/cpu_limits.h: New file.
|
||||
|
@ -567,7 +567,7 @@ namespace std
|
||||
else
|
||||
{
|
||||
__ret = _M_file.seekoff(__off, ios_base::cur, __mode);
|
||||
__ret += max(_M_out_cur, _M_in_cur) - _M_buf;
|
||||
__ret += _M_in_cur - _M_filepos;
|
||||
}
|
||||
}
|
||||
_M_last_overflowed = false;
|
||||
|
@ -229,7 +229,14 @@ void test04(void)
|
||||
VERIFY( pos05 == pos06 + off_type(10) );
|
||||
VERIFY( state01 == state02 );
|
||||
pos06 = is03.tellg();
|
||||
VERIFY( pos05 == pos06 );
|
||||
VERIFY( pos05 == pos06 );
|
||||
|
||||
// libstdc++/6414
|
||||
if01.seekg(0, std::ios_base::beg);
|
||||
pos01 = if01.tellg();
|
||||
if01.peek();
|
||||
pos02 = if01.tellg();
|
||||
VERIFY( pos02 == pos01 );
|
||||
|
||||
#ifdef DEBUG_ASSERT
|
||||
assert(test);
|
||||
|
Loading…
Reference in New Issue
Block a user