New Issue: Errors in operators don't result in callstacks?

17406, "bradcray", "Errors in operators don't result in callstacks?", "2021-03-15T23:12:21Z"

When we generate a compiler error in an operator overload, it doesn't seem to result in a callstack, though I'm not sure why it would be different from any other case. I was worried that this might be due to recent changes in the implementation of operators or handling of error callstacks, but fortunately it seems to have been a pre-existing issue in 1.23.

config var x = 1: int,
           y = 1: uint;

proc foo() {
  bar();
}

proc bar() {
  baz();
}

proc main() {
  var z = x + y;
  writeln(z);
  writeln(z.type:string);
}
$ chpl testit.chpl --print-callstack-on-error
testit.chpl:12: In function 'main':
testit.chpl:13: error: illegal use of '+' on operands of type uint(64) and signed integer

The result is that I have to jump into LLVM/GDB to figure out where things are going wrong, which isn't acceptable for end-users.

Maybe it has something to do with the compilerError occurring within an internal module?