367 @verb #7165:"tb" this none this rxdo #7165 @program #7165:"tb" this none this {?reason} = args c = callers(1) if (`reason || 1 ! E_VARNF') {fobj, fverb, fthis, fprog, fplayer, fline} = c[1] if (fverb == "") tb = {tostr("#-1:Input to EVAL, line ", fline, ": ", reason)} else tb = {tostr(fobj, ":", fverb, " (this == ", fthis, "), line ", fline, ": ", reason)} endif c = listdelete(c, 1) else tb = {} endif for x in (c) {cobj, cverb, cthis, cprog, cplayer, cline} = x if (cverb == "") tb = {@tb, tostr("... called from #-1:Input to EVAL, line ", cline)} elseif (cobj == #-1) tb = {@tb, tostr("... called from built-in function ", cverb, "()")} else tb = {@tb, tostr("... called from ", cobj, ":", cverb, " (this == ", cthis, "), line ", cline)} endif endfor tb = {@tb, "(end of traceback)"} return tb . 0