You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
| some _ => none -- loop body should not end in non unit type
356
356
| none => e
357
357
| seq s₁ s₂ => do pure <| SSAExpr.letE `x (← s₁.toSSAExpr vars mutVars kbreak kcontinue) (← s₂.toSSAExpr vars mutVars kbreak kcontinue)
358
-
| letE var val rest => do pure <| SSAExpr.letE var val (← rest.toSSAExpr vars mutVars kbreak kcontinue)
358
+
| letE var val rest => do pure <| SSAExpr.letE var val (← rest.toSSAExpr (vars.push (var, ← val.inferType vars)) mutVars kbreak kcontinue)
359
359
| letM var val rest => do pure <| SSAExpr.letE var val (← rest.toSSAExpr (vars.push (var, ← val.inferType vars)) (mutVars.push (var, ← val.inferType vars)) kbreak kcontinue)
360
360
| assign var val rest => do pure <| SSAExpr.letE var val (← rest.toSSAExpr vars mutVars kbreak kcontinue)
0 commit comments