Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 这些ANTLR警告意味着什么_Java_Parsing_Antlr_Antlr3 - Fatal编程技术网

Java 这些ANTLR警告意味着什么

Java 这些ANTLR警告意味着什么,java,parsing,antlr,antlr3,Java,Parsing,Antlr,Antlr3,我有一个语法,似乎是工作,但产生了大量的警告。 这些警告有多严重?有人能就如何修复这些警告提供一些指导吗 Warning 200 Decision can match input such as "LCURLY LPAREN" using multiple alternatives: 1, 2 As a result, alternative(s) 2 were disabled for that input Warning 200: Decision can match input suc

我有一个语法,似乎是工作,但产生了大量的警告。 这些警告有多严重?有人能就如何修复这些警告提供一些指导吗

Warning 200
Decision can match input such as "LCURLY LPAREN" using multiple alternatives: 1, 2

As a result, alternative(s) 2 were disabled for that input

Warning 200:
Decision can match input such as "LCURLY PLUS" using multiple alternatives: 1, 2

As a result, alternative(s) 2 were disabled for that input
Semantic predicates were present but were hidden by actions.

Warning 203
Input such as "Date" is insufficiently covered with predicates at locations: alt 1: line 346: at Date, al
t 2: line 346: at Date
对于警告(200),禁用替代方案会产生什么影响?我认为最主要的是,潜在的AST可能有不同的形状,这取决于禁用的替代方案


我不确定警告(203)的含义。

您的语法可能不明确,因为替代路径无法解析相同的输入字符串。因此,解析器将不知道哪种方法是“正确的”。您应该更正语法或语义谓词以防止歧义。

我将ANTLR警告视为错误,因为它几乎总是意味着生成的解析器不会像我期望的那样进行解析,特别是当ANTLR禁用替代项时。我没有一个很好的修正它们的一般性建议(这里的其他人可能有),但是如果你发布语法的那一部分,也许我或其他人可以帮助修正一个或多个警告。你应该发布语法。