From 21cc8c19489bfefd9cab13e0b72f497a258c20e7 Mon Sep 17 00:00:00 2001 From: ringabout <43030857+ringabout@users.noreply.github.com> Date: Sat, 13 Jun 2026 12:19:09 +0800 Subject: [PATCH] progress --- compiler/sempass2.nim | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/compiler/sempass2.nim b/compiler/sempass2.nim index 638fc1fc15..0d32930472 100644 --- a/compiler/sempass2.nim +++ b/compiler/sempass2.nim @@ -508,20 +508,19 @@ proc skipHiddenConv(n: PNode): PNode = proc addRaiseEffectsFromExpr(a: PEffects, e, comesFrom: PNode) = if e.isNil: return - let x = skipHiddenConv(e) - case x.kind + case e.kind of nkStmtList, nkStmtListExpr, nkBlockStmt, nkBlockExpr: - if x.len > 0: - addRaiseEffectsFromExpr(a, x.lastSon, comesFrom) + if e.len > 0: + addRaiseEffectsFromExpr(a, e.lastSon.skipHiddenConv, comesFrom) of nkIfExpr, nkIfStmt: - for branch in items(x): + for branch in items(e): if branch.len > 0: - addRaiseEffectsFromExpr(a, branch.lastSon, comesFrom) + addRaiseEffectsFromExpr(a, branch.lastSon.skipHiddenConv, comesFrom) of nkCaseStmt: - for i in 1.. 0: - addRaiseEffectsFromExpr(a, branch.lastSon, comesFrom) + addRaiseEffectsFromExpr(a, branch.lastSon.skipHiddenConv, comesFrom) else: addRaiseEffect(a, e, comesFrom)