</informaltable>
</sect2>
+ <sect2>
+ <title>Alternative modes of operation (<xref linkend="modes"/>)</title>
+
+ <informaltable>
+ <tgroup cols="3" align="left" colsep="1" rowsep="1">
+ <thead>
+ <row>
+ <entry>Flag</entry>
+ <entry>Description</entry>
+ <entry>Static/Dynamic</entry>
+ <entry>Reverse</entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry><option>--interactive</option></entry>
+ <entry>Interactive mode - normally used by just running <command>ghci</command></entry>
+ <entry>static</entry>
+ <entry>-</entry>
+ </row>
+ <row>
+ <entry><option>--make</option></entry>
+ <entry>Build a multi-module Haskell program, automatically figuring out dependencies. Likely to be much easier, and faster, than using <command>make</command>.</entry>
+ <entry>static</entry>
+ <entry>-</entry>
+ </row>
+ <row>
+ <entry><option>-e <replaceable>expr</replaceable></option></entry>
+ <entry>Evaluate <replaceable>expr</replaceable></entry>
+ <entry>static</entry>
+ <entry>-</entry>
+ </row>
+ <row>
+ <entry><option>-M</option></entry>
+ <entry>Generate dependency information suitable for use in a <filename>Makefile</filename>.</entry>
+ <entry>static</entry>
+ <entry>-</entry>
+ </row>
+ <row>
+ <entry><option>--mk-dll</option></entry>
+ <entry>DLL-creation mode (Windows only)</entry>
+ <entry>static</entry>
+ <entry>-</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+ </sect2>
+
<sect2>
<title>Redirecting output (<xref linkend="options-output"/>)</title>
<tbody>
<row>
<entry><option>-no-recomp</option></entry>
- <entry>Turn off recompilation checking</entry>
- <entry>static</entry>
+ <entry>Turn off recompilation checking; implied by any
+ <option>-ddump-X</option> option</entry>
+ <entry>dynamic</entry>
<entry><option>-recomp</option></entry>
</row>
</tbody>
</thead>
<tbody>
<row>
- <entry><option>-package</option> <replaceable>name</replaceable></entry>
- <entry>Use package <replaceable>name</replaceable></entry>
+ <entry><option>-package</option> <replaceable>P</replaceable></entry>
+ <entry>Expose package <replaceable>P</replaceable></entry>
+ <entry>static</entry>
+ <entry>-</entry>
+ </row>
+ <row>
+ <entry><option>-hide-package</option> <replaceable>name</replaceable></entry>
+ <entry>Hide package <replaceable>P</replaceable></entry>
+ <entry>static</entry>
+ <entry>-</entry>
+ </row>
+ <row>
+ <entry><option>-ignore-package</option> <replaceable>name</replaceable></entry>
+ <entry>Ignore package <replaceable>P</replaceable></entry>
<entry>static</entry>
<entry>-</entry>
</row>
<entry>-</entry>
</row>
<row>
- <entry><option>-package-name</option> <replaceable>name</replaceable></entry>
- <entry>Compile code for package <replaceable>name</replaceable></entry>
+ <entry><option>-no-user-package-conf</option></entry>
+ <entry>Don't load the user's package config file.</entry>
<entry>static</entry>
<entry>-</entry>
</row>
</row>
<row>
<entry><option>-fimplicit-params</option></entry>
- <entry>Enable Implicit Parameters</entry>
+ <entry>Enable Implicit Parameters.
+ Implied by <option>-fglasgow-exts</option>.</entry>
<entry>dynamic</entry>
<entry><option>-fno-implicit-params</option></entry>
</row>
<entry><option>-fmonomorphism-restriction</option></entry>
</row>
<row>
+ <entry><option>-fscoped-type-variables</option></entry>
+ <entry>Enable lexically-scoped type variables.
+ Implied by <option>-fglasgow-exts</option>.</entry>
+ <entry>dynamic</entry>
+ <entry><option>-fno-scoped-type-variables</option></entry>
+ </row>
+ <row>
<entry><option>-fth</option></entry>
- <entry>Enable Template Haskell</entry>
+ <entry>Enable Template Haskell.
+ Implied by <option>-fglasgow-exts</option>.</entry>
<entry>dynamic</entry>
<entry><option>-fno-th</option></entry>
</row>
</row>
<row>
+ <entry><option>-fwarn-oprhans</option></entry>
+ <entry>warn when the module contains "orphan" instance declarations
+ or rewrite rules</entry>
+ <entry>dynamic</entry>
+ <entry><option>-fno-warn-orphans</option></entry>
+ </row>
+
+ <row>
<entry><option>-fwarn-overlapping-patterns</option></entry>
<entry>warn about overlapping patterns</entry>
<entry>dynamic</entry>