Fix missing auxiliary tokens in lex error state

This commit is contained in:
Max Brunsfeld 2014-02-27 00:38:08 -08:00
parent 926b4ef242
commit c43ec90dad
5 changed files with 81 additions and 26 deletions

View file

@ -115,7 +115,9 @@ namespace tree_sitter {
void add_error_lex_state() {
LexItemSet error_item_set;
for (auto &pair : lex_grammar.rules)
error_item_set.insert(LexItem(pair.first, pair.second));
error_item_set.insert(LexItem(Symbol(pair.first), pair.second));
for (auto &pair : lex_grammar.aux_rules)
error_item_set.insert(LexItem(Symbol(pair.first, rules::SymbolTypeAuxiliary), pair.second));
add_advance_actions(error_item_set, LexTable::ERROR_STATE_ID);
add_accept_token_actions(error_item_set, LexTable::ERROR_STATE_ID);
}