| Errors from attempting to import a function from another |
| package whose body refers to unexported declarations. |
| |
| -- go.mod -- |
| module testdata |
| go 1.12 |
| |
| -- a/a.go -- |
| package a |
| |
| func A1() { b() } |
| func b() {} |
| |
| func A2() { var x T; print(x.f) } |
| type T struct { f int } |
| |
| func A3() { _ = &T{f: 0} } |
| |
| func A4() { _ = &T{0} } |
| |
| -- b/b.go -- |
| package b |
| |
| import "testdata/a" |
| |
| func _() { |
| a.A1() //@ inline(re"A1", re`body refers to non-exported b`) |
| a.A2() //@ inline(re"A2", re`body refers to non-exported \(testdata/a.T\).f`) |
| a.A3() //@ inline(re"A3", re`body refers to non-exported \(testdata/a.T\).f`) |
| a.A4() //@ inline(re"A4", re`body refers to non-exported \(testdata/a.T\).f`) |
| } |