This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libstdc++/23317] operator>>( istream&, int& ) does not work for enum values


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-08-10 15:37 -------
In 3.4 and above, I get:
t4.cc:16: error: ambiguous overload for ?operator>>? in ?Temp >> (int)Val?
/home/gates/pinskia/linux/lib/gcc/i686-pc-linux-gnu/4.1.0/../../../../include/c++/4.1.0/istream:
131: note: candidates are: std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::
operator>>(std::basic_istream<_CharT, _Traits>& (*)(std::basic_istream<_CharT, _Traits>&)) [with 
_CharT = char, _Traits = std::char_traits<char>] <near match>
/home/gates/pinskia/linux/lib/gcc/i686-pc-linux-gnu/4.1.0/../../../../include/c++/4.1.0/istream:
134: note:                 std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::
operator>>(std::basic_ios<_CharT, _Traits>& (*)(std::basic_ios<_CharT, _Traits>&)) [with _CharT = 
char, _Traits = std::char_traits<char>] <near match>
/home/gates/pinskia/linux/lib/gcc/i686-pc-linux-gnu/4.1.0/../../../../include/c++/4.1.0/istream:
137: note:                 std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::
operator>>(std::ios_base& (*)(std::ios_base&)) [with _CharT = char, _Traits = std::char_traits<char>] 
<near match>
/home/gates/pinskia/linux/lib/gcc/i686-pc-linux-gnu/4.1.0/../../../../include/c++/4.1.0/istream:
230: note:                 std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::
operator>>(std::basic_streambuf<_CharT, _Traits>*) [with _CharT = char, _Traits = std::
char_traits<char>] <near match>

I don't think this is valid code.

Actually it is not, you are invoking one of the bad extensions in GCC which was removed for 3.4 called 
the lvalue extension.

So this was fixed to reject the code in 3.4.0.


-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
          Component|c++                         |libstdc++
         Resolution|                            |INVALID


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]