diff options
author | Araq <rumpf_a@web.de> | 2017-02-08 13:11:07 +0100 |
---|---|---|
committer | Araq <rumpf_a@web.de> | 2017-02-08 13:11:07 +0100 |
commit | d74f7344719f720685770549198eca6cec328fe5 (patch) | |
tree | 38e942f16b7f5b5649d5845e77d3a65ab6e54d86 /compiler | |
parent | ca42406df9355a5e392984fcbfe4edf040cb59b4 (diff) | |
download | Nim-d74f7344719f720685770549198eca6cec328fe5.tar.gz |
fixes #5352
Diffstat (limited to 'compiler')
-rw-r--r-- | compiler/vm.nim | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/compiler/vm.nim b/compiler/vm.nim index ea82a3155..5d4784281 100644 --- a/compiler/vm.nim +++ b/compiler/vm.nim @@ -522,7 +522,9 @@ proc rawExecute(c: PCtx, start: int, tos: PStackFrame): TFullReg = decodeBC(rkNode) let shiftedRb = rb + ord(regs[ra].node.kind == nkObjConstr) let dest = regs[ra].node - if dest.sons[shiftedRb].kind == nkExprColonExpr: + if dest.kind == nkNilLit: + stackTrace(c, tos, pc, errNilAccess) + elif dest.sons[shiftedRb].kind == nkExprColonExpr: putIntoNode(dest.sons[shiftedRb].sons[1], regs[rc]) else: putIntoNode(dest.sons[shiftedRb], regs[rc]) |