Skip to content

x/tools/gopls: Completion: SEGV in deepSearch (cand slice has invalid data pointer) #73263

@adonovan

Description

@adonovan
#!stacks
"sigpanic" && "completion.(*completer).deepSearch:+65"

Issue created by stacks.

This stack korW0A was reported by telemetry:

			// When searching deep, make sure we don't have a cycle in our chain.
			// We don't dedupe by object because we want to allow both "foo.Baz"
			// and "bar.Baz" even though "Baz" is represented the same types.Object
			// in both.
			for _, seenObj := range cand.path { <--- SEGV
				if seenObj == obj {
					continue outer
				}
			}
golang.org/x/tools/gopls@v0.18.1 go1.23.6 linux/amd64 vscode (1)

Related:

Metadata

Metadata

Assignees

No one assigned

    Labels

    NeedsInvestigationSomeone 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.goplsIssues related to the Go language server, gopls.gopls/memory-corruption"can't happen" gopls crashes (races, unsafe, miscompile, runtime bugs, faulty HW)gopls/telemetry-wins

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions