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 =