summaryrefslogtreecommitdiffstats
path: root/src/parse.y
diff options
context:
space:
mode:
Diffstat (limited to 'src/parse.y')
-rw-r--r--src/parse.y8
1 files changed, 1 insertions, 7 deletions
diff --git a/src/parse.y b/src/parse.y
index 56fc567..8d8a081 100644
--- a/src/parse.y
+++ b/src/parse.y
@@ -94,13 +94,7 @@ directive |= "%extra_arg" BLOCK(type) varname(name) {
}
directive |= rule(rule) {
- if (grammar->rules.empty()) {
- solar::item_t init("");
- init.get_rhs().push_back(solar::symbol_t::make_nonterm(rule->item.get_lhs().c_str()));
- grammar->rules.emplace_back(solar::rule_t {std::move(init), vars_t(), std::string()});
- }
-
- grammar->rules.push_back(*rule);
+ grammar->add_rule(*rule);
}