diff options
author | subtly <subtly@users.noreply.github.com> | 2015-04-16 10:51:43 +0800 |
---|---|---|
committer | subtly <subtly@users.noreply.github.com> | 2015-04-16 10:51:43 +0800 |
commit | 5999c04eb5b2ae0f4f7a34b6173a49ad00c89813 (patch) | |
tree | 93b44c1580212265ed939eb6bd392381cfda64c3 | |
parent | 94aa125268cde3b18a523be02fd98aa243a3919f (diff) | |
parent | 968ebf6dbc27c1ab489ea64841246a283d985261 (diff) | |
download | dexon-solidity-5999c04eb5b2ae0f4f7a34b6173a49ad00c89813.tar dexon-solidity-5999c04eb5b2ae0f4f7a34b6173a49ad00c89813.tar.gz dexon-solidity-5999c04eb5b2ae0f4f7a34b6173a49ad00c89813.tar.bz2 dexon-solidity-5999c04eb5b2ae0f4f7a34b6173a49ad00c89813.tar.lz dexon-solidity-5999c04eb5b2ae0f4f7a34b6173a49ad00c89813.tar.xz dexon-solidity-5999c04eb5b2ae0f4f7a34b6173a49ad00c89813.tar.zst dexon-solidity-5999c04eb5b2ae0f4f7a34b6173a49ad00c89813.zip |
Merge branch 'develop' into discoveryEndpoints
-rw-r--r-- | SolidityNameAndTypeResolution.cpp | 12 | ||||
-rw-r--r-- | SolidityParser.cpp | 9 |
2 files changed, 20 insertions, 1 deletions
diff --git a/SolidityNameAndTypeResolution.cpp b/SolidityNameAndTypeResolution.cpp index 74a48888..ffa78ed9 100644 --- a/SolidityNameAndTypeResolution.cpp +++ b/SolidityNameAndTypeResolution.cpp @@ -99,7 +99,7 @@ BOOST_AUTO_TEST_CASE(smoke_test) { char const* text = "contract test {\n" " uint256 stateVariable1;\n" - " function fun(uint256 arg1) { var x; uint256 y; }" + " function fun(uint256 arg1) { uint256 y; }" "}\n"; ETH_TEST_CHECK_NO_THROW(parseTextAndResolveNames(text), "Parsing and Name Resolving Failed"); } @@ -1623,6 +1623,16 @@ BOOST_AUTO_TEST_CASE(bytes0_array) BOOST_CHECK_THROW(parseTextAndResolveNames(text), TypeError); } +BOOST_AUTO_TEST_CASE(uninitialized_var) +{ + char const* sourceCode = R"( + contract C { + function f() returns (uint) { var x; return 2; } + } + )"; + BOOST_CHECK_THROW(parseTextAndResolveNames(sourceCode), TypeError); +} + BOOST_AUTO_TEST_SUITE_END() } diff --git a/SolidityParser.cpp b/SolidityParser.cpp index b76f0065..7cd8efce 100644 --- a/SolidityParser.cpp +++ b/SolidityParser.cpp @@ -841,6 +841,15 @@ BOOST_AUTO_TEST_CASE(constant_is_keyword) BOOST_CHECK_THROW(parseText(text), ParserError); } +BOOST_AUTO_TEST_CASE(var_array) +{ + char const* text = R"( + contract Foo { + function f() { var[] a; } + })"; + BOOST_CHECK_THROW(parseText(text), ParserError); +} + BOOST_AUTO_TEST_SUITE_END() } |