summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorArne Döring <arne.doering@gmx.net>2019-11-07 17:16:34 +0100
committerAndreas Rumpf <rumpf_a@web.de>2019-11-07 17:16:34 +0100
commita2d6691af290e4500fff727136ada2b99609d896 (patch)
tree46590172fde35dc5e7355c1e57ff2bd54eda798c
parent8b1ef8e07ee73241c5da3d1d7a8d2b2aae5b7d42 (diff)
downloadNim-a2d6691af290e4500fff727136ada2b99609d896.tar.gz
fix #12597 (#12604)
-rw-r--r--lib/system/gc_regions.nim8
-rw-r--r--tests/misc/tgcregions.nim6
2 files changed, 10 insertions, 4 deletions
diff --git a/lib/system/gc_regions.nim b/lib/system/gc_regions.nim
index b7d1d302b..963fc7b78 100644
--- a/lib/system/gc_regions.nim
+++ b/lib/system/gc_regions.nim
@@ -378,13 +378,13 @@ proc asgnRefNoCycle(dest: PPointer, src: pointer) {.compilerproc, inline,
   deprecated: "old compiler compat".} = asgnRef(dest, src)
 
 proc alloc(size: Natural): pointer =
-  result = c_malloc(size)
+  result = c_malloc(cast[csize_t](size))
   if result == nil: raiseOutOfMem()
 proc alloc0(size: Natural): pointer =
   result = alloc(size)
   zeroMem(result, size)
 proc realloc(p: pointer, newsize: Natural): pointer =
-  result = c_realloc(p, newsize)
+  result = c_realloc(p, cast[csize_t](newsize))
   if result == nil: raiseOutOfMem()
 proc dealloc(p: pointer) = c_free(p)
 
@@ -401,13 +401,13 @@ proc alloc(r: var MemRegion; size: Natural): pointer =
 proc dealloc(r: var MemRegion; p: pointer) = dealloc(p)
 
 proc allocShared(size: Natural): pointer =
-  result = c_malloc(size)
+  result = c_malloc(cast[csize_t](size))
   if result == nil: raiseOutOfMem()
 proc allocShared0(size: Natural): pointer =
   result = alloc(size)
   zeroMem(result, size)
 proc reallocShared(p: pointer, newsize: Natural): pointer =
-  result = c_realloc(p, newsize)
+  result = c_realloc(p, cast[csize_t](newsize))
   if result == nil: raiseOutOfMem()
 proc deallocShared(p: pointer) = c_free(p)
 
diff --git a/tests/misc/tgcregions.nim b/tests/misc/tgcregions.nim
new file mode 100644
index 000000000..e14865be3
--- /dev/null
+++ b/tests/misc/tgcregions.nim
@@ -0,0 +1,6 @@
+discard """
+cmd: "nim c --gc:regions $file"
+"""
+
+# issue #12597
+# it just tests that --gc:regions compiles. Nothing else.   :'(