testing 7.02-candidate

Serge D. Mechveliani mechvel at botik.ru
Wed Mar 2 14:46:08 CET 2011

Dear GHC team,

I am testing the  7.02 candidate  of  ghc-
-- compiled from source, compiled by itself, on Debian Linux,

On my DoCon program, it reports the following.

1. It requires  `-fcontext-stack=_'  to increase a certain stack:

[67 of 83] Compiling Pfact__    ( Pfact__.hs, dist/build/Pfact__.o )
[68 of 83] Compiling RsePol_    ( RsePol_.hs, dist/build/RsePol_.o )

    Context reduction stack overflow; size = 21
    Use -fcontext-stack=N to increase stack size to N
      $dSet :: Set (UPol (ResidueE Integer))
      $dAddSemigroup :: AddSemigroup (UPol (ResidueE Integer))
      $dAddMonoid :: AddMonoid (UPol (ResidueE Integer))
      $dCast :: Prelude_.Cast
                  (ResidueE (UPol (Pfact__.RseUPolRse Integer)))
                  (UPol (Pfact__.RseUPolRse Integer))
    In the first argument of `(.)', namely `ct c1'
    In the expression: ct c1 . toOverK . resRepr
    In an equation for `toC': toC = ct c1 . toOverK . resRepr

So, I add  -fcontext-stack=30  to the  ghc-options  line in 

Which one is better at this point,  7.0.1  or ?

2. Then, DoCon is built, and the commands
   cd demotest
   ghc $doconCpOpt -O -rtsopts --make Main

need to `make' the DoCon test under the DoCon library. This reports

[ 1 of 17] Compiling T_detinterp      ( T_detinterp.hs, T_detinterp.o )
[ 2 of 17] Compiling T_sphGeo         ( T_sphGeo.hs, T_sphGeo.o )
[ 3 of 17] Compiling T_cubeext        ( T_cubeext.hs, T_cubeext.o )

    Overlapping instances for LinSolvRing (UPol k)
      arising from a use of `ct'
    Matching instances:
      instance [overlap ok] EuclideanRing a => LinSolvRing (UPol a)
        -- Defined in docon-2.12:Pol2_
      instance [overlap ok] (LinSolvRing (Pol a), CommutativeRing a) =>
                            LinSolvRing (UPol (Pol a))
        -- Defined in docon-2.12:Pol3_
    (The choice depends on the instantiation of `k'
     To pick the first instance above, use -XIncoherentInstances
     when compiling the other instance declarations)
    In the first argument of `(.)', namely `ct unE'
    In the expression: ct unE . kToB
    In an equation for `kToE': kToE = ct unE . kToB

This looks like a bug of the kind appeared in a couple of earlier GHC 
ghc-7.0.1  is free of both of these effects.

What is your opinion about this?


is the archive with the project to make and run under  ghc-7.0.1,
and  ghc-  (follow  install.txt).


Serge Mechveliani
mechvel at botik.ru

More information about the Glasgow-haskell-users mailing list