|  | After upgrading to Go 1.22.0, I ended up with a segfault:
    $ go test -v
    === RUN   Test
    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=0x1006fef14]
    goroutine 44 [running]:
    go/types.(*Checker).handleBailout(0x140003e8c00, 0x14000027b98)
      /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/check.go:367 +0x9c
    panic({0x100815520?, 0x1009e85d0?})
      /opt/homebrew/Cellar/go/1.22.1/libexec/src/runtime/panic.go:770 +0x124
    go/types.(*StdSizes).Sizeof(0x0, {0x100861ca8, 0x1009eb9a0})
      /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/sizes.go:228 +0x314
    go/types.(*Config).sizeof(...)
      /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/sizes.go:333
    go/types.representableConst.func1({0x100861ca8?, 0x1009eb9a0?})
      /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/const.go:76 +0x9c
    go/types.representableConst({0x100862fb0, 0x1009dfd60}, 0x140003e8c00, 0x1009eb9a0, 0x0)
      /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/const.go:92 +0x138
    go/types.(*Checker).arrayLength(0x140003e8c00, {0x100862088, 0x140002f5c00?})
      /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/typexpr.go:510 +0x238
    go/types.(*Checker).typInternal(0x140003e8c00, {0x100862058, 0x140003f6a80}, 0x0)
      /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/typexpr.go:299 +0x3bc
    go/types.(*Checker).definedType(0x140003e8c00, {0x100862058, 0x140003f6a80}, 0x14000027158?)
      /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/typexpr.go:180 +0x2c
    go/types.(*Checker).varType(0x140003e8c00, {0x100862058, 0x140003f6a80})
      /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/typexpr.go:145 +0x2c
    go/types.(*Checker).structType(0x140003e8c00, 0x140003f6de0, 0x140003f6de0?)
      /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/struct.go:113 +0x128
    go/types.(*Checker).typInternal(0x140003e8c00, {0x100862328, 0x1400000d368}, 0x140004220a0)
      /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/typexpr.go:316 +0xed0
    go/types.(*Checker).definedType(0x140003e8c00, {0x100862328, 0x1400000d368}, 0x10052c214?)
      /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/typexpr.go:180 +0x2c
    go/types.(*Checker).typeDecl(0x140003e8c00, 0x140004220a0, 0x140003bd940, 0x0)
      /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/decl.go:615 +0x39c
    go/types.(*Checker).objDecl(0x140003e8c00, {0x100865178, 0x140004220a0}, 0x0)
      /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/decl.go:197 +0x880
    go/types.(*Checker).packageObjects(0x140003e8c00)
      /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/resolver.go:681 +0x3c0
    go/types.(*Checker).checkFiles(0x140003e8c00, {0x14000052660, 0x1, 0x1})
      /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/check.go:408 +0x164
    go/types.(*Checker).Files(...)
      /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/check.go:372
    golang.org/x/tools/go/packages.(*loader).loadPackage(0x140001581c0, 0x14000169230)
      go/pkg/mod/golang.org/x/tools@v0.9.1/go/packages/packages.go:1052 +0x870
    golang.org/x/tools/go/packages.(*loader).loadRecursive.func1()
      go/pkg/mod/golang.org/x/tools@v0.9.1/go/packages/packages.go:851 +0x178
    sync.(*Once).doSlow(0x0?, 0x0?)
      /opt/homebrew/Cellar/go/1.22.1/libexec/src/sync/once.go:74 +0x100
    sync.(*Once).Do(...)
      /opt/homebrew/Cellar/go/1.22.1/libexec/src/sync/once.go:65
    golang.org/x/tools/go/packages.(*loader).loadRecursive(0x0?, 0x0?)
      go/pkg/mod/golang.org/x/tools@v0.9.1/go/packages/packages.go:839 +0x50
    golang.org/x/tools/go/packages.(*loader).loadRecursive.func1.1(0x0?)
      go/pkg/mod/golang.org/x/tools@v0.9.1/go/packages/packages.go:846 +0x30
    created by golang.org/x/tools/go/packages.(*loader).loadRecursive.func1 in goroutine 43
      go/pkg/mod/golang.org/x/tools@v0.9.1/go/packages/packages.go:845 +0x84
    exit status 2
    FAIL	gopkg.teddywing.com/defererr	0.130s
Upgrading to the latest version of 'golang.org/x/tools' resolved the
problem. |