summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorAraq <rumpf_a@web.de>2014-02-27 23:28:15 +0100
committerAraq <rumpf_a@web.de>2014-02-27 23:28:15 +0100
commitc4f9c3b53eb6df46b0b900f2634991ff071e7071 (patch)
tree55a182bc55f774458f80aa5b528e1bda4fc99686
parentf0a70c7aaebeba4e6f637e50447d7f5a9dc5c698 (diff)
downloadNim-c4f9c3b53eb6df46b0b900f2634991ff071e7071.tar.gz
tstmtexprs.nim works again
-rw-r--r--compiler/vmdef.nim2
-rw-r--r--compiler/vmgen.nim4
2 files changed, 3 insertions, 3 deletions
diff --git a/compiler/vmdef.nim b/compiler/vmdef.nim
index 72689c879..30beea29c 100644
--- a/compiler/vmdef.nim
+++ b/compiler/vmdef.nim
@@ -157,7 +157,7 @@ type
     slotTempInt,      # some temporary int
     slotTempFloat,    # some temporary float
     slotTempStr,      # some temporary string
-    slotTempComplex   # some complex temporary (n.sons field is used)
+    slotTempComplex   # some complex temporary (s.node field is used)
 
   PProc* = ref object
     blocks*: seq[TBlock]    # blocks; temp data structure
diff --git a/compiler/vmgen.nim b/compiler/vmgen.nim
index 687db1b18..591c5ade8 100644
--- a/compiler/vmgen.nim
+++ b/compiler/vmgen.nim
@@ -944,9 +944,9 @@ proc genAddrDeref(c: PCtx; n: PNode; dest: var TDest; opc: TOpcode;
       if gfAddrOf notin flags and fitsRegister(n.typ):
         c.gABC(n, opcNodeToReg, dest, dest)
     elif c.prc.slots[tmp].kind >= slotTempUnknown:
-      gABC(c, n, opcAddrReg, dest, tmp)
-    else:
       gABC(c, n, opcAddrNode, dest, tmp)
+    else:
+      gABC(c, n, opcAddrReg, dest, tmp)
     c.freeTemp(tmp)
 
 proc whichAsgnOpc(n: PNode): TOpcode =