
Hi Serge, On 05 June 2005 11:58, Serge D. Mechveliani wrote:
for the first time compiles all the modules before Foo in 50 seconds. Then, I fix an error in Foo.hs and repeat "make dm".
The options are set so that ghc-6.2.2 gets to Foo.hs in less than 1 second when doing this repeated `make'. It does consider each module before Foo and each time decides that there is no need in recompilation. It keeps on going this way: -------- Considering whether compilation is required for Prelude0: Skipping Prelude0 ( ./Prelude0.hs, /foo/source/export/Prelude0.o ) -------- and so on, by the scheme "Considering ..XX -- {Checking usages .. --} Skipping XX".
The compiler applies this way: -------------------- /foo/ghc/6.2.2/inst/bin/ghc -fglasgow-exts -fallow-undecidable-instances -fallow-overlapping-instances -fno-warn-overlapping-patterns -fwarn-unused-binds -fwarn-unused-matches -fwarn-unused-imports -idemotest -odir /home/mechvel/dm/1.02/dm/source/export -hidir /home/mechvel/dm/1.02/dm/source/export -ddump-hi-diffs --make DExport -package-name dm --------------------
Now, when ghc-6.4 does such a repeated `make', it re-compiles all the `previous' modules under the above options:
--------- Chasing modules from: DExport Source file changed or recompilation check turned off Compiling Prelude0 ( ./Prelude0.hs, /.../source/export/Prelude0.o ^^^^^^^ in particul, that looks very strange! Did you edit that by hand, or is
I'm afraid I don't know what the problem might be. Probably GHC is looking in the wrong place for .hi files or .o files, or both. that the verbatim GHC output? (copying the verbatim output is usually better, to avoid confusion). Cheers, Simon
participants (1)
-
Simon Marlow