Or use the dot description producing methods and create a nice graphic with graphviz. Much easier to see that way.
Jim > -----Original Message----- > From: antlr-interest-boun...@antlr.org [mailto:antlr-interest- > boun...@antlr.org] On Behalf Of Gary Miller > Sent: Wednesday, July 20, 2011 3:44 PM > To: antlr-interest@antlr.org > Subject: Re: [antlr-interest] Deciphering the TreeWalker error message > ... > > I often find it usefully to print out the AST (toStringTree in Java) > and walk through the tree grammar manually. > > Regards > Gary > > On Thu, Jul 21, 2011 at 3:15 AM, Loring Craymer <lgcray...@yahoo.com> > wrote: > > > "UP" and "DOWN" tokens (start/end of child list for tree) do not have > > location information attached so no line/column error reporting. > > Mostly the error says that you started a subtree that your grammar > > does not match, probably an LPAREN or RPAREN rooted subtree from your > > report of cases where you do or do not get the error. > > > > --Loring > > > > > > > > >________________________________ > > >From: srinivasan karthikeyan pitchai < > > srinivasan.karthikeyan.pitc...@oracle.com> > > >To: antlr-interest@antlr.org > > >Cc: Terence Parr <pa...@cs.usfca.edu> > > >Sent: Wednesday, July 20, 2011 9:46 AM > > >Subject: [antlr-interest] Deciphering the TreeWalker error message > ... > > > > > >Hi Folks, > > >What does the ANTLR walker error message like the following mean? > > > > > >no viable alt; token=[@-1,0:0='DOWN' > > > > > > > > >Would appreciate any general guidance/suggestions to zero in on the > > >errors of this nature. > > > > > >Thanks, > > >Vasan > > > > > > > > >Input sql: > > >----------- > > > > > >select (1) from table1 > > >where 2 between 3 and 4; > > > > > > > > >Error Message: > > >-------------------- > > > > > >TDWalker1.g: node from after line 2:8 [start1, startStatement, dml, > > >query_term, query_expression, query, query_unit, where_clause, > > >condition_list, condition_subexpression, condition] Walker1: no > > >viable alt; token=[@-1,0:0='DOWN',<2>,0:-1] (decision=127 state 0) > > >decision=<<590:1: condition options {backtrack=true; } : ( ^( > > >comparison_operator ( condition_quantifier )? c1= condition c2= > > >condition ) | ^( BETWEEN expression ^( and_or_operator c1= condition > > >c2= condition ) ) | ^( condition_operator expression c1= condition > ^( > > >ESCAPE escape_character ) ) | ^( condition_operator expression c1= > > >condition ) > > >| ^( condition_operator expression_list c1= condition ) | ^( NOT c1= > > >condition ) | ^( EXISTS expression ) | ^( IS_NOT_NULL expression ) | > > >^( IS_NULL expression ) | ^( IS_NOT expression UNTIL_CHANGED ) | ^( > > >IS expression UNTIL_CHANGED ) | ^( IS_NOT expression UNTIL_CLOSED ) > | > > >^( IS expression UNTIL_CLOSED ) | expression | condition_list );>> > > context=...... > > > > > > > > >However the following SQL, that just doesn't have the parenthesis > > >around 1, works fine!!! > > > > > >select (1) from table1 > > >where 2 between 3 and 4; > > > > > > > > >List: http://www.antlr.org/mailman/listinfo/antlr-interest > > >Unsubscribe: > > http://www.antlr.org/mailman/options/antlr-interest/your-email- > address > > > > > > > > > > > > > List: http://www.antlr.org/mailman/listinfo/antlr-interest > > Unsubscribe: > > http://www.antlr.org/mailman/options/antlr-interest/your-email- > address > > > > List: http://www.antlr.org/mailman/listinfo/antlr-interest > Unsubscribe: http://www.antlr.org/mailman/options/antlr-interest/your- > email-address 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 il-antlr-inter...@googlegroups.com. To unsubscribe from this group, send email to il-antlr-interest+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/il-antlr-interest?hl=en.