diff --git a/checks/argument.go b/checks/argument.go index f0c5d71..a0a86e8 100644 --- a/checks/argument.go +++ b/checks/argument.go @@ -41,8 +41,12 @@ func (a *ArgumentAnalyzer) Check(n ast.Node) { case *ast.CallExpr: a.checkCallExpr(expr) case *ast.GenDecl: - if expr.Tok == token.CONST { - pos := a.pass.Fset.Position(expr.TokPos) + if expr.Tok != token.CONST { + return + } + + for _, x := range expr.Specs { + pos := a.pass.Fset.Position(x.Pos()) mu.Lock() constantDefinitions[pos.Filename+":"+strconv.Itoa(pos.Line)] = true diff --git a/testdata/src/argument/argument.go b/testdata/src/argument/argument.go index da08bd9..5aa2926 100644 --- a/testdata/src/argument/argument.go +++ b/testdata/src/argument/argument.go @@ -14,6 +14,11 @@ var MyValue = float32(20) // want "Magic number: 20" const MyConstantValue = float32(20) +const ( + FooBlockTypeConversion = int64(512) + BarBlockTypeConversion = uint8(2) +) + func example() { math.Abs(9.5) // want "Magic number: 9.5" }