| Just ty2' <- tcView ty2
= -- Expand synonyms; ignore FTVs
let outer' | swapped = Unify False ty2' (mkTyVarTy tv1)
| otherwise = Unify False (mkTyVarTy tv1) ty2'
in uUnfilledVar outer' swapped tv1 details1 ps_ty2 ty2'
| Just ty2' <- tcView ty2
= -- Expand synonyms; ignore FTVs
let outer' | swapped = Unify False ty2' (mkTyVarTy tv1)
| otherwise = Unify False (mkTyVarTy tv1) ty2'
in uUnfilledVar outer' swapped tv1 details1 ps_ty2 ty2'