Improve error message when trying to shift by fractional number

This commit is contained in:
Federico Bond
2018-03-22 10:05:49 -03:00
parent ba209fe485
commit b79531bebf
3 changed files with 12 additions and 1 deletions
@@ -5866,6 +5866,16 @@ BOOST_AUTO_TEST_CASE(shift_constant_right_excessive_rvalue)
CHECK_ERROR(text, TypeError, "Operator >> not compatible with types int_const 66 and int_const 4294967296");
}
BOOST_AUTO_TEST_CASE(shift_constant_right_fractional)
{
char const* text = R"(
contract C {
uint public a = 0x42 >> (1 / 2);
}
)";
CHECK_ERROR(text, TypeError, "Operator >> not compatible with types int_const 66 and rational_const 1 / 2");
}
BOOST_AUTO_TEST_CASE(inline_assembly_unbalanced_positive_stack)
{
char const* text = R"(