pragma solidity 0.5.0; contract Foo { uint256 public value; address public sender; address public owner; constructor() public { owner = msg.sender; } function setValue(uint256 newValue) public { value = newValue; sender = msg.sender; } } contract Bar { address public fooAddress; function setFooAddress(address newFooAddress) public { fooAddress = newFooAddress; } function delegateSetValue(uint256 value) public { (bool success, bytes memory data) = fooAddress.delegatecall( abi.encodeWithSignature("setValue(uint256)", value) ); require(success); } }
0.5.0