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
We haven't really been aware that the compiler outputs a field called immutableReferences, which shows where exactly the values of the immutable variables are stored in the runtime bytecode. By leaving out these fields we can basically verify any contract with immutables.
This could eliminate the need for different types of verification like "simulation" etc. Additionally we would no longer need the extra information msg.sender etc. and saving those in a extra files in the repo. This would enable reproducing verification only with the information found in metadata.json.
As these fields will only be values it should be ok to verify without looking at these positions.
Add evm.deployedBytecode.immutableReferences to the outputSettings in CheckedContract
Return immutableReferences from recompile()
Pass these optional parameters to matchWithDeployedBytecode()
Take these fields into considerations when matching in the function.
We haven't really been aware that the compiler outputs a field called
immutableReferences
, which shows where exactly the values of the immutable variables are stored in the runtime bytecode. By leaving out these fields we can basically verify any contract with immutables.This could eliminate the need for different types of verification like "simulation" etc. Additionally we would no longer need the extra information
msg.sender
etc. and saving those in a extra files in the repo. This would enable reproducing verification only with the information found inmetadata.json
.As these fields will only be values it should be ok to verify without looking at these positions.
evm.deployedBytecode.immutableReferences
to theoutputSettings
inCheckedContract
immutableReferences
fromrecompile()
matchWithDeployedBytecode()
View in Huly HI-384
The text was updated successfully, but these errors were encountered: