Repository : ssh://darcs.haskell.org//srv/darcs/ghc On branch : ghc-7.2
http://hackage.haskell.org/trac/ghc/changeset/f1158aa8dc5302dc5428c28305ffa94ca51443ce >--------------------------------------------------------------- commit f1158aa8dc5302dc5428c28305ffa94ca51443ce Author: Simon Peyton Jones <[email protected]> Date: Fri Jul 22 08:56:42 2011 +0100 Implement a findCycle function in Digraph, and use it to report module loops nicely This fixes Trac #5307. Now we get Module imports form a cycle: module `M8' (.\M8.hs) imports `M1' (M1.hs) which imports `M9' (.\M9.hs-boot) which imports `M8' (.\M8.hs) And the algorithm is linear time. compiler/main/GhcMake.hs | 67 +++++++++++++--------------------- compiler/utils/Digraph.lhs | 85 +++++++++++++++++++++++++++++++++++++++---- compiler/utils/Util.lhs | 6 +++- 3 files changed, 107 insertions(+), 51 deletions(-) Diff suppressed because of size. To see it, use: git show f1158aa8dc5302dc5428c28305ffa94ca51443ce _______________________________________________ Cvs-ghc mailing list [email protected] http://www.haskell.org/mailman/listinfo/cvs-ghc
