How true. A long-standing bug, thank you. Now fixed. Simon
| -----Original Message----- | From: [EMAIL PROTECTED] [mailto:glasgow-haskell-bugs- | [EMAIL PROTECTED] On Behalf Of Ian Lynagh | Sent: 19 July 2005 23:24 | To: [email protected] | Subject: Recompiling doesn't notice re-exports being removed | | | Recompiling doesn't notice re-exports being removed: | | | $ cat A.hs | | module A where | | foo :: Int | foo = 4 | | $ cat B.hs | | module B (foo) where | | import A (foo) | | $ cat C.hs | | module Main (main) where | | import B (foo) | | main :: IO () | main = print foo | | $ ghc --make C -o c | Chasing modules from: C | Compiling A ( ./A.hs, ./A.o ) | Compiling B ( ./B.hs, ./B.o ) | Compiling Main ( C.hs, C.o ) | Linking ... | $ sed -i "s/foo//" B.hs | $ cat B.hs | | module B () where | | import A () | | $ ghc --make C -o c | Chasing modules from: C | Skipping A ( ./A.hs, ./A.o ) | Compiling B ( ./B.hs, ./B.o ) | Skipping Main ( C.hs, C.o ) | Linking ... | $ # -------- compilation above should have failed, as below | $ rm *.o *.hi c | $ ghc --make C -o c | Chasing modules from: C | Compiling A ( ./A.hs, ./A.o ) | Compiling B ( ./B.hs, ./B.o ) | Compiling Main ( C.hs, C.o ) | | C.hs:4:10: Module `B' does not export `foo' | $ | | | Thanks | Ian | | _______________________________________________ | Glasgow-haskell-bugs mailing list | [email protected] | http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs _______________________________________________ Glasgow-haskell-bugs mailing list [email protected] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
