-
Notifications
You must be signed in to change notification settings - Fork 18.5k
Closed
Labels
FrozenDueToAgeNeedsFixThe path to resolution is known, but the work has not been done.The path to resolution is known, but the work has not been done.compiler/runtimeIssues related to the Go compiler and/or runtime.Issues related to the Go compiler and/or runtime.
Milestone
Description
What version of Go are you using (go version)?
$ go version go version devel go1.22-d72f4542fe Fri Nov 3 19:58:00 2023 +0000 darwin/arm64
Does this issue reproduce with the latest release?
It does not reproduce with the 1.21 release, only with the 1.22 development version.
What operating system and processor architecture are you using (go env)?
go env Output
$ go env GO111MODULE='' GOARCH='arm64' GOBIN='' GOCACHE='/Users/frederik/Library/Caches/go-build' GOENV='/Users/frederik/Library/Application Support/go/env' GOEXE='' GOEXPERIMENT='' GOFLAGS='' GOHOSTARCH='arm64' GOHOSTOS='darwin' GOINSECURE='' GOMODCACHE='/Users/frederik/go/pkg/mod' GONOPROXY='' GONOSUMDB='' GOOS='darwin' GOPATH='/Users/frederik/go' GOPRIVATE='' GOPROXY='https://proxy.golang.org,direct' GOROOT='/Users/frederik/go/src/go.googlesource.com/go' GOSUMDB='sum.golang.org' GOTMPDIR='' GOTOOLCHAIN='auto' GOTOOLDIR='/Users/frederik/go/src/go.googlesource.com/go/pkg/tool/darwin_arm64' GOVCS='' GOVERSION='devel go1.22-d72f4542fe Fri Nov 3 19:58:00 2023 +0000' GCCGO='gccgo' AR='ar' CC='clang' CXX='clang++' CGO_ENABLED='1' GOMOD='/Users/frederik/bugdemo/go.mod' GOWORK='' CGO_CFLAGS='-O2 -g' CGO_CPPFLAGS='' CGO_CXXFLAGS='-O2 -g' CGO_FFLAGS='-O2 -g' CGO_LDFLAGS='-O2 -g' PKG_CONFIG='pkg-config' GOGCCFLAGS='-fPIC -arch arm64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -ffile-prefix-map=/var/folders/9g/vgkswhbn2tn8r6h6f6ry7wl80000gn/T/go-build2774285608=/tmp/go-build -gno-record-gcc-switches -fno-common'
What did you do?
I tried to compile a minimal program using the oto library with the devel version of Go 1.22 on Darwin:
package main
import "github.com/ebitengine/oto/v3"
func main() {
_ = &oto.NewContextOptions{}
}
module bugdemo
go 1.22
require (
github.com/ebitengine/oto/v3 v3.1.0 // indirect
github.com/ebitengine/purego v0.5.0 // indirect
golang.org/x/sys v0.12.0 // indirect
)
% go build
What did you expect to see?
Successful compilation as with Go 1.21.
What did you see instead?
An internal compiler error:
/Users/frederik/go/pkg/mod/github.com/ebitengine/oto/v3@v3.1.0/driver_darwin.go:203:2: internal compiler error: '(*context).Resume': panic during prove while compiling (*context).Resume:
unexpected induction with too many parents
goroutine 1 [running]:
cmd/compile/internal/ssa.Compile.func1()
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/ssa/compile.go:49 +0x6c
panic({0x10555e3a0?, 0x1055fe660?})
/Users/frederik/go/src/go.googlesource.com/go/src/runtime/panic.go:763 +0x124
cmd/compile/internal/ssa.prove(0x14000b549c0)
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/ssa/prove.go:808 +0x1da8
cmd/compile/internal/ssa.Compile(0x14000b549c0)
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/ssa/compile.go:97 +0x93c
cmd/compile/internal/ssagen.buildssa(0x1400073b9e0, 0x0)
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/ssagen/ssa.go:575 +0x1ddc
cmd/compile/internal/ssagen.Compile(0x1400073b9e0, 0x0)
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/ssagen/pgen.go:216 +0x34
cmd/compile/internal/gc.compileFunctions.func5.1(0x12cc4f101?)
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/gc/compile.go:182 +0x3c
cmd/compile/internal/gc.compileFunctions.func2(0x14000060600?)
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/gc/compile.go:136 +0x28
cmd/compile/internal/gc.compileFunctions.func5({0x140009ca600?, 0x24, 0x1055fc4f0?})
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/gc/compile.go:181 +0x64
cmd/compile/internal/gc.compileFunctions()
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/gc/compile.go:192 +0x1f4
cmd/compile/internal/gc.Main(0x1055fc380)
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/gc/main.go:318 +0x1200
main.main()
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/main.go:57 +0x110
goroutine 1 [running]:
runtime/debug.Stack()
/Users/frederik/go/src/go.googlesource.com/go/src/runtime/debug/stack.go:24 +0x64
cmd/compile/internal/base.FatalfAt({0x5e2248?, 0x140?}, {0x14000b48a00, 0x32}, {0x14000a9f590?, 0x5, 0x5})
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/base/print.go:225 +0x200
cmd/compile/internal/base.Fatalf(...)
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/base/print.go:194
cmd/compile/internal/ssagen.(*ssafn).Fatalf(0x12cc5d110?, {0x18?, 0x0?}, {0x1053dbadd, 0x2c}, {0x14000b5e840?, 0x4, 0x0?})
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/ssagen/ssa.go:8225 +0x154
cmd/compile/internal/ssa.(*Func).Fatalf(0x14000b549c0, {0x1053dbadd, 0x2c}, {0x14000b5e840?, 0x4, 0x4})
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/ssa/func.go:742 +0x260
cmd/compile/internal/ssa.Compile.func1()
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/ssa/compile.go:54 +0x1a4
panic({0x10555e3a0?, 0x1055fe660?})
/Users/frederik/go/src/go.googlesource.com/go/src/runtime/panic.go:763 +0x124
cmd/compile/internal/ssa.prove(0x14000b549c0)
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/ssa/prove.go:808 +0x1da8
cmd/compile/internal/ssa.Compile(0x14000b549c0)
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/ssa/compile.go:97 +0x93c
cmd/compile/internal/ssagen.buildssa(0x1400073b9e0, 0x0)
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/ssagen/ssa.go:575 +0x1ddc
cmd/compile/internal/ssagen.Compile(0x1400073b9e0, 0x0)
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/ssagen/pgen.go:216 +0x34
cmd/compile/internal/gc.compileFunctions.func5.1(0x12cc4f101?)
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/gc/compile.go:182 +0x3c
cmd/compile/internal/gc.compileFunctions.func2(0x14000060600?)
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/gc/compile.go:136 +0x28
cmd/compile/internal/gc.compileFunctions.func5({0x140009ca600?, 0x24, 0x1055fc4f0?})
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/gc/compile.go:181 +0x64
cmd/compile/internal/gc.compileFunctions()
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/gc/compile.go:192 +0x1f4
cmd/compile/internal/gc.Main(0x1055fc380)
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/internal/gc/main.go:318 +0x1200
main.main()
/Users/frederik/go/src/go.googlesource.com/go/src/cmd/compile/main.go:57 +0x110
Metadata
Metadata
Assignees
Labels
FrozenDueToAgeNeedsFixThe path to resolution is known, but the work has not been done.The path to resolution is known, but the work has not been done.compiler/runtimeIssues related to the Go compiler and/or runtime.Issues related to the Go compiler and/or runtime.