<entry>-</entry>
</row>
<row>
+ <entry><option>-V</option></entry>
+ <entry>display GHC version</entry>
+ <entry>static</entry>
+ <entry>-</entry>
+ </row>
+ <row>
<entry><option>––version</option></entry>
<entry>display GHC version</entry>
<entry>static</entry>
<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>-fallow-undecidable-instances</option></entry>
- <entry>Enable undecidable instances</entry>
+ <entry><option>-farrows</option></entry>
+ <entry>Enable arrow notation extension</entry>
<entry>dynamic</entry>
- <entry><option>-fno-allow-undecidable-instances</option></entry>
+ <entry><option>-fno-arrows</option></entry>
</row>
<row>
- <entry><option>-fgenerics</option></entry>
- <entry>Enable generics</entry>
+ <entry><option>-fallow-undecidable-instances</option></entry>
+ <entry>Enable undecidable instances</entry>
<entry>dynamic</entry>
- <entry><option>-fno-fgenerics</option></entry>
+ <entry><option>-fno-allow-undecidable-instances</option></entry>
</row>
<row>
- <entry><option>-fglasgow-exts</option></entry>
- <entry>Enable most language extensions</entry>
- <entry>dynamic</entry>
- <entry><option>-fno-glasgow-exts</option></entry>
+ <entry><option>-fcontext-stack</option><replaceable>n</replaceable></entry>
+ <entry>set the limit for context reduction</entry>
+ <entry>static</entry>
+ <entry><option>-</option></entry>
</row>
<row>
<entry><option>-ffi</option> or <option>-fffi</option></entry>
<entry><option>-fno-ffi</option></entry>
</row>
<row>
- <entry><option>-farrows</option></entry>
- <entry>Enable arrow notation extension</entry>
+ <entry><option>-fgenerics</option></entry>
+ <entry>Enable generics</entry>
<entry>dynamic</entry>
- <entry><option>-fno-arrows</option></entry>
+ <entry><option>-fno-fgenerics</option></entry>
</row>
<row>
- <entry><option>-fwith</option></entry>
- <entry>Enable deprecated <literal>with</literal> keyword</entry>
+ <entry><option>-fglasgow-exts</option></entry>
+ <entry>Enable most language extensions</entry>
<entry>dynamic</entry>
- <entry><option>-fno-with</option></entry>
+ <entry><option>-fno-glasgow-exts</option></entry>
</row>
<row>
<entry><option>-fignore-asserts</option></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>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><option>-fth</option></entry>
+ <entry>Enable Template Haskell</entry>
<entry>dynamic</entry>
- <entry><option>-</option></entry>
+ <entry><option>-fno-th</option></entry>
</row>
</tbody>
</tgroup>
<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>
<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>-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>dynamic</entry>
+ <entry>-</entry>
+ </row>
+
+ <row>
+ <entry><option>-fno-state-hack</option></entry>
+ <entry>Turn off the "state hack" whereby any lambda with a real-world state token
+ as argument is considered to be single-entry. Hence OK to inline things inside it.</entry>
<entry>static</entry>
<entry>-</entry>
</row>
<entry><option>-fno-cpr</option></entry>
<entry>Turn off CPR analysis</entry>
<entry>static</entry>
- <entry>-</entry>
+ <entry>-fcpr</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-full-laziness</option></entry>
+ <entry>Turn off full laziness (floating bindings outwards). It is on by default.</entry>
+ <entry>dynamic</entry>
+ <entry>-ffull-laziness</entry>
+ </row>
+
+ <row>
<entry><option>-fno-pre-inlining</option></entry>
<entry>Turn off pre-inlining</entry>
<entry>static</entry>
<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>-no-link</option></entry>
- <entry>Omit linking</entry>
+ <entry><option>-main-is</option></entry>
+ <entry>Set main function</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><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>-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><option>-no-link</option></entry>
+ <entry>Omit linking</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><option>-package</option> <replaceable>name</replaceable></entry>
+ <entry>Link in package <replaceable>name</replaceable></entry>
<entry>static</entry>
<entry>-</entry>
</row>
<entry>-</entry>
</row>
<row>
- <entry><option>-no-hs-main</option></entry>
- <entry>Don't asssume this program contains <literal>main</literal></entry>
+ <entry><option>-threaded</option></entry>
+ <entry>Use the threaded runtime</entry>
+ <entry>static</entry>
+ <entry>-</entry>
+ </row>
+ <row>
+ <entry><option>-debug</option></entry>
+ <entry>Use the debugging runtime</entry>
<entry>static</entry>
<entry>-</entry>
</row>
<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>