We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
go version
$ go version go version devel go1.18-b86e8dd0f3 Thu Sep 9 09:06:46 2021 +0000 darwin/arm64
No
go env
$ go env
Coming here from #48280, a variant of the program trigger another error:
-- p.go -- package p type I[T I[T]] interface { F() T } -- p_test.go -- package p_test import ( "testing" "p" ) type S struct{} func (*S) F() *S { return nil } func TestP(t *testing.T) { var _ p.I[*S] = &S{} }
Running go test passes.
go test
/p_test.go:11:27: internal compiler error: importsym of symbol that already exists: p.I goroutine 1 [running]: runtime/debug.Stack() /Users/cuonglm/sources/go/src/runtime/debug/stack.go:24 +0x68 cmd/compile/internal/base.FatalfAt({0x1, 0x0}, {0x1031cd645, 0x2b}, {0x1400045cbb8, 0x1, 0x1}) /Users/cuonglm/sources/go/src/cmd/compile/internal/base/print.go:227 +0x16c cmd/compile/internal/base.Fatalf(...) /Users/cuonglm/sources/go/src/cmd/compile/internal/base/print.go:196 cmd/compile/internal/typecheck.importsym({0x1, 0x0}, 0x0, 0xa0, 0x1) /Users/cuonglm/sources/go/src/cmd/compile/internal/typecheck/export.go:52 +0x84 cmd/compile/internal/typecheck.importtype({0x8f200, 0x140}, 0x102af89c0) /Users/cuonglm/sources/go/src/cmd/compile/internal/typecheck/export.go:65 +0x28 cmd/compile/internal/typecheck.(*importReader).doDecl(0x1400008f200, 0x14000483e00) /Users/cuonglm/sources/go/src/cmd/compile/internal/typecheck/iimport.go:326 +0x344 cmd/compile/internal/typecheck.expandDecl({0x1033efd70, 0x14000537540}) /Users/cuonglm/sources/go/src/cmd/compile/internal/typecheck/iimport.go:61 +0x19c cmd/compile/internal/typecheck.Resolve({0x1033efd70, 0x14000537540}) /Users/cuonglm/sources/go/src/cmd/compile/internal/typecheck/typecheck.go:151 +0xe4 cmd/compile/internal/noder.(*irgen).obj(0x14000496000, {0x1033ec1b8, 0x14000489e00}) /Users/cuonglm/sources/go/src/cmd/compile/internal/noder/object.go:61 +0x170 cmd/compile/internal/noder.(*irgen).typ0(0x14000496000, {0x1033db7d0, 0x14000480bd0}) /Users/cuonglm/sources/go/src/cmd/compile/internal/noder/types.go:116 +0x2d0 cmd/compile/internal/noder.(*irgen).typ1(0x14000496000, {0x1033db7d0, 0x14000480bd0}) /Users/cuonglm/sources/go/src/cmd/compile/internal/noder/types.go:60 +0x60 cmd/compile/internal/noder.(*irgen).typ(0x14000496000, {0x1033db7d0, 0x14000480bd0}) /Users/cuonglm/sources/go/src/cmd/compile/internal/noder/types.go:35 +0x40 cmd/compile/internal/noder.(*irgen).obj(0x14000496000, {0x1033ec258, 0x14000490420}) /Users/cuonglm/sources/go/src/cmd/compile/internal/noder/object.go:132 +0x84c cmd/compile/internal/noder.(*irgen).def(0x14000496000, 0x14000411d20) /Users/cuonglm/sources/go/src/cmd/compile/internal/noder/object.go:22 +0xb4 cmd/compile/internal/noder.(*irgen).varDecl(0x14000496000, 0x14000537528, 0x1400012fc80) /Users/cuonglm/sources/go/src/cmd/compile/internal/noder/decl.go:222 +0xbc cmd/compile/internal/noder.(*irgen).decls(0x803b78101, 0x0, {0x1400010cb50, 0x1, 0x0}) /Users/cuonglm/sources/go/src/cmd/compile/internal/noder/decl.go:34 +0x11c cmd/compile/internal/noder.(*irgen).stmt(0x14000496000, {0x1033dc250, 0x14000409050}) /Users/cuonglm/sources/go/src/cmd/compile/internal/noder/stmt.go:54 +0x118 cmd/compile/internal/noder.(*irgen).stmts(0x1400006fb20, {0x1400010cb60, 0x1, 0x1400012cc58}) /Users/cuonglm/sources/go/src/cmd/compile/internal/noder/stmt.go:19 +0x9c cmd/compile/internal/noder.(*irgen).funcBody(0x14000496000, 0x1400043e9a0, 0x1400045d6d8, 0x14000131900, 0x14000131980) /Users/cuonglm/sources/go/src/cmd/compile/internal/noder/func.go:45 +0x224 cmd/compile/internal/noder.(*irgen).funcDecl.func1() /Users/cuonglm/sources/go/src/cmd/compile/internal/noder/decl.go:128 +0x60 cmd/compile/internal/noder.(*irgen).generate(0x14000496000, {0x1400012c428, 0x1, 0xc0}) /Users/cuonglm/sources/go/src/cmd/compile/internal/noder/irgen.go:263 +0x1cc cmd/compile/internal/noder.check2({0x1400012c428, 0x1, 0x1}) /Users/cuonglm/sources/go/src/cmd/compile/internal/noder/irgen.go:93 +0x130 cmd/compile/internal/noder.LoadPackage({0x140001360f0, 0x1, 0x0}) /Users/cuonglm/sources/go/src/cmd/compile/internal/noder/noder.go:90 +0x2f0 cmd/compile/internal/gc.Main(0x1033cafb0) /Users/cuonglm/sources/go/src/cmd/compile/internal/gc/main.go:190 +0xbbc main.main() /Users/cuonglm/sources/go/src/cmd/compile/main.go:55 +0xf8 FAIL p [build failed] FAIL
The text was updated successfully, but these errors were encountered:
Change https://golang.org/cl/349011 mentions this issue: cmd/compile: prevent duplicated import symbol of generic type
cmd/compile: prevent duplicated import symbol of generic type
Sorry, something went wrong.
ee91bb8
No branches or pull requests
What version of Go are you using (
go version
)?Does this issue reproduce with the latest release?
No
What operating system and processor architecture are you using (
go env
)?go env
OutputWhat did you do?
Coming here from #48280, a variant of the program trigger another error:
What did you expect to see?
Running
go test
passes.What did you see instead?
The text was updated successfully, but these errors were encountered: