From: sof Date: Sat, 29 Nov 1997 20:39:39 +0000 (+0000) Subject: [project @ 1997-11-29 20:39:39 by sof] X-Git-Tag: Approx_2487_patches~1217 X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=fc196f843bd75a0cf92a8bf4130daf853b7885cb;p=ghc-hetmet.git [project @ 1997-11-29 20:39:39 by sof] Added stuff on interface filenames being dependent on module names; documented -fwarn-duplicate-exports --- diff --git a/ghc/docs/users_guide/how_to_run.lit b/ghc/docs/users_guide/how_to_run.lit index ba29c11..0afffc5 100644 --- a/ghc/docs/users_guide/how_to_run.lit +++ b/ghc/docs/users_guide/how_to_run.lit @@ -440,6 +440,11 @@ warnings: Turns off all warnings, including the standard ones. +\item[\tr{-w}:] +\index{-w option} + +Synonym for \tr{-Wnot}. + \item[\tr{-W}:] \index{-W option} @@ -516,6 +521,17 @@ class declaration has no default declaration for them. Have the renamer report which locally defined names are not used/exported. This option is not currently supported. +\item[\tr{-fwarn-duplicate-exports}:] +\index{-fwarn-duplicate-exports option} +\index{export lists, duplicates} + +Have the compiler warn about duplicate entries in export lists. This +is useful information if you maintain large export lists, and want to +avoid the continued export of a definition after you've deleted (one) +mention of it in the export list. + +This option is on by default. + \end{description} If you would like GHC to check that every top-level value has a type @@ -537,11 +553,21 @@ sanity, not yours.) When compiling a Haskell module, GHC may produce several files of output (usually two). -One file is usually an {\em interface file}. If compiling -\tr{bar/Foo.hs}, the interface file would normally be \tr{bar/Foo.hi}. +One file is usually an {\em interface file}. The name of the +interface file follows the Haskell {\em module} name, i.e., if +compiling \tr{bar/Foo.hs}, and it implements \tr{module Bar ...}, the +interface file would normally be \tr{bar/Bar.hi}. + The interface output may be directed to another file -\tr{bar2/Wurble.iface} with the option -\tr{-ohi bar2/Wurble.iface}\index{-ohi option} (not recommended). +\tr{bar2/Wurble.iface} with the option \tr{-ohi +bar2/Wurble.iface}\index{-ohi option} (not recommended). + +NOTE: Having the name of the interface file follow the module name +and not the file name, means that working with tools such as +\tr{make(1)} become harder. \tr{make} implicitly assumes that any +output files produced by processing a translation unit will have file +names that can be derived from the file name of the translation unit. +For instance, pattern rules becomes unusable. To avoid generating an interface file at all, use a \tr{-nohi} option.\index{-nohi option}