on master help sign in
Fix TCE behind destructuring
51b10b0Evan Czaplicki
compiler/src/Optimize/Expression.hs+1−1
@@ -402,7 +402,7 @@ optimizeTail cycle rootName argNames locExpr@(A.At _ expression) =
402 Can.LetDestruct pattern expr body ->
402 Can.LetDestruct pattern expr body ->
403 do (dname, destructors) <- destruct pattern
403 do (dname, destructors) <- destruct pattern
404 oexpr <- optimize cycle expr
404 oexpr <- optimize cycle expr
405− obody <- optimizeTail cycle dname argNames body
405+ obody <- optimizeTail cycle rootName argNames body
406 pure $
406 pure $
407 Opt.Let (Opt.Def dname oexpr) (foldr Opt.Destruct obody destructors)
407 Opt.Let (Opt.Def dname oexpr) (foldr Opt.Destruct obody destructors)
408
408