The "year" denomination is deprecated

This commit is contained in:
Alex Beregszaszi
2018-04-23 16:19:51 +01:00
parent 75faed7c55
commit 1ac0090f31
5 changed files with 30 additions and 0 deletions
+16
View File
@@ -2220,6 +2220,7 @@ void TypeChecker::endVisit(Literal const& _literal)
"For more information please see https://solidity.readthedocs.io/en/develop/types.html#address-literals"
);
}
if (_literal.isHexNumber() && _literal.subDenomination() != Literal::SubDenomination::None)
{
if (v050)
@@ -2235,6 +2236,21 @@ void TypeChecker::endVisit(Literal const& _literal)
"You can use an expression of the form \"0x1234 * 1 day\" instead."
);
}
if (_literal.subDenomination() == Literal::SubDenomination::Year)
{
if (v050)
m_errorReporter.typeError(
_literal.location(),
"Using \"years\" as a unit denomination is deprecated."
);
else
m_errorReporter.warning(
_literal.location(),
"Using \"years\" as a unit denomination is deprecated."
);
}
if (!_literal.annotation().type)
_literal.annotation().type = Type::forLiteral(_literal);