| Test of implicit field selections in method calls. | |
| The two level wrapping T -> unexported -> U is required | |
| to exercise the implicit selections exportedness check; | |
| with only a single level, the receiver declaration in | |
| "func (unexported) F()" would fail the earlier | |
| unexportedness check. | |
| -- go.mod -- | |
| module testdata | |
| go 1.12 | |
| -- a/a.go -- | |
| package a | |
| import "testdata/b" | |
| func _(x b.T) { | |
| x.F() //@ inline(re"F", re"in x.F, implicit reference to unexported field .unexported cannot be made explicit") | |
| } | |
| -- b/b.go -- | |
| package b | |
| type T struct { unexported } | |
| type unexported struct { U } | |
| type U struct{} | |
| func (U) F() {} |