Ошибка Antlr 100 в грамматике

Я получаю ошибку 100 ANTLR3 из-за грамматики ниже на ANTLR работает 1.5. Однако, когда я компилирую это на eclipse Luna, он компилируется успешно:

datatype returns [Type type=null]
@after{
   $type=$t.type;
}
   :
     t=datatype_item -> ^(DATATYPE  datatype_item)
   ;

Это небольшая часть грамматики, и я получаю множество ошибок, подобных этой. У меня DATAType определяется как воображаемый токен, и в грамматике нет многострочных комментариев или комментариев к документам. Подробная информация об ошибке:

[15:43:08] error(100): SQL.g:897:25: syntax error: antlr: NoViableAltException(96@[])
    [15:43:08] error(100): SQL.g:897:27: syntax error: antlr: NoViableAltException(94@[])
    [15:43:08] error(100): SQL.g:897:27: syntax error: antlr: MissingTokenException(inserted [@-1,0:0='<missing SEMI>',<82>,897:26] at DATATYPE)
    [15:43:08] error(100): SQL.g:897:37: syntax error: antlr: MissingTokenException(inserted [@-1,0:0='<missing COLON>',<22>,897:36] at datatype_item)
    [15:43:08] error(100): SQL.g:897:50: syntax error: antlr: NoViableAltException(78@[])

Может ли кто-нибудь помочь мне в этом.


person user82504    schedule 23.04.2015    source источник
comment
посмотрите на строку 897, нет ли пропущенных ':' или ';'   -  person lp_    schedule 24.04.2015


Ответы (1)


Решил мою проблему, добавив параметры вверху, и сделал мою грамматику парсера просто грамматикой.

person user82504    schedule 24.04.2015