From 42400001136308c1f4a49a15c1922435518ae58d Mon Sep 17 00:00:00 2001 From: "simonpj@microsoft.com" Date: Thu, 18 Nov 2010 09:00:28 +0000 Subject: [PATCH] Omit bogus test for -XDeriveFunctor It was duplicated in the case of 'deriving( Functor )' and wrong for 'deriving( Foldable )' --- compiler/typecheck/TcDeriv.lhs | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/compiler/typecheck/TcDeriv.lhs b/compiler/typecheck/TcDeriv.lhs index 0254155..30e57ff 100644 --- a/compiler/typecheck/TcDeriv.lhs +++ b/compiler/typecheck/TcDeriv.lhs @@ -936,10 +936,7 @@ cond_functorOK :: Bool -> Condition -- (c) don't use argument in the wrong place, e.g. data T a = T (X a a) -- (d) optionally: don't use function types -- (e) no "stupid context" on data type -cond_functorOK allowFunctions (dflags, rep_tc) - | not (xopt Opt_DeriveFunctor dflags) - = Just (ptext (sLit "You need -XDeriveFunctor to derive an instance for this class")) - +cond_functorOK allowFunctions (_, rep_tc) | null tc_tvs = Just (ptext (sLit "Data type") <+> quotes (ppr rep_tc) <+> ptext (sLit "has no parameters")) -- 1.7.10.4