logo       

RE: Recompiling doesn't notice re-exports being removed: msg#00113

lang.haskell.glasgow.bugs

Subject: RE: Recompiling doesn't notice re-exports being removed

How true. A long-standing bug, thank you. Now fixed.

Simon

| -----Original Message-----
| From: glasgow-haskell-bugs-bounces@xxxxxxxxxxx
[mailto:glasgow-haskell-bugs-
| bounces@xxxxxxxxxxx] On Behalf Of Ian Lynagh
| Sent: 19 July 2005 23:24
| To: glasgow-haskell-bugs@xxxxxxxxxxx
| 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
| Glasgow-haskell-bugs@xxxxxxxxxxx
| http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise