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
>