From b8fde7555016618d1a9a4625c24af537e09de103 Mon Sep 17 00:00:00 2001 From: Teddy Wing Date: Tue, 16 May 2023 18:32:18 +0200 Subject: Add Idea.txt Idea for a new linter for ensuring errors are returned from `defer` closures. --- Idea.txt | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 Idea.txt diff --git a/Idea.txt b/Idea.txt new file mode 100644 index 0000000..0084e89 --- /dev/null +++ b/Idea.txt @@ -0,0 +1,11 @@ +Go static analyser to catch issues with returning errors from `defer`, like: + +func fn() error { // Return signature should be `(err error)` + var err error // Should use variable declared in signature + + defer func() { + err = errors.New("defer error") + }() + + return nil // Does not return `err` +} -- cgit v1.2.3