| // 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 | 
 | */ |