Update EIP-4762: clarify change in behaviour for CALLCODE cost if value transfer
I think the removal of CALLCODE cost for value transfer needs to be clarified and I didn't find any reference to it in the EIP. I remember that Besu bumped into this change and we actually applied the change to previous forks as well causing the CI pipeline to fail later on.
Even though it makes sense to not charge anything since CALLCODE transfers to itself, that's not the case with previous forks so this is a change in behaviour which IMO is worth documenting.
cc @gballet @jsign
✅ All reviewers have approved.
I have a few issues with this PR:
* Why is `CALLCODE` special, all other static costs are also removed ( and have been since 2929/2930, this is not a 4762-specific change) * What other forks are you referring to ? Do you mean that value costs for value transfers no longer apply? We could clarify this if it makes sense, but what is the connection with the static costs?
OK maybe static is not the right word, we can remove that. But current mainnet charges 9000 gas in CALLCODE, if there is value to be transferred, and in EIP4762 these charges have been removed, that's what I meant.