Re: Branch new-typeable: conflicting definitions for class Typeable
José Pedro Magalhães <[email protected]>
| Newsgroups | gmane.comp.lang.haskell.cvs.ghc |
|---|---|
| Message-ID | <CA+ZFbn_e99M1rCDA4ufSzqF-TiVdmN5O+JzyYfOH7+Z6tEyZ-A@mail.gmail.com> |
On Wed, Sep 26, 2012 at 3:35 PM, Simon Peyton-Jones <[email protected]>wrote: > The code is in TcRnDriver about line 764. No comparison of the > “recflag” which is indeed a not-very-well-defined beast. > I don't quite understand, sorry; are you telling me that I should change this so that the RecFlag is not compared? > **** > > ** ** > > I’d do -dppr-debug to check that unique are ok. The rnBndrs2 stuff is > meant to deal with alpha-renaming. > All seems equal to me, apart from this RecFlag: libraries/base/Data/Typeable/Internal.hs:213:7: > Class `base:Data.Typeable.Internal.Typeable{tc 2k}' has conflicting > definitions in the module and its hs-boot file > Main module: class Typeable{tc} (k::ghc-prim:GHC.Prim.BOX{(w) tc 347}) > (a::k) > RecFlag Recursive > typeRep{v} :: base:Data.Typeable.Internal.Proxy{tc > ryo} k a > -> > base:Data.Typeable.Internal.TypeRep{tc ryl} > Boot file: class Typeable{tc} (k::ghc-prim:GHC.Prim.BOX{(w) tc 347}) > (a::k) > RecFlag NonRecursive > typeRep{v} :: base:Data.Typeable.Internal.Proxy{tc > ryo} k a > -> > base:Data.Typeable.Internal.TypeRep{tc ryl} > Cheers, Pedro > **** > > ** ** > > Simon**** > > ** ** > > *From:* [email protected] [mailto:[email protected]] > *On Behalf Of *José Pedro Magalhães > *Sent:* 26 September 2012 14:12 > *To:* Simon Peyton-Jones > *Cc:* [email protected] > *Subject:* Branch new-typeable: conflicting definitions for class Typeable > **** > > ** ** > > Hi Simon, > > I'm working on implementing the kind-polymorphic Typeable. I've branched > the compiler and base repos into new-typeable. Currently I'm getting the > following error:**** > > libraries/base/Data/Typeable/Internal.hs:213:7: > Class `Typeable' has conflicting definitions in the module and its > hs-boot file > Main module: class Typeable (k::BOX) (a::k) > RecFlag Recursive > typeRep :: Proxy k a -> TypeRep > Boot file: class Typeable (k::BOX) (a::k) > RecFlag NonRecursive > typeRep :: Proxy k a -> TypeRep > make[1]: *** [libraries/base/dist-install/build/Data/Typeable/Internal.o] > Error 1**** > > > Why is this? I don't see why Typeable should be recursive, nor do I see > how to make it recursive on the hs-boot file... > > > Thanks, > Pedro**** > _______________________________________________ Cvs-ghc mailing list [email protected] http://www.haskell.org/mailman/listinfo/cvs-ghc