inscrutable warning
Julian Seward (Intl Vendor)
v-julsew@microsoft.com
Fri, 8 Feb 2002 05:54:44 -0800
The warning says that the interpreter has ignored a=20
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=20
case ... of { DEFAULT -> ... }
but how it came to be, I do not know.
We may investigate further.
J
| Can someone explain the following warning?
|=20
| -------------------------------
| module Warning where
|=20
| type A =3D IO ()
|=20
| class CA t
| where a :: t -> A
| instance CA ()
| where a =3D return
| instance (CA t) =3D> CA (IO t)
| where a =3D (>>=3D a)
|=20
| data B =3D B A
|=20
| class CB t
| where b :: t -> B
| instance (CA t) =3D> CB (IO t)
| where b =3D B . a
| -------------------------------
|=20
| % ghci Warning.hs
| ___ ___ _
| / _ \ /\ /\/ __(_)
| / /_\// /_/ / / | | GHC Interactive, version 5.02.2,=20
| for Haskell
| 98.
| / /_\\/ __ / /___| | http://www.haskell.org/ghc/
| \____/\/ /_/\____/|_| Type :? for help.
|=20
| 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.
|=20
| Ok, modules loaded: Warning.
| Warning>
|=20
| _______________________________________________
| Glasgow-haskell-users mailing list
| Glasgow-haskell-users@haskell.org
| http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
|=20