Dear GHC developers,

Recently I submitted a bug report  #1452  for ghc-6.6.1  
of undefined references at the stage of linking executable, 
and also of ignoring un-existing module import.

Now I discovered the following strange effect
(see the report source modules) which, probably, explains much.

1. (minor note) The file  Match.hs-boot  is not needed.
    All the effects preserve after its removal. 

2. The name  `Match'  must be in the list  `other-modules:'
   in the file  
               dm.cabal,    which describes the package.

But it is not in  dm.cabal !  
Because I have forgotten to put it there. 
Further,                                  make build
still finds and compiles  Match.hs.  
The only point where  Match  is needed is  Reduce.hs:  it imports  
`Match'. But why GHC finds  Match.hs ? 
Probably, because it is in the current source directory.
Then,
                make install
succeeds.
And further, the command   ghc $dmCpOpt --make Main

succeeds or not -- depending on whether `Match' is in  dm.cabal  or not!

First, I think that there is my oversight here.
But the  GHC + Cabal  system  behaves strange in this example. 
Must not it give a plain report of what is wrong with modules or  
package setting ?
Say,
"Error:  `Match' is not in the package but is imported by  Reduce.hs."
Probably, this is the matter of Cabal.

Further, if GHC still finds Match.hs and builds the package, why this 
"undefined reference" appears while linking executable ?


Regards,

-----------------
Serge Mechveliani
[EMAIL PROTECTED]
_______________________________________________
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs

Reply via email to