diff options
Diffstat (limited to 'src/CHAD/Drev.hs')
| -rw-r--r-- | src/CHAD/Drev.hs | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/src/CHAD/Drev.hs b/src/CHAD/Drev.hs index bfa964b..ee92782 100644 --- a/src/CHAD/Drev.hs +++ b/src/CHAD/Drev.hs @@ -1009,11 +1009,10 @@ drev des accumMap sd = \case let smallE = unsafeWeakenWithSubenv usedSub e in subDescr des usedSub $ \usedDes subMergeUsed subAccumUsed subD1eUsed -> case drev usedDes (VarMap.subMap subAccumUsed accumMap) sd smallE of { Ret e0 subtape _ sub e2 -> - let subMergeUsed' = subenvMap (\t Refl -> spDense t) (d2eM (select SMerge des)) (subenvD2E subMergeUsed) in Ret (collectBindings (desD1E des) subD1eUsed) (subenvAll (desD1E usedDes)) (weakenExpr (wSinks (desD1E usedDes)) $ drevPrimal des e) - (subenvCompose subMergeUsed' sub) + (subenvCompose (subenvD2E subMergeUsed) sub) (letBinds (fst (weakenBindingsE (WSink .> wRaiseAbove (desD1E usedDes) (d2ace (select SAccum des))) e0)) $ weakenExpr (autoWeak (#d (auto1 @sd) |
