diff options
Diffstat (limited to 'tests/errmsgs/tproper_stacktrace3.nim')
-rw-r--r-- | tests/errmsgs/tproper_stacktrace3.nim | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/errmsgs/tproper_stacktrace3.nim b/tests/errmsgs/tproper_stacktrace3.nim new file mode 100644 index 000000000..97d63e6ec --- /dev/null +++ b/tests/errmsgs/tproper_stacktrace3.nim @@ -0,0 +1,24 @@ +discard """ + matrix: "--stackTrace:on" + outputsub: '''tproper_stacktrace3.nim(22) main''' + exitcode: 1 +""" + +# bug #5400 + +type Container = object + val: int + +proc actualResolver(x: ptr Container): ptr Container = x + +template resolve(): untyped = actualResolver(db) + +proc myfail(): int = + doAssert false + +proc main() = + var db: ptr Container = nil + # actualResolver(db).val = myfail() # actualResolver is not included in stack trace. + resolve().val = myfail() # resolve template is included in stack trace. + +main() |