diff options
Diffstat (limited to 'src/liblink/pass.c')
| -rw-r--r-- | src/liblink/pass.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/liblink/pass.c b/src/liblink/pass.c index 8721a6a796..6d4db2757a 100644 --- a/src/liblink/pass.c +++ b/src/liblink/pass.c @@ -69,6 +69,7 @@ void linkpatch(Link *ctxt, LSym *sym) { int32 c; + char *name; Prog *p, *q; ctxt->cursym = sym; @@ -95,8 +96,10 @@ linkpatch(Link *ctxt, LSym *sym) q = q->link; } if(q == nil) { - ctxt->diag("branch out of range (%#ux)\n%P [%s]", - c, p, p->to.sym ? p->to.sym->name : "<nil>"); + name = "<nil>"; + if(p->to.sym) + name = p->to.sym->name; + ctxt->diag("branch out of range (%#ux)\n%P [%s]", c, p, name); p->to.type = ctxt->arch->D_NONE; } p->to.u.branch = q; |
