-
Notifications
You must be signed in to change notification settings - Fork 138
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
EVM runtime: handle REVERT
#811
Comments
Possibly the simplest way to handle this is to return a struct from |
Proposal: Replace fn exit(code: u32, // Exit code.
value: u32, // Block ID (return value).
msg: *const u8, // Optional message.
msg_len: u32);
|
|
REVERT
is equivalent to an FVMabort
syscall. It interrupts the callee but returns control to the caller. However,REVERT
is capable of returning a payload, which Filecoin disallows in combination with a non-zero exit code (originating in an abort). Thus, supporting this as an abort may require a protocol extension. There are alternative solutions that @Stebalien will document shortly.The text was updated successfully, but these errors were encountered: