Can not call the function approve() of the USDT contract

Hi, I know this issue is old but encountering the same issue now.
I have limited knowledge with smart contracts, but can't you simply update the USDT contract and add a return value for the approve function? This way, it would comply with the ERC20 standard. It seems that new package interfaces like viem.sh requires all functions to have a return value. :sweat_smile:

1 Like

The basic idea behind blockchains is that if you deploy a smart contract that the code is immutable and can’t be changed. There are millions in usdt of cryptocurrencies locked in contracts with no way to get them out because the contract has no ability to send out those tokens or simply contain bugs.

There are some ways/tricks of writing a smart contract in such a way that it looks like you can update the code but the code has to be written in a specific way to allow that and if not it can never be changed.

1 Like