\end{code}
\begin{code}
-tcImprove :: LIE -> TcM s ()
+tcImprove :: LIE -> TcM ()
-- Do unifications based on functional dependencies in the LIE
tcImprove lie
= tcGetInstEnv `thenNF_Tc` \ inst_env ->
iterImprove nfdss
-iterImprove :: [(VarSet, Name, [FunDep TcType])] -> TcM s ()
+iterImprove :: [(VarSet, Name, [FunDep TcType])] -> TcM ()
iterImprove [] = returnTc ()
iterImprove cfdss
= selfImprove pairImprove cfdss `thenTc` \ change2 ->