-
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
"runtime.sigpanic" && "abi.(*Type).Kind" && "reflect.unpackEface" && "reflect.ValueOf"
Issue created by stacks.
More memory corruption:
// unpackEface converts the empty interface i to a Value.
func unpackEface(i any) Value {
e := (*abi.EmptyInterface)(unsafe.Pointer(&i))
// NOTE: don't read e.word until we know whether it is really a pointer or not.
t := e.Type
if t == nil {
return Value{}
}
f := flag(t.Kind()) <-- panics because t is nil
if t.IfaceIndir() {
f |= flagIndir
}
return Value{t, e.Data, f}
}This stack H6zSwQ was reported by telemetry:
crash/crashruntime.throw:+9runtime.sigpanic:+16internal/abi.(*Type).Kind:=197reflect.unpackEface:=164reflect.ValueOf:=2980encoding/json.(*decodeState).unmarshal:+1encoding/json.Unmarshal:+11golang.org/x/tools/internal/jsonrpc2.wireVersionTag.UnmarshalJSON:+2golang.org/x/tools/internal/jsonrpc2.(*wireVersionTag).UnmarshalJSON:+0encoding/json.(*decodeState).literalStore:+10encoding/json.(*decodeState).value:+31encoding/json.(*decodeState).object:+163encoding/json.(*decodeState).value:+17encoding/json.(*decodeState).unmarshal:+10encoding/json.Unmarshal:+11golang.org/x/tools/internal/jsonrpc2.DecodeMessage:+2golang.org/x/tools/internal/jsonrpc2.(*headerStream).Read:+44golang.org/x/tools/internal/jsonrpc2.(*conn).run:+4golang.org/x/tools/internal/jsonrpc2.(*conn).Go.gowrap1:+0
golang.org/x/tools/gopls@v0.18.1 go1.24.3 darwin/arm64 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