What is wrong?
A number of functions defined in std::evm take offsets and lengths for regions of memory and calldata. These should take buffer types instead.
How can it be fixed
- implement
CalldataBuffer
,CalldataBufferReader
- update
revert_mem
,return_mem
,call_data_copy
,code_copy
,ext_code_copy
,keccak256_mem
,create
,create2
,call
, andlog
run $ cargo test std_lib
to check changes made to crates/library