-
Notifications
You must be signed in to change notification settings - Fork 152
Typed exceptions #187
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
Typed exceptions #187
Conversation
|
VMTests disabled because: ethereum/tests#444 |
7ce0f31 to
acdfbb9
Compare
|
@dwightguth should be ready for review. The failing proofs are because the proof submodule has not been updated, doing that now but they should go through fine once that's done. |
cd8f97d to
f74bad3
Compare
a9f4747 to
2753176
Compare
|
Jenkins: test mantis |
c47f1a8 to
5af1a7c
Compare
|
Jenkins: test this please |
|
Jenkins: test mantis |
|
Jenkins: test this please |
5af1a7c to
80e73f5
Compare
|
@dwightguth ready for review. @pirapira you may also be interested, this PR adds typed exceptions to KEVM, see file |
80e73f5 to
4871723
Compare
dwightguth
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks good but there's one minor thing you should fix before you merge.
network.md
Outdated
| - `EVMC_BAD_JUMP_DESTINATION` indicates a `JUMP*` to a non-`JUMPDEST` location. | ||
| - `EVMC_STACK_OVERFLOW` indicates pushing more than 1024 elements onto the wordstack. | ||
| - `EVMC_STACK_UNDERFLOW` indicates popping elements off an empty wordstack. | ||
| - `EVMC_CALL_DEPTH_EXCEDED` indicates that we have executed too deeply a nested sequence of `CALL*` or `CREATE` opcodes. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
pretty sure exceeded has two es.
4871723 to
abc14fa
Compare
…eption, sets `statusCode`
…end => #halt, remove Exception Now instead of using #revert, #end, or #exception, using #end_ to set the status code as well. Code `#halt` is named different than `#end` so that people must explicitely decide not to set the status code if they want to #end.
|
Jenkins: test this please |
Simplest steps towards typed exceptions, makes refactoring the control flow simpler.