pardo@june.cs.washington.edu (David Keppel) (02/19/89)
=> This is NOT the same as my last posting. <= => The *bug* MAY be the same bug. <= SUMMARY: Missing '=' causes rest of file to be ignored. GCC: 1.30 TARGET: VAX/ULTRIX Built using standard shell script. The following program has an (erroneous) initialization of `struct bug'. There is no equals sign after the token `buggy'. The file after that declaration is ignored. I believe that this is an illegal construct, so gcc should print a diagnostic rather than compiling the file. If the construct is legal, then it should not be ignoring the rest of the file. I haven't tried this with 1.33, so it might be fixed already. gcc -v -g -W -Wimplicit -Wcomment -Wunused -Wreturn-type -c bug.c gcc version 1.30 /uns/src/GNU/g++/lib/gcc-cpp -v -undef -D__GNU__ -D__GNUC__ -Dvax -Dunix -Wcomment bug.c /tmp/cc018975.cpp GNU CPP version 1.30 /uns/src/GNU/g++/lib/gcc-cc1 /tmp/cc018975.cpp -quiet -dumpbase bug.c -g -W -Wimplicit -Wcomment -Wunused -Wreturn-type -version -o /tmp/cc018975.s GNU C version 1.30 (vax) compiled by GNU C version 1.30. as /tmp/cc018975.s -o bug.o Loading a.out ... Undefined: _main *** Error code 1 Stop. bug.c: typedef struct a_t { int x; } a_t; a_t buggy { 5; }; this is a test this is only a test end of bug.c ;-D on ( A matter of small atoms ) Pardo -- pardo@cs.washington.edu {rutgers,cornell,ucsd,ubc-cs,tektronix}!uw-beaver!june!pardo