1
0
mirror of https://github.com/golang/go synced 2024-11-20 00:44:45 -07:00

reflect: test that method name offset is valid

Bug fix went in CL 21396, this is a matching test.

Fixes #15343

Change-Id: I3670145c7cac45cb4fb3121ffc039cfb7fa7c87a
Reviewed-on: https://go-review.googlesource.com/22171
Reviewed-by: Ian Lance Taylor <iant@golang.org>
This commit is contained in:
David Crawshaw 2016-04-18 04:50:19 -04:00
parent 411a0adc9b
commit 2e2df78ae9

View File

@ -5686,3 +5686,14 @@ func TestNameBytesAreAligned(t *testing.T) {
t.Errorf("reflect.name.bytes pointer is not aligned: %x", v)
}
}
func TestMethodPkgPathReadable(t *testing.T) {
// Reading the Method type for an unexported method triggers an
// offset resolution via p.name.pkgPath(). Make sure it uses a
// valid base pointer for the offset.
v := ValueOf(embed{})
m := v.Type().Method(0)
if m.PkgPath != "reflect" {
t.Errorf(`PkgPath=%q, want "reflect"`, m.PkgPath)
}
}