Fix Trac #2817 (TH syntax -> HsSyn conversion)
authorsimonpj@microsoft.com <unknown>
Wed, 26 Nov 2008 15:40:22 +0000 (15:40 +0000)
committersimonpj@microsoft.com <unknown>
Wed, 26 Nov 2008 15:40:22 +0000 (15:40 +0000)
compiler/hsSyn/Convert.lhs

index f3401f2..06f6115 100644 (file)
@@ -532,7 +532,9 @@ cvtType ty = do { (head_ty, tys') <- split_ty_app ty
                             | n == 1    -> failWith (ptext (sLit "Illegal 1-tuple type constructor"))
                             | otherwise -> mk_apps (HsTyVar (getRdrName (tupleTyCon Boxed n))) tys'
                    ArrowT | [x',y'] <- tys' -> returnL (HsFunTy x' y')
+                          | otherwise       -> mk_apps (HsTyVar (getRdrName funTyCon)) tys'
                    ListT  | [x']    <- tys' -> returnL (HsListTy x')
+                          | otherwise       -> mk_apps (HsTyVar (getRdrName listTyCon)) tys'
                    VarT nm -> do { nm' <- tName nm;    mk_apps (HsTyVar nm') tys' }
                    ConT nm -> do { nm' <- tconName nm; mk_apps (HsTyVar nm') tys' }