-
Notifications
You must be signed in to change notification settings - Fork 823
Closed
Description
Steps to reproduce with a clean checkout of go-cloud:
$ which wire
$ go install github.com/google/wire/cmd/wire
$ cd internal/cdk/gocdk
$ wire
panic: runtime error: invalid memory address or nil pointer dereference [recovered]
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x56b61c]
goroutine 21 [running]:
go/types.(*Checker).handleBailout(0xc0003ac000, 0xc000455d08)
/usr/lib/google-golang/src/go/types/check.go:240 +0x98
panic(0x6db440, 0x97bc00)
/usr/lib/google-golang/src/runtime/panic.go:522 +0x1b5
go/types.(*StdSizes).Sizeof(0x0, 0x796400, 0x97c7c0, 0xc000453e08)
/usr/lib/google-golang/src/go/types/sizes.go:154 +0x1bc
go/types.(*Config).sizeof(0xc00039b780, 0x796400, 0x97c7c0, 0x9a1801)
/usr/lib/google-golang/src/go/types/sizes.go:245 +0x51
go/types.representableConst(0x79a700, 0x9a18a0, 0xc0003ac000, 0x97c7c0, 0xc000430ee8, 0x0)
/usr/lib/google-golang/src/go/types/expr.go:216 +0x1f5
go/types.(*Checker).representable(0xc0003ac000, 0xc000430ec0, 0x97c7c0)
/usr/lib/google-golang/src/go/types/expr.go:335 +0x69
go/types.(*Checker).convertUntyped(0xc0003ac000, 0xc000430ec0, 0x796400, 0x97c7c0)
/usr/lib/google-golang/src/go/types/expr.go:517 +0x977
go/types.(*Checker).binary(0xc0003ac000, 0xc000430e00, 0xc0003a09f0, 0x799700, 0xc0003a2800, 0x799200, 0xc0003a2820, 0x29)
/usr/lib/google-golang/src/go/types/expr.go:800 +0x1a0
go/types.(*Checker).exprInternal(0xc0003ac000, 0xc000430e00, 0x799240, 0xc0003a09f0, 0x0, 0x0, 0x1)
/usr/lib/google-golang/src/go/types/expr.go:1503 +0x1f1f
go/types.(*Checker).rawExpr(0xc0003ac000, 0xc000430e00, 0x799240, 0xc0003a09f0, 0x0, 0x0, 0x1)
/usr/lib/google-golang/src/go/types/expr.go:982 +0x81
go/types.(*Checker).multiExpr(0xc0003ac000, 0xc000430e00, 0x799240, 0xc0003a09f0)
/usr/lib/google-golang/src/go/types/expr.go:1599 +0x58
go/types.(*Checker).expr(0xc0003ac000, 0xc000430e00, 0x799240, 0xc0003a09f0)
/usr/lib/google-golang/src/go/types/expr.go:1593 +0x49
go/types.(*Checker).binary(0xc0003ac000, 0xc000430dc0, 0xc0003a0a20, 0x799240, 0xc0003a09c0, 0x799240, 0xc0003a09f0, 0x22)
/usr/lib/google-golang/src/go/types/expr.go:780 +0xbf
go/types.(*Checker).exprInternal(0xc0003ac000, 0xc000430dc0, 0x799240, 0xc0003a0a20, 0x0, 0x0, 0x6defc0)
/usr/lib/google-golang/src/go/types/expr.go:1503 +0x1f1f
go/types.(*Checker).rawExpr(0xc0003ac000, 0xc000430dc0, 0x799240, 0xc0003a0a20, 0x0, 0x0, 0x0)
/usr/lib/google-golang/src/go/types/expr.go:982 +0x81
go/types.(*Checker).multiExpr(0xc0003ac000, 0xc000430dc0, 0x799240, 0xc0003a0a20)
/usr/lib/google-golang/src/go/types/expr.go:1599 +0x58
go/types.(*Checker).expr(0xc0003ac000, 0xc000430dc0, 0x799240, 0xc0003a0a20)
/usr/lib/google-golang/src/go/types/expr.go:1593 +0x49
go/types.(*Checker).stmt(0xc0003ac000, 0x0, 0x799740, 0xc000397280)
/usr/lib/google-golang/src/go/types/stmt.go:492 +0x42e0
go/types.(*Checker).stmtList(0xc0003ac000, 0x0, 0xc0000f0680, 0x5, 0x8)
/usr/lib/google-golang/src/go/types/stmt.go:120 +0xd6
go/types.(*Checker).funcBody(0xc0003ac000, 0xc0003dee40, 0xc0000ef310, 0x7, 0xc00042eed0, 0xc0003a0c60, 0x0, 0x0)
/usr/lib/google-golang/src/go/types/stmt.go:42 +0x1ec
go/types.(*Checker).funcDecl.func1()
/usr/lib/google-golang/src/go/types/decl.go:561 +0x67
go/types.(*Checker).processDelayed(0xc0003ac000, 0x0)
/usr/lib/google-golang/src/go/types/resolver.go:615 +0x33
go/types.(*Checker).checkFiles(0xc0003ac000, 0xc00010e150, 0xd, 0xd, 0x0, 0x0)
/usr/lib/google-golang/src/go/types/check.go:256 +0xbc
go/types.(*Checker).Files(...)
/usr/lib/google-golang/src/go/types/check.go:245
golang.org/x/tools/go/packages.(*loader).loadPackage(0xc0001060a0, 0xc0000e48c0)
/usr/local/google/home/eliben/go/pkg/mod/golang.org/x/tools@v0.0.0-20190312170243-e65039ee4138/go/packages/packages.go:716 +0x529
golang.org/x/tools/go/packages.(*loader).loadRecursive.func1()
/usr/local/google/home/eliben/go/pkg/mod/golang.org/x/tools@v0.0.0-20190312170243-e65039ee4138/go/packages/packages.go:574 +0x17f
sync.(*Once).Do(0xc0000e48d0, 0xc000049f80)
/usr/lib/google-golang/src/sync/once.go:44 +0xb3
golang.org/x/tools/go/packages.(*loader).loadRecursive(0xc0001060a0, 0xc0000e48c0)
/usr/local/google/home/eliben/go/pkg/mod/golang.org/x/tools@v0.0.0-20190312170243-e65039ee4138/go/packages/packages.go:561 +0x67
golang.org/x/tools/go/packages.(*loader).refine.func2(0xc0001060a0, 0xc0000ee7a0, 0xc0000e48c0)
/usr/local/google/home/eliben/go/pkg/mod/golang.org/x/tools@v0.0.0-20190312170243-e65039ee4138/go/packages/packages.go:542 +0x35
created by golang.org/x/tools/go/packages.(*loader).refine
/usr/local/google/home/eliben/go/pkg/mod/golang.org/x/tools@v0.0.0-20190312170243-e65039ee4138/go/packages/packages.go:541 +0x76f