Merge pull request #10292 from ethereum/cli-check-for-duplicate-libraries

[CLI] Reject duplicates in --libraries
This commit is contained in:
Alex Beregszaszi
2020-11-16 21:12:00 +00:00
committed by GitHub
10 changed files with 47 additions and 1 deletions
@@ -0,0 +1 @@
--strict-assembly --libraries library.sol:L:0x1234567890123456789012345678901234567890,library.sol:L:0x0987654321098765432109876543210987654321
@@ -0,0 +1 @@
Address specified more than once for library "library.sol:L".
@@ -0,0 +1,5 @@
object "a" {
code {
let addr := linkersymbol("library.sol:L")
}
}
@@ -0,0 +1 @@
--strict-assembly --libraries library1.sol:L:0x1111111111111111111111111111111111111111,library2.sol:L:0x2222222222222222222222222222222222222222
@@ -0,0 +1 @@
Warning: Yul is still experimental. Please use the output with care.
@@ -0,0 +1,6 @@
object "a" {
code {
let addr1 := linkersymbol("library1.sol:L")
let addr2 := linkersymbol("library2.sol:L")
}
}
@@ -0,0 +1,22 @@
======= linking_strict_assembly_same_library_name_different_files/input.yul (EVM) =======
Pretty printed source:
object "a" {
code {
let addr1 := linkersymbol("library1.sol:L")
let addr2 := linkersymbol("library2.sol:L")
}
}
Binary representation:
7311111111111111111111111111111111111111117322222222222222222222222222222222222222225050
Text representation:
linkerSymbol("f3ffc10c396a7cc41ae954b050792839d20947bf73497d30c49a9fda1ea477ec")
/* "linking_strict_assembly_same_library_name_different_files/input.yul":32:75 */
linkerSymbol("c3523432985587641d17c68161d2f700c57aaf4ed21cda4f25d76193c831f97f")
/* "linking_strict_assembly_same_library_name_different_files/input.yul":22:133 */
pop
pop