newtype deriving panic
Simon Peyton-Jones
simonpj at microsoft.com
Thu Jan 23 09:15:31 EST 2003
Thanks. Should be rejected, because MonadState takes two type
parameters, and
the deriving stuff only allows one. You might be able to say
...deriving(MonadState m)
or some such
I'll fix up the compiler to reject it more gracefully
Simon
| -----Original Message-----
| From: Dean Herington [mailto:heringto at cs.unc.edu]
| Sent: 22 January 2003 21:45
| To: glasgow-haskell-bugs at haskell.org
| Subject: newtype deriving panic
|
| Given this program:
|
| {-# OPTIONS -fglasgow-exts #-}
|
| module Bug1 where
|
| import Control.Monad.State
|
| newtype T a = T (StateT Int IO a) deriving (MonadState)
|
|
| GHC 5.04.2 chokes:
|
| ghc-5.04.2: chasing modules from: Bug1
| Compiling Bug1 ( Bug1.hs, ./Bug1.o )
| ghc-5.04.2: panic! (the `impossible' happened, GHC version 5.04.2):
| basicTypes/VarEnv.lhs:173: Non-exhaustive patterns in case
|
|
| Of course, the program is in error. (It should derive `MonadState
Int`.)
|
|
| _______________________________________________
| Glasgow-haskell-bugs mailing list
| Glasgow-haskell-bugs at haskell.org
| http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
More information about the Glasgow-haskell-bugs
mailing list