diff --git a/userspace/engine/rule_loader.cpp b/userspace/engine/rule_loader.cpp index 70d95ca6..b794bbbd 100644 --- a/userspace/engine/rule_loader.cpp +++ b/userspace/engine/rule_loader.cpp @@ -484,6 +484,11 @@ void rule_loader::define(configuration& cfg, macro_info& info) + info.source + ", skipping"); return; } + + auto prev = m_macro_infos.at(info.name); + THROW(prev && prev->source != info.source, + "Macro " + info.name + " has been re-defined with a different source"); + define_info(m_macro_infos, info, m_cur_index++); } @@ -507,7 +512,7 @@ void rule_loader::define(configuration& cfg, rule_info& info) return; } - auto prev = m_macro_infos.at(info.name); + auto prev = m_rule_infos.at(info.name); THROW(prev && prev->source != info.source, "Rule " + info.name + " has been re-defined with a different source");