Improve panicking output
authorRichard Eisenberg <eir@cis.upenn.edu>
Mon, 21 Mar 2016 03:15:13 +0000 (23:15 -0400)
committerRichard Eisenberg <eir@cis.upenn.edu>
Mon, 21 Mar 2016 18:32:39 +0000 (14:32 -0400)
compiler/types/Type.hs

index d78c7f7..e3d3c88 100644 (file)
@@ -854,7 +854,7 @@ piResultTy ty arg
           empty_subst = mkEmptyTCvSubst $ mkInScopeSet $
                         tyCoVarsOfTypes [arg,res]
   | otherwise
-  = panic "piResultTys"
+  = pprPanic "piResultTy" (ppr ty $$ ppr arg)
 
 -- | (piResultTys f_ty [ty1, .., tyn]) gives the type of (f ty1 .. tyn)
 --   where f :: f_ty
@@ -889,7 +889,7 @@ piResultTys ty orig_args@(arg:args)
       Named tv _ -> go (extendVarEnv emptyTvSubstEnv tv arg) res args
 
   | otherwise
-  = panic "piResultTys"
+  = pprPanic "piResultTys1" (ppr ty $$ ppr orig_args)
   where
     go :: TvSubstEnv -> Type -> [Type] -> Type
     go tv_env ty [] = substTy (mkTvSubst in_scope tv_env) ty
@@ -911,7 +911,7 @@ piResultTys ty orig_args@(arg:args)
       = piResultTys ty' all_args
 
       | otherwise
-      = panic "piResultTys"
+      = pprPanic "piResultTys2" (ppr ty $$ ppr orig_args $$ ppr all_args)
 
 {-
 ---------------------------------------------------------------------