[Bug c++/12343] New: class "index" can be declared but can not be used as a type
emre at ld dot homeip dot net
gcc-bugzilla@gcc.gnu.org
Fri Sep 19 20:50:00 GMT 2003
PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12343
Summary: class "index" can be declared but can not be used as a
type
Product: gcc
Version: 3.3.1
Status: UNCONFIRMED
Severity: critical
Priority: P2
Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: emre at ld dot homeip dot net
CC: gcc-bugs at gcc dot gnu dot org
I found a strange bug. "class index" can be declared without errors,
but can not be used as a type. See below example source.
I have full report below. In addition to that I triggered two more tests on
different platforms. only v2.95 gcc compiles:
Falied on windows: gcc (GCC) 3.2 (mingw special 20020817-1) (xp)
Succeeded on Solaris 2.7: Reading specs from /usr/local/lib/gcc-lib/
sparc-sun-solaris2.7/2.95.2/specs
gcc version 2.95.2 19991024 (release)
Linux details below.
Good luck,
Emre Celebi
============ bug.cpp =============
class index {}; index global; int main(void){return 0;}
--
=========== bug.ii ===============
# 1 "bug.cpp"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "bug.cpp"
class index {};
index global;
int main(void){return 0;}
--
=========== bug.s ==============
.file "bug.cpp"
.section .note.GNU-stack,"",@progbits
.ident "GCC: (GNU) 3.3.1 20030904 (Gentoo Linux 3.3.1-r1, propolice)"
--
========== output ==============
g++ -v -save-temps bug.cpp
Reading specs from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.1/specs
Configured with: /files/portage/tmpdir/portage/gcc-3.3.1-r1/work/gcc-3.3.1/
configure --prefix=/usr --bindir=/usr/i686-pc-linux-gnu/gcc-bin/3.3
--includedir=/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.1/include --datadir=/usr/
share/gcc-data/i686-pc-linux-gnu/3.3 --mandir=/usr/share/gcc-data/
i686-pc-linux-gnu/3.3/man --infodir=/usr/share/gcc-data/
i686-pc-linux-gnu/3.3/info --enable-shared --host=i686-pc-linux-gnu
--target=i686-pc-linux-gnu --with-system-zlib --enable-languages=c,c+
+,f77,objc,java --enable-threads=posix --enable-long-long --disable-checking
--enable-cstdio=stdio --enable-clocale=generic --enable-__cxa_atexit
--enable-version-specific-runtime-libs --with-gxx-include-dir=/usr/lib/
gcc-lib/i686-pc-linux-gnu/3.3.1/include/g++-v3 --with-local-prefix=/usr/local
--enable-shared --enable-nls --without-included-gettext --x-includes=/usr/
X11R6/include --x-libraries=/usr/X11R6/lib --enable-interpreter
--enable-java-awt=xlib --with-x --disable-multilib
Thread model: posix
gcc version 3.3.1 20030904 (Gentoo Linux 3.3.1-r1, propolice)
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.1/cc1plus -E -D__GNUG__=3 -quiet -v
-D__GNUC__=3 -D__GNUC_MINOR__=3 -D__GNUC_PATCHLEVEL__=1
-D_GNU_SOURCE bug.cpp
bug.ii
ignoring nonexistent directory "/usr/i686-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.1/include/g++-v3
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.1/include/g++-v3/i686-pc-linux-gnu
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.1/include/g++-v3/backward
/usr/local/include
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.1/include
/usr/include
End of search list.
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.1/cc1plus -fpreprocessed bug.ii -quiet
-dumpbase bug.cpp -auxbase bug -version -o bug.s
GNU C++ version 3.3.1 20030904 (Gentoo Linux 3.3.1-r1, propolice)
(i686-pc-linux-gnu)
compiled by GNU C version 3.3.1 20030904 (Gentoo Linux 3.3.1-r1,
propolice).
GGC heuristics: --param ggc-min-expand=72 --param ggc-min-heapsize=80469
bug.cpp:2: error: 'index' is used as a type, but is not defined as a type.
More information about the Gcc-bugs
mailing list