-
Notifications
You must be signed in to change notification settings - Fork 5.8k
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
Add .exists() and .iscontract() on to the address type #4910
Comments
What would be the semantics of |
I actually don't think this can be done properly without support form a new EVM opcode, because one could check for balance and code size, but cannot check for storage, which is possible to be non-empty if the account is only used through delegatecalls. |
I would be cautious of any implementation of |
Actually it seems that |
From EIP-161:
Similarly
|
@frangio @wadealexc any change of view since these are provided by opcodes now? |
Since |
I don't think that really mitigates the vulnerabilities that can arise from using We do have an |
Would calling it |
Are we making commitments in the language that a property of an account in the state cannot ever change? 😉 @frangio Could you elaborate this sentence? |
This issue has been marked as stale due to inactivity for the last 90 days. |
Hi everyone! This issue has been automatically closed due to inactivity. |
This would become very useful in conjunction with ethereum/EIPs#8838 On non-EOF targets it could fallback to extcodesize/extcodehash. |
Not fully sure yet if
.exists()
can be implemented properly, but.iscontract()
should be possible to be implemented via theextcodesize
instruction.With having
.iscontract()
, #4823 would not need to be implemented.The text was updated successfully, but these errors were encountered: