diff options
author | chriseth <c@ethdev.com> | 2016-11-09 16:36:38 +0800 |
---|---|---|
committer | chriseth <c@ethdev.com> | 2016-11-16 21:37:18 +0800 |
commit | f21f794f3c380c9382ace4908c38d0f6c776ae17 (patch) | |
tree | d177e5f1144a66c9352d8d23e06bd576ffca9aa9 /test/libsolidity/SolidityEndToEndTest.cpp | |
parent | c9f9b2ab4d421e99055425ace5deeb76d8f4fdd2 (diff) | |
download | dexon-solidity-f21f794f3c380c9382ace4908c38d0f6c776ae17.tar.gz dexon-solidity-f21f794f3c380c9382ace4908c38d0f6c776ae17.tar.zst dexon-solidity-f21f794f3c380c9382ace4908c38d0f6c776ae17.zip |
delete for function types
Diffstat (limited to 'test/libsolidity/SolidityEndToEndTest.cpp')
-rw-r--r-- | test/libsolidity/SolidityEndToEndTest.cpp | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/test/libsolidity/SolidityEndToEndTest.cpp b/test/libsolidity/SolidityEndToEndTest.cpp index c665b050..a1236803 100644 --- a/test/libsolidity/SolidityEndToEndTest.cpp +++ b/test/libsolidity/SolidityEndToEndTest.cpp @@ -7960,7 +7960,7 @@ BOOST_AUTO_TEST_CASE(function_memory_array) BOOST_CHECK(callContractFunction("test(uint256,uint256)", u256(10), u256(5)) == encodeArgs()); } -BOOST_AUTO_TEST_CASE(function_delete) +BOOST_AUTO_TEST_CASE(function_delete_storage) { char const* sourceCode = R"( contract C { @@ -7987,6 +7987,23 @@ BOOST_AUTO_TEST_CASE(function_delete) BOOST_CHECK(callContractFunction("ca()") == encodeArgs()); } +BOOST_AUTO_TEST_CASE(function_delete_stack) +{ + char const* sourceCode = R"( + contract C { + function a() returns (uint) { return 7; } + function test() returns (uint) { + y = a; + delete y; + y(); + } + } + )"; + + compileAndRun(sourceCode, 0, "C"); + BOOST_CHECK(callContractFunction("test()") == encodeArgs()); +} + BOOST_AUTO_TEST_CASE(copy_function_storage_array) { char const* sourceCode = R"( |