From 5fd2ef0221f0737127f524554a872e118b178416 Mon Sep 17 00:00:00 2001 From: Teddy Wing Date: Thu, 18 May 2023 21:31:58 +0200 Subject: Ideas for an analyser for returning errors from defer Still working out how to traverse the AST to be able to see the objects I need. --- testdata/signature.go | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 testdata/signature.go (limited to 'testdata') diff --git a/testdata/signature.go b/testdata/signature.go new file mode 100644 index 0000000..17cfd0b --- /dev/null +++ b/testdata/signature.go @@ -0,0 +1,18 @@ +package main + +import "errors" + +func declareErrInSignature() error { // want "return signature should be '(err error)'" + var err error // Should use variable declared in signature + + err = nil + if err != nil { + return err + } + + defer func() { + err = errors.New("defer error") + }() + + return nil // want "does not return 'err'" +} -- cgit v1.2.3