Skip to content

discarded-deferred-result

Detect deferred function results that are always discarded.

Updated View as Markdown

Default severity: error

The return values of a deferred call cannot be observed. A deferred function literal that declares results usually contains a mistaken signature or should store its result through another mechanism.

Bad

defer func() error {
	return cleanup()
}()

Good

defer func() {
	if err := cleanup(); err != nil {
		log.Printf("cleanup: %v", err)
	}
}()
Navigation

Type to search…

↑↓ navigate↵ selectEsc close