solidity/test/libsolidity/semanticTests/functionCall/calling_nonexisting_contract_throws.sol
2020-03-19 14:42:25 +01:00

29 lines
462 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