This commit is contained in:
flywind 2021-01-04 11:27:58 -06:00 • committed by GitHub
commit 9531afac48
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 15 additions and 11 deletions

View file

@ -30,16 +30,20 @@ elif (defined(nimQuirky) or defined(nimPanics)) and not defined(nimscript):
proc name(t: typedesc): string {.magic: "TypeTrait".} proc name(t: typedesc): string {.magic: "TypeTrait".}
proc sysFatal(exceptn: typedesc, message, arg: string) {.inline, noreturn.} = proc sysFatal(exceptn: typedesc, message, arg: string) {.inline, noreturn.} =
writeStackTrace() when nimvm:
var buf = newStringOfCap(200) # TODO when doAssertRaises works in CT, add a test for it
add(buf, "Error: unhandled exception: ") raise (ref exceptn)(msg: message & arg)
add(buf, message) else:
add(buf, arg) writeStackTrace()
add(buf, " [") var buf = newStringOfCap(200)
add(buf, name exceptn) add(buf, "Error: unhandled exception: ")
add(buf, "]\n") add(buf, message)
cstderr.rawWrite buf add(buf, arg)
quit 1 add(buf, " [")
add(buf, name exceptn)
add(buf, "]\n")
cstderr.rawWrite buf
quit 1
proc sysFatal(exceptn: typedesc, message: string) {.inline, noreturn.} = proc sysFatal(exceptn: typedesc, message: string) {.inline, noreturn.} =
sysFatal(exceptn, message, "") sysFatal(exceptn, message, "")

View file

@ -8,7 +8,7 @@ tassert_c.nim(35) tassert_c
tassert_c.nim(34) foo tassert_c.nim(34) foo
assertions.nim(30) failedAssertImpl assertions.nim(30) failedAssertImpl
assertions.nim(23) raiseAssert assertions.nim(23) raiseAssert
fatal.nim(49) sysFatal""" fatal.nim(53) sysFatal"""
proc tmatch(x, p: string): bool = proc tmatch(x, p: string): bool =
var i = 0 var i = 0