Hello glasgow-haskell-bugs,

the following scenario reproduces this error:

1) create Main.hs containing code

module Main where
import Sub
main = print $x

and Sub.hs containing code

module Sub where
x = [| 1 |]



2) compile them with --make:

C:\!\Haskell\!>ghc --make -fth Main.hs
Chasing modules from: Main.hs
Compiling Sub              ( ./Sub.hs, ./Sub.o )
Compiling Main             ( Main.hs, Main.o )
Loading package base-1.0 ... linking ... done.
Loading package haskell98-1.0 ... linking ... done.
Loading package template-haskell-1.0 ... linking ... done.
Linking ...

C:\!\Haskell\!>main.exe
1


3) now change Sub.hs to the following code:

module Sub where
x = [| 2 |]



4) and recompile program:

C:\!\Haskell\!>ghc --make -fth Main.hs
Chasing modules from: Main.hs
Compiling Sub              ( ./Sub.hs, ./Sub.o )
Skipping  Main             ( Main.hs, Main.o )
Linking ...

C:\!\Haskell\!>main.exe
1


As you see, Main.hs is not recompiled despite the fact that definition
of x is changed and now program must print "2"

-- 
Best regards,
 Bulat                          mailto:[EMAIL PROTECTED]



_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs

Reply via email to