Merge pull request #10740 from ethereum/useZip

Use zip.
This commit is contained in:
chriseth 2021-01-12 09:40:37 +01:00 committed by GitHub
commit a29493120e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -39,6 +39,8 @@
#include <boost/algorithm/string/predicate.hpp> #include <boost/algorithm/string/predicate.hpp>
#include <boost/range/adaptor/reversed.hpp> #include <boost/range/adaptor/reversed.hpp>
#include <range/v3/view/zip.hpp>
#include <memory> #include <memory>
#include <vector> #include <vector>
@ -980,18 +982,17 @@ void TypeChecker::endVisit(TryStatement const& _tryStatement)
to_string(parameters.size()) + to_string(parameters.size()) +
" variables." " variables."
); );
size_t len = min(returnTypes.size(), parameters.size()); for (auto&& [parameter, returnType]: ranges::views::zip(parameters, returnTypes))
for (size_t i = 0; i < len; ++i)
{ {
solAssert(returnTypes[i], ""); solAssert(returnType, "");
if (parameters[i] && *parameters[i]->annotation().type != *returnTypes[i]) if (parameter && *parameter->annotation().type != *returnType)
m_errorReporter.typeError( m_errorReporter.typeError(
6509_error, 6509_error,
parameters[i]->location(), parameter->location(),
"Invalid type, expected " + "Invalid type, expected " +
returnTypes[i]->toString(false) + returnType->toString(false) +
" but got " + " but got " +
parameters[i]->annotation().type->toString() + parameter->annotation().type->toString() +
"." "."
); );
} }