语法中的Antlr错误100

时间:2015-04-23 11:01:34

标签: antlr antlr3 antlrworks

我在ANTLR工作1.5上的语法上得到ANTLR3错误100。但是,当我在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@[])

任何人都可以帮助我。

1 个答案:

答案 0 :(得分:0)

通过在顶部添加选项解决了我的问题,并使我的解析器语法只是语法。