summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Peyton Jones <simonpj@microsoft.com>2012-05-11 18:03:01 +0100
committerSimon Peyton Jones <simonpj@microsoft.com>2012-05-11 18:03:01 +0100
commit09addd354e9828531c89929cba1eca8d290f4b23 (patch)
tree0f5da4ae7b672e482b7580d3aeb383e040c54d42
parent9806a0a3e288d5ee28b9d8a8cc8cca1d5cc3b134 (diff)
parentd0f3a8baa11b16dc918a01dfaaf6cfebd9300865 (diff)
downloadhaskell-09addd354e9828531c89929cba1eca8d290f4b23.tar.gz
Merge branch 'master' of http://darcs.haskell.org/ghc
-rw-r--r--compiler/ghci/ByteCodeGen.lhs3
-rw-r--r--compiler/types/Type.lhs2
2 files changed, 4 insertions, 1 deletions
diff --git a/compiler/ghci/ByteCodeGen.lhs b/compiler/ghci/ByteCodeGen.lhs
index c8b1b303b5..c84d84a78c 100644
--- a/compiler/ghci/ByteCodeGen.lhs
+++ b/compiler/ghci/ByteCodeGen.lhs
@@ -482,6 +482,9 @@ schemeE d s p exp@(AnnTick (Breakpoint _id _fvs) _rhs)
-- ignore other kinds of tick
schemeE d s p (AnnTick _ (_, rhs)) = schemeE d s p rhs
+schemeE d s p (AnnCase (_,scrut) _ _ []) = schemeE d s p scrut
+ -- no alts: scrut is guaranteed to diverge
+
schemeE d s p (AnnCase scrut _ _ [(DataAlt dc, [bind1, bind2], rhs)])
| isUnboxedTupleCon dc, VoidArg <- typeCgRep (idType bind1)
-- Convert
diff --git a/compiler/types/Type.lhs b/compiler/types/Type.lhs
index f81aebbfcd..62cc7bbfd1 100644
--- a/compiler/types/Type.lhs
+++ b/compiler/types/Type.lhs
@@ -285,7 +285,7 @@ expandTypeSynonyms ty
= TyConApp tc (map go tys)
go (LitTy l) = LitTy l
go (TyVarTy tv) = TyVarTy tv
- go (AppTy t1 t2) = AppTy (go t1) (go t2)
+ go (AppTy t1 t2) = mkAppTy (go t1) (go t2)
go (FunTy t1 t2) = FunTy (go t1) (go t2)
go (ForAllTy tv t) = ForAllTy tv (go t)
\end{code}