| Most basic test of inlining by reduction. |
| |
| -- go.mod -- |
| module testdata |
| go 1.12 |
| |
| -- a/a0.go -- |
| package a |
| |
| var _ = zero() //@ inline(re"zero", zero) |
| |
| func zero() int { return 0 } |
| |
| -- zero -- |
| package a |
| |
| var _ = 0 //@ inline(re"zero", zero) |
| |
| func zero() int { return 0 } |
| |
| -- a/a1.go -- |
| package a |
| |
| func _() { |
| one := 1 |
| add(one, 2) //@ inline(re"add", add1) |
| } |
| |
| func add(x, y int) int { return x + y } |
| |
| -- add1 -- |
| package a |
| |
| func _() { |
| one := 1 |
| _ = one + 2 //@ inline(re"add", add1) |
| } |
| |
| func add(x, y int) int { return x + y } |
| |
| -- a/a2.go -- |
| package a |
| |
| var _ = add(len(""), 2) //@ inline(re"add", add2) |
| |
| -- add2 -- |
| package a |
| |
| var _ = len("") + 2 //@ inline(re"add", add2) |
| |