mirror of
https://github.com/golang/go.git
synced 2025-05-05 15:43:04 +00:00
Rather than reporting "non-function" for an invalid type parameter, report which type in the type parameter's type set is not a function. Change-Id: I8beec25cc337bae8e03d23e62d97aa82db46bab4 Reviewed-on: https://go-review.googlesource.com/c/go/+/654475 Reviewed-by: Robert Griesemer <gri@google.com> Auto-Submit: Robert Griesemer <gri@google.com> Reviewed-by: Robert Findley <rfindley@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
20 lines
613 B
Go
20 lines
613 B
Go
// errorcheck
|
|
|
|
// Copyright 2018 The Go Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
// Check that calling a function shadowing a built-in provides a good
|
|
// error message.
|
|
|
|
package main
|
|
|
|
func F() {
|
|
slice := []int{1, 2, 3}
|
|
_ = slice
|
|
len := int(2)
|
|
println(len(slice)) // ERROR "cannot call non-function len .type int., declared at LINE-1|expected function|cannot call len"
|
|
const iota = 1
|
|
println(iota(slice)) // ERROR "cannot call non-function iota .type int., declared at LINE-1|expected function|cannot call iota"
|
|
}
|