diff options
author | Andreas Rumpf <rumpf_a@web.de> | 2016-05-11 21:20:53 +0200 |
---|---|---|
committer | Andreas Rumpf <rumpf_a@web.de> | 2016-05-11 21:20:53 +0200 |
commit | ac1a753aff0324caf6214fe76094136d04faac3d (patch) | |
tree | ebc308deff6b79b7ce01fbbc96bbf278f3384f4d /compiler/vmgen.nim | |
parent | 8dec1dcd1f77590ae040a4f95b12d4ea40b812ac (diff) | |
download | Nim-ac1a753aff0324caf6214fe76094136d04faac3d.tar.gz |
fixes #3956
Diffstat (limited to 'compiler/vmgen.nim')
-rw-r--r-- | compiler/vmgen.nim | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/compiler/vmgen.nim b/compiler/vmgen.nim index 019c79eb3..bd32ccc17 100644 --- a/compiler/vmgen.nim +++ b/compiler/vmgen.nim @@ -1337,10 +1337,11 @@ proc genGlobalInit(c: PCtx; n: PNode; s: PSym) = # var decls{.compileTime.}: seq[NimNode] = @[] let dest = c.getTemp(s.typ) c.gABx(n, opcLdGlobal, dest, s.position) - let tmp = c.genx(s.ast) - c.preventFalseAlias(n, opcWrDeref, dest, 0, tmp) - c.freeTemp(dest) - c.freeTemp(tmp) + if s.ast != nil: + let tmp = c.genx(s.ast) + c.preventFalseAlias(n, opcWrDeref, dest, 0, tmp) + c.freeTemp(dest) + c.freeTemp(tmp) proc genRdVar(c: PCtx; n: PNode; dest: var TDest; flags: TGenFlags) = let s = n.sym |