Closed gnidan closed 6 years ago
@pipermerriam @mkosowsk please see recent commits and let me know if you have any other thoughts. Thanks!
@gnidan most recent commits pass smell test for me altho I don't have cycles to read for depth at the moment. LGTM 👍🏻
Merging. Thanks for the feedback!
Update of #70
Fixes https://github.com/ethpm/ethpm-spec/issues/69
What was wrong
In the v1 version of the spec, link references were only defined as the locations within a block of bytecode in which an
__Thing____
placeholder was found. This is problematic because:How was it fixed
Now, there is a Bytecode object which defines three fields.
bytecode
: the actual bytecode itselflink_references
: the locations in the bytecode that require linkinglink_dependencies
: the values that the bytecode should be linked with.Link references are further defined in a Link Reference object which contains three fields:
offsets
: the start positions of the link referencelength
: for how long the link reference isname
: for grouping of multiple link references which are expected to be linked with the same value. (optional)All
bytecode
andruntime_bytecode
fields have been replaced to use the Bytecode object definition instead.ℹ️ View preview