Reports calls to json.Unmarshal and similar functions if the argument that is passed to store the result is not a pointer or an interface.

These calls will fail and return an error.

For more information about Unmarshal, refer to func Unmarshal at go.dev.

Example:

var animals []Animal
err := json.Unmarshal(jsonData, animals) // always returns an error

After the Prepend '&' quick-fix is applied:

var animals []Animal
err := json.Unmarshal(jsonData, &animals)