On 9/17/2010 2:09 AM, Zachary Palmer wrote: > Hello all, > > I just tried to use the ANTLR grammar for ANTLR v3 which appears here: > http://www.antlr.org/grammar/ANTLR > > I tried building it in ANTLR v3.1.3 and got the following messages: > > warning(105): /resources/grammar/ANTLRv3.g:93:9: no lexer rule > corresponding to token: DOC_COMMENT > |---> : DOC_COMMENT? > > warning(105): /resources/grammar/ANTLRv3.g:248:6: no lexer rule > corresponding to token: SEMPRED > |---> | SEMPRED ( g='=>' -> GATED_SEMPRED[$g] | -> SEMPRED ) > > warning(105): /resources/grammar/ANTLRv3.g:157:4: no lexer rule > corresponding to token: DOC_COMMENT > |---> : DOC_COMMENT? > > warning(105): /resources/grammar/ANTLRv3.g:354:22: no lexer rule > corresponding to token: SEMPRED > |---> : (rew+='->' preds+=SEMPRED predicated+=rewrite_alternative)* > > warning(200): /resources/grammar/ANTLRv3.g:472:5: Decision can match > input such as "' ''$''A''N''T''L''R'' ''s''r''c'' ''"''\\''\'''"'' > ''0'..'9'" using multiple alternatives: 1, 2 > As a result, alternative(s) 2 were disabled for that input > |---> ( ' $ANTLR ' SRC // src directive > > I looked through the grammar and the messages seem to be correct: > DOC_COMMENT is defined as a special token and not as a lexical > terminal. Anyone have any suggestions as to what I should do about > this? I want to write some utilities to analyze the grammar I've > written and doing so by walking over an AST of the grammar seemed to be > the most promising choice. > > Thanks, > > Zach The token warnings are exactly that. They are warnings. Even though there aren't any lexer rules by these names the lexer can produce these tokens. DOC_COMMENT is a special case of ML_COMMENT and SEMPRED is a special case of ACTION. The ambiguous rule is probably okay; the alternative picked is probably the one that you want. In other words, these warnings can be ignored for your purpose.
List: http://www.antlr.org/mailman/listinfo/antlr-interest Unsubscribe: http://www.antlr.org/mailman/options/antlr-interest/your-email-address -- You received this message because you are subscribed to the Google Groups "il-antlr-interest" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/il-antlr-interest?hl=en.
