aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorchriseth <chris@ethereum.org>2017-06-15 00:35:38 +0800
committerGitHub <noreply@github.com>2017-06-15 00:35:38 +0800
commitf008ddf83646f6002a61a123cc94ad195a35dce4 (patch)
tree1473e56deb36d2ff77a412fc89c15dd6aec6b0f4 /test
parentfd5bf16101d514d77cf4c7c64de367ec398995a2 (diff)
parent29e7ad3d7b2b1700c085348911b0d6f129d2a5a5 (diff)
downloaddexon-solidity-f008ddf83646f6002a61a123cc94ad195a35dce4.tar
dexon-solidity-f008ddf83646f6002a61a123cc94ad195a35dce4.tar.gz
dexon-solidity-f008ddf83646f6002a61a123cc94ad195a35dce4.tar.bz2
dexon-solidity-f008ddf83646f6002a61a123cc94ad195a35dce4.tar.lz
dexon-solidity-f008ddf83646f6002a61a123cc94ad195a35dce4.tar.xz
dexon-solidity-f008ddf83646f6002a61a123cc94ad195a35dce4.tar.zst
dexon-solidity-f008ddf83646f6002a61a123cc94ad195a35dce4.zip
Merge pull request #2381 from ethereum/fixcrash
Fix a crash about a non-callable expression.
Diffstat (limited to 'test')
-rw-r--r--test/libsolidity/SolidityNameAndTypeResolution.cpp15
1 files changed, 14 insertions, 1 deletions
diff --git a/test/libsolidity/SolidityNameAndTypeResolution.cpp b/test/libsolidity/SolidityNameAndTypeResolution.cpp
index 017eeaec..70934543 100644
--- a/test/libsolidity/SolidityNameAndTypeResolution.cpp
+++ b/test/libsolidity/SolidityNameAndTypeResolution.cpp
@@ -5785,6 +5785,20 @@ BOOST_AUTO_TEST_CASE(no_unused_inline_asm)
CHECK_SUCCESS_NO_WARNINGS(text);
}
+BOOST_AUTO_TEST_CASE(callable_crash)
+{
+ char const* text = R"(
+ contract C {
+ struct S { uint a; bool x; }
+ S public s;
+ function C() {
+ 3({a: 1, x: true});
+ }
+ }
+ )";
+ CHECK_ERROR(text, TypeError, "Type is not callable");
+}
+
BOOST_AUTO_TEST_CASE(returndatacopy_as_variable)
{
char const* text = R"(
@@ -5810,7 +5824,6 @@ BOOST_AUTO_TEST_CASE(shadowing_warning_can_be_removed)
}
-
BOOST_AUTO_TEST_SUITE_END()
}