summaryrefslogtreecommitdiffstats
path: root/test/fixedbugs/bug331.go
diff options
context:
space:
mode:
Diffstat (limited to 'test/fixedbugs/bug331.go')
-rw-r--r--test/fixedbugs/bug331.go36
1 files changed, 36 insertions, 0 deletions
diff --git a/test/fixedbugs/bug331.go b/test/fixedbugs/bug331.go
new file mode 100644
index 0000000..9eb57cd
--- /dev/null
+++ b/test/fixedbugs/bug331.go
@@ -0,0 +1,36 @@
+// run
+
+// Copyright 2011 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 "io"
+
+func f() (_ string, x float64, err error) {
+ return
+}
+
+func g() (_ string, x float64, err error) {
+ return "hello", 3.14, io.EOF
+}
+
+var _ func() (string, float64, error) = f
+var _ func() (string, float64, error) = g
+
+func main() {
+ x, y, z := g()
+ if x != "hello" || y != 3.14 || z != io.EOF {
+ println("wrong", x, len(x), y, z)
+ }
+}
+
+/*
+issue 1712
+
+bug331.go:12: cannot use "hello" (type string) as type float64 in assignment
+bug331.go:12: cannot use 0 (type float64) as type os.Error in assignment:
+ float64 does not implement os.Error (missing String method)
+bug331.go:12: error in shape across RETURN
+*/