From 5637c27b828e63fa459d3b124400bc135d1c95df Mon Sep 17 00:00:00 2001 From: Teddy Wing Date: Sun, 21 May 2023 21:12:19 +0200 Subject: Check whether returned name matches defer error name Ensure the name of the returned error variable matches the name of the error variable assigned in the `defer` statement. --- testdata/signature.go | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'testdata') diff --git a/testdata/signature.go b/testdata/signature.go index c839934..a87501e 100644 --- a/testdata/signature.go +++ b/testdata/signature.go @@ -30,6 +30,21 @@ func doesDeclareErrInSignature() (err error) { return nil // want "does not return 'err'" } +func returnsOtherVariable() (err error) { + err = nil + if err != nil { + return err + } + + defer func() { + err = errors.New("defer error") + }() + + err2 := errors.New("returned error") + + return err2 // want "does not return 'err'" +} + func good() (err error) { err = nil if err != nil { -- cgit v1.2.3