solidity/test/libsolidity/syntaxTests/inheritance/override/calldata_memory_struct.sol

17 lines
559 B
Solidity

pragma experimental ABIEncoderV2;
contract A {
uint dummy;
struct S { int a; }
function f(S calldata) external virtual pure {}
function g(S calldata) external virtual view { dummy; }
function h(S calldata) external virtual { dummy = 42; }
function i(S calldata) external virtual payable {}
}
contract B is A {
function f(S memory) public override pure {}
function g(S memory) public override view { dummy; }
function h(S memory) public override { dummy = 42; }
function i(S memory) public override payable {}
}
// ----