Commit 2e2df78a authored by David Crawshaw's avatar David Crawshaw

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/22171Reviewed-by: default avatarIan Lance Taylor <iant@golang.org>
parent 411a0adc
......@@ -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)
}
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment