github.com/ethereum/go-ethereum@v1.16.1/accounts/abi/bind/v2/internal/contracts/solc_errors/contract.sol (about) 1 // SPDX-License-Identifier: MIT 2 pragma solidity ^0.8.26; 3 4 error BadThing(uint256 arg1, uint256 arg2, uint256 arg3, bool arg4); 5 error BadThing2(uint256 arg1, uint256 arg2, uint256 arg3, uint256 arg4); 6 7 contract C { 8 function Foo() public pure { 9 revert BadThing({ 10 arg1: uint256(0), 11 arg2: uint256(1), 12 arg3: uint256(2), 13 arg4: false 14 }); 15 } 16 function Bar() public pure { 17 revert BadThing2({ 18 arg1: uint256(0), 19 arg2: uint256(1), 20 arg3: uint256(2), 21 arg4: uint256(3) 22 }); 23 } 24 } 25 26 // purpose of this is to test that generation of metadata for contract that emits one error produces valid Go code 27 contract C2 { 28 function Foo() public pure { 29 revert BadThing({ 30 arg1: uint256(0), 31 arg2: uint256(1), 32 arg3: uint256(2), 33 arg4: false 34 }); 35 } 36 }