diff --git a/crates/generate/src/prepare_grammar/flatten_grammar.rs b/crates/generate/src/prepare_grammar/flatten_grammar.rs index 66f16fc0..cb0f1dae 100644 --- a/crates/generate/src/prepare_grammar/flatten_grammar.rs +++ b/crates/generate/src/prepare_grammar/flatten_grammar.rs @@ -266,7 +266,7 @@ pub(super) fn flatten_grammar( let used = symbol_is_used(&variables, symbol); for production in &variable.productions { - if production.steps.is_empty() && used { + if used && production.steps.is_empty() { Err(FlattenGrammarError::EmptyString(variable.name.clone()))?; }