mirror of
https://github.com/golang/go
synced 2024-09-05 07:54:46 +00:00
![Robert Griesemer](/assets/img/avatar_default.png)
This is close to what the compiler used to say, except now we say "as T value" rather than "as type T" which is closer to the truth (we cannot use a value as a type, after all). Also, place the primary error and the explanation (cause) on a single line. Make respective (single line) adjustment to the matching "cannot convert" error. Adjust various tests. For #55326. Change-Id: Ib646cf906b11f4129b7ed0c38cf16471f9266b88 Reviewed-on: https://go-review.googlesource.com/c/go/+/436176 Reviewed-by: Robert Griesemer <gri@google.com> Run-TryBot: Robert Griesemer <gri@google.com> Auto-Submit: Robert Griesemer <gri@google.com> Reviewed-by: Robert Findley <rfindley@google.com> TryBot-Result: Gopher Robot <gobot@golang.org>
23 lines
856 B
Go
23 lines
856 B
Go
// errorcheck
|
|
|
|
// Copyright 2017 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.
|
|
|
|
// Verify that append arguments requirements are enforced by the
|
|
// compiler.
|
|
|
|
package main
|
|
|
|
func main() {
|
|
|
|
s := make([]int, 8)
|
|
|
|
_ = append() // ERROR "missing arguments to append|not enough arguments for append"
|
|
_ = append(s...) // ERROR "cannot use ... on first argument|not enough arguments in call to append"
|
|
_ = append(s, 2, s...) // ERROR "too many arguments to append|too many arguments in call to append"
|
|
|
|
_ = append(s, make([]int, 0)) // ERROR "cannot use make\(\[\]int, 0\) \(value of type \[\]int\) as int value in argument to append"
|
|
_ = append(s, make([]int, -1)...) // ERROR "negative len argument in make|index -1.* must not be negative"
|
|
}
|