<title>Forcing options to a particular phase</title>
<indexterm><primary>forcing GHC-phase options</primary></indexterm>
- <para>Options can be forced through to a particlar compilation
+ <para>Options can be forced through to a particular compilation
phase, using the following flags:</para>
<variablelist>
</varlistentry>
<varlistentry>
<term>
- <option>-optdep</option> <replaceable>option</replaceable>
- <indexterm><primary><option>-optdep</option></primary></indexterm>
- </term>
- <listitem>
- <para>Pass <replaceable>option</replaceable> to the
- dependency generator.</para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>
<option>-optwindres</option> <replaceable>option</replaceable>
<indexterm><primary><option>-optwindres</option></primary></indexterm>
</term>
<listitem>
<para>This symbol is defined when pre-processing Haskell
(input) and pre-processing C (GHC output). Since GHC from
- verion 4.00 now supports concurrent haskell by default,
+ version 4.00 now supports concurrent haskell by default,
this symbol is always defined.</para>
</listitem>
</varlistentry>
machine. See <xref linkend="using-smp" />.</para>
<para>The ability to make a foreign call that does not
- block all other Haskell threads.</para>
-
- <para>The ability to invoke foreign exported Haskell
- functions from multiple OS threads.</para>
+ block all other Haskell threads, and to invoke
+ foreign-exported Haskell functions from multiple OS
+ threads. See <xref linkend="ffi-threads" />.</para>
</listitem>
</itemizedlist>
-
- <para>With <option>-threaded</option>, calls to foreign
- functions are made using the same OS thread that created the
- Haskell thread (if it was created by a call to a foreign
- exported Haskell function), or an arbitrary OS thread
- otherwise (if the Haskell thread was created by
- <literal>forkIO</literal>).</para>
-
- <para>More details on the use of "bound threads" in the
- threaded runtime can be found in the <ulink
- url="../libraries/base/Control.Concurrent.html"><literal>Control.Concurrent</literal></ulink> module.</para>
</listitem>
</varlistentry>