Following is part of my grammar
TestLabelBase returns ResultExpressionRhs : 'VL:' path=STRING ;
AlphabateModifier : (abc?='ABC' | def?='DEF' | ghi?='GHI') ;
When I write following rule TestLabel it works fine:
TestLabel returns ResultExpressionRhs: TestLabelBase (modifier=AlphabateModifier)?;
but when I use following rule for TestLabel it says
An unassigned rule call is not allowed, when the 'current' was already created.
TestLabel returns ResultExpressionRhs: (modifier=AlphabateModifier)? TestLabelBase ;
Can you please explain the reason behind this?