From aa1ff630a5f56d8a2cc357aa0b37511a932e784b Mon Sep 17 00:00:00 2001 From: Martin Fredin Date: Wed, 29 Mar 2023 22:48:26 +0200 Subject: [PATCH] Fix double vars --- src/TypeChecker/TypeCheckerBidir.hs | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/TypeChecker/TypeCheckerBidir.hs b/src/TypeChecker/TypeCheckerBidir.hs index 9e1e12f..53a942d 100644 --- a/src/TypeChecker/TypeCheckerBidir.hs +++ b/src/TypeChecker/TypeCheckerBidir.hs @@ -100,7 +100,7 @@ typecheckBind (Bind name vars rhs) = do -- Γ ⊢ f xs = e ↓ Α → B ⊣ Δ Just t -> do (rhs', _) <- check (foldr EAbs rhs vars) t - pure (T.Bind (coerce name, t) (coerce vars') (rhs', t)) + pure (T.Bind (coerce name, t) [] (rhs', t)) where vars' = zip vars $ getVars t @@ -111,9 +111,7 @@ typecheckBind (Bind name vars rhs) = do (e, t) <- infer $ foldr EAbs rhs vars t' <- applyEnv t e' <- applyEnvExp e - let rhs' = skipLambdas (length vars) e' - vars' = zip vars $ getVars t' - pure (T.Bind (coerce name, t') (coerce vars') (rhs', t')) + pure (T.Bind (coerce name, t') [] (e', t')) env <- gets env unless (isComplete env) err putEnv Empty