solidity/test/libsolidity/semanticTests/functionCall/calling_nonexisting_contract_throws.sol
2020-04-28 16:03:52 +05:30

29 lines
463 B
Solidity

abstract contract D {
function g() public virtual;
}
contract C {
D d = D(0x1212);
function f() public returns (uint256) {
d.g();
return 7;
}
function g() public returns (uint256) {
d.g{gas: 200}();
return 7;
}
function h() public returns (uint256) {
address(d).call(""); // this does not throw (low-level)
return 7;
}
}
// ----
// f() -> FAILURE
// g() -> FAILURE
// h() -> 7