summary refs log tree commit diff stats
path: root/compiler/transf.nim
diff options
context:
space:
mode:
authorcooldome <cdome@bk.ru>2019-03-12 12:45:05 +0000
committerAndreas Rumpf <rumpf_a@web.de>2019-03-12 13:45:05 +0100
commit8ceba8a7f3af9999d39d96cba319bce51c33a0d7 (patch)
tree3e6a17be6d2ddc2642bac3dbecd650dcfe672008 /compiler/transf.nim
parentea3e18bc6cd6f37581d65fb13512fdde35bed95c (diff)
downloadNim-8ceba8a7f3af9999d39d96cba319bce51c33a0d7.tar.gz
fixes #10807 (#10814)
* fixes  #10807
* use nkAddr instead of nkHiddenAddr
Diffstat (limited to 'compiler/transf.nim')
-rw-r--r--compiler/transf.nim4
1 files changed, 4 insertions, 0 deletions
diff --git a/compiler/transf.nim b/compiler/transf.nim
index ed4a7018d..cac0ded90 100644
--- a/compiler/transf.nim
+++ b/compiler/transf.nim
@@ -762,6 +762,10 @@ proc transformCall(c: PTransf, n: PNode): PTransNode =
           inc(j)
       add(result, a.PTransNode)
     if len(result) == 2: result = result[1]
+  elif magic == mAddr:
+    result = newTransNode(nkAddr, n, 1)
+    result[0] = n[1].PTransNode
+    result = transformAddrDeref(c, result.PNode, nkDerefExpr, nkHiddenDeref)
   elif magic in {mNBindSym, mTypeOf, mRunnableExamples}:
     # for bindSym(myconst) we MUST NOT perform constant folding:
     result = n.PTransNode