From 45d2df5c3380a047b43c37a5fb1b25e5e9513800 Mon Sep 17 00:00:00 2001 From: overflowerror Date: Tue, 14 Dec 2021 15:13:35 +0100 Subject: [PATCH] fixed uninitialized hoisting processer moved init before generateFile used flattenedGrammar instead of original grammar (it) --- .../generator/parser/antlr/AbstractAntlrGrammarGenerator.xtend | 3 +-- .../generator/parser/antlr/AbstractAntlrGrammarGenerator.java | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/parser/antlr/AbstractAntlrGrammarGenerator.xtend b/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/parser/antlr/AbstractAntlrGrammarGenerator.xtend index 87e9d1425..17e1e9ff3 100644 --- a/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/parser/antlr/AbstractAntlrGrammarGenerator.xtend +++ b/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/parser/antlr/AbstractAntlrGrammarGenerator.xtend @@ -69,12 +69,11 @@ abstract class AbstractAntlrGrammarGenerator { val RuleNames ruleNames = RuleNames.getRuleNames(it, true); val Grammar flattened = new FlattenedGrammarAccess(ruleNames, filter).getFlattenedGrammar(); new CombinedGrammarMarker(combinedGrammar).attachToEmfObject(flattened) + init(flattened) fsa.generateFile(grammarNaming.getParserGrammar(it).grammarFileName, flattened.compileParser(options)) if (!isCombinedGrammar) { fsa.generateFile(grammarNaming.getLexerGrammar(it).grammarFileName, flattened.compileLexer(options)) } - - init } protected def isCombinedGrammar() { diff --git a/org.eclipse.xtext.xtext.generator/xtend-gen/org/eclipse/xtext/xtext/generator/parser/antlr/AbstractAntlrGrammarGenerator.java b/org.eclipse.xtext.xtext.generator/xtend-gen/org/eclipse/xtext/xtext/generator/parser/antlr/AbstractAntlrGrammarGenerator.java index 68946e5d4..4a748245e 100644 --- a/org.eclipse.xtext.xtext.generator/xtend-gen/org/eclipse/xtext/xtext/generator/parser/antlr/AbstractAntlrGrammarGenerator.java +++ b/org.eclipse.xtext.xtext.generator/xtend-gen/org/eclipse/xtext/xtext/generator/parser/antlr/AbstractAntlrGrammarGenerator.java @@ -92,13 +92,13 @@ public abstract class AbstractAntlrGrammarGenerator { final Grammar flattened = new FlattenedGrammarAccess(ruleNames, filter).getFlattenedGrammar(); boolean _isCombinedGrammar = this.isCombinedGrammar(); new CombinedGrammarMarker(_isCombinedGrammar).attachToEmfObject(flattened); + this._hoistingProcessor.init(flattened); fsa.generateFile(this.getGrammarNaming().getParserGrammar(it).getGrammarFileName(), this.compileParser(flattened, options)); boolean _isCombinedGrammar_1 = this.isCombinedGrammar(); boolean _not = (!_isCombinedGrammar_1); if (_not) { fsa.generateFile(this.getGrammarNaming().getLexerGrammar(it).getGrammarFileName(), this.compileLexer(flattened, options)); } - this._hoistingProcessor.init(it); } protected boolean isCombinedGrammar() {