Merge pull request #2873 from ethereum/largearray

Change array too large error message as it is valid for non-calldata too
This commit is contained in:
chriseth 2017-09-06 11:34:10 +02:00 committed by GitHub
commit 5922306193
2 changed files with 4 additions and 4 deletions

View File

@ -623,7 +623,7 @@ bool TypeChecker::visit(VariableDeclaration const& _variable)
(arrayType->location() == DataLocation::CallData)) &&
!arrayType->validForCalldata()
)
m_errorReporter.typeError(_variable.location(), "Array is too large to be encoded as calldata.");
m_errorReporter.typeError(_variable.location(), "Array is too large to be encoded.");
return false;
}

View File

@ -6217,21 +6217,21 @@ BOOST_AUTO_TEST_CASE(too_large_arrays_for_calldata)
}
}
)";
CHECK_ERROR(text, TypeError, "Array is too large to be encoded as calldata.");
CHECK_ERROR(text, TypeError, "Array is too large to be encoded.");
text = R"(
contract C {
function f(uint[85678901234] a) internal {
}
}
)";
CHECK_SUCCESS_NO_WARNINGS(text);
CHECK_ERROR(text, TypeError, "Array is too large to be encoded.");
text = R"(
contract C {
function f(uint[85678901234] a) {
}
}
)";
CHECK_ERROR(text, TypeError, "Array is too large to be encoded as calldata.");
CHECK_ERROR(text, TypeError, "Array is too large to be encoded.");
}
BOOST_AUTO_TEST_CASE(explicit_literal_to_storage_string)