-
Notifications
You must be signed in to change notification settings - Fork 6.3k
ethdebug: correct handling of abstract contracts. #15920
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
Conversation
libevmasm/Ethdebug.cpp
Outdated
| if (_linkerObject) | ||
| { |
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.
You should do this to get saner diff :)
| if (_linkerObject) | |
| { | |
| if (!_linkerObject) | |
| Json::array(); |
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.
But also why is it even called when the object is null? Wouldn't make more sense to just skip it?
8e6729d to
3813bce
Compare
3813bce to
2abfe0b
Compare
|
For the record: I'm approving this PR and setting it to merge, even though this is a mild violation of the ethdebug spec - we shouldn't produce "program" ethdebug output for anything that doesn't produce any actual bytecode - so ideally we should already filter out abstract contracts and interfaces earlier than here - which would likely mean both in But the PR fixes the actual usage limitation here (which would have been a bit unfortunate to have kept in for the release), and there's no harm in producing this output, so we can keep it as is and adjust this properly after the release. |
No description provided.