Go — variadic parameter functions weirdness
- by ivanzoid
I'm trying to write simple fmt.Printf wrapper which takes variable number of arguments, here is the code:
func Die(format string, args ...interface{}) {
str := fmt.Sprintf(format, args)
fmt.Fprintf(os.Stderr, "%v\n", str)
os.Exit(1)
}
But when I'm calling it:
Die("foo")
I get:
foo%!(EXTRA []interface {}=[])
Can't figure why I'm getting this text after the "foo" & what is the correct way to create wrappers around fmt.Fprintf?