Imported package name as a name identifier
Reports declarations of variables, arguments or functions that overlap with the used import.
While legal, such declarations will make using the package exported identifiers impossible after the declaration or create confusion when reading the code.
Example:
import "fmt"
import _ "fmt"
import iio "io"
func _() {
fmt.Println("demo")
demo := true
_, _ = iio.EOF, demo
}
func demo() (int, int) {
return 1, 2
}
func _() {
_, _ = iio.EOF, demo
fmt := "demo"
iio := 1
_, _ = iio, fmt
a, _ := demo()
_ = a
}
Variable names fmt
and iio
clash with names of import packages. Not to confuse them later in code, it is better to rename these variables.
- 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.
GoImportUsedAsName
Inspection Details | |
---|---|
By default bundled with: | |
Can be installed with plugin: | Go, 243.23131 |