diff --git a/.golangci.reference.yml b/.golangci.reference.yml index 8f337f182f2a..5e14e144fcce 100644 --- a/.golangci.reference.yml +++ b/.golangci.reference.yml @@ -1159,6 +1159,10 @@ linters-settings: require-specific: true nonamedreturns: + # Report named error if it is assigned inside defer. + # Default: false + report-error-in-defer: true + # DEPRECATED use report-error-in-defer instead. # Do not complain about named error, if it is assigned inside defer. # Default: false allow-error-in-defer: true diff --git a/pkg/config/linters_settings.go b/pkg/config/linters_settings.go index 3b5ceddf32de..43be7f6d6f68 100644 --- a/pkg/config/linters_settings.go +++ b/pkg/config/linters_settings.go @@ -486,7 +486,8 @@ type NoLintLintSettings struct { } type NoNamedReturnsSettings struct { - AllowErrorInDefer bool `mapstructure:"allow-error-in-defer"` + AllowErrorInDefer bool `mapstructure:"allow-error-in-defer"` // Deprecated: use ReportErrorInDefer instead. + ReportErrorInDefer bool `mapstructure:"report-error-in-defer"` } type ParallelTestSettings struct { IgnoreMissing bool `mapstructure:"ignore-missing"` diff --git a/pkg/golinters/nonamedreturns.go b/pkg/golinters/nonamedreturns.go index a8166f81672b..022551795454 100644 --- a/pkg/golinters/nonamedreturns.go +++ b/pkg/golinters/nonamedreturns.go @@ -15,7 +15,7 @@ func NewNoNamedReturns(settings *config.NoNamedReturnsSettings) *goanalysis.Lint if settings != nil { cfg = map[string]map[string]interface{}{ a.Name: { - analyzer.FlagAllowErrorInDefer: settings.AllowErrorInDefer, + analyzer.FlagReportErrorInDefer: settings.ReportErrorInDefer || settings.AllowErrorInDefer, }, } } diff --git a/test/testdata/configs/nonamedreturns.yml b/test/testdata/configs/nonamedreturns.yml index b73a2c1cb645..8976df8af9fa 100644 --- a/test/testdata/configs/nonamedreturns.yml +++ b/test/testdata/configs/nonamedreturns.yml @@ -1,3 +1,3 @@ linters-settings: nonamedreturns: - allow-error-in-defer: true + report-error-in-defer: true