From: Ullrich von Bassewitz (uz_at_musoftware.de)
Date: 1999-09-13 22:59:55
> BTW, does cc65 compile tricks like
>
> int main(){return printf("hello world\n"), 0; }
>
> properly? In other words, is it strictly based on the C grammar, or is
> the parser mainly ad-hoc code?
The parser is based on the actual ISO-C grammar in most places, and yes, it
translates the above code correctly. There were several places where the
original code was not ISO-C compliant, but I have fixed most of them, at least
the ones, I have noticed.
One of the remaining areas where cc65 is not very standard compliant is the
preprocessor. It doesn't know about the "defined" keyword, and uses the
expression evaluation of the compiler to save some code. As a result, it
accepts things like
int i;
...
#if (int) (i) /* Will take constant address of i */
...
#endif
Regards
Uz
--
Ullrich von Bassewitz uz_at_musoftware.de
----------------------------------------------------------------------
To unsubscribe from the list send mail to majordomo_at_musoftware.de with
the string "unsubscribe cc65" in the body(!) of the mail.
This archive was generated by hypermail 2.1.3 : 2001-12-14 22:05:45 CET