In solidity, most smart contracts cast external contract calls to interfaces (IERC20 vs. ERC20). Is there any difference casting between the two?
For example, if I write
IERC20 Token = IERC20(tokenContractAddress);
Is there any functional difference to
ERC20 Token = ERC20(tokenContractAddress);?
Just curious if there are factors to consider in terms of gas costs, compatibility issues, etc. Thanks!