Skip to content

x/tools/gopls: doesn't honor staticcheck's //lint:ignore (etc) directives #74273

@kafji

Description

@kafji

gopls version

gopls -v version

Build info
----------
golang.org/x/tools/gopls v0.19.0
    golang.org/x/tools/[email protected] h1:DjtDZYqBkh8vFWotyXeBhqsu5rTx1E5CW9N2KDoMruk=
    github.com/BurntSushi/[email protected] h1:pxW6RcqyfI9/kWtOwnv/G+AzdKuy2ZrqINhenH4HyNs=
    github.com/fatih/[email protected] h1:hxNvNX/xYBp0ovncs8WyWZrOrpBNub/JfaMvbURyft8=
    github.com/fatih/[email protected] h1:dDSgAjoOMp8da3egfz0t2S+t8RGOpEmEXZubcGuc0Bg=
    github.com/fatih/[email protected] h1:/OdNE99OxoI/PqaW/SuSK9uxxT3f/tcSZgon/ssNSx4=
    github.com/google/[email protected] h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
    golang.org/x/exp/[email protected] h1:Br3+0EZZohShrmVVc85znGpxw7Ca8hsUJlrdT/JQGw8=
    golang.org/x/[email protected] h1:n7a+ZbQKQA/Ysbyb0/6IbB1H/X41mKgbhfv7AfG/44w=
    golang.org/x/[email protected] h1:KWH3jNZsfyT6xfAfKiz6MRNmd46ByHDYaZ7KSkCtdW8=
    golang.org/x/[email protected] h1:RXY2+rSHXvxO2Y+gKrPjYVaEoGOqh3VEXFhnWAt1Irg=
    golang.org/x/[email protected] h1:P42AVeLghgTYr4+xUnTRKDMqpar+PtX7KWuNQL21L8M=
    golang.org/x/[email protected] h1:OQ4h61FPxSOC5Y6JY92YS4wZ9X4XDD5RBNRd72FSx2A=
    golang.org/x/[email protected] h1:Ju8QsuyhX3Hk8ma3CesTbO8vfJD9EvUBgHvkxHBzj0I=
    honnef.co/go/[email protected] h1:fj8r9irJSpolAGUdZBxJIRY3lLc4jH2Dt4lwnWyWwpw=
    mvdan.cc/[email protected] h1:bg91ttqXmi9y2xawvkuMXyvAA/1ZGJqYAEGjXuP0JXU=
    mvdan.cc/xurls/[email protected] h1:3NTZpeTxYVWNSokW3MKeyVkz/j7uYXYiMtXRUfmjbgI=
go: go1.24.4

Vscode's Go: Locate Configured Go Tools

# Tools Configuration

## Tools

	go:	/usr/local/go/bin/go: go version go1.24.4 linux/amd64

	gopls:	/home/nightjar/go/bin/gopls	(version: v0.19.0 built with go: go1.24.4)
	gotests:	/home/nightjar/go/bin/gotests	(version: v1.6.0 built with go: go1.24.4)
	gomodifytags:	/home/nightjar/go/bin/gomodifytags	(version: v1.17.0 built with go: go1.24.4)
	impl:	/home/nightjar/go/bin/impl	(version: v1.4.0 built with go: go1.24.4)
	goplay:	/home/nightjar/go/bin/goplay	(version: v1.0.0 built with go: go1.24.4)
	dlv:	/home/nightjar/go/bin/dlv	(version: v1.25.0 built with go: go1.24.4)
	staticcheck:	/home/nightjar/go/bin/staticcheck	(version: v0.6.1 built with go: go1.24.4)

go env

AR='ar'
CC='gcc'
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_ENABLED='1'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
CXX='g++'
GCCGO='gccgo'
GO111MODULE=''
GOAMD64='v1'
GOARCH='amd64'
GOAUTH='netrc'
GOBIN=''
GOCACHE='/home/nightjar/.cache/go-build'
GOCACHEPROG=''
GODEBUG=''
GOENV='/home/nightjar/.config/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFIPS140='off'
GOFLAGS=''
GOGCCFLAGS='-fPIC -m64 -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=/tmp/go-build1013662506=/tmp/go-build -gno-record-gcc-switches'
GOHOSTARCH='amd64'
GOHOSTOS='linux'
GOINSECURE=''
GOMOD='/home/nightjar/somewhere/go.mod'
GOMODCACHE='/home/nightjar/go/pkg/mod'
GONOPROXY=''
GONOSUMDB=''
GOOS='linux'
GOPATH='/home/nightjar/go'
GOPRIVATE=''
GOPROXY='https://proxy.golang.org,direct'
GOROOT='/usr/local/go'
GOSUMDB='sum.golang.org'
GOTELEMETRY='local'
GOTELEMETRYDIR='/home/nightjar/.config/go/telemetry'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/usr/local/go/pkg/tool/linux_amd64'
GOVCS=''
GOVERSION='go1.24.4'
GOWORK=''
PKG_CONFIG='pkg-config'

What did you do?

Ignore lint-offending line using //lint:ignore

e.g.

//lint:ignore SA4000 we do what we must
if 1 == 1 {
}

What did you see happen?

Image

Image

What did you expect to see?

Lint warning is ignored.

Editor and settings

No response

Logs

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugReportIssues describing a possible bug in the Go implementation.ToolsThis label describes issues relating to any tools in the x/tools repository.goplsIssues related to the Go language server, gopls.

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions