From c7cb47fc0e98e660621bfe7368464c4c93c9dbf1 Mon Sep 17 00:00:00 2001 From: Jose Pedro Magalhaes Date: Mon, 9 May 2011 14:00:32 +0200 Subject: [PATCH] Make the errors for DeriveGeneric consistent with other deriving errors. --- compiler/types/Generics.lhs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/compiler/types/Generics.lhs b/compiler/types/Generics.lhs index 2adcc58..68a41f8 100644 --- a/compiler/types/Generics.lhs +++ b/compiler/types/Generics.lhs @@ -52,11 +52,11 @@ canDoGenerics tycon = mergeErrors ( -- We do not support datatypes with context (if (not (null (tyConStupidTheta tycon))) - then (Just (ppr tycon <+> text "has a datatype context")) + then (Just (ppr tycon <+> text "must not have a datatype context")) else Nothing) -- We don't like type families : (if (isFamilyTyCon tycon) - then (Just (ppr tycon <+> text "is a family instance")) + then (Just (ppr tycon <+> text "must not be a family instance")) else Nothing) -- See comment below : (map bad_con (tyConDataCons tycon))) @@ -66,9 +66,9 @@ canDoGenerics tycon -- it relies on instantiating *polymorphic* sum and product types -- at the argument types of the constructors bad_con dc = if (any bad_arg_type (dataConOrigArgTys dc)) - then (Just (ppr dc <+> text "has unlifted or polymorphic arguments")) + then (Just (ppr dc <+> text "must not have unlifted or polymorphic arguments")) else (if (not (isVanillaDataCon dc)) - then (Just (ppr dc <+> text "is not a vanilla data constructor")) + then (Just (ppr dc <+> text "must be a vanilla data constructor")) else Nothing) @@ -81,7 +81,7 @@ canDoGenerics tycon mergeErrors [] = Nothing mergeErrors ((Just s):t) = case mergeErrors t of Nothing -> Just s - Just s' -> Just (s $$ s') + Just s' -> Just (s <> text ", and" $$ s') mergeErrors (Nothing :t) = mergeErrors t \end{code} -- 1.7.10.4