summaryrefslogtreecommitdiff
path: root/gcc/testsuite/go.test/test/fixedbugs/bug226.dir
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/go.test/test/fixedbugs/bug226.dir')
-rw-r--r--gcc/testsuite/go.test/test/fixedbugs/bug226.dir/x.go9
-rw-r--r--gcc/testsuite/go.test/test/fixedbugs/bug226.dir/y.go31
2 files changed, 40 insertions, 0 deletions
diff --git a/gcc/testsuite/go.test/test/fixedbugs/bug226.dir/x.go b/gcc/testsuite/go.test/test/fixedbugs/bug226.dir/x.go
new file mode 100644
index 000000000..64d7a29e7
--- /dev/null
+++ b/gcc/testsuite/go.test/test/fixedbugs/bug226.dir/x.go
@@ -0,0 +1,9 @@
+// Copyright 2009 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 x
+
+type T struct { x, Y int }
+
+func (t T) M()
diff --git a/gcc/testsuite/go.test/test/fixedbugs/bug226.dir/y.go b/gcc/testsuite/go.test/test/fixedbugs/bug226.dir/y.go
new file mode 100644
index 000000000..01e8b7b43
--- /dev/null
+++ b/gcc/testsuite/go.test/test/fixedbugs/bug226.dir/y.go
@@ -0,0 +1,31 @@
+// Copyright 2009 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 y
+
+import "./x"
+
+func f() {
+ ok := new(x.T);
+ var ok1 x.T;
+ ok2 := &ok1;
+ ok3 := &x.T{};
+ ok4 := &x.T{Y:2};
+ _ = x.T{};
+ _ = x.T{Y:2};
+
+ ok1.M(); // ERROR "assignment.*T"
+ bad1 := *ok; // ERROR "assignment.*T"
+ bad2 := ok1; // ERROR "assignment.*T"
+ *ok4 = ok1; // ERROR "assignment.*T"
+ *ok4 = *ok2; // ERROR "assignment.*T"
+ ok1 = *ok4; // ERROR "assignment.*T"
+ _ = bad1;
+ _ = bad2;
+ _ = ok4;
+ _ = ok3;
+ _ = ok2;
+ _ = ok1;
+ _ = ok;
+}