When there was a failed CREATE opcode during CALL,
there is no to field in the output of tracer result for that call.
So in this case, we set it as "0x" to clarify there is no to field.
FYI.
rosetta-ethereum in this case handle that value as Zero address but I think this is not correct way.
Because it can be interpreted as "msg.sender tried to do something for ZeroAddress".
But actually there is no to field, so that interpretation is not correct.
After patch, it parses failed CREATE operation during CALL like below.
(I removed FEE related operations for readability.)
When there was a failed CREATE opcode during CALL, there is no to field in the output of tracer result for that call.
So in this case, we set it as "0x" to clarify there is no to field.
FYI.
rosetta-ethereum
in this case handle that value as Zero address but I think this is not correct way. Because it can be interpreted as "msg.sender tried to do something for ZeroAddress". But actually there is noto
field, so that interpretation is not correct.After patch, it parses failed CREATE operation during CALL like below. (I removed FEE related operations for readability.)