small errors in ghc 6.6

Tomasz Zielonka tomasz.zielonka at gmail.com
Tue Sep 19 14:35:49 EDT 2006


On Tue, Sep 19, 2006 at 02:33:46PM +0400, Bulat Ziganshin wrote:
> 3. ghc 6.6 includes smart relinking capability which don't relink exe
> file if it already exists and .hs source files was not changed. that's
> great but ignores other .o files that can be also linked to program,
> for example those that was compiled from C sources:
> 
> gcc -c -o a.o a.c
> ghc --make Main.hs a.o
> 
> this command incorrectly don't relinks executable if a.c was changed
> but Main.hs wasn't

The is another similar problem. Let's say I have an up-to-date compiled
program and I want to recompile it with profiling turned on.  In older
ghc version adding -prof option caused all modules to be recompiled and
the whole application relinked. Now I have to manually delete the
application binary to force recompilation or use -fno-recomp.

BTW. The -fno-recomp option has a very unintuitive name, at least for
me. When I see "-fno-recomp", my brain thinks "no recompilation",
meaning "no unneccesary recompilation", which is what --make does by
default. Using "-fno-recomp" causes all modules to be recompiled,
whether they changed or not. I think one of -frecomp or
-fno-recomp-checking would be much clearer. But it's probably too
late to change that...

Best regards
Tomasz


More information about the Glasgow-haskell-users mailing list