Inspectopedia
 
2024.3

Empty slice declared using a literal

Info
Code Style
New
Last modified: 03 December 2024

Reports slice declarations with empty literal initializers used instead of nil.

An empty slice can be represented by nil or an empty slice literal. They are functionally equivalent — their len and cap are both zero — but the nil slice is the preferred style. For more information about empty slices, refer to Declaring Empty Slices at github.com/golang.

Example:

s := []string{}

To change the declaration, use the Replace with nil slice declaration (changes semantics) quick-fix. After the quick-fix is applied:

var s []string