Fedora Account System
Red Hat Associate
Red Hat Customer
Drl10ExprParser.parse feeds the constraint text into the ANTLR4-generated DRL10Expressions grammar. Parenthesised sub-expressions are parsed by mutually recursive descent rules (unaryExpressionNotPlusMinus -> castExpression/primary/parExpression -> conditionalExpression ... shiftExpression/additiveExpression ...); each nesting level adds one set of grammar frames with no depth counter. At ~300-400 levels the parser thread exhausts its stack and a raw java.lang.StackOverflowError propagates out of Drl10ExprParser.parse (syntax errors are collected, but stack exhaustion is not converted into a DroolsParserException).