summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsimonpj@microsoft.com <unknown>2008-08-19 12:30:16 +0000
committersimonpj@microsoft.com <unknown>2008-08-19 12:30:16 +0000
commit41b9dfa595948df05e3f1370861ec9869ec852bb (patch)
treedad2afd6d4c52fcd3042a19e31783855c62d8a4b
parent7251944b3932ebcef656efdf201edfd8121aea76 (diff)
downloadhaskell-41b9dfa595948df05e3f1370861ec9869ec852bb.tar.gz
Fix Trac #2518: add hs-boot files as an infelicty
-rw-r--r--docs/users_guide/bugs.xml16
1 files changed, 15 insertions, 1 deletions
diff --git a/docs/users_guide/bugs.xml b/docs/users_guide/bugs.xml
index fdeeaa87cc..4d79d24268 100644
--- a/docs/users_guide/bugs.xml
+++ b/docs/users_guide/bugs.xml
@@ -105,7 +105,21 @@ main = do args &lt;- getArgs
<sect3 id="infelicities-Modules">
<title>Module system and interface files</title>
- <para>None known.</para>
+ <para>GHC requires the use of <literal>hs-boot</literal>
+ files to cut the recursive loops among mutually recursive modules
+ as described in <xref linkend="mutual-recursion"/>. This more of an infelicity
+ than a bug: the Haskell Report says
+ (<ulink url="http://haskell.org/onlinereport/modules.html#sect5.7">Section 5.7</ulink>) "Depending on the Haskell
+ implementation used, separate compilation of mutually
+ recursive modules may require that imported modules contain
+ additional information so that they may be referenced before
+ they are compiled. Explicit type signatures for all exported
+ values may be necessary to deal with mutual recursion. The
+ precise details of separate compilation are not defined by
+ this Report."
+
+ </para>
+
</sect3>
<sect3 id="infelicities-numbers">