lvm.js

changeset 138
f9bb0e212d28
parent 137
6872878601d9
child 139
055fe658d0b2
equal deleted inserted replaced
137:6872878601d9 138:f9bb0e212d28
930 sys.puts("Returned: "+sys.inspect(ret)); 930 sys.puts("Returned: "+sys.inspect(ret));
931 931
932 } 932 }
933 catch(e) 933 catch(e)
934 { 934 {
935 var currframe = testvm.callstack[testvm.callstack.length-1]; 935 var trace = testvm.traceback();
936 var currframe = trace[0];
936 if(currframe) 937 if(currframe)
937 { 938 {
938 var currfunc = currframe.f; 939 sys.print("lvm.js: "+currframe.sourceName+":"+currframe.line+": ");
939 var sourceName = (currfunc.sourceName||"=<unknown>").substr(1);
940 var line = "?";
941 if(currfunc.sourceLines && currfunc.sourceLines[currframe.pc-1])
942 line = currfunc.sourceLines[currframe.pc-1];
943 sys.print("lvm.js: "+sourceName+":"+line+": ");
944 } 940 }
945 sys.puts(e); 941 sys.puts(e);
946 if(typeof(e) == "object" && "stack" in e) 942 if(typeof(e) == "object" && "stack" in e)
947 sys.puts(e.stack); 943 sys.puts(e.stack);
948 process.exit(1); 944 process.exit(1);

mercurial