From e613a5678dd136ab8fb4fae9d07cc4e8797617ff Mon Sep 17 00:00:00 2001 From: "simonpj@microsoft.com" Date: Thu, 2 Sep 2010 07:36:42 +0000 Subject: [PATCH] Assert --- compiler/types/Type.lhs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/compiler/types/Type.lhs b/compiler/types/Type.lhs index 8817222..4cea101 100644 --- a/compiler/types/Type.lhs +++ b/compiler/types/Type.lhs @@ -468,7 +468,8 @@ splitFunTys ty = split [] ty ty splitFunTysN :: Int -> Type -> ([Type], Type) -- ^ Split off exactly the given number argument types, and panics if that is not possible splitFunTysN 0 ty = ([], ty) -splitFunTysN n ty = case splitFunTy ty of { (arg, res) -> +splitFunTysN n ty = ASSERT2( isFunTy ty, int n <+> ppr ty ) + case splitFunTy ty of { (arg, res) -> case splitFunTysN (n-1) res of { (args, res) -> (arg:args, res) }} -- 1.7.10.4