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