从ANTLR4语法生成的Python(两者都是2/3)在语法的解析器python模块中产生以下代码行:
self.state = 79
self.state()
正如预期的那样,会导致以下错误:
TypeError: 'int' object is not callable
答案 0 :(得分:2)
错误代码是ANTLR语法中符号选择不佳的结果。由于生成的python代码使用变量名state
,因此如果语法也包含单词state
,则生成的代码将具有上述问题。解决方案是在语法中重命名该术语。