summary refs log tree commit diff stats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/system/deepcopy.nim7
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/system/deepcopy.nim b/lib/system/deepcopy.nim
index b1609252c..c137b3cf6 100644
--- a/lib/system/deepcopy.nim
+++ b/lib/system/deepcopy.nim
@@ -134,7 +134,7 @@ proc genericDeepCopyAux(dest, src: pointer, mt: PNimType; tab: var PtrTable) =
     else:
       let z = tab.get(s2)
       if z == nil:
-        when declared(usrToCell) and false:
+        when declared(usrToCell):
           let x = usrToCell(s2)
           let realType = x.typ
           let z = newObj(realType, realType.base.size)
@@ -142,6 +142,11 @@ proc genericDeepCopyAux(dest, src: pointer, mt: PNimType; tab: var PtrTable) =
           tab.put(s2, z)
           genericDeepCopyAux(z, s2, realType.base, tab)
         else:
+          when false:
+            # addition check disabled
+            let x = usrToCell(s2)
+            let realType = x.typ
+            sysAssert realType == mt, " types do differ"
           # this version should work for any possible GC:
           let size = if mt.base.kind == tyObject: cast[ptr PNimType](s2)[].size else: mt.base.size
           let z = newObj(mt, size)