[antlr-interest] token definitions can never be matched because prior tokens match the same input

Ilya Sterin sterini at gmail.com
Fri Nov 28 15:05:58 PST 2008


Based on the grammar you provided it doesn't seem you've defined it
correctly.  First, I'd define some of your patterns as lexer tokens.
Try this...


r0    :    'OK' R1 R2? R3?
       ;
R1   :    'V'
       |    'W'
       ;
R2    :    (APHA_OR_DIGIT)(APHA_OR_DIGIT)
       ;
R3    :    (APHA_OR_DIGIT)(APHA_OR_DIGIT)(APHA_OR_DIGIT)
       ;

fragment
APHA_OR_DIGIT  : ALPHA_UC | DIGIT;

fragment
ALPHA_UC  :  'A'..'Z'
                   ;

fragment
DIGIT          :  '0'..'9'
                   ;



On Thu, Nov 27, 2008 at 3:25 AM, matt.jazz <matt.jazz at laposte.net> wrote:
>
> Hello,
>
> I'm new to ANTLR and i need to create a translator. I encounter a problem
> with the following grammar.
>
> Grammar :
>
> r0    :    'OK' r1 r2? r3?
>        ;
>
> r1    :    'V'
>        |    'W'
>        ;
>
> r2    :    ('A'..'Z''0..9')('A'..'Z''0..9')('A'..'Z''0..9')
>        ;
>
> r3    :    ('A'..'Z''0..9')('A'..'Z''0..9')
>        ;
>
> Examples of valid sentences :
>
> OK W 65 0X9
> OK V AZ 78F
>
> Error :
>
> The following token definitions can never be matched because prior tokens
> match the same input
>
> Thanks for your help
>
> Matt
>
>
>
> Créez votre adresse électronique prenom.nom at laposte.net
> 1 Go d'espace de stockage, anti-spam et anti-virus intégrés.
>
>
> List: http://www.antlr.org/mailman/listinfo/antlr-interest
> Unsubscribe:
> http://www.antlr.org/mailman/options/antlr-interest/your-email-address
>
>
>


More information about the antlr-interest mailing list