Skip to content

cmd/compile: Closure variables from multiple packages #54912

@csgura

Description

@csgura

What version of Go are you using (go version)?

Gotip Playground

What did you do?

https://gotipplay.golang.org/p/W5b3aY-l9VR

What did you expect to see?

No error

What did you see instead?

# play.ground
./lazy/lazy.go:9:6: internal compiler error: Closure variables from multiple packages

goroutine 1 [running]:
runtime/debug.Stack()
	/usr/local/go/src/runtime/debug/stack.go:24 +0x65
cmd/compile/internal/base.FatalfAt({0x6eb311?, 0x0?}, {0xd883b1, 0x28}, {0x0, 0x0, 0x0})
	/usr/local/go/src/cmd/compile/internal/base/print.go:227 +0x1d7
cmd/compile/internal/base.Fatalf(...)
	/usr/local/go/src/cmd/compile/internal/base/print.go:196
cmd/compile/internal/typecheck.ClosureType(0xc0000e86e0)
	/usr/local/go/src/cmd/compile/internal/typecheck/func.go:108 +0x378
cmd/compile/internal/escape.HeapAllocReason({0xeef5c0, 0xc0000e86e0?})
	/usr/local/go/src/cmd/compile/internal/escape/utils.go:200 +0x2d3
cmd/compile/internal/escape.Batch({0xc00002ffb0?, 0x2, 0x2}, 0x30?)
	/usr/local/go/src/cmd/compile/internal/escape/escape.go:158 +0x368
cmd/compile/internal/ir.(*bottomUpVisitor).visit(0xc0003ca090, 0xc0003b4b40)
	/usr/local/go/src/cmd/compile/internal/ir/scc.go:127 +0x303
cmd/compile/internal/ir.VisitFuncsBottomUp({0xc0002faa00, 0x13, 0x2?}, 0xd9bf48)
	/usr/local/go/src/cmd/compile/internal/ir/scc.go:60 +0x112
cmd/compile/internal/escape.Funcs(...)
	/usr/local/go/src/cmd/compile/internal/escape/escape.go:119
cmd/compile/internal/gc.Main(0xd9be38)
	/usr/local/go/src/cmd/compile/internal/gc/main.go:268 +0xf65
main.main()
	/usr/local/go/src/cmd/compile/main.go:57 +0xdd


Go build failed.

Metadata

Metadata

Assignees

Labels

FrozenDueToAgeNeedsInvestigationSomeone must examine and confirm this is a valid issue and not a duplicate of an existing one.compiler/runtimeIssues related to the Go compiler and/or runtime.

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions