Please read the API docs for C.

However:

rule
@declarations
{
  int flag;
}
@init
{
 flag = 0;
}
: X T
;

> -----Original Message-----
> From: antlr-interest-boun...@antlr.org [mailto:antlr-interest-
> boun...@antlr.org] On Behalf Of yushang
> Sent: Monday, November 07, 2011 5:26 AM
> To: antlr-interest@antlr.org
> Subject: [antlr-interest] init bug
>
> Hi , everyone,
> I found varibale put in init section will raise compiler error , for
> example test @init{ int flag=0; }
>  :  expr -> ^(EXPR expr)
>  ;
> will generate following code fragment
> ...
> root_0 = NULL;
> int flag = 0;
> ...
> this will be error by C compiler , because C language do not allow
> variable declaration middle of block.
> BTW I'm using ANTLR v3.4 and C runtime v3.4 Many thanks
>
> List: http://www.antlr.org/mailman/listinfo/antlr-interest
> Unsubscribe: http://www.antlr.org/mailman/options/antlr-interest/your-
> email-address

List: http://www.antlr.org/mailman/listinfo/antlr-interest
Unsubscribe: 
http://www.antlr.org/mailman/options/antlr-interest/your-email-address

-- 
You received this message because you are subscribed to the Google Groups 
"il-antlr-interest" group.
To post to this group, send email to il-antlr-inter...@googlegroups.com.
To unsubscribe from this group, send email to 
il-antlr-interest+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/il-antlr-interest?hl=en.

Reply via email to