[commit: ghc] master: Turn manual Typeable instances into errors; fixes #8132 (5335e56)
git at git.haskell.org
git at git.haskell.org
Wed Sep 4 17:29:29 CEST 2013
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/5335e56953c4bbe18166039c06256e725f074b64/ghc
>---------------------------------------------------------------
commit 5335e56953c4bbe18166039c06256e725f074b64
Author: Jose Pedro Magalhaes <jpm at cs.uu.nl>
Date: Wed Sep 4 10:09:17 2013 +0200
Turn manual Typeable instances into errors; fixes #8132
>---------------------------------------------------------------
5335e56953c4bbe18166039c06256e725f074b64
compiler/typecheck/TcInstDcls.lhs | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/compiler/typecheck/TcInstDcls.lhs b/compiler/typecheck/TcInstDcls.lhs
index 1481b25..9f89afe 100644
--- a/compiler/typecheck/TcInstDcls.lhs
+++ b/compiler/typecheck/TcInstDcls.lhs
@@ -409,7 +409,7 @@ tcInstDecls1 tycl_decls inst_decls deriv_decls
-- Remove any handwritten instance of poly-kinded Typeable and warn
; dflags <- getDynFlags
; when (wopt Opt_WarnTypeableInstances dflags) $
- mapM_ (addWarnTc . instMsg) typeable_instances
+ mapM_ (failWithTc . instMsg) typeable_instances
-- Check that if the module is compiled with -XSafe, there are no
-- hand written instances of old Typeable as then unsafe casts could be
@@ -444,7 +444,7 @@ tcInstDecls1 tycl_decls inst_decls deriv_decls
typInstErr = ptext $ sLit $ "Can't create hand written instances of Typeable in Safe"
++ " Haskell! Can only derive them"
- instMsg i = hang (ptext (sLit $ "Typeable instances can only be derived; ignoring "
+ instMsg i = hang (ptext (sLit $ "Typeable instances can only be derived; replace "
++ "the following instance:"))
2 (pprInstance (iSpec i))
More information about the ghc-commits
mailing list