runtime: stringTracef

This commit is contained in:
xushiwei
2024-05-02 13:10:41 +08:00
parent 9cf122c31a
commit a23a2601e4
2 changed files with 28 additions and 14 deletions

View File

@@ -33,9 +33,12 @@ func TracePanic(v Interface) {
kind := abi.Kind(v.tab._type.Kind_)
switch {
case kind == abi.String:
s := (*String)(v.data)
cs := c.Alloca(uintptr(s.len) + 1)
c.Printf(c.Str("panic: %s\n"), CStrCopy(cs, *s))
stringTracef(c.Stderr, c.Str("panic: %s\n"), *(*String)(v.data))
}
// TODO(xsw): other message type
}
func stringTracef(fp c.FilePtr, format *c.Char, s String) {
cs := c.Alloca(uintptr(s.len) + 1)
c.Fprintf(fp, format, CStrCopy(cs, s))
}