[antlr-interest] Solved: Java.g4 bug? Attrib refs in lexer action
    Graham Wideman 
    gwlist at grahamwideman.com
       
    Thu Oct  4 00:47:55 PDT 2012
    
    
  
Hi Ter and all:
Regarding the bug I posted earlier, evidently ANTLR 4 requires different syntax for the attribute references in lexer actions. 
In Java.g4:
----------
Change:
----------
ENUM:   'enum' {if (!enumIsKeyword) $type=Identifier;}
    ;
ASSERT
    :   'assert' {if (!assertIsKeyword) $type=Identifier;}
    ;
----------
To:
----------
ENUM:   'enum' {if (!enumIsKeyword) setType(Identifier);}
    ;
ASSERT
    :   'assert' {if (!assertIsKeyword) setType(Identifier);}
    ;
----------
This might apply starting only with ANTLR4.0b2, since the earlier email thread "Bug in antlr4" discussing a different problem with Java.g4 didn't mention the problem described above.
-- Graham
    
    
More information about the antlr-interest
mailing list