summaryrefslogtreecommitdiff
path: root/test/fixedbugs/issue4232.go
blob: 29ddfa8a90910324e326a44e3d7adcc6fe605781 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
// errorcheck

// Copyright 2013 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.

package p

func f() {
	var a [10]int
	_ = a[-1] // ERROR "invalid array index -1"
	_ = a[-1:] // ERROR "invalid slice index -1"
	_ = a[:-1] // ERROR "invalid slice index -1"
	_ = a[10] // ERROR "invalid array index 10"

	var s []int
	_ = s[-1] // ERROR "invalid slice index -1"
	_ = s[-1:] // ERROR "invalid slice index -1"
	_ = s[:-1] // ERROR "invalid slice index -1"
	_ = s[10]

	const c = "foo"
	_ = c[-1] // ERROR "invalid string index -1"
	_ = c[-1:] // ERROR "invalid slice index -1"
	_ = c[:-1] // ERROR "invalid slice index -1"
	_ = c[3] // ERROR "invalid string index 3"

	var t string
	_ = t[-1] // ERROR "invalid string index -1"
	_ = t[-1:] // ERROR "invalid slice index -1"
	_ = t[:-1] // ERROR "invalid slice index -1"
	_ = t[3]
}