X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2Ftypes%2FUnify.lhs;h=34993add02948d5590bf87fffdcd6588112f36e5;hb=ff5ae6ab8ed907dcf6adc810791b756bab827ab3;hp=5a1dbbc48150543f82c8509b016a1c8470aa3251;hpb=d5e78cc70dc29cb59687156486e2acaaa444c029;p=ghc-hetmet.git diff --git a/compiler/types/Unify.lhs b/compiler/types/Unify.lhs index 5a1dbbc..34993ad 100644 --- a/compiler/types/Unify.lhs +++ b/compiler/types/Unify.lhs @@ -123,7 +123,7 @@ match menv subst ty1 ty2 | Just ty1' <- tcView ty1 = match menv subst ty1' ty2 | Just ty2' <- tcView ty2 = match menv subst ty1 ty2' match menv subst (TyVarTy tv1) ty2 - | tv1 `elemVarSet` me_tmpls menv + | tv1' `elemVarSet` me_tmpls menv = case lookupVarEnv subst tv1' of Nothing -- No existing binding | any (inRnEnvR rn_env) (varSetElems (tyVarsOfType ty2)) @@ -131,7 +131,7 @@ match menv subst (TyVarTy tv1) ty2 | not (typeKind ty2 `isSubKind` tyVarKind tv1) -> Nothing -- Kind mis-match | otherwise - -> Just (extendVarEnv subst tv1 ty2) + -> Just (extendVarEnv subst tv1' ty2) Just ty1' -- There is an existing binding; check whether ty2 matches it | tcEqTypeX (nukeRnEnvL rn_env) ty1' ty2