From 0f226c0e4865eb27a534fcd8defc34576e222177 Mon Sep 17 00:00:00 2001 From: ringabout <43030857+ringabout@users.noreply.github.com> Date: Mon, 24 Apr 2023 20:57:48 +0800 Subject: [PATCH] fixes #21703; moveOrCopy should consider when vm (#21721) --- compiler/injectdestructors.nim | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/compiler/injectdestructors.nim b/compiler/injectdestructors.nim index 6d5e070f27..ccb19720df 100644 --- a/compiler/injectdestructors.nim +++ b/compiler/injectdestructors.nim @@ -1054,7 +1054,8 @@ proc moveOrCopy(dest, ri: PNode; c: var Con; s: var Scope, flags: set[MoveOrCopy else: result = newTree(nkFastAsgn, dest, p(ri, c, s, normal)) else: - case ri.kind + let ri2 = if ri.kind == nkWhen: ri[1][0] else: ri + case ri2.kind of nkCallKinds: result = c.genSink(s, dest, p(ri, c, s, consumed), flags) of nkBracketExpr: