1
2
3
4
5 package main
6
7 import (
8 "reflect"
9
10 _ "./a"
11 "./b"
12 )
13
14 var V struct{ i int }
15
16 func main() {
17 if got := reflect.ValueOf(b.V).Type().Field(0).PkgPath; got != "b" {
18 panic(`PkgPath=` + got + ` for first field of b.V, want "b"`)
19 }
20 if got := reflect.ValueOf(V).Type().Field(0).PkgPath; got != "main" {
21 panic(`PkgPath=` + got + ` for first field of V, want "main"`)
22 }
23 if got := reflect.ValueOf(b.U).Type().Field(0).PkgPath; got != "b" {
24 panic(`PkgPath=` + got + ` for first field of b.U, want "b"`)
25 }
26 }
27
View as plain text