On 17/06/2011, at 12:03 AM, Simon Peyton-Jones wrote: > Manuel > > I got this when validating. > > I said “sh validate --no-clean”; some more compiling happened, then the same > result. > > I said “sh validate --no-clean” again, and this time it went through. > > Is this the same missing-dependency thing? Did you validate? > > Simon > > GHC error in desugarer lookup in dph-par:Data.Array.Parallel.Prelude.Bool: > attempting to use module `dph-par:Data.Array.Parallel.Prelude.Base.Tuple' > (libraries/dph/dph-par/../dph-common/Data/Array/Parallel/Prelude/Base/Tuple.hs) > which is not loaded > haddock: panic! (the 'impossible' happened) > (GHC version 7.1.20110204 for x86_64-unknown-linux): > initDs IOEnv failure
I think this is another symptom of the build race and/or a separate race exposed by the recent changes. It appears to happen when: 1) Haddock tries to process dph-common:Data.Array.Parallel.Prelude.Bool 2) That module contains {-# OPTIONS_GHC -fvectorise #-}, so it runs the vectoriser. 3) The vectoriser produces code that uses tup2 from dph-common:D.A.P.Prelude.Base.Tuple, but aren't any direct imports of that module from dph-common:D.A.P.Prelude.Bool. 4) The type checker tries to demand-load D.A.P.Prelude.Base.Tuple, but as that module is also in dph-common, LoadIface.findAndReadIface thinks it should have already been loaded so emits the error. If that reasoning was correct, then I don't know why it wouldn't _always_ die. However, I'm testing a patch that makes the vectoriser always manually load D.A.P.Prelude.Base.Tuple, so we'll see if that helps. Sadly, validate won't always catch build races. :-( Ben. _______________________________________________ Cvs-ghc mailing list Cvs-ghc@haskell.org http://www.haskell.org/mailman/listinfo/cvs-ghc