[antlr-interest] fragments..
Tobias Pape
Das.Linux at gmx.de
Mon Mar 26 05:51:03 PDT 2007
Hello Gavin,
you'll getting my enlightement-cookie today ;)
Am 2007-03-26 um 14:23 schrieb Gavin Lambert:
> At 22:20 26/03/2007, Tobias Pape wrote:
> >BinarySelector :
> [...]
> >( Equal ) =>
> > Equal {$type=Equal;}
> [...]
> >fragment Equal : '=' ;
> [...]
> >My problem is, when I change the Equal Rule, to be non-Fragment,
> >antlr warns me about Token Equal not beeing accessible.
> >--------
> >h248:~/dev/parsertest tobias$ antlr_ SOM.g
> >no such locale file org/antlr/tool/templates/messages/languages/
> >de.stg retrying with English locale
> >ANTLR Parser Generator Version 3.0b7 (??, 2007) 1989-2007
> >warning(208): SOM.g:461:1: The following token definitions are
> >unreachable: Equal
> >--------
> >weird, huh?
>
> Not really, that makes sense. It *is* inaccessible, because the
> BinarySelector rule will match it first. You should probably list
> your 'primitive' tokens first, giving them the chance to match and
> output first, and most of them probably shouldn't be fragments,
> since you're actually trying to output them. (You shouldn't use
> {$type = x;} for any x that is a fragment.)
ok.
the main problem was, that it's an v2-converted former-Java-targeted
Grammar.
Reodering my lexer Rules brought many improvements..
>
> Actually I don't really see the point of the whole BinarySelector
> rule. It seems too disconnected to be a useful rule. Especially
> since it doesn't even seem to be an output token in itself.
thats true. I 'managed' to eliminate the rule (an one similar to
this, too).
ok, pain for today lessed :)
have a nice day,
-Tobias
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PGP.sig
Type: application/pgp-signature
Size: 186 bytes
Desc: Signierter Teil der Nachricht
Url : http://www.antlr.org/pipermail/antlr-interest/attachments/20070326/3d122529/attachment.bin
More information about the antlr-interest
mailing list