Merge pull request #12243 from ethereum/forEachFix

Minor fix to forEach on Yul AST nodes.
This commit is contained in:
chriseth authored and GitHub committed 2021-11-05 14:10:00 +01:00
commit 213ce785c3
1 file changed
+3 -4
+3 -4
View File
@@ -111,8 +111,7 @@ template <
>
struct ForEach: Base
{
template<typename Callable>
ForEach(Callable&& _visitor): visitor(std::forward<Callable>(_visitor)) {}
ForEach(Visitor& _visitor): visitor(_visitor) {}
using Base::operator();
void operator()(Node& _node) override
@@ -121,7 +120,7 @@ struct ForEach: Base
Base::operator()(_node);
}
Visitor visitor;
Visitor& visitor;
};
}
@@ -130,7 +129,7 @@ struct ForEach: Base
template<typename Node, typename Entry, typename Visitor>
void forEach(Entry&& _entry, Visitor&& _visitor)
{
detail::ForEach<Node, std::decay_t<Visitor>>{std::forward<Visitor>(_visitor)}(std::forward<Entry>(_entry));
detail::ForEach<Node, Visitor&>{_visitor}(_entry);
}
}