Raise error on oversized number literals in assembly

This commit is contained in:
Alex Beregszaszi
2018-02-22 01:02:19 +01:00
parent d01786f0aa
commit ae02bb5aad
4 changed files with 11 additions and 0 deletions
+8
View File
@@ -82,6 +82,14 @@ bool AsmAnalyzer::operator()(assembly::Literal const& _literal)
);
return false;
}
else if (_literal.kind == assembly::LiteralKind::Number && bigint(_literal.value) > u256(-1))
{
m_errorReporter.typeError(
_literal.location,
"Number literal too large (> 256 bits)"
);
return false;
}
m_info.stackHeightInfo[&_literal] = m_stackHeight;
return true;
}