We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent f5e5914 commit 9f2f33bCopy full SHA for 9f2f33b
src/Lean/Compiler/LCNF/ElimDead.lean
@@ -96,9 +96,12 @@ partial def Code.elimDead (code : Code pu) : M (Code pu) := do
96
| .jmp fvarId args => collectFVarM fvarId; args.forM collectArgM; return code
97
| .unreach .. => return code
98
| .uset var _ y k _ | .sset var _ _ y _ k _ =>
99
- collectFVarM var
100
- collectFVarM y
101
- return code.updateCont! (← k.elimDead)
+ let k ← k.elimDead
+ if (← get).contains var then
+ collectFVarM y
102
+ return code.updateCont! k
103
+ else
104
+ return k
105
106
end
107
0 commit comments