mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Do not use named function labels if function names are not unique.
This commit is contained in:
@@ -0,0 +1 @@
|
||||
--strict-assembly
|
||||
@@ -0,0 +1 @@
|
||||
Warning: Yul is still experimental. Please use the output with care.
|
||||
@@ -0,0 +1,17 @@
|
||||
object "object" {
|
||||
code {
|
||||
let a
|
||||
let b
|
||||
{
|
||||
function z() -> y
|
||||
{ y := calldataload(0) }
|
||||
a := z()
|
||||
}
|
||||
{
|
||||
function z(r) -> y
|
||||
{ y := calldataload(r) }
|
||||
b := z(0x70)
|
||||
}
|
||||
sstore(a, b)
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,93 @@
|
||||
|
||||
======= yul_function_name_clashes_different_params/input.yul (EVM) =======
|
||||
|
||||
Pretty printed source:
|
||||
object "object" {
|
||||
code {
|
||||
let a
|
||||
let b
|
||||
{
|
||||
function z() -> y
|
||||
{ y := calldataload(0) }
|
||||
a := z()
|
||||
}
|
||||
{
|
||||
function z(r) -> y
|
||||
{ y := calldataload(r) }
|
||||
b := z(0x70)
|
||||
}
|
||||
sstore(a, b)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Binary representation:
|
||||
600080600f565b60008035905090565b60156006565b91506026565b600081359050919050565b602e6070601b565b90508082555050
|
||||
|
||||
Text representation:
|
||||
/* "yul_function_name_clashes_different_params/input.yul":37:42 */
|
||||
0x00
|
||||
/* "yul_function_name_clashes_different_params/input.yul":51:56 */
|
||||
dup1
|
||||
/* "yul_function_name_clashes_different_params/input.yul":79:133 */
|
||||
jump(tag_2)
|
||||
tag_1:
|
||||
/* "yul_function_name_clashes_different_params/input.yul":95:96 */
|
||||
0x00
|
||||
/* "yul_function_name_clashes_different_params/input.yul":129:130 */
|
||||
dup1
|
||||
/* "yul_function_name_clashes_different_params/input.yul":116:131 */
|
||||
calldataload
|
||||
/* "yul_function_name_clashes_different_params/input.yul":111:131 */
|
||||
swap1
|
||||
pop
|
||||
/* "yul_function_name_clashes_different_params/input.yul":79:133 */
|
||||
swap1
|
||||
jump // out
|
||||
tag_2:
|
||||
/* "yul_function_name_clashes_different_params/input.yul":151:154 */
|
||||
tag_4
|
||||
tag_1
|
||||
jump // in
|
||||
tag_4:
|
||||
/* "yul_function_name_clashes_different_params/input.yul":146:154 */
|
||||
swap2
|
||||
pop
|
||||
/* "yul_function_name_clashes_different_params/input.yul":187:242 */
|
||||
jump(tag_6)
|
||||
tag_5:
|
||||
/* "yul_function_name_clashes_different_params/input.yul":204:205 */
|
||||
0x00
|
||||
/* "yul_function_name_clashes_different_params/input.yul":238:239 */
|
||||
dup2
|
||||
/* "yul_function_name_clashes_different_params/input.yul":225:240 */
|
||||
calldataload
|
||||
/* "yul_function_name_clashes_different_params/input.yul":220:240 */
|
||||
swap1
|
||||
pop
|
||||
/* "yul_function_name_clashes_different_params/input.yul":187:242 */
|
||||
swap2
|
||||
swap1
|
||||
pop
|
||||
jump // out
|
||||
tag_6:
|
||||
/* "yul_function_name_clashes_different_params/input.yul":260:267 */
|
||||
tag_8
|
||||
/* "yul_function_name_clashes_different_params/input.yul":262:266 */
|
||||
0x70
|
||||
/* "yul_function_name_clashes_different_params/input.yul":260:267 */
|
||||
tag_5
|
||||
jump // in
|
||||
tag_8:
|
||||
/* "yul_function_name_clashes_different_params/input.yul":255:267 */
|
||||
swap1
|
||||
pop
|
||||
/* "yul_function_name_clashes_different_params/input.yul":296:297 */
|
||||
dup1
|
||||
/* "yul_function_name_clashes_different_params/input.yul":293:294 */
|
||||
dup3
|
||||
/* "yul_function_name_clashes_different_params/input.yul":286:298 */
|
||||
sstore
|
||||
/* "yul_function_name_clashes_different_params/input.yul":27:304 */
|
||||
pop
|
||||
pop
|
||||
Reference in New Issue
Block a user