// printnil checks that fmt correctly handles a nil pointer receiver // for a value method at all optimization levels. package main import "fmt" type MyType struct { val int } func (t MyType) String() string { return "foobar" } func main() { if got := fmt.Sprintf("%s", (*MyType)(nil)); got != "" { panic(got) } }