2014-05-09 10:55:17 -06:00
|
|
|
// runoutput
|
|
|
|
|
2016-04-10 15:32:26 -06:00
|
|
|
// Copyright 2014 The Go Authors. All rights reserved.
|
2014-05-09 10:55:17 -06:00
|
|
|
// Use of this source code is governed by a BSD-style
|
|
|
|
// license that can be found in the LICENSE file.
|
|
|
|
|
|
|
|
// Issue 7867.
|
|
|
|
|
|
|
|
package main
|
|
|
|
|
|
|
|
import "fmt"
|
|
|
|
|
|
|
|
const tpl = `
|
|
|
|
func Test%d(t %s) {
|
|
|
|
_ = t
|
|
|
|
_ = t
|
|
|
|
}
|
|
|
|
`
|
|
|
|
|
|
|
|
func main() {
|
|
|
|
fmt.Println("package main")
|
|
|
|
types := []string{
|
|
|
|
// These types always passed
|
|
|
|
"bool", "int", "rune",
|
|
|
|
"*int", "uintptr",
|
|
|
|
"float32", "float64",
|
|
|
|
"chan struct{}",
|
|
|
|
"map[string]struct{}",
|
|
|
|
"func()", "func(string)error",
|
|
|
|
|
|
|
|
// These types caused compilation failures
|
|
|
|
"complex64", "complex128",
|
|
|
|
"struct{}", "struct{n int}", "struct{e error}", "struct{m map[string]string}",
|
|
|
|
"string",
|
|
|
|
"[4]byte",
|
|
|
|
"[]byte",
|
|
|
|
"interface{}", "error",
|
|
|
|
}
|
|
|
|
for i, typ := range types {
|
|
|
|
fmt.Printf(tpl, i, typ)
|
|
|
|
}
|
|
|
|
fmt.Println("func main() {}")
|
|
|
|
}
|