-
Notifications
You must be signed in to change notification settings - Fork 18.5k
Open
Labels
BugReportIssues describing a possible bug in the Go implementation.Issues describing a possible bug in the Go implementation.NeedsInvestigationSomeone must examine and confirm this is a valid issue and not a duplicate of an existing one.Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.ToolsThis label describes issues relating to any tools in the x/tools repository.This label describes issues relating to any tools in the x/tools repository.goplsIssues related to the Go language server, gopls.Issues related to the Go language server, gopls.gopls/memory-corruption"can't happen" gopls crashes (races, unsafe, miscompile, runtime bugs, faulty HW)"can't happen" gopls crashes (races, unsafe, miscompile, runtime bugs, faulty HW)gopls/telemetry-wins
Milestone
Description
#!stacks
"sigpanic" && "reflect.(*rtype).common" && "reflect.(*rtype).Implements"
Issue created by stacks.
func (t *rtype) Implements(u Type) bool {
if u == nil {
panic("reflect: nil type passed to Type.Implements")
}
if u.Kind() != Interface {
panic("reflect: non-interface type passed to Type.Implements")
}
return implements(u.common(), t.common()) // <--- panics because u is nil (or SP is corrupt), but u cannot be nil
}
func (t *rtype) common() *abi.Type {
return &t.t // <--- panic
}This stack 2veB9A was reported by telemetry:
crash/crashruntime.throw:+9,+0x37runtime.sigpanic:+33,+0x223reflect.(*rtype).common:=324,+0x58reflect.(*rtype).Implements:+7,+0x44encoding/json.newTypeEncoder:+5,+0x73encoding/json.typeEncoder:+23,+0x15bencoding/json.typeFields:+206,+0x567encoding/json.cachedTypeFields:+4,+0xdbencoding/json.(*decodeState).object:+48,+0x20fencoding/json.(*decodeState).value:+17,+0x3fencoding/json.(*decodeState).unmarshal:+10,+0xffencoding/json.(*Decoder).Decode:+24,+0x117golang.org/x/tools/go/packages.(*golistState).createDriverResponse:+32,+0x227golang.org/x/tools/go/packages.goListDriver:+71,+0x6c3golang.org/x/tools/go/packages.defaultDriver.func1:+1,+0x43golang.org/x/tools/go/packages.callDriverOnChunks.func1:+1,+0x5fgolang.org/x/sync/errgroup.(*Group).add.func1:+32,+0x87
golang.org/x/tools/gopls@v0.19.1 go1.24.4 darwin/arm64 other,vscode (1)
Metadata
Metadata
Assignees
Labels
BugReportIssues describing a possible bug in the Go implementation.Issues describing a possible bug in the Go implementation.NeedsInvestigationSomeone must examine and confirm this is a valid issue and not a duplicate of an existing one.Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.ToolsThis label describes issues relating to any tools in the x/tools repository.This label describes issues relating to any tools in the x/tools repository.goplsIssues related to the Go language server, gopls.Issues related to the Go language server, gopls.gopls/memory-corruption"can't happen" gopls crashes (races, unsafe, miscompile, runtime bugs, faulty HW)"can't happen" gopls crashes (races, unsafe, miscompile, runtime bugs, faulty HW)gopls/telemetry-wins