[Haskell-cafe] Possible bug in GHC 7.0.3
Ryan Ingram
ryani.spam at gmail.com
Wed Jun 29 02:26:10 CEST 2011
So this is definitely a GHC bug, but I think the problem is probably
triggered by this line:
instance Serializable a b => IResource a
I don't think this is a valid instance declaration without a functional
dependency on Serializable, as it's impossible to know which type 'b' to use
in the methods of IResource.
-- ryan
On Tue, Jun 28, 2011 at 3:43 AM, Alberto G. Corona <agocorona at gmail.com>wrote:
> I have an "'impossible' happened" error.
>
> The code may look a little bit convoluted but it is part of my real code.:
>
>
> --------- begin of code------
>
> {-# LANGUAGE FlexibleInstances, UndecidableInstances
> , MultiParamTypeClasses
> #-}
>
> class Serializable a b
>
>
> class IResource a --The rest of the instance definitions does not
> matter for the error
>
>
> instance Serializable a b => IResource a
>
> data DBRef a= DBRef String a
>
>
> instance (IResource a) => Read (DBRef a)
>
>
> data Votation a= Votation{
> content :: DBRef a
> } deriving (Read)
>
> ------------------------------- end of code ---
>
> gives the following error at compilation time:
>
> tests>runghc impossiblelloop.hs
> ghc: panic! (the 'impossible' happened)
> (GHC version 7.0.3 for i386-unknown-mingw32):
> solveDerivEqns: probable loop
> (impossiblelloop.hs:20:13-16 main:Main.$fReadVotation{v rhI} [a{tv abB}
> [tv]
> ] base:GHC.Read.Read{tc 2d} [main:Main.Votation{tc rbo}
>
> a{tv abB} [tv]] = [base:GHC.Read.Read{tc 2d}
>
> (main:Main.DBRef{tc
> rbu}
>
> a{tv abB} [tv])])
> [[main:Main.Serializable{tc rbA} a{tv abB} [tv] b{tv ajE} [tcs]]]
>
> Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug
>
>
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20110628/231fb2de/attachment.htm>
More information about the Haskell-Cafe
mailing list