The warning says that the interpreter has ignored a
polymorphic case, since it's hard to implement. Your program
should still behave the same, although possibly less strictly
than you intended.
What really mystifies us is why there is such a thing in the
program in the first place. Using -ddump-sat we can see that
there is indeed a
case ... of { DEFAULT -> ... }
but how it came to be, I do not know.
We may investigate further.
J
| Can someone explain the following warning?
|
| -------------------------------
| module Warning where
|
| type A = IO ()
|
| class CA t
| where a :: t -> A
| instance CA ()
| where a = return
| instance (CA t) => CA (IO t)
| where a = (>>= a)
|
| data B = B A
|
| class CB t
| where b :: t -> B
| instance (CA t) => CB (IO t)
| where b = B . a
| -------------------------------
|
| % ghci Warning.hs
| ___ ___ _
| / _ \ /\ /\/ __(_)
| / /_\// /_/ / / | | GHC Interactive, version 5.02.2,
| for Haskell
| 98.
| / /_\\/ __ / /___| | http://www.haskell.org/ghc/
| \____/\/ /_/\____/|_| Type :? for help.
|
| Loading package std ... linking ... done.
| Compiling Warning ( Warning.hs, interpreted )
| WARNING: ignoring polymorphic case in interpreted mode.
| Possibly due to strict polymorphic/functional constructor args.
| Your program may leak space unexpectedly.
|
| Ok, modules loaded: Warning.
| Warning>
|
| _______________________________________________
| Glasgow-haskell-users mailing list
| [EMAIL PROTECTED]
| http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
|
_______________________________________________
Glasgow-haskell-users mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users