[project @ 2003-11-28 13:13:35 by simonmar]
[ghc-hetmet.git] / ghc / docs / users_guide / flags.sgml
index 68ac80e..47ad98d 100644 (file)
              <entry>-</entry>
            </row>
            <row>
+             <entry><option>-V</option></entry>
+             <entry>display GHC version</entry>
+             <entry>static</entry>
+             <entry>-</entry>
+           </row>
+           <row>
              <entry><option>&ndash;&ndash;version</option></entry>
              <entry>display GHC version</entry>
              <entry>static</entry>
     </sect2>
 
     <sect2>
-      <title>Finding imports (<xref linkend="options-finding-imports">)</title>
+      <title>Finding imports (<xref linkend="search-path">)</title>
 
       <informaltable>
        <tgroup cols=3 align=left colsep=1 rowsep=1>
              <entry>dynamic</entry>
              <entry>-</entry>
            </row>
+           <row>
+             <entry><option>-ddump-minimal-imports</option></entry>
+             <entry>Dump a minimal set of imports</entry>
+             <entry>dynamic</entry>
+             <entry>-</entry>
+           </row>
+           <row>
+             <entry><option>--show-iface</option> <replaceable>file</replaceable></entry>
+             <entry>Read the interface in
+             <replaceable>file</replaceable> and dump it as text to
+             <literal>stdout</literal>.</entry>
+             <entry>static</entry>
+             <entry>-</entry>
+           </row>
          </tbody>
        </tgroup>
       </informaltable>
          <tbody>
            <row>
              <entry><option>-fallow-overlapping-instances</option></entry>
-             <entry></entry>
+             <entry>Enable overlapping instances</entry>
              <entry>dynamic</entry>
              <entry><option>-fno-allow-overlapping-instances</option></entry>
            </row>
            <row>
+             <entry><option>-farrows</option></entry>
+             <entry>Enable arrow notation extension</entry>
+             <entry>dynamic</entry>
+             <entry><option>-fno-arrows</option></entry>
+           </row>
+           <row>
              <entry><option>-fallow-undecidable-instances</option></entry>
              <entry>Enable undecidable instances</entry>
              <entry>dynamic</entry>
              <entry><option>-fno-allow-undecidable-instances</option></entry>
            </row>
            <row>
+             <entry><option>-fcontext-stack</option><replaceable>n</replaceable></entry>
+             <entry>set the limit for context reduction</entry>
+             <entry>dynamic</entry>
+             <entry><option>-</option></entry>
+           </row>
+           <row>
+             <entry><option>-ffi</option> or <option>-fffi</option></entry>
+             <entry>Enable foreign function interface (implied by
+             <option>-fglasgow-exts</option>)</entry>
+             <entry>dynamic</entry>
+             <entry><option>-fno-ffi</option></entry>
+           </row>
+           <row>
              <entry><option>-fgenerics</option></entry>
              <entry>Enable generics</entry>
              <entry>dynamic</entry>
              <entry><option>-fno-ignore-asserts</option></entry>
            </row>
            <row>
+             <entry><option>-fimplicit-params</option></entry>
+             <entry>Enable Implicit Parameters</entry>
+             <entry>dynamic</entry>
+             <entry><option>-fno-implicit-params</option></entry>
+           </row>
+           <row>
+             <entry><option>-firrefutable-tuples</option></entry>
+             <entry>Make tuple pattern matching irrefutable</entry>
+             <entry>dynamic</entry>
+             <entry><option>-fno-irrefutable-tuples</option></entry>
+           </row>
+           <row>
              <entry><option>-fno-implicit-prelude</option></entry>
              <entry>Don't implicitly <literal>import Prelude</literal></entry>
              <entry>dynamic</entry>
              <entry><option>-</option></entry>
            </row>
            <row>
-             <entry><option>-firrefutable-tuples</option></entry>
-             <entry>Make tuple pattern matching irrefutable</entry>
+             <entry><option>-fth</option></entry>
+             <entry>Enable Template Haskell</entry>
              <entry>dynamic</entry>
-             <entry><option>-fno-irrefutable-tuples</option></entry>
-           </row>
-           <row>
-             <entry><option>-fcontext-stack</option><replaceable>n</replaceable></entry>
-             <entry>set the limit for context reduction</entry>
-             <entry>dynamic</entry>
-             <entry><option>-</option></entry>
+             <entry><option>-fno-th</option></entry>
            </row>
          </tbody>
        </tgroup>
            <entry>dynamic</entry>
            <entry><option>-w</option></entry>
          </row>
+         <row>
+           <entry><option>-Werror</option></entry>
+           <entry>make warnings fatal</entry>
+           <entry>dynamic</entry>
+           <entry></entry>
+         </row>
 
          <row>
            <entry><option>-fwarn-deprecations</option></entry>
            <row>
              <entry><option>-O</option></entry>
              <entry>Enable default optimisation (level 1)</entry>
-             <entry>static</entry>
+             <entry>dynamic</entry>
              <entry><option>-O0</option></entry>
            </row>
            <row>
              <entry><option>-O</option><replaceable>n</replaceable></entry>
              <entry>Set optimisation level <replaceable>n</replaceable></entry>
-             <entry>static</entry>
+             <entry>dynamic</entry>
              <entry><option>-O0</option></entry>
            </row>
          </tbody>
          </thead>
          <tbody>
            <row>
-             <entry><option>-fall-strict</option></entry>
-             <entry>Make everything strict</entry>
-             <entry>dynamic</entry>
-             <entry><option>-fno-all-strict</option></entry>
-           </row>
-
-           <row>
              <entry><option>-fcase-merge</option></entry>
              <entry>Enable case-merging</entry>
-             <entry>static</entry>
+             <entry>dynamic</entry>
              <entry><option>-fno-case-merge</option></entry>
            </row>
 
            <row>
              <entry><option>-fdicts-strict</option></entry>
              <entry>Make dictionaries strict</entry>
-             <entry>dynamic</entry>
+             <entry>static</entry>
              <entry><option>-fno-dicts-strict</option></entry>
            </row>
 
            <row>
              <entry><option>-fdo-eta-reduction</option></entry>
              <entry>Enable eta-reduction</entry>
-             <entry>static</entry>
+             <entry>dynamic</entry>
              <entry><option>-fno-do-eta-reduction</option></entry>
            </row>
 
            <row>
              <entry><option>-fdo-lambda-eta-expansion</option></entry>
              <entry>Enable lambda eta-reduction</entry>
-             <entry>static</entry>
+             <entry>dynamic</entry>
              <entry><option>-fno-do-lambda-eta-expansion</option></entry>
            </row>
 
            </row>
 
            <row>
-             <entry><option>-ffoldr-build-on</option></entry>
-             <entry>Enable foldr-build optimisation</entry>
+             <entry><option>-frules-off</option></entry>
+             <entry>Switch off all rewrite rules (including rules
+             generated by automatic specialisation of overloaded functions)</entry>
              <entry>static</entry>
-             <entry><option>-fno-foldr-build-on</option></entry>
+             <entry><option>-frules-off</option></entry>
            </row>
 
            <row>
            </row>
 
            <row>
-             <entry><option>-flet-no-escape</option></entry>
-             <entry>Enable let-no-escape optimisation</entry>
-             <entry>static</entry>
-             <entry><option>-fno-let-no-escape</option></entry>
-           </row>
-
-           <row>
              <entry><option>-fliberate-case-threshold</option></entry>
              <entry>Tweak the liberate-case optimisation (default: 10)</entry>
              <entry>static</entry>
            <row>
              <entry><option>-fomit-interface-pragmas</option></entry>
              <entry>Don't generate interface pragmas</entry>
-             <entry>static</entry>
+             <entry>dynamic</entry>
              <entry><option>-fno-omit-interface-pragmas</option></entry>
            </row>
 
            <row>
              <entry><option>-fmax-simplifier-iterations</option></entry>
              <entry>Set the max iterations for the simplifier</entry>
-             <entry>static</entry>
+             <entry>dynamic</entry>
              <entry>-</entry>
            </row>
 
            <row>
              <entry><option>-fno-cse</option></entry>
              <entry>Turn off common sub-expression</entry>
-             <entry>static</entry>
+             <entry>dynamic</entry>
              <entry>-</entry>
            </row>
 
            <row>
              <entry><option>-fno-strictness</option></entry>
              <entry>Turn off strictness analysis</entry>
