Browse Source

Adjust for chainid becoming view in 0.8.0. (#2443)

Co-authored-by: Alex Beregszaszi <alex@rtfs.hu>

Co-authored-by: Daniel Kirchner <daniel@ekpyron.org>
Alex Beregszaszi 4 years ago
parent
commit
a6a4c042f5

+ 2 - 1
contracts/drafts/EIP712.sol

@@ -96,7 +96,8 @@ abstract contract EIP712 {
         return keccak256(abi.encodePacked("\x19\x01", _domainSeparatorV4(), structHash));
     }
 
-    function _getChainId() private pure returns (uint256 chainId) {
+    function _getChainId() private view returns (uint256 chainId) {
+        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
         // solhint-disable-next-line no-inline-assembly
         assembly {
             chainId := chainid()

+ 2 - 1
contracts/mocks/EIP712External.sol

@@ -22,7 +22,8 @@ contract EIP712External is EIP712 {
         require(recoveredSigner == signer);
     }
 
-    function getChainId() external pure returns (uint256 chainId) {
+    function getChainId() external view returns (uint256 chainId) {
+        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
         // solhint-disable-next-line no-inline-assembly
         assembly {
             chainId := chainid()

+ 2 - 1
contracts/mocks/ERC20PermitMock.sol

@@ -14,7 +14,8 @@ contract ERC20PermitMock is ERC20Permit {
         _mint(initialAccount, initialBalance);
     }
 
-    function getChainId() external pure returns (uint256 chainId) {
+    function getChainId() external view returns (uint256 chainId) {
+        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
         // solhint-disable-next-line no-inline-assembly
         assembly {
             chainId := chainid()