Closed
Description
Detection of static mode violation (ErrWriteProtection
) should be handled by the affected instructions (operation.writes
), not in the interpreter loop:
go-ethereum/core/vm/interpreter.go
Lines 207 to 217 in 66ee942
- Please confirm that
in.readOnly
can be true only whenin.evm.chainRules.IsByzantium
, so the conditionin.readOnly && in.evm.chainRules.IsByzantium
can be simplified. - Move this check to implementations of the affected instructions (e.g.
opCall()
,opSstore()
). - Remove the check from the interpreter loop.
- Remove
operation.writes
field.
This should land after #23952.
Metadata
Metadata
Assignees
Labels
No labels