[commit: ghc] master: Allow deriving Typeable for more tycons (92191a3)
José Pedro Magalhães
jpm at cs.uu.nl
Tue May 7 14:26:58 CEST 2013
Repository : http://darcs.haskell.org/ghc.git/
On branch : master
https://github.com/ghc/ghc/commit/92191a39a59a036fde4de926e2e322a2c50c84cf
>---------------------------------------------------------------
commit 92191a39a59a036fde4de926e2e322a2c50c84cf
Author: Jose Pedro Magalhaes <jpm at cs.ox.ac.uk>
Date: Tue May 7 09:16:29 2013 +0100
Allow deriving Typeable for more tycons
>---------------------------------------------------------------
compiler/typecheck/TcDeriv.lhs | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/compiler/typecheck/TcDeriv.lhs b/compiler/typecheck/TcDeriv.lhs
index 7da30d19b..9b82ed6 100644
--- a/compiler/typecheck/TcDeriv.lhs
+++ b/compiler/typecheck/TcDeriv.lhs
@@ -683,7 +683,8 @@ mkEqnHelp :: CtOrigin -> [TyVar] -> Class -> [Type] -> Type
mkEqnHelp orig tvs cls cls_tys tc_app mtheta
| Just (tycon, tc_args) <- tcSplitTyConApp_maybe tc_app
- , isAlgTyCon tycon -- Check for functions, primitive types etc
+ , className cls == typeableClassName || isAlgTyCon tycon
+ -- Avoid functions, primitive types, etc, unless it's Typeable
= mk_alg_eqn tycon tc_args
| otherwise
= failWithTc (derivingThingErr False cls cls_tys tc_app
More information about the ghc-commits
mailing list