automatically exclude unused modules at compile time

When I turned on "-Wall" knob at compile time, I got a message: Warning: Module `System.Cmd' is imported, but nothing from it is used, except perhaps instances visible in `System.Cmd' To suppress this warning, use: import System.Cmd() Then I did four experiments as follows at compile time: 1) import System.Environment 2) import System.Environment() 3) import System.Environment(only the functions I used) 4) -- import System.Environment It turned out that case 1-3) have the size after compilation, and that case 4) has smaller size than the others. Can we make GHC a little bit more intelligent to automatically exclude unused modules at compile time as in case 4)? (Am I just too lazy to add several dashes?) Thanks, Hong

On Mon, Feb 08, 2010 at 11:25:13AM -0600, Hong Yang wrote:
Can we make GHC a little bit more intelligent to automatically exclude unused modules at compile time as in case 4)? (Am I just too lazy to add several dashes?)
Did you use -split-objs? Does it help? -- Felipe.

I did not use -split-objs.
This option did help after I tried it. Thanks.
Hong
On Mon, Feb 8, 2010 at 11:57 AM, Felipe Lessa
On Mon, Feb 08, 2010 at 11:25:13AM -0600, Hong Yang wrote:
Can we make GHC a little bit more intelligent to automatically exclude unused modules at compile time as in case 4)? (Am I just too lazy to add several dashes?)
Did you use -split-objs? Does it help?
-- Felipe. _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
participants (2)
-
Felipe Lessa
-
Hong Yang