Don't import FastString in HsVersions.h
[ghc-hetmet.git] / compiler / cmm / MkZipCfg.hs
index a0dcf11..067e749 100644 (file)
@@ -1,6 +1,6 @@
 {-# LANGUAGE ScopedTypeVariables #-}
 module MkZipCfg
-    ( AGraph, (<*>), sequence
+    ( AGraph, (<*>), catAGraphs
     , emptyAGraph, withFreshLabel, withUnique
     , mkMiddle, mkMiddles, mkLast, mkZTail, mkBranch, mkLabel, mkIfThenElse, mkWhileDo
     , outOfLine
@@ -15,8 +15,9 @@ import Outputable
 import Unique
 import UniqFM
 import UniqSupply
+import Util
 
-import Prelude hiding (zip, unzip, last, sequence)
+import Prelude hiding (zip, unzip, last)
 
 #include "HsVersions.h"
 
@@ -154,7 +155,7 @@ representation is agnostic on this point.)
 infixr 3 <*>
 (<*>) :: AGraph m l -> AGraph m l -> AGraph m l
 
-sequence :: [AGraph m l] -> AGraph m l
+catAGraphs :: [AGraph m l] -> AGraph m l
 
 -- | A graph is built up by splicing together graphs each containing a
 -- single node (where a label is considered a 'first' node.  The empty
@@ -250,7 +251,7 @@ newtype AGraph m l = AGraph (Graph m l -> UniqSM (Graph m l))
 AGraph f1 <*> AGraph f2 = AGraph f 
     where f g = f2 g >>= f1 -- note right associativity
 
-sequence = foldr (<*>) emptyAGraph
+catAGraphs = foldr (<*>) emptyAGraph
 
 emptyAGraph = AGraph return
 
@@ -350,5 +351,12 @@ Emitting a Branch at this point is fine:
        goto L1; L2: ...stuff... 
 -}
 
-_unused :: FS.FastString
-_unused = undefined
+
+-- | The string argument to 'freshBlockId' was originally helpful in debugging
+-- the Quick C-- compiler, so I have kept it here even though at present it is
+-- thrown away at this spot---there's no reason a BlockId couldn't one day carry
+-- a string.  
+
+freshBlockId :: String -> UniqSM BlockId
+freshBlockId _ = do { u <- getUniqueUs; return $ BlockId u }
+