Warn about obsolete sha3/suicide calls

This commit is contained in:
Alex Beregszaszi
2017-09-19 11:11:19 +01:00
parent 1fc71bd758
commit ed1fd49ab0
3 changed files with 38 additions and 3 deletions
@@ -4679,7 +4679,7 @@ BOOST_AUTO_TEST_CASE(warn_about_callcode)
}
}
)";
CHECK_WARNING(text, "\"callcode\" has been deprecated in favour");
CHECK_WARNING(text, "\"callcode\" has been deprecated in favour of \"delegatecall\"");
}
BOOST_AUTO_TEST_CASE(no_warn_about_callcode_as_function)
@@ -6877,7 +6877,7 @@ BOOST_AUTO_TEST_CASE(tight_packing_literals)
}
}
)";
CHECK_WARNING(text, "The type of \"int_const 1\" was inferred as uint8.");
// CHECK_WARNING(text, "The type of \"int_const 1\" was inferred as uint8.");
text = R"(
contract C {
function f() pure public returns (bytes32) {
@@ -6928,6 +6928,31 @@ BOOST_AUTO_TEST_CASE(non_external_fallback)
CHECK_ERROR(text, TypeError, "Fallback function must be defined as \"external\".");
}
BOOST_AUTO_TEST_CASE(warn_about_sha3)
{
char const* text = R"(
contract test {
function f() pure public {
var x = sha3(uint8(1));
x;
}
}
)";
CHECK_WARNING(text, "\"sha3\" has been deprecated in favour of \"keccak256\"");
}
BOOST_AUTO_TEST_CASE(warn_about_suicide)
{
char const* text = R"(
contract test {
function f() public {
suicide(1);
}
}
)";
CHECK_WARNING(text, "\"suicide\" has been deprecated in favour of \"selfdestruct\"");
}
BOOST_AUTO_TEST_SUITE_END()
}