aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTeddy Wing2024-03-10 15:28:54 +0100
committerTeddy Wing2024-03-10 15:28:54 +0100
commitba664a54c0e275c01709e393030aeeae607d0656 (patch)
treeb20c2dc8002a66cff9f298ed0cec43ea6fc05fea
parentb1b311caf11e9e88ef5735dc4e5512dcd4725059 (diff)
downloadgocapturedrefrace-ba664a54c0e275c01709e393030aeeae607d0656.tar.bz2
go.mod: Upgrade 'golang.org/x/tools' to latest v0.19.0
We were previously using golang.org/x/tools v0.9.1, which caused a segfault when running against the latest Go 1.22: $ go 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=0x100862f14] goroutine 76 [running]: go/types.(*Checker).handleBailout(0x14000184200, 0x14000639b98) /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/check.go:367 +0x9c panic({0x10097d640?, 0x100b50600?}) /opt/homebrew/Cellar/go/1.22.1/libexec/src/runtime/panic.go:770 +0x124 go/types.(*StdSizes).Sizeof(0x0, {0x1009c9d28, 0x100b539a0}) /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({0x1009c9d28?, 0x100b539a0?}) /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/const.go:76 +0x9c go/types.representableConst({0x1009cb030, 0x100b47d80}, 0x14000184200, 0x100b539a0, 0x0) /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/const.go:92 +0x138 go/types.(*Checker).arrayLength(0x14000184200, {0x1009ca168, 0x14000226b20?}) /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/typexpr.go:510 +0x238 go/types.(*Checker).typInternal(0x14000184200, {0x1009ca138, 0x140001a42a0}, 0x0) /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/typexpr.go:299 +0x3bc go/types.(*Checker).definedType(0x14000184200, {0x1009ca138, 0x140001a42a0}, 0x14000639158?) /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/typexpr.go:180 +0x2c go/types.(*Checker).varType(0x14000184200, {0x1009ca138, 0x140001a42a0}) /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/typexpr.go:145 +0x2c go/types.(*Checker).structType(0x14000184200, 0x140001a49f0, 0x140001a49f0?) /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/struct.go:113 +0x128 go/types.(*Checker).typInternal(0x14000184200, {0x1009ca3a8, 0x140001145b8}, 0x140001597c0) /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/typexpr.go:316 +0xed0 go/types.(*Checker).definedType(0x14000184200, {0x1009ca3a8, 0x140001145b8}, 0x100690214?) /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/typexpr.go:180 +0x2c go/types.(*Checker).typeDecl(0x14000184200, 0x140001597c0, 0x1400022e8c0, 0x0) /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/decl.go:615 +0x39c go/types.(*Checker).objDecl(0x14000184200, {0x1009cd298, 0x140001597c0}, 0x0) /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/decl.go:197 +0x880 go/types.(*Checker).packageObjects(0x14000184200) /opt/homebrew/Cellar/go/1.22.1/libexec/src/go/types/resolver.go:681 +0x3c0 go/types.(*Checker).checkFiles(0x14000184200, {0x1400061e2e8, 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(0x140001881c0, 0x14000011110) ...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 67 ...go/pkg/mod/golang.org/x/tools@v0.9.1/go/packages/packages.go:845 +0x84 exit status 2 FAIL gopkg.teddywing.com/capturedrefrace 0.129s Upgrade to the latest version of the library, which doesn't cause the problem.
-rw-r--r--go.mod4
-rw-r--r--go.sum3
2 files changed, 5 insertions, 2 deletions
diff --git a/go.mod b/go.mod
index 58d3aba..3225857 100644
--- a/go.mod
+++ b/go.mod
@@ -4,10 +4,10 @@ go 1.20
require (
golang.org/x/exp v0.0.0-20240222234643-814bf88cf225
- golang.org/x/tools v0.18.0
+ golang.org/x/tools v0.19.0
)
require (
golang.org/x/mod v0.16.0 // indirect
- golang.org/x/sys v0.17.0 // indirect
+ golang.org/x/sys v0.18.0 // indirect
)
diff --git a/go.sum b/go.sum
index 6659cbc..e31f719 100644
--- a/go.sum
+++ b/go.sum
@@ -6,7 +6,10 @@ golang.org/x/sync v0.5.0 h1:60k92dhOjHxJkrqnwsfl8KuaHbn/5dl0lUPUklKo3qE=
golang.org/x/sys v0.14.0 h1:Vz7Qs629MkJkGyHxUlRHizWJRG2j8fbQKjELVSNhy7Q=
golang.org/x/sys v0.14.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
+golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/tools v0.15.0 h1:zdAyfUGbYmuVokhzVmghFl2ZJh5QhcfebBgmVPFYA+8=
golang.org/x/tools v0.15.0/go.mod h1:hpksKq4dtpQWS1uQ61JkdqWM3LscIS6Slf+VVkm+wQk=
golang.org/x/tools v0.18.0 h1:k8NLag8AGHnn+PHbl7g43CtqZAwG60vZkLqgyZgIHgQ=
golang.org/x/tools v0.18.0/go.mod h1:GL7B4CwcLLeo59yx/9UWWuNOW1n3VZ4f5axWfML7Lcg=
+golang.org/x/tools v0.19.0 h1:tfGCXNR1OsFG+sVdLAitlpjAvD/I6dHDKnYrpEZUHkw=
+golang.org/x/tools v0.19.0/go.mod h1:qoJWxmGSIBmAeriMx19ogtrEPrGtDbPK634QFIcLAhc=