From: simonpj Date: Thu, 5 Oct 2000 16:45:07 +0000 (+0000) Subject: [project @ 2000-10-05 16:45:07 by simonpj] X-Git-Tag: Approximately_9120_patches~3683 X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=affb35783b63469c6205c36651ee752ce936bb6d;p=ghc-hetmet.git [project @ 2000-10-05 16:45:07 by simonpj] wibble --- diff --git a/ghc/compiler/typecheck/TcMonoType.lhs b/ghc/compiler/typecheck/TcMonoType.lhs index 13aabab..4b6a6d4 100644 --- a/ghc/compiler/typecheck/TcMonoType.lhs +++ b/ghc/compiler/typecheck/TcMonoType.lhs @@ -335,9 +335,16 @@ tcHsType (HsListTy ty) = tcHsArgType ty `thenTc` \ tau_ty -> returnTc (mkListTy tau_ty) -tcHsType (HsTupleTy (HsTupCon _ boxity) tys) +tcHsType (HsTupleTy (HsTupCon _ Boxed) tys) = mapTc tcHsArgType tys `thenTc` \ tau_tys -> - returnTc (mkTupleTy boxity (length tys) tau_tys) + returnTc (mkTupleTy Boxed (length tys) tau_tys) + +tcHsType (HsTupleTy (HsTupCon _ Unboxed) tys) + = -- Unboxed tuples can have polymorphic args. + -- This happens in the workers for functions returning + -- product types with polymorphic components + mapTc tcHsType tys `thenTc` \ tau_tys -> + returnTc (mkTupleTy Unboxed (length tys) tau_tys) tcHsType (HsFunTy ty1 ty2) = tcHsType ty1 `thenTc` \ tau_ty1 ->