diff options
author | ringabout <43030857+ringabout@users.noreply.github.com> | 2022-11-04 16:53:19 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-04 09:53:19 +0100 |
commit | 12a20b9fb67598558e60ae9ffa3ca9780c6d8cba (patch) | |
tree | d3d357aef3efc46f027106f31f696d5d5cfe58da /lib/system/fatal.nim | |
parent | 8fb172c7a62732306ada098a276fada77f8f4805 (diff) | |
download | Nim-12a20b9fb67598558e60ae9ffa3ca9780c6d8cba.tar.gz |
revert #20719; relieve `std/assertions` of the `sysFatal` dep (#20743)
* Revert "make `system/fatal` importable (#20718)" This reverts commit d735c447d35948ef6fda8270d1665cbd66c4636a. * relieve `std/assertions` of the sysFatal dep
Diffstat (limited to 'lib/system/fatal.nim')
-rw-r--r-- | lib/system/fatal.nim | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/lib/system/fatal.nim b/lib/system/fatal.nim index 6e2edf573..c01787a32 100644 --- a/lib/system/fatal.nim +++ b/lib/system/fatal.nim @@ -9,22 +9,27 @@ {.push profiler: off.} +when defined(nimHasExceptionsQuery): + const gotoBasedExceptions = compileOption("exceptions", "goto") +else: + const gotoBasedExceptions = false + when hostOS == "standalone": include "$projectpath/panicoverride" - func sysFatal*(exceptn: typedesc, message: string) {.inline.} = + func sysFatal(exceptn: typedesc, message: string) {.inline.} = panic(message) - func sysFatal*(exceptn: typedesc, message, arg: string) {.inline.} = + func sysFatal(exceptn: typedesc, message, arg: string) {.inline.} = rawoutput(message) panic(arg) elif (defined(nimQuirky) or defined(nimPanics)) and not defined(nimscript): - import system/ansi_c + import ansi_c func name(t: typedesc): string {.magic: "TypeTrait".} - func sysFatal*(exceptn: typedesc, message, arg: string) {.inline, noreturn.} = + func sysFatal(exceptn: typedesc, message, arg: string) {.inline, noreturn.} = when nimvm: # TODO when doAssertRaises works in CT, add a test for it raise (ref exceptn)(msg: message & arg) @@ -41,14 +46,14 @@ elif (defined(nimQuirky) or defined(nimPanics)) and not defined(nimscript): cstderr.rawWrite buf quit 1 - func sysFatal*(exceptn: typedesc, message: string) {.inline, noreturn.} = + func sysFatal(exceptn: typedesc, message: string) {.inline, noreturn.} = sysFatal(exceptn, message, "") else: - func sysFatal*(exceptn: typedesc, message: string) {.inline, noreturn.} = + func sysFatal(exceptn: typedesc, message: string) {.inline, noreturn.} = raise (ref exceptn)(msg: message) - func sysFatal*(exceptn: typedesc, message, arg: string) {.inline, noreturn.} = + func sysFatal(exceptn: typedesc, message, arg: string) {.inline, noreturn.} = raise (ref exceptn)(msg: message & arg) {.pop.} |