summary refs log tree commit diff stats
path: root/compiler
diff options
context:
space:
mode:
authorAraq <rumpf_a@web.de>2014-06-30 22:24:08 +0200
committerAraq <rumpf_a@web.de>2014-06-30 22:24:08 +0200
commit0339b9d386bd0efa3c31bd05c25cd9ed0f1c7dd5 (patch)
treec6e28c8401a78e5d9fd04fec89a65e2cfbe51681 /compiler
parentb89495ef0f6bb60a3296fbaa7c4397dcd269f73d (diff)
downloadNim-0339b9d386bd0efa3c31bd05c25cd9ed0f1c7dd5.tar.gz
fixes #1319
Diffstat (limited to 'compiler')
-rw-r--r--compiler/transf.nim5
1 files changed, 4 insertions, 1 deletions
diff --git a/compiler/transf.nim b/compiler/transf.nim
index fb5e321b6..dece1ac18 100644
--- a/compiler/transf.nim
+++ b/compiler/transf.nim
@@ -546,7 +546,7 @@ proc flattenTree(root: PNode): PNode =
     flattenTreeAux(result, root, op)
   else: 
     result = root
-  
+
 proc transformCall(c: PTransf, n: PNode): PTransNode = 
   var n = flattenTree(n)
   var op = getMergeOp(n)
@@ -565,6 +565,9 @@ proc transformCall(c: PTransf, n: PNode): PTransNode =
           inc(j)
       add(result, a.PTransNode)
     if len(result) == 2: result = result[1]
+  elif getMagic(n) == mNBindSym:
+    # for bindSym(myconst) we MUST NOT perform constant folding:
+    result = n.PTransNode
   else:
     let s = transformSons(c, n).PNode
     # bugfix: check after 'transformSons' if it's still a method call: