From 5eac0b123db9da5804b5aa59deec96f1d7ffae8d Mon Sep 17 00:00:00 2001 From: Duncan Townsend Date: Mon, 10 Feb 2025 13:39:13 -0500 Subject: [PATCH] Compilation error --- src/multicall/MultiCall.sol | 5 ++++- src/multicall/MultiCallContext.sol | 10 ++++++++-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/src/multicall/MultiCall.sol b/src/multicall/MultiCall.sol index 93028658..2c4ce5ab 100644 --- a/src/multicall/MultiCall.sol +++ b/src/multicall/MultiCall.sol @@ -77,7 +77,10 @@ library SafeCall { /// This version of `safeCall` omits the OOG check because it bubbles the revert if the call /// reverts. Therefore, `success` is always `true`. - function safeCall(address target, bytes calldata data, address sender) internal returns (bool success, bytes memory returndata) { + function safeCall(address target, bytes calldata data, address sender) + internal + returns (bool success, bytes memory returndata) + { assembly ("memory-safe") { returndata := mload(0x40) calldatacopy(returndata, data.offset, data.length) diff --git a/src/multicall/MultiCallContext.sol b/src/multicall/MultiCallContext.sol index 7e74873f..c1213bab 100644 --- a/src/multicall/MultiCallContext.sol +++ b/src/multicall/MultiCallContext.sol @@ -25,7 +25,9 @@ interface IMultiCall { } abstract contract MultiCallContext is Context { - IMultiCall internal constant _MULTICALL = IMultiCall(0x000000000000deaDdeAddEADdEaddeaDDEADDeAd); // TODO: + address private constant _MULTICALL_ADDRESS = 0x000000000000deaDdeAddEADdEaddeaDDEADDeAd; // TODO: + + IMultiCall internal constant _MULTICALL = IMultiCall(_MULTICALL_ADDRESS); function _isForwarded() internal view virtual override returns (bool) { return super._isForwarded() || super._msgSender() == address(_MULTICALL); @@ -37,7 +39,11 @@ abstract contract MultiCallContext is Context { sender := and(0xffffffffffffffffffffffffffffffffffffffff, sender) // ERC-2771. The trusted forwarder (`_MULTICALL`) has appended the appropriate // msg.sender to the msg data - sender := xor(sender, mul(xor(sender, shr(0x60, calldataload(sub(calldatasize(), 0x14)))), eq(_MULTICALL, sender))) + sender := + xor( + sender, + mul(xor(sender, shr(0x60, calldataload(sub(calldatasize(), 0x14)))), eq(_MULTICALL_ADDRESS, sender)) + ) } } }