[antlr-interest] Deciphering the TreeWalker error message ...

srinivasan karthikeyan pitchai srinivasan.karthikeyan.pitchai at oracle.com
Wed Jul 20 09:46:30 PDT 2011


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;



More information about the antlr-interest mailing list