diff options
author | Araq <rumpf_a@web.de> | 2019-02-07 15:03:53 +0100 |
---|---|---|
committer | Araq <rumpf_a@web.de> | 2019-02-07 15:04:05 +0100 |
commit | 84d10f7d8a9488d4b5be3cccb582f966fc02aa64 (patch) | |
tree | 981a837cad7090379d573f58307247a30f4aa727 | |
parent | 3dc270eee504c4e853daf107164bfd7e99e96a0f (diff) | |
download | Nim-84d10f7d8a9488d4b5be3cccb582f966fc02aa64.tar.gz |
fixes #10585
-rw-r--r-- | compiler/vmops.nim | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/compiler/vmops.nim b/compiler/vmops.nim index 56c97dec6..4f9c7cf89 100644 --- a/compiler/vmops.nim +++ b/compiler/vmops.nim @@ -62,6 +62,9 @@ template wrap2svoid(op, modop) {.dirty.} = op(getString(a, 0), getString(a, 1)) modop op +template ioop(op) {.dirty.} = + registerCallback(c, "stdlib.io." & astToStr(op), `op Wrapper`) + proc getCurrentExceptionMsgWrapper(a: VmArgs) {.nimcall.} = setResult(a, if a.currentException.isNil: "" else: a.currentException.sons[3].skipColon.strVal) @@ -113,8 +116,8 @@ proc registerAdditionalOps*(c: PCtx) = wrap2svoid(putEnv, osop) wrap1s(dirExists, osop) wrap1s(fileExists, osop) - wrap2svoid(writeFile, systemop) - wrap1s(readFile, systemop) + wrap2svoid(writeFile, ioop) + wrap1s(readFile, ioop) systemop getCurrentExceptionMsg registerCallback c, "stdlib.*.staticWalkDir", proc (a: VmArgs) {.nimcall.} = setResult(a, staticWalkDirImpl(getString(a, 0), getBool(a, 1))) |