readding conditionals but with slight changes

This commit is contained in:
VoR0220 2016-03-31 12:15:49 -05:00
parent 1b39d3b5d4
commit 3fc67245bf

View File

@ -132,7 +132,6 @@ tuple<Token::Value, unsigned int, unsigned int> Token::fromIdentifierOrKeyword(s
Token::Value keyword = keywordByName(baseType);
if (keyword == Token::Bytes)
{
solAssert(m != -1, "Invalid type M in fixed command. Should not reach here.");
if (0 < m && m <= 32 && positionX == _literal.end())
return make_tuple(Token::BytesM, m, 0);
}
@ -140,7 +139,6 @@ tuple<Token::Value, unsigned int, unsigned int> Token::fromIdentifierOrKeyword(s
{
if (0 < m && m <= 256 && m % 8 == 0 && positionX == _literal.end())
{
solAssert(m != -1, "Invalid type M in fixed command. Should not reach here.");
if (keyword == Token::UInt)
return make_tuple(Token::UIntM, m, 0);
else
@ -157,12 +155,13 @@ tuple<Token::Value, unsigned int, unsigned int> Token::fromIdentifierOrKeyword(s
) {
int n = parseSize(positionX + 1, _literal.end());
if (
0 <= m && m <= 256 &&
0 <= n && n <= 256 &&
m + n > 0 &&
m + n <= 256 &&
m % 8 == 0 &&
n % 8 == 0
) {
solAssert(n != -1, "Invalid type N in fixed command. Should not reach here.");
if (keyword == Token::UFixed)
return make_tuple(Token::UFixedMxN, m, n);
else