Yes, Jeff Lewis demonstrated this bug a while back.
It's fixed in the current sources (4.x) sources.
If it's important then I guess we can retro-fit 3.0x,
but we're planning to put out a (ha!) reliable 4.01 at the
end of Nov.

Thanks for a fine report

Simon


> -----Original Message-----
> From: Marc van Dongen [mailto:[EMAIL PROTECTED]]
> Sent: Tuesday, November 17, 1998 12:21 PM
> To: [EMAIL PROTECTED]
> Subject: bug report
> 
> 
> Hi there,
> 
> 
> I can't see why the following will not compile with 3.02
> 
> 
> > module Main( main ) where
> 
> > data A a = A (a,a)
> 
> > instance (Show a,Ord a) => Num (a,a) where
> >   (+) a a' = a
> 
> > instance (Show a,Ord a) => Eq  (A a) where
> >   (==) a a' = True
> 
> > instance Show (A String) where
> >   showsPrec p a ss = []
> 
> > instance (Show a,Ord a) => Show (A a) where
> >   showsPrec p a ss = []
> 
> > instance (Show a,Ord a) => Num (A a) where
> >   (+) a a' = a
> 
> > main = return ()
> 
> Main.lhs:18:
>     Could not deduce `Show (A a)'
>         (arising from an instance declaration at Main.lhs:18)
>         from the context (Show a, Ord a)
>     Probable cause: missing `Show (A a)' in instance 
> declaration context
>                     or missing instance declaration for `Show (A a)'
>     When checking the superclasses of an instance declaration
> 
> 
> After removing the instance Show (A String) it will compile.
> 
> Am I missing something?
> 
> Regards,
> 
> 
> Marc
> 

Reply via email to