
2009/10/8 Andrew U. Frank
i have a strange error, which does not occur when i run runghc Setup.lhs configure but when i use cabal configure and then build, it occurs.
the error is Type constructor Control.Exception.Exception used as a class in the instance declaration. (i have imported qualified Control.Exception)
two questions: 1. Exception is a class (in Control.Exception) - why the error? 2. why is there a difference between runghc and cabal (using the same cabal file).
i attach the cabal file and the two configuratin files produced.
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
C.E.Exception used to be a type instead of a class, so you need to have `base == 4.*` instead of `base -any`. Alternatively, use the extensible-extensions package instead. The difference in results you found is because cabal-install uses base-3 if you don't specify otherwise. The reason for this is that a lot of packages use `base -any` when they shouldn't: base-4 brought enough incompatible changes (like making Exception a class) that they don't work with it. (This is also, I assume, why GHC has two built-in versions of base in the first place.)