summary refs log tree commit diff stats
path: root/lib/system
diff options
context:
space:
mode:
authorEmery Hemingway <ehmry@posteo.net>2021-04-09 16:29:10 +0200
committerGitHub <noreply@github.com>2021-04-09 16:29:10 +0200
commit8aa5991beaa01f25a90d4115ed2495c92221f603 (patch)
tree55b3196be766a057d1af6219ce4f298bc6db6de9 /lib/system
parent86a1dcf92864f50fb1ab076cf58e19a3da81d301 (diff)
downloadNim-8aa5991beaa01f25a90d4115ed2495c92221f603.tar.gz
Genode platform fixes (#17521)
* Genode: move dyncall failures to runtime

Do not use the "error" pragma to warn that dynamic library loading is
not implemented, print a message at runtime and exit.

* Genode: use stricter dataspace type in page allocator

* Genode: remove compiler configuration from nim.cfg

Self-hosting Nim is not supported on Genode and defining the
cross-compilation environment can be done externally.

* Genode: use new mutex API

* Genode: call nim_component_construct as a C procedure

* Genode: implement echo for NimStringV2
Diffstat (limited to 'lib/system')
-rw-r--r--lib/system/dyncalls.nim12
1 files changed, 6 insertions, 6 deletions
diff --git a/lib/system/dyncalls.nim b/lib/system/dyncalls.nim
index b0f326bb5..c14fcf31e 100644
--- a/lib/system/dyncalls.nim
+++ b/lib/system/dyncalls.nim
@@ -167,14 +167,14 @@ elif defined(windows) or defined(dos):
 
 elif defined(genode):
 
-  proc nimUnloadLibrary(lib: LibHandle) {.
-    error: "nimUnloadLibrary not implemented".}
+  proc nimUnloadLibrary(lib: LibHandle) =
+    raiseAssert("nimUnloadLibrary not implemented")
 
-  proc nimLoadLibrary(path: string): LibHandle {.
-    error: "nimLoadLibrary not implemented".}
+  proc nimLoadLibrary(path: string): LibHandle =
+    raiseAssert("nimLoadLibrary not implemented")
 
-  proc nimGetProcAddr(lib: LibHandle, name: cstring): ProcAddr {.
-    error: "nimGetProcAddr not implemented".}
+  proc nimGetProcAddr(lib: LibHandle, name: cstring): ProcAddr =
+    raiseAssert("nimGetProcAddr not implemented")
 
 elif defined(nintendoswitch) or defined(freertos):
   proc nimUnloadLibrary(lib: LibHandle) =