@@ -537,7 +537,8 @@ pruneByType (P _ n _) c as
538 typeHead var f f'
538 typeHead var f f'
539 = case lookupTy Nothing f' c of
539 = case lookupTy Nothing f' c of
540+ [ty] -> let ty' = normalise c [] ty in
540− [ty] -> case unApply (getRetTy ty) of
541+ case unApply (getRetTy ty') of
541 (P _ ftyn _, _) -> ftyn == f
542 (P _ ftyn _, _) -> ftyn == f
542 (V _, _) -> var -- keep, variable
543 (V _, _) -> var -- keep, variable
543 _ -> False
544 _ -> False