Merge pull request #9388 from ethereum/develop

Merge develop into breaking.
This commit is contained in:
chriseth
2020-07-13 14:55:21 +02:00
committed by GitHub
52 changed files with 467 additions and 229 deletions
+1 -1
View File
@@ -237,7 +237,7 @@ void AsmAnalyzer::operator()(VariableDeclaration const& _varDecl)
m_errorReporter.typeError(
3947_error,
variable.location,
"Assigning value of type \"" + givenType.str() + "\" to variable of type \"" + variable.type.str() + "."
"Assigning value of type \"" + givenType.str() + "\" to variable of type \"" + variable.type.str() + "\"."
);
}
}
+5 -5
View File
@@ -165,7 +165,7 @@ void CodeTransform::deleteVariable(Scope::Variable const& _var)
{
yulAssert(m_allowStackOpt, "");
yulAssert(m_context->variableStackHeights.count(&_var) > 0, "");
m_unusedStackSlots.insert(m_context->variableStackHeights[&_var]);
m_unusedStackSlots.insert(static_cast<int>(m_context->variableStackHeights[&_var]));
m_context->variableStackHeights.erase(&_var);
m_context->variableReferences.erase(&_var);
m_variablesScheduledForDeletion.erase(&_var);
@@ -402,7 +402,7 @@ void CodeTransform::operator()(FunctionDefinition const& _function)
yulAssert(m_scope->identifiers.count(_function.name), "");
Scope::Function& function = std::get<Scope::Function>(m_scope->identifiers.at(_function.name));
int height = m_evm15 ? 0 : 1;
size_t height = m_evm15 ? 0 : 1;
yulAssert(m_info.scopes.at(&_function.body), "");
Scope* varScope = m_info.scopes.at(m_info.virtualBlocks.at(&_function).get()).get();
yulAssert(varScope, "");
@@ -420,7 +420,7 @@ void CodeTransform::operator()(FunctionDefinition const& _function)
else
m_assembly.appendLabel(functionEntryID(_function.name, function));
m_assembly.setStackHeight(height);
m_assembly.setStackHeight(static_cast<int>(height));
for (auto const& v: _function.returnVariables)
{
@@ -457,7 +457,7 @@ void CodeTransform::operator()(FunctionDefinition const& _function)
StackTooDeepError error(_error);
if (error.functionName.empty())
error.functionName = _function.name;
stackError(std::move(error), height);
stackError(std::move(error), static_cast<int>(height));
}
m_assembly.appendLabel(m_context->functionExitPoints.top().label);
@@ -502,7 +502,7 @@ void CodeTransform::operator()(FunctionDefinition const& _function)
}
else
{
m_assembly.appendInstruction(evmasm::swapInstruction(stackLayout.size() - static_cast<size_t>(stackLayout.back()) - 1));
m_assembly.appendInstruction(evmasm::swapInstruction(static_cast<unsigned>(stackLayout.size()) - static_cast<unsigned>(stackLayout.back()) - 1u));
swap(stackLayout[static_cast<size_t>(stackLayout.back())], stackLayout.back());
}
for (size_t i = 0; i < stackLayout.size(); ++i)