aboutsummaryrefslogtreecommitdiffstats
path: root/libyul/optimiser/Disambiguator.h
diff options
context:
space:
mode:
Diffstat (limited to 'libyul/optimiser/Disambiguator.h')
-rw-r--r--libyul/optimiser/Disambiguator.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/libyul/optimiser/Disambiguator.h b/libyul/optimiser/Disambiguator.h
index bb83417b..ec6a0879 100644
--- a/libyul/optimiser/Disambiguator.h
+++ b/libyul/optimiser/Disambiguator.h
@@ -32,6 +32,7 @@
namespace yul
{
+struct Dialect;
/**
* Creates a copy of a Yul AST replacing all identifiers by unique names.
@@ -40,10 +41,14 @@ class Disambiguator: public ASTCopier
{
public:
explicit Disambiguator(
+ Dialect const& _dialect,
AsmAnalysisInfo const& _analysisInfo,
std::set<YulString> const& _externallyUsedIdentifiers = {}
):
- m_info(_analysisInfo), m_externallyUsedIdentifiers(_externallyUsedIdentifiers), m_nameDispenser(m_externallyUsedIdentifiers)
+ m_info(_analysisInfo),
+ m_dialect(_dialect),
+ m_externallyUsedIdentifiers(_externallyUsedIdentifiers),
+ m_nameDispenser(_dialect, m_externallyUsedIdentifiers)
{
}
@@ -58,6 +63,7 @@ protected:
void leaveScopeInternal(Scope& _scope);
AsmAnalysisInfo const& m_info;
+ Dialect const& m_dialect;
std::set<YulString> const& m_externallyUsedIdentifiers;
std::vector<Scope*> m_scopes;