| This test checks the splice assignment substrategy. | |
| -- go.mod -- | |
| module testdata | |
| go 1.20 | |
| -- a.go -- | |
| package a | |
| func a() (int32, string) { | |
| return b() | |
| } | |
| func b() (int32, string) { | |
| return 0, "a" | |
| } | |
| func c() (int, chan<- int) { | |
| return 0, make(chan int) // nontrivial conversion | |
| } | |
| -- a1.go -- | |
| package a | |
| func _() { | |
| x, y := a() //@ inline(re"a", a1) | |
| } | |
| -- a1 -- | |
| package a | |
| func _() { | |
| x, y := b() //@ inline(re"a", a1) | |
| } | |
| -- a2.go -- | |
| package a | |
| func _() { | |
| var x, y any | |
| x, y = a() //@ inline(re"a", a2) | |
| } | |
| -- a2 -- | |
| package a | |
| func _() { | |
| var x, y any | |
| x, y = b() //@ inline(re"a", a2) | |
| } | |
| -- a3.go -- | |
| package a | |
| func _() { | |
| var y chan<- int | |
| x, y := c() //@ inline(re"c", a3) | |
| } | |
| -- a3 -- | |
| package a | |
| func _() { | |
| var y chan<- int | |
| x, y := 0, make(chan int) //@ inline(re"c", a3) | |
| } |