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

2005-08-10 Thread peter at gamelogic dot com
Assigning to an enum value from, for example, an istringstream fails, but the 
failure bit on the istream 
is not set.  Using an int temporary works just fine.

The .ii file is attached.  The output of g++ -v -save-temps Test.cpp is:

Reading specs from /usr/lib/gcc-lib/i486-linux/3.3.5/specs
Configured with: ../src/configure -v 
--enable-languages=c,c++,java,f77,pascal,objc,ada,treelang --
prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info 
--with-gxx-include-dir=/usr/
include/c++/3.3 --enable-shared --enable-__cxa_atexit --with-system-zlib 
--enable-nls --without-
included-gettext --enable-clocale=gnu --enable-debug --enable-java-gc=boehm 
--enable-java-
awt=xlib --enable-objc-gc i486-linux
Thread model: posix
gcc version 3.3.5 (Debian 1:3.3.5-13)
 /usr/lib/gcc-lib/i486-linux/3.3.5/cc1plus -E -D__GNUG__=3 -quiet -v 
-D__GNUC__=3 
-D__GNUC_MINOR__=3 -D__GNUC_PATCHLEVEL__=5 -D_GNU_SOURCE Test.cpp Test.ii
ignoring nonexistent directory "/usr/i486-linux/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/include/c++/3.3
 /usr/include/c++/3.3/i486-linux
 /usr/include/c++/3.3/backward
 /usr/local/include
 /usr/lib/gcc-lib/i486-linux/3.3.5/include
 /usr/include
End of search list.
 /usr/lib/gcc-lib/i486-linux/3.3.5/cc1plus -fpreprocessed Test.ii -quiet 
-dumpbase Test.cpp 
-auxbase Test -version -o Test.s
GNU C++ version 3.3.5 (Debian 1:3.3.5-13) (i486-linux)
compiled by GNU C version 3.3.5 (Debian 1:3.3.5-13).
GGC heuristics: --param ggc-min-expand=98 --param ggc-min-heapsize=129009
 as -V -Qy -o Test.o Test.s
GNU assembler version 2.15 (i386-linux) using BFD version 2.15
 /usr/lib/gcc-lib/i486-linux/3.3.5/collect2 --eh-frame-hdr -m elf_i386 
-dynamic-linker /lib/ld-
linux.so.2 /usr/lib/gcc-lib/i486-linux/3.3.5/../../../crt1.o 
/usr/lib/gcc-lib/i486-linux/3.3.5/../../../
crti.o /usr/lib/gcc-lib/i486-linux/3.3.5/crtbegin.o 
-L/usr/lib/gcc-lib/i486-linux/3.3.5 -L/usr/lib/
gcc-lib/i486-linux/3.3.5/../../.. Test.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s 
-lgcc /usr/lib/gcc-lib/
i486-linux/3.3.5/crtend.o /usr/lib/gcc-lib/i486-linux/3.3.5/../../../crtn.o

Release:
g++ (GCC) 3.3.5 (Debian 1:3.3.5-13)

Environment:
(Debian) Linux 2.4.26, i686 pc

-- 
   Summary: operator>>( istream&, int& ) does not work for enum
values
   Product: gcc
   Version: 3.3.5
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: peter at gamelogic dot com
CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: i486-linux
  GCC host triplet: i486-linux
GCC target triplet: i486-linux


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


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

2005-08-10 Thread peter at gamelogic dot com

--- Additional Comments From peter at gamelogic dot com  2005-08-10 15:27 
---
Created an attachment (id=9463)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=9463&action=view)
Test case which shows failing and successful examples of this bug.


-- 


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