-             <entry>static</entry>
+             <entry>dynamic</entry>
              <entry>-</entry>
            </row>
 
            <row>
              <entry><option>-funbox-strict-fields</option></entry>
              <entry>Flatten strict constructor fields</entry>
-             <entry>static</entry>
+             <entry>dynamic</entry>
              <entry><option>-fno-unbox-strict-fields</option></entry>
            </row>
 
              <entry>static</entry>
              <entry><option>-fno-unfolding-use-threshold</option></entry>
            </row>
-
-           <row>
-             <entry><option>-fusagesp</option></entry>
-             <entry>Turn on UsageSP analysis</entry>
-             <entry>static</entry>
-             <entry><option>-fno-usagesp</option></entry>
-           </row>
          </tbody>
        </tgroup>
       </informaltable>
              <entry>-</entry>
            </row>
            <row>
+             <entry><option>-framework</option> <replaceable>name</replaceable></entry>
+             <entry>On Darwin/MacOS X only, link in the framework <replaceable>name</replaceable>.
+               This option corresponds to the <option>-framework</option> option for Apple's Linker.</entry>
+             <entry>static</entry>
+             <entry>-</entry>
+           </row>
+           <row>
+             <entry><option>-framework-path</option> <replaceable>name</replaceable></entry>
+             <entry>On Darwin/MacOS X only, add <replaceable>dir</replaceable> to the list of
+               directories searched for frameworks.
+               This option corresponds to the <option>-F</option> option for Apple's Linker.</entry>
+             <entry>static</entry>
+             <entry>-</entry>
+           </row>
+           <row>
              <entry><option>-l</option><replaceable>lib</replaceable></entry>
              <entry>Link in library <replaceable>lib</replaceable></entry>
              <entry>static</entry>
              <entry>-</entry>
            </row>
            <row>
+             <entry><option>-main-is</option></entry>
+             <entry>Set main function</entry>
+             <entry>static</entry>
+             <entry>-</entry>
+           </row>
+           <row>
+             <entry><option>-no-hs-main</option></entry>
+             <entry>Don't asssume this program contains <literal>main</literal></entry>
+             <entry>static</entry>
+             <entry>-</entry>
+           </row>
+           <row>
+             <entry><option>-no-link</option></entry>
+             <entry>Omit linking</entry>
+             <entry>static</entry>
+             <entry>-</entry>
+           </row>
+           <row>
              <entry><option>-package</option> <replaceable>name</replaceable></entry>
              <entry>Link in package <replaceable>name</replaceable></entry>
              <entry>static</entry>
              <entry>static</entry>
              <entry>-</entry>
            </row>
-           <row>
-             <entry><option>-no-hs-main</option></entry>
-             <entry>Don't asssume this program contains <literal>main</literal></entry>
-             <entry>static</entry>
-             <entry>-</entry>
-           </row>
          </tbody>
        </tgroup>
       </informaltable>
              <entry>-</entry>
            </row>
            <row>
+             <entry><option>-optF</option> <replaceable>option</replaceable></entry>
+             <entry>pass <replaceable>option</replaceable> to the
+             custom pre-processor</entry>
+             <entry>dynamic</entry>
+             <entry>-</entry>
+           </row>
+           <row>
              <entry><option>-optc</option> <replaceable>option</replaceable></entry>
              <entry>pass <replaceable>option</replaceable> to the C compiler</entry>
              <entry>dynamic</entry>
          </thead>
          <tbody>
            <row>
-             <entry><option>-funfold-casms-in-hi-file</option></entry>
-             <entry>Allow casms in unfoldings</entry>
-             <entry>static</entry>
-             <entry>-</entry>
-           </row>
-           <row>
              <entry><option>-femit-extern-decls</option></entry>
              <entry>???</entry>
              <entry>static</entry>
              <entry>-</entry>
            </row>
            <row>
-             <entry><option>-fno-prune-tydecls</option></entry>
-             <entry>Renamer: don't prune type declarations</entry>
-             <entry>static</entry>
-             <entry>-</entry>
-           </row>
-           <row>
              <entry><option>-fhistory-size</option></entry>
              <entry>Set simplification history size</entry>
              <entry>static</entry>