I have run into this issue before and it'll simplify some of my rules
now that it's fixed. I believe the other thing that didn't carry into
synpreds was parameterized rules:

a[bool b]
 : {b}? c
 | d
 ;

x : (a[true])? => a[true]
  | y
  ;

Sam

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
On Behalf Of Terence Parr
Sent: Monday, September 08, 2008 7:29 PM
To: ANTLR-dev Dev
Cc: Leon Su
Subject: [antlr-dev] labels carried into synpreds now

* Labels on tokens, rules carry into synpreds now so semantic  
predicates work.
   This didn't work since labels were stripped in the synpred and they  
weren't
   defined in the generated method.

   a : x=A z=a {$x.text.equals($z.text)}? A
     | y=A a A A
     ;

edit //depot/code/antlr/main/CHANGES.txt#96
edit //depot/code/antlr/main/src/org/antlr/codegen/templates/Java/ 
Java.stg#138
edit //depot/code/antlr/main/src/org/antlr/tool/GrammarAST.java#47
Change 5256 submitted.

Ter
_______________________________________________
antlr-dev mailing list
[email protected]
http://www.antlr.org:8080/mailman/listinfo/antlr-dev
_______________________________________________
antlr-dev mailing list
[email protected]
http://www.antlr.org:8080/mailman/listinfo/antlr-dev

Reply via email to