@zetamatta
%v の挙動として,タイプ・アサーションで error 型と判定された場合は Error() メソッドの返り値を出力します。
```go:fmt/print.go
switch v := p.arg.(type) {
case error:
handled = true
defer p.catchPanic(p.arg, verb, "Error")
p.fmtString(v.Error(), verb)
return
case Stringer:
handled = true
defer p.catchPanic(p.arg, verb, "String")
p.fmtString(v.String(), verb)
return
}
```
なんで
```go
fmt.Fprintln(os.Stderr, err)
```
は間違いではないっス