Preventing manual instances

Simon Peyton-Jones simonpj at
Mon Sep 9 15:57:34 UTC 2013

I think I'd prefer all of these checks to be done in checkValidInstHead. It makes sense... it's just the kind of thing that checkValidInstHead is for. It would remove clutter (and filtration) from tcInstDecls1.  

The same goes for the SafeHaskell checks in tcInstDecls1.

I'm not sure who is willing to do this?  If no one wants to do it now can someone make a ticket? But it might be easier just to cut to the chase and do it :-)



| -----Original Message-----
| From: ghc-devs [mailto:ghc-devs-bounces at] On Behalf Of
| Joachim Breitner
| Sent: 09 September 2013 08:25
| To: José Pedro Magalhães; ghc-devs at
| Subject: Re: Preventing manual instances
| Dear Predro,
| Am Sonntag, den 08.09.2013, 18:27 -0500 schrieb Austin Seipp:
| > I know Pedro committed the work to make manual
| > Typeable instances an error, which is great.
| the Coercible class has a similar property, and I added the check to
| prevent manual instances to checkValidInstance in TcValidity:
| while you did it in tcInstDecls1 in TcInstDecls:
| c06256e725f074b64
| I’m happy to follow suite if you tell me that TcInstDecls is indeed the
| better spot for such a check.
| Greetings,
| Joachim
| --
| Joachim “nomeata” Breitner
|   mail at joachim-breitner.de
|   Jabber: nomeata at  • GPG-Key: 0x4743206C
|   Debian Developer: nomeata at

More information about the ghc-devs mailing list