I want to use delegatecall in one function to populate an event from the contract I'm calling. Here's a minimal example:
contract Caller {
address public callee;
function Caller(address _callee) {
callee = _callee;
}
function delegate() {
callee.delegatecall(bytes4(keccak256("call()")));
}
}
contract Callee {
function call() {
Log(msg.sender);
}
event Log(address sender);
}
However, the receipt I get in my truffle contracts return an empty array for the logs. Does delegatecall not push the log into the receipt?
I want to be able to "return" a value from the delegatecall.