This commit is contained in:
LianaHus committed 2015-11-06 18:45:06 +01:00
1 parent 79177de80b
commit 7eb162c0df
3 files changed
+60 -35

No files matched your search

+18 -6
View File
@@ -84,6 +84,9 @@ bool NameAndTypeResolver::resolveNamesAndTypes(ContractDefinition& _contract)
importInheritedScope(*base);
}
if (!success)
return false;
for (ASTPointer<StructDefinition> const& structDef: _contract.definedStructs())
if (!resolver.resolve(*structDef))
success = false;
@@ -97,6 +100,8 @@ bool NameAndTypeResolver::resolveNamesAndTypes(ContractDefinition& _contract)
if (!resolver.resolve(*event))
success = false;
// these can contain code, only resolve parameters for now
if (!success)
return false;
for (ASTPointer<ModifierDefinition> const& modifier: _contract.functionModifiers())
{
m_currentScope = &m_scopes[modifier.get()];
@@ -104,19 +109,24 @@ bool NameAndTypeResolver::resolveNamesAndTypes(ContractDefinition& _contract)
if (!resolver.resolve(*modifier))
success = false;
}
if (!success)
return false;
for (ASTPointer<FunctionDefinition> const& function: _contract.definedFunctions())
{
m_currentScope = &m_scopes[function.get()];
ReferencesResolver referencesResolver(
if (! ReferencesResolver(
m_errors,
*this,
&_contract,
function->returnParameterList().get()
);
if (!resolver.resolve(*function))
).resolve(*function))
success = false;
}
if (!success)
return false;
m_currentScope = &m_scopes[&_contract];
// now resolve references inside the code
@@ -127,17 +137,19 @@ bool NameAndTypeResolver::resolveNamesAndTypes(ContractDefinition& _contract)
if (!resolver.resolve(*modifier))
success = false;
}
if (!success)
return false;
for (ASTPointer<FunctionDefinition> const& function: _contract.definedFunctions())
{
m_currentScope = &m_scopes[function.get()];
ReferencesResolver referencesResolver(
if (! ReferencesResolver(
m_errors,
*this,
&_contract,
function->returnParameterList().get(),
true
);
if (!resolver.resolve(*function))
).resolve(*function))
success = false;
}
if (!success)