| Test that attempts to inline with caller or callee in a cgo-generated |
| file are rejected. |
| |
| -- go.mod -- |
| module testdata |
| go 1.12 |
| |
| -- a/a.go -- |
| package a |
| |
| /* |
| static void f() {} |
| */ |
| import "C" |
| |
| func a() { |
| C.f() //@ inline(re"f", re"cannot inline cgo-generated functions") |
| g() //@ inline(re"g", re`cannot inline calls from files that import "C"`) |
| } |
| |
| func g() { |
| println() |
| } |
| |
| -- a/a2.go -- |
| package a |
| |
| func b() { |
| a() //@ inline(re"a", re"cannot inline cgo-generated functions") |
| } |
| |
| func c() { |
| b() //@ inline(re"b", result) |
| } |
| |
| -- result -- |
| package a |
| |
| func b() { |
| a() //@ inline(re"a", re"cannot inline cgo-generated functions") |
| } |
| |
| func c() { |
| a() //@ inline(re"b", result) |
| } |