blob: f5a19c022f3080730aa453c936fadfb13dc3d2c6 [file] [log] [blame]
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)
}