diff options
author | Alex Beregszaszi <alex@rtfs.hu> | 2017-10-02 19:14:15 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-10-02 19:14:15 +0800 |
commit | 2a8e965bb135a806aaaab9aa5df24da6d7def1ba (patch) | |
tree | 715cd3a3b22146ca7ec22532d62a2e3c469e7e76 | |
parent | c61610302aa2bfa029715b534719d25fe3949059 (diff) | |
parent | cddfec27eef40c1bbf16e8d5881030b85e1082c8 (diff) | |
download | dexon-solidity-2a8e965bb135a806aaaab9aa5df24da6d7def1ba.tar dexon-solidity-2a8e965bb135a806aaaab9aa5df24da6d7def1ba.tar.gz dexon-solidity-2a8e965bb135a806aaaab9aa5df24da6d7def1ba.tar.bz2 dexon-solidity-2a8e965bb135a806aaaab9aa5df24da6d7def1ba.tar.lz dexon-solidity-2a8e965bb135a806aaaab9aa5df24da6d7def1ba.tar.xz dexon-solidity-2a8e965bb135a806aaaab9aa5df24da6d7def1ba.tar.zst dexon-solidity-2a8e965bb135a806aaaab9aa5df24da6d7def1ba.zip |
Merge pull request #3007 from ethereum/lll-better-errors
lll: better error reporting in some cases
-rw-r--r-- | liblll/CodeFragment.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/liblll/CodeFragment.cpp b/liblll/CodeFragment.cpp index 254f436f..5e60f964 100644 --- a/liblll/CodeFragment.cpp +++ b/liblll/CodeFragment.cpp @@ -103,7 +103,7 @@ CodeFragment::CodeFragment(sp::utree const& _t, CompilerState& _s, bool _allowAS { bigint i = *_t.get<bigint*>(); if (i < 0 || i > bigint(u256(0) - 1)) - error<IntegerOutOfRange>(); + error<IntegerOutOfRange>(toString(i)); m_asm.append((u256)i); break; } @@ -157,7 +157,7 @@ void CodeFragment::constructOperation(sp::utree const& _t, CompilerState& _s) { auto i = *++_t.begin(); if (i.tag()) - error<InvalidName>(); + error<InvalidName>(toString(i)); if (i.which() == sp::utree_type::string_type) { auto sr = i.get<sp::basic_string<boost::iterator_range<char const*>, sp::utree_type::string_type>>(); @@ -244,7 +244,7 @@ void CodeFragment::constructOperation(sp::utree const& _t, CompilerState& _s) if (ii == 1) { if (i.tag()) - error<InvalidName>(); + error<InvalidName>(toString(i)); if (i.which() == sp::utree_type::string_type) { auto sr = i.get<sp::basic_string<boost::iterator_range<char const*>, sp::utree_type::string_type>>(); @@ -303,11 +303,11 @@ void CodeFragment::constructOperation(sp::utree const& _t, CompilerState& _s) { pos = CodeFragment(i, _s); if (pos.m_asm.deposit() != 1) - error<InvalidDeposit>(us); + error<InvalidDeposit>(toString(i)); } else if (i.tag() != 0) { - error<InvalidLiteral>(); + error<InvalidLiteral>(toString(i)); } else if (i.which() == sp::utree_type::string_type) { @@ -318,7 +318,7 @@ void CodeFragment::constructOperation(sp::utree const& _t, CompilerState& _s) { bigint bi = *i.get<bigint*>(); if (bi < 0) - error<IntegerOutOfRange>(); + error<IntegerOutOfRange>(toString(i)); else { bytes tmp = toCompactBigEndian(bi); @@ -327,7 +327,7 @@ void CodeFragment::constructOperation(sp::utree const& _t, CompilerState& _s) } else { - error<InvalidLiteral>(); + error<InvalidLiteral>(toString(i)); } ii++; |