[commit: ghc] overlapping-tyfams: Merge branch 'master' into overlapping-tyfams (81a2dd3)

Richard Eisenberg <[email protected]>
Newsgroups gmane.comp.lang.haskell.cvs.ghc
Message-ID <[email protected]>
Repository : ssh://darcs.haskell.org//srv/darcs/ghc

On branch  : overlapping-tyfams

http://hackage.haskell.org/trac/ghc/changeset/81a2dd3b1e3c703acaea64993b7c3f72400f5063

>---------------------------------------------------------------

commit 81a2dd3b1e3c703acaea64993b7c3f72400f5063
Merge: 77e5aa7... 9b2882c...
Author: Richard Eisenberg <[email protected]>
Date:   Thu Dec 6 20:32:34 2012 -0500

    Merge branch 'master' into overlapping-tyfams

 aclocal.m4                        |    2 +-
 compiler/ghc.cabal.in             |   10 +--
 compiler/ghc.mk                   |   20 +++-
 compiler/ghci/keepCAFsForGHCi.c   |    5 +-
 compiler/iface/IfaceType.lhs      |   71 ++++++-------
 compiler/iface/LoadIface.lhs      |  116 ++++++++++++---------
 compiler/iface/MkIface.lhs        |    2 +-
 compiler/main/CodeOutput.lhs      |    5 +-
 compiler/main/DriverPipeline.hs   |  128 ++++++++++++-----------
 compiler/main/DynFlags.hs         |   29 +++++-
 compiler/main/TidyPgm.lhs         |  207 +++++++++++++++++++-----------------
 compiler/nativeGen/AsmCodeGen.lhs |   16 ++--
 12 files changed, 329 insertions(+), 282 deletions(-)

diff --cc compiler/iface/IfaceType.lhs
index 2bb6122,fd12af1..103d336
--- a/compiler/iface/IfaceType.lhs
+++ b/compiler/iface/IfaceType.lhs
@@@ -356,23 -348,22 +349,23 @@@ toIfaceContext = toIfaceType
  ----------------
  coToIfaceType :: Coercion -> IfaceType
  coToIfaceType (Refl ty)             = IfaceCoConApp IfaceReflCo [toIfaceType ty]
- coToIfaceType (TyConAppCo tc cos)   
+ coToIfaceType (TyConAppCo tc cos)
    | tc `hasKey` funTyConKey
    , [arg,res] <- cos                = IfaceFunTy (coToIfaceType arg) (coToIfaceType res)
-   | otherwise                       = IfaceTyConApp (toIfaceTyCon tc) 
+   | otherwise                       = IfaceTyConApp (toIfaceTyCon tc)
                                                      (map coToIfaceType cos)
- coToIfaceType (AppCo co1 co2)       = IfaceAppTy    (coToIfaceType co1) 
+ coToIfaceType (AppCo co1 co2)       = IfaceAppTy    (coToIfaceType co1)
                                                      (coToIfaceType co2)
- coToIfaceType (ForAllCo v co)       = IfaceForAllTy (toIfaceTvBndr v) 
+ coToIfaceType (ForAllCo v co)       = IfaceForAllTy (toIfaceTvBndr v)
                                                      (coToIfaceType co)
  coToIfaceType (CoVarCo cv)          = IfaceTyVar  (toIfaceCoVar cv)
 -coToIfaceType (AxiomInstCo con cos) = IfaceCoConApp (coAxiomToIfaceType con)
 +coToIfaceType (AxiomInstCo con ind cos)
 +                                    = IfaceCoConApp (coAxiomToIfaceType con ind)
                                                      (map coToIfaceType cos)
- coToIfaceType (UnsafeCo ty1 ty2)    = IfaceCoConApp IfaceUnsafeCo 
+ coToIfaceType (UnsafeCo ty1 ty2)    = IfaceCoConApp IfaceUnsafeCo
                                                      [ toIfaceType ty1
                                                      , toIfaceType ty2 ]
- coToIfaceType (SymCo co)            = IfaceCoConApp IfaceSymCo 
+ coToIfaceType (SymCo co)            = IfaceCoConApp IfaceSymCo
                                                      [ coToIfaceType co ]
  coToIfaceType (TransCo co1 co2)     = IfaceCoConApp IfaceTransCo
                                                      [ coToIfaceType co1
diff --cc compiler/main/TidyPgm.lhs
index 7b1b6f3,0ea01d5..39ccd62
--- a/compiler/main/TidyPgm.lhs
+++ b/compiler/main/TidyPgm.lhs
@@@ -153,9 -153,9 +153,9 @@@ mkBootModDetailsTc hsc_en
          }
    where
  
 -mkBootTypeEnv :: NameSet -> [Id] -> [TyCon] -> [FamInst] -> TypeEnv
 +mkBootTypeEnv :: NameSet -> [Id] -> [TyCon] -> [FamInst Branched] -> TypeEnv
  mkBootTypeEnv exports ids tcs fam_insts
-   = tidyTypeEnv True False exports $
+   = tidyTypeEnv True $
         typeEnvFromEntities final_ids tcs fam_insts
    where
          -- Find the LocalIds in the type env that are exported
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.