[antlr-interest] help understanding the parsing error

Mikhail Kruk meshko at gmail.com
Fri May 11 11:56:57 PDT 2012


I tried it and it doesn't seem to make a difference.

On Fri, May 11, 2012 at 2:28 PM, Jim Idle <jimi at temporal-wave.com> wrote:
> Do not use 'XYZ'. Create a token in the lexer:
>
> XYZ : 'XYZ' ;
>
> And declare it before your ID rule. Do this for all the literals in your
> parser grammar.
>
> Jim
>
>> -----Original Message-----
>> From: antlr-interest-bounces at antlr.org [mailto:antlr-interest-
>> bounces at antlr.org] On Behalf Of Mikhail Kruk
>> Sent: Friday, May 11, 2012 8:30 AM
>> To: antlr-interest at antlr.org
>> Subject: [antlr-interest] help understanding the parsing error
>>
>> I have a very simple grammar (attached, but here's the relevant part):
>>
>>
>> start
>>       :       (simple_expression | dotted_identifier)*
>>       ;
>>
>> simple_expression
>>       :       'XYZ' 'HAHA'
>>       ;
>>
>> identifier
>>       :       ID
>>       ;
>>
>> dotted_identifier
>>       :       identifier ( DOT identifier )*
>>       ;
>>
>> It pretty much works as expected, accepting "XYZ HAHA", "BLAH.TEST"
>> and "ABC".  But when I try to parse "XYZ.A" or "A.XYZ" it gets confused
>> trying to apply simple_expression to 'XYZ'.  I don't understand why
>> this is happening.  Shouldn't backtracking tear right through this?
>>
>> Thanks!
>> -m
>
> List: http://www.antlr.org/mailman/listinfo/antlr-interest
> Unsubscribe: http://www.antlr.org/mailman/options/antlr-interest/your-email-address
-------------- next part --------------
A non-text attachment was scrubbed...
Name: t.g
Type: application/octet-stream
Size: 446 bytes
Desc: not available
Url : http://www.antlr.org/pipermail/antlr-interest/attachments/20120511/81a74fbb/attachment.obj 


More information about the antlr-interest mailing list