Community
Participate
Working Groups
With this construct: ('{' ( ('when' ':' condExpr = Expression ';')? & ("name" ':' name = CapabilityName ';') & ("version" ':' version = VersionLiteral ';')? ) '}')? I get errors while editing (see stack trace below). Seems to happen when adding/modifying the "name :" part. This happens in nightly build 2010 05 29, and 05 31 for the Antlr features. Caused by: java.lang.IllegalStateException at org.eclipse.xtext.parser.antlr.UnorderedGroupHelper$State.canLeave(UnorderedGroupHelper.java:145) at org.eclipse.xtext.parser.antlr.UnorderedGroupHelper.canLeave(UnorderedGroupHelper.java:104) at org.eclipse.b3.parser.antlr.internal.InternalBeeLangParser.ruleRequiredCapability_Unfiltered(InternalBeeLangParser.java:6005) at org.eclipse.b3.parser.antlr.internal.InternalBeeLangParser.ruleCapabilityBuildResultReference(InternalBeeLangParser.java:12955) at org.eclipse.b3.parser.antlr.internal.InternalBeeLangParser.synpred110_fragment(InternalBeeLangParser.java:57187) at org.eclipse.b3.parser.antlr.internal.InternalBeeLangParser.synpred110(InternalBeeLangParser.java:59881) at org.eclipse.b3.parser.antlr.internal.InternalBeeLangParser.ruleBuildResultReference(InternalBeeLangParser.java:12461) at org.eclipse.b3.parser.antlr.internal.InternalBeeLangParser.rulePrerequisite(InternalBeeLangParser.java:11878) at org.eclipse.b3.parser.antlr.internal.InternalBeeLangParser.ruleBuilderInput(InternalBeeLangParser.java:16918) at org.eclipse.b3.parser.antlr.internal.InternalBeeLangParser.ruleBuilder(InternalBeeLangParser.java:15070) at org.eclipse.b3.parser.antlr.internal.InternalBeeLangParser.ruleBuildUnit(InternalBeeLangParser.java:2694) at org.eclipse.b3.parser.antlr.internal.InternalBeeLangParser.ruleBeeModel(InternalBeeLangParser.java:487) at org.eclipse.b3.parser.antlr.internal.InternalBeeLangParser.entryRuleBeeModel(InternalBeeLangParser.java:108) at sun.reflect.GeneratedMethodAccessor28.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.eclipse.xtext.parser.antlr.AbstractInternalAntlrParser.parse(AbstractInternalAntlrParser.java:492)
*** Bug 320751 has been marked as a duplicate of this bug. ***
This is caused by backtracking. Antlr does not execute actions when the parser is in the backtracking mode. However, UnorderedGroups are implemented with a combination of actions and predicates. Predicates will be evaluated but the correct result relies on actions to be invoked.
Fixed in HEAD.
Closing bug which were set to RESOLVED before Eclipse Neon.0.