Antlr XText正确打开回溯功能

Antlr XText正确打开回溯功能,antlr,xtext,Antlr,Xtext,我在X-Text中有一个很大的语法,它有一些歧义。我完全知道这将导致的问题,但我希望在优化语法之前能够测试语法 我一直试图在X-Text工作流中打开回溯,但似乎无法管理它。我在主项目下的mwe2文件中有以下代码: language = StandardLanguage { fragment=parser.antlr.XtextAntlrGeneratorFragment2 auto-inject{ options = { b

我在X-Text中有一个很大的语法,它有一些歧义。我完全知道这将导致的问题,但我希望在优化语法之前能够测试语法

我一直试图在X-Text工作流中打开回溯,但似乎无法管理它。我在主项目下的mwe2文件中有以下代码:

language = StandardLanguage {
        fragment=parser.antlr.XtextAntlrGeneratorFragment2 auto-inject{
            options = {
                backtrack= true
            }
        }
        fragment=idea.parser.antlr.XtextAntlrIDEAGeneratorFragment auto-inject{
            options={
                backtrack=true
            }
        }
...
但我仍然在表单中遇到错误:

error(211): ../org.xtext.example.CSPTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:1183:2: [fatal] rule ruleAny has non-LL(*) decision due to recursive rule invocations reachable from alts 1,2.  Resolve by left-factoring or using syntactic predicates or using backtrack=true option.

如何正确启用回溯功能以防止出现这种情况?

对于新发电机,正确设置为:

parserGenerator = {
  options = {
    backtrack = true
  }
}