]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/gc: fix error check for self-referential array type.
authorChris Manghane <cmang@golang.org>
Tue, 18 Mar 2014 03:26:19 +0000 (20:26 -0700)
committerChris Manghane <cmang@golang.org>
Tue, 18 Mar 2014 03:26:19 +0000 (20:26 -0700)
LGTM=gri, iant
R=gri, iant
CC=golang-codereviews
https://golang.org/cl/75920044

test/fixedbugs/issue7525.go [new file with mode: 0644]

diff --git a/test/fixedbugs/issue7525.go b/test/fixedbugs/issue7525.go
new file mode 100644 (file)
index 0000000..4e1d88a
--- /dev/null
@@ -0,0 +1,19 @@
+// errorcheck
+
+// Copyright 2014 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.
+
+// Issue 7525: self-referential array types.
+
+package main
+
+import "unsafe"
+
+var x struct {
+       a [unsafe.Sizeof(x.a)]int // ERROR "array bound|typechecking loop|invalid expression"
+       b [unsafe.Offsetof(x.b)]int // ERROR "array bound"
+       c [unsafe.Alignof(x.c)]int // ERROR "array bound|invalid expression"
+       d [len(x.d)]int // ERROR "array bound|invalid array"
+       e [cap(x.e)]int // ERROR "array bound|invalid array"
+}