diff --git a/cli/src/generate/prepare_grammar/extract_default_aliases.rs b/cli/src/generate/prepare_grammar/extract_default_aliases.rs index 13edb090..d39bf8dd 100644 --- a/cli/src/generate/prepare_grammar/extract_default_aliases.rs +++ b/cli/src/generate/prepare_grammar/extract_default_aliases.rs @@ -62,6 +62,18 @@ pub(super) fn extract_default_aliases( } } + for symbol in syntax_grammar.extra_symbols.iter() { + let mut status = match symbol.kind { + SymbolType::External => &mut external_status_list[symbol.index], + SymbolType::NonTerminal => &mut non_terminal_status_list[symbol.index], + SymbolType::Terminal => &mut terminal_status_list[symbol.index], + SymbolType::End | SymbolType::EndOfNonTerminalExtra => { + panic!("Unexpected end token") + } + }; + status.appears_unaliased = true; + } + let symbols_with_statuses = (terminal_status_list .iter_mut() .enumerate() diff --git a/test/fixtures/test_grammars/aliased_rules/corpus.txt b/test/fixtures/test_grammars/aliased_rules/corpus.txt index f843dec8..32093729 100644 --- a/test/fixtures/test_grammars/aliased_rules/corpus.txt +++ b/test/fixtures/test_grammars/aliased_rules/corpus.txt @@ -7,7 +7,7 @@ Method calls --- (statement - (star_aliased) + (star) (call_expression (member_expression (variable_name)