summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2008-09-30 14:08:43 -0700
committerRuss Cox <rsc@golang.org>2008-09-30 14:08:43 -0700
commit62f36bd297ad8ce8271763c70e11385fcb4628ae (patch)
tree14186d5fcb34f3036fa3768ebc7618f6dc80ff74
parentdaa6cb90c288cb0b5ab420bf8e48e7c45c3b6e95 (diff)
downloadgo-62f36bd297ad8ce8271763c70e11385fcb4628ae.tar.gz
tests of new func arg code
R=r DELTA=41 (41 added, 0 deleted, 0 changed) OCL=16212 CL=16223
-rw-r--r--test/func2.go31
-rw-r--r--test/func3.go17
2 files changed, 48 insertions, 0 deletions
diff --git a/test/func2.go b/test/func2.go
new file mode 100644
index 000000000..2db67ddf4
--- /dev/null
+++ b/test/func2.go
@@ -0,0 +1,31 @@
+// $G $F.go || echo BUG: should compile
+
+// 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 main
+import os "os";
+
+type t1 int;
+type t2 int;
+type t3 int;
+
+func f1(t1, t2, t3);
+func f2(t1, t2, t3 bool);
+func f3(t1, t2, x t3);
+func f4(t1, *t3);
+func (x *t1) f5(y *[]t2) (t1, *t3);
+func f6() (int, *string);
+func f7(*t2, t3);
+func f8(os int) int;
+
+func f9(os int) int {
+ return os
+}
+func f10(err os.Error) os.Error {
+ return err
+}
+func f11(t1 string) string {
+ return t1
+}
diff --git a/test/func3.go b/test/func3.go
new file mode 100644
index 000000000..907734626
--- /dev/null
+++ b/test/func3.go
@@ -0,0 +1,17 @@
+// errchk $G $F.go
+
+// 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 main
+
+type t1 int;
+type t2 int;
+type t3 int;
+
+func f1(*t2, x t3); // ERROR "named"
+func f2(t1, *t2, x t3); // ERROR "named"
+func f3() (x int, *string); // ERROR "named"
+
+func f4() (t1 t1); // ERROR "type"