> I haven't tried it, so this might be nonsense, but I think that YACC
> simply copies the emitted code from the source file to the final C
> file.

Yacc has to parse the emitted code enough to be able to replace references to 
$$, $1, etc with the corresponding tokens from the recognized grammar element.  
for example, a grammar I have lying around contains:

enum_mulable:   enum_or_int
        |                       '(' enum_expr ')'                               
{ $$ = $2; }
        ;

enum_or_int:    INTEGER
        |                       '-' INTEGER                                     
{ $$ = -$2; }
        |                       IDENT {
                                        int value;
                                        if (is_enum($1, &value)) {
                                                $$ = value;
                                        } else {
                                                lexerror_nl("%s is not a 
constant",$1);
                                                $$ = 0;
                                        }
                                }
        ;

Yacc changes those $ expressions into references into its value stack.

Thus, Objective-C may trip it up, but then again it may not.

_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to