It's always useful to distinguish "bool" and "string" from "untyped
bool" and "untyped string", so change typefmt to do this
unconditionally.
Also, while here, replace a bare 0 with its named constant FErr.
Fixes #23833.
Change-Id: I3fcb8d7204686937439caaaf8b3973fc236d0387
Reviewed-on: https://go-review.googlesource.com/94021
Run-TryBot: Matthew Dempsky <mdempsky@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
}
if int(t.Etype) < len(basicnames) && basicnames[t.Etype] != "" {
- prefix := ""
- if mode == FErr && (t == types.Idealbool || t == types.Idealstring) {
- prefix = "untyped "
+ name := basicnames[t.Etype]
+ if t == types.Idealbool || t == types.Idealstring {
+ name = "untyped " + name
}
- return prefix + basicnames[t.Etype]
+ return name
}
if mode == FDbg {
- return t.Etype.String() + "-" + typefmt(t, flag, 0, depth)
+ return t.Etype.String() + "-" + typefmt(t, flag, FErr, depth)
}
switch t.Etype {