SDCC is recently refusing to compile (what I believe
is) valid code that uses a typedef of a primitive type
enum as a member of a struct. This used to compile,
and "gcc -c -Wall" accepts it without any warnings, and
as nearly as I can tell it's valid C.
Tested with cvs checkout on Jan 5, 2004 using mcs51 on
Linux (redhat9). SDCC :
2.3.7 (Jan 5 2004) (UNIX)
Compile with "sdcc -c enum_test.c" or "sdcc -c
--model-large enum_test.c", or with "gcc -c -Wall
enum_test.c" (tested with gcc 3.2.2, supplied by redhat9).
Error from SDCC is:
enum_test.c:28: error: storage class not allowed here
-:0: error: code not generated for 'parse_event' due to
-:0: error: code not generated for 'parse_line' due to
Download the enum_test.c code here:
I will also attempt to attach a copy to this bug....