X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2Ftypecheck%2FTcTyDecls.lhs;h=e39b8707a15e9d93f4ccf95d7ada5c14d9bf431c;hp=11b9c3bc9599b17199aeb805736feb04b6dfeda5;hb=fb54e7be395ac278f979dc542e93e7830632c07b;hpb=0e332efa316f51451e9dd1809eaeba873a4076e4 diff --git a/compiler/typecheck/TcTyDecls.lhs b/compiler/typecheck/TcTyDecls.lhs index 11b9c3b..e39b870 100644 --- a/compiler/typecheck/TcTyDecls.lhs +++ b/compiler/typecheck/TcTyDecls.lhs @@ -102,7 +102,7 @@ synTyConsOfType ty \begin{code} calcSynCycles :: [LTyClDecl Name] -> [SCC (LTyClDecl Name)] calcSynCycles decls - = stronglyConnComp syn_edges + = stronglyConnCompFromEdgedVertices syn_edges where syn_edges = [ (ldecl, unLoc (tcdLName decl), mk_syn_edges (tcdSynRhs decl)) @@ -114,7 +114,7 @@ calcSynCycles decls calcClassCycles :: [LTyClDecl Name] -> [[LTyClDecl Name]] calcClassCycles decls - = [decls | CyclicSCC decls <- stronglyConnComp cls_edges] + = [decls | CyclicSCC decls <- stronglyConnCompFromEdgedVertices cls_edges] where cls_edges = [ (ldecl, unLoc (tcdLName decl), mk_cls_edges (unLoc (tcdCtxt decl))) @@ -287,7 +287,7 @@ findLoopBreakers deps = go [(tc,tc,ds) | (tc,ds) <- deps] where go edges = [ name - | CyclicSCC ((tc,_,_) : edges') <- stronglyConnCompR edges, + | CyclicSCC ((tc,_,_) : edges') <- stronglyConnCompFromEdgedVerticesR edges, name <- tyConName tc : go edges'] \end{code}