ethers-multicall icon indicating copy to clipboard operation
ethers-multicall copied to clipboard

Error with receive functions

Open grallc opened this issue 3 years ago • 1 comments

For some reasons, if the ABI contains a receive payable function with no further arguments, instantiating a new Contract will throw an TypeError: Cannot read property 'type' of null error. The problem seems to be coming from the Fragment from ethersprojects, but can also be fixed in the library.

Can be reproduced by using this ABI:

  const abi = [
    {
        constant: true,
        inputs: [],
        name: 'totalSupply',
        outputs: [
            {
                internalType: 'uint256',
                name: '',
                type: 'uint256'
            }
        ],
        payable: false,
        stateMutability: 'view',
        type: 'function'
    },
    {
      stateMutability: 'payable',
      type: 'receive'
    }
  ]

in the tests.

grallc avatar Aug 19 '22 13:08 grallc

Met the same issues, fallback() payable throw the same err as well

roffett avatar Sep 27 '22 07:09 roffett