fmtTest{ "%v", &array, "&[1 2 3 4 5]" },
fmtTest{ "%v", &iarray, "&[1 hello 2.5 <nil>]" },
+ // erroneous formats
+ fmtTest{ "", 2, "?(extra int=2)" },
+ fmtTest{ "%d", "hello", "%d(string=hello)%" },
+
// old test/fmt_test.go
fmtTest{ "%d", 1234, "1234" },
fmtTest{ "%d", -1234, "-1234" },
default:
badtype:
- s = "%" + string(c) + "(" + field.Type().String() + ")%";
+ s = "%" + string(c) + "(" + field.Type().String() + "=";
+ p.addstr(s);
+ p.printField(field);
+ s= ")%";
}
p.addstr(s);
}
if fieldnum < v.NumField() {
p.addstr("?(extra ");
for ; fieldnum < v.NumField(); fieldnum++ {
- p.addstr(getField(v, fieldnum).Type().String());
+ field := getField(v, fieldnum);
+ p.addstr(field.Type().String());
+ p.addstr("=");
+ p.printField(field);
if fieldnum + 1 < v.NumField() {
p.addstr(", ");
}