[Bug libstdc++/13860] Poor error messages on invalid template parameters for basic_filebuf

peturr02 at ru dot is gcc-bugzilla@gcc.gnu.org
Sun Jan 25 18:54:00 GMT 2004


------- Additional Comments From peturr02 at ru dot is  2004-01-25 18:54 -------
Created an attachment (id=5577)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=5577&action=view)
Test case

This test case uses long for pos_type. When compiled, it gives:

g++0121 -Wall -Wextra  -static	2.cc   -o 2
/usr/local/lib/gcc/i686-pc-linux-gnu/3.4.0/include/c++/bits/fstream.tcc: In
member function `typename std::basic_filebuf<_CharT, _Traits>::pos_type
std::basic_filebuf<_CharT, _Traits>::seekpos(typename _Traits::pos_type,
std::_Ios_Openmode) [with _CharT = char, _Traits = MyTraits]':
2.cc:10:   instantiated from here
/usr/local/lib/gcc/i686-pc-linux-gnu/3.4.0/include/c++/bits/fstream.tcc:637:
error: request for member `state' in `__pos', which is of non-class type `long
int'
/usr/local/lib/gcc/i686-pc-linux-gnu/3.4.0/include/c++/bits/fstream.tcc: In
member function `typename std::basic_filebuf<_CharT, _Traits>::pos_type
std::basic_filebuf<_CharT, _Traits>::_M_seek(typename _Traits::off_type,
std::_Ios_Seekdir, typename _Traits::state_type) [with _CharT = char, _Traits =
MyTraits]':
/usr/local/lib/gcc/i686-pc-linux-gnu/3.4.0/include/c++/bits/fstream.tcc:618:  
instantiated from `typename std::basic_filebuf<_CharT, _Traits>::pos_type
std::basic_filebuf<_CharT, _Traits>::seekoff(typename _Traits::off_type,
std::_Ios_Seekdir, std::_Ios_Openmode) [with _CharT = char, _Traits =
MyTraits]'
2.cc:10:   instantiated from here
/usr/local/lib/gcc/i686-pc-linux-gnu/3.4.0/include/c++/bits/fstream.tcc:657:
error: request for member `state' in `__ret', which is of non-class type `long
int'
make: *** [2] Error 1


-- 


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



More information about the Gcc-bugs mailing list