[antlr-interest] Lexical nondeterminism
    Sohail Somani 
    sohail at taggedtype.net
       
    Sat Oct  1 22:52:34 PDT 2005
    
    
  
Given this simple lexer:
class L extends Lexer;
options
{
        testLiterals = true;
        k=2;
        caseSensitive=true;
        caseSensitiveLiterals=true;
}
SOME_KEYWORD
        : "if"
        ;
protected
LETTER
        : 'a'..'z' | 'A'..'Z'
        ;
protected
DIGIT
        : '0'..'9'
        ;
IDENTIFIER
        : LETTER (LETTER | DIGIT)*
        ;
antlr 2.7.6 tells me:
test.g: warning:lexical nondeterminism between rules SOME_KEYWORD and
IDENTIFIER upon
test.g:     k==1:'i'
test.g:     k==2:'f'
Why is this? I thought testLiterals is supposed to get antlr to compare
matched tokens to my literals?
Thanks
Sohail
    
    
More information about the antlr-interest
mailing list