Source file
test/fixedbugs/issue79197.go
1
2
3
4
5
6
7 package main
8
9
10 func a1(i int) {
11 var a [1]struct{}
12 a[i] = struct{}{}
13 }
14
15
16 func a2(i int) {
17 var a [1][0]int
18 a[i] = [0]int{}
19 }
20
21
22 func a3(i int) {
23 var a [1]struct{ x [0]int }
24 a[i] = struct{ x [0]int }{}
25 }
26
27 func wantPanic(name string, f func()) {
28 defer func() {
29 if r := recover(); r != nil {
30 return
31 }
32 panic(name + ": no panic (bug)")
33 }()
34 f()
35 }
36
37 func main() {
38 wantPanic("a1", func() { a1(5) })
39 wantPanic("a2", func() { a2(5) })
40 wantPanic("a3", func() { a3(5) })
41 }
42
View as plain text