[Haskell-beginners] applicativeParsec.hs in Real World Haskell not compiling any more
Kees Bleijenberg
k.bleijenberg at inter.nl.net
Wed Oct 24 19:40:02 CEST 2012
A year ago I made a program. I took code from ApplicativeParsec.hs (capt. 16
Real World Haskell).
The program compiled and ran flawless. Now (after a year) I've upgraded to
GHC version 7.0.4 (Windows) and I want to change something. But the
unchanged version doesn't compile any more. I get warning:
ApplicativeParsec.hs:17:10:
Illegal instance declaration for `Applicative (GenParser s a)'
(All instance types must be of the form (T t1 ... tn)
where T is not a synonym.
Use -XTypeSynonymInstances if you want to disable this.)
In the instance declaration for `Applicative (GenParser s a)'
ApplicativeParsec.hs:22:10:
Illegal instance declaration for `Alternative ....(same advice as above)
So I added TypeSynonymInstances. Then I got:
ApplicativeParsec.hs:22:10:
Overlapping instances for Applicative (GenParser s a)
arising from the superclasses of an instance declaration
Matching instances:
instance Applicative (Text.Parsec.Prim.ParsecT s u m)
-- Defined in Text.Parsec.Prim
instance Applicative (GenParser s a)
-- Defined at ApplicativeParsec.hs:17:10-36
In the instance declaration for `Alternative (GenParser s a)'
Then I added the OverlappingInstances directive. Same error and no
compilation.
I wonder, is this the new GHC version? And what can I do about it?
Kees
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/beginners/attachments/20121024/27a9e085/attachment.htm>
More information about the Beginners
mailing list