Hi,
Is it just me or does workflowcheck
not work with golang 1.22.0
?
I see this:
workflowcheck ./...
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=0x2 addr=0x0 pc=0x104290140]
goroutine 518 [running]:
go/types.(*Checker).handleBailout(0x1400027c000, 0x14000c37b98)
/opt/homebrew/Cellar/go/1.22.0/libexec/src/go/types/check.go:367 +0x9c
panic({0x104492ac0?, 0x1046abe70?})
/opt/homebrew/Cellar/go/1.22.0/libexec/src/runtime/panic.go:770 +0x124
go/types.(*StdSizes).Sizeof(0x0, {0x1044ec2f8, 0x1046af980})
/opt/homebrew/Cellar/go/1.22.0/libexec/src/go/types/sizes.go:228 +0x320
go/types.(*Config).sizeof(...)
/opt/homebrew/Cellar/go/1.22.0/libexec/src/go/types/sizes.go:333
go/types.representableConst.func1({0x1044ec2f8?, 0x1046af980?})
/opt/homebrew/Cellar/go/1.22.0/libexec/src/go/types/const.go:76 +0x9c
go/types.representableConst({0x1044ed960, 0x1046a4720}, 0x1400027c000, 0x1046af980, 0x14000c35f98)
/opt/homebrew/Cellar/go/1.22.0/libexec/src/go/types/const.go:92 +0x138
go/types.(*Checker).representation(0x1400027c000, 0x14000f82080, 0x1046af980)
/opt/homebrew/Cellar/go/1.22.0/libexec/src/go/types/const.go:256 +0x68
go/types.(*Checker).implicitTypeAndValue(0x1400027c000, 0x14000f82080, {0x1044ec2f8, 0x1046af980})
/opt/homebrew/Cellar/go/1.22.0/libexec/src/go/types/expr.go:375 +0x340
go/types.(*Checker).convertUntyped(0x1400027c000, 0x14000f82080, {0x1044ec2f8, 0x1046af980})
/opt/homebrew/Cellar/go/1.22.0/libexec/src/go/types/const.go:289 +0x30
go/types.(*Checker).matchTypes(0x1400027c000, 0x14000f82040, 0x14000f82080)
/opt/homebrew/Cellar/go/1.22.0/libexec/src/go/types/expr.go:926 +0x7c
go/types.(*Checker).binary(0x1400027c000, 0x14000f82040, {0x1044ecea0, 0x14000bae9c0}, {0x1044ecb10, 0x14000bd4280}, {0x1044ed3b0, 0x14000bd42a0}, 0x28, 0x7b37)
/opt/homebrew/Cellar/go/1.22.0/libexec/src/go/types/expr.go:800 +0x114
go/types.(*Checker).exprInternal(0x1400027c000, 0x0, 0x14000f82040, {0x1044ecea0, 0x14000bae9c0}, {0x0, 0x0})
/opt/homebrew/Cellar/go/1.22.0/libexec/src/go/types/expr.go:1416 +0x1d4
go/types.(*Checker).rawExpr(0x1400027c000, 0x0, 0x14000f82040, {0x1044ecea0?, 0x14000bae9c0?}, {0x0?, 0x0?}, 0x0)
/opt/homebrew/Cellar/go/1.22.0/libexec/src/go/types/expr.go:979 +0x12c
go/types.(*Checker).expr(0x1400027c000, 0x1044ec0a0?, 0x14000f82040, {0x1044ecea0?, 0x14000bae9c0?})
/opt/homebrew/Cellar/go/1.22.0/libexec/src/go/types/expr.go:1513 +0x38
go/types.(*Checker).stmt(0x1400027c000, 0x0, {0x1044ed200, 0x14000744900})
/opt/homebrew/Cellar/go/1.22.0/libexec/src/go/types/stmt.go:570 +0xdb0
go/types.(*Checker).stmtList(0x1400027c000, 0x0, {0x14000bd4400?, 0x0?, 0x0?})
/opt/homebrew/Cellar/go/1.22.0/libexec/src/go/types/stmt.go:121 +0x88
go/types.(*Checker).funcBody(0x1400027c000, 0x1044ec2f8?, {0x14000880688?, 0x1046afb60?}, 0x14000745ac0, 0x14000baea50, {0x0?, 0x0?})
/opt/homebrew/Cellar/go/1.22.0/libexec/src/go/types/stmt.go:41 +0x21c
go/types.(*Checker).funcDecl.func1()
/opt/homebrew/Cellar/go/1.22.0/libexec/src/go/types/decl.go:852 +0x44
go/types.(*Checker).processDelayed(0x1400027c000, 0x0)
/opt/homebrew/Cellar/go/1.22.0/libexec/src/go/types/check.go:467 +0x12c
go/types.(*Checker).checkFiles(0x1400027c000, {0x14000bb6220, 0x1, 0x1})
/opt/homebrew/Cellar/go/1.22.0/libexec/src/go/types/check.go:411 +0x188
go/types.(*Checker).Files(...)
/opt/homebrew/Cellar/go/1.22.0/libexec/src/go/types/check.go:372
golang.org/x/tools/go/packages.(*loader).loadPackage(0x14000192000, 0x1400086dc20)
/Users/user/go/pkg/mod/golang.org/x/tools@v0.10.0/go/packages/packages.go:1055 +0x870
golang.org/x/tools/go/packages.(*loader).loadRecursive.func1()
/Users/user/go/pkg/mod/golang.org/x/tools@v0.10.0/go/packages/packages.go:854 +0x178
sync.(*Once).doSlow(0x0?, 0x0?)
/opt/homebrew/Cellar/go/1.22.0/libexec/src/sync/once.go:74 +0x100
sync.(*Once).Do(...)
/opt/homebrew/Cellar/go/1.22.0/libexec/src/sync/once.go:65
golang.org/x/tools/go/packages.(*loader).loadRecursive(0x0?, 0x0?)
/Users/user/go/pkg/mod/golang.org/x/tools@v0.10.0/go/packages/packages.go:842 +0x50
golang.org/x/tools/go/packages.(*loader).loadRecursive.func1.1(0x0?)
/Users/user/go/pkg/mod/golang.org/x/tools@v0.10.0/go/packages/packages.go:849 +0x30
created by golang.org/x/tools/go/packages.(*loader).loadRecursive.func1 in goroutine 397
/Users/user/go/pkg/mod/golang.org/x/tools@v0.10.0/go/packages/packages.go:848 +0x84
That said, I didn’t dig very deep. So really just looking for a sanity check.
Thanks!
Albert