You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
What @MariusVanDerWijden wrote is only true if we execute on BLOCKNUMBER 1 , in which case 0 is the only one "eligible" for blockhash. If we're on a later number, there are other blocks which are 'eligible'.
Some printouts from a run:
New version of #3201
What @MariusVanDerWijden in #3201 was almost true, but somewhat simplified.
Example case
565138.json
which was submitted by @guidovrankenIt has
currentNumber
set:What @MariusVanDerWijden wrote is only true if we execute on BLOCKNUMBER
1
, in which case0
is the only one "eligible" for blockhash. If we're on a later number, there are other blocks which are 'eligible'.Some printouts from a run:
In this case, blocks
[12964744 - 12965000[
are eligible, and the test queriesBLOCKHASH(0)
. Which is not part of the scope.The geth implementation is here: https://github.com/ethereum/go-ethereum/blob/master/core/vm/instructions.go#L435 - it checks the eligible span of blocks before actually trying to "resolve" the hashes (via keccak-cheat or disk lookup)
The text was updated successfully, but these errors were encountered: