Inspectopedia Help

Nilness analyzer

Reports problems caused by incorrect usage of the nil value.

The IDE analyses data flow to determine if variables could have nil or not nil values. Based on this, the IDE reports potential issues in code. Consider the following list of situations that might lead to unintended consequences:

  • Method calls with the nil receiver might lead to 'nil pointer dereference'.

  • The nil slice indexing might cause panics.

  • Comparisons like v == nil might be meaningless if v is known to be always nil or not nil.

  • Variables with corresponding errors are not checked on not to be nil. An error corresponds to a variable when they are defined or assigned together in statements like v, err := foo().

Locating this inspection

By ID

Can be used to locate inspection in e.g. Qodana configuration files, where you can quickly enable or disable it, or adjust its settings.

GoNilness
Via Settings dialog

Path to the inspection settings via IntelliJ Platform IDE Settings dialog, when you need to adjust inspection settings directly from your IDE.

Settings or Preferences | Editor | Inspections | Go | Probable bugs

Availability

By default bundled with

GoLand 2024.1, Qodana for Go 2024.1,

Can be installed with plugin

Go, 241.SNAPSHOT

Last modified: 18 June 2024