lhmouse/asteria

spurious backtrace frame of proper sibling calls

lhmouse opened this issue · 0 comments

func two() {
  throw "boom";
}

func one() {
  try {
    two();
  }
  catch(e) {
    throw 123;
  }
}

try {
  one();
}
catch(e) {
  std.debug.dump(__backtrace);
}

Note the 10th frame:

          9 = object(5) {
            "offset" = integer -1;
            "file" = string(9) "[unknown]";
            "line" = integer -1;
            "frame" = string(10) "  function";
            "value" = string(0) "";
          };