summaryrefslogtreecommitdiffstats
path: root/src/generator_slr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/generator_slr.cpp')
-rw-r--r--src/generator_slr.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/generator_slr.cpp b/src/generator_slr.cpp
index 2989ee1..f277c5a 100644
--- a/src/generator_slr.cpp
+++ b/src/generator_slr.cpp
@@ -33,7 +33,7 @@ void generator_slr_t::generate_first_sets() {
std::set<item_t> items;
for (const std::string &nonterm : get_nonterminals())
- first_sets.insert(std::make_pair(nonterm, std::set<symbol_t>()));
+ first_sets.insert({nonterm, std::set<symbol_t>()});
for (const rule_t &rule : get_grammar().rules)
items.insert(rule.item);
@@ -74,7 +74,7 @@ void generator_slr_t::generate_follow_sets() {
generate_first_sets();
for (const std::string &nonterm : get_nonterminals())
- follow_sets.insert(std::make_pair(nonterm, std::set<symbol_t>()));
+ follow_sets.insert({nonterm, std::set<symbol_t>()});
follow_sets[""].insert(symbol_t::empty());
@@ -126,16 +126,16 @@ void generator_slr_t::generate_follow_sets() {
}
bool generator_slr_t::has_reduce_conflict(size_t from, const symbol_t &sym) {
- return reductions.count(std::make_pair(from, sym));
+ return reductions.count({from, sym});
}
void generator_slr_t::add_reduction(size_t from, size_t rule) {
const item_t &item = get_grammar().rules[rule].item;
for (const symbol_t sym : follow_sets[item.get_lhs()]) {
- if (get_shifts().count(std::make_pair(from, sym)))
+ if (get_shifts().count({from, sym}))
throw conflict_error("shift/reduce conflict");
- if (!reductions.insert(std::make_pair(std::make_pair(from, sym), rule)).second)
+ if (!reductions.insert({{from, sym}, rule}).second)
throw conflict_error("reduce/reduce conflict");
}
}