[project @ 2004-02-09 17:21:33 by ross]
[ghc-hetmet.git] / ghc / docs / users_guide / bugs.sgml
index fa4abc8..3b1ec99 100644 (file)
@@ -115,19 +115,6 @@ main = print (array (1,1) [(1,2), (1,3)])</programlisting>
 
       <variablelist>
        <varlistentry>
-         <term>The <literal>Char</literal> type</term>
-         <indexterm><primary><literal>Char</literal></primary><secondary>size
-         of</secondary></indexterm>
-         <listitem>
-           <para>The Haskell report says that the
-           <literal>Char</literal> type holds 16 bits.  GHC follows
-           the ISO-10646 standard a little more closely:
-           <literal>maxBound :: Char</literal> in GHC is
-           <literal>0x10FFFF</literal>.</para>
-         </listitem>
-       </varlistentry>
-
-       <varlistentry>
          <term>Arbitrary-sized tuples</term>
          <listitem>
            <para>Tuples are currently limited to size 100.  HOWEVER:
@@ -147,7 +134,7 @@ main = print (array (1,1) [(1,2), (1,3)])</programlisting>
            <listitem>
              <para>GHC's implementation of the
              <literal>Read</literal> class for integral types accepts
-             hexadeciaml and octal literals (the code in the Haskell
+             hexadecimal and octal literals (the code in the Haskell
              98 report doesn't).  So, for example,
 <programlisting>read "0xf00" :: Int</programlisting>
               works in GHC.</para>
@@ -168,6 +155,17 @@ main = print (array (1,1) [(1,2), (1,3)])</programlisting>
 
     <variablelist>
       <varlistentry>
+       <term>The <literal>Char</literal> type</term>
+       <indexterm><primary><literal>Char</literal></primary><secondary>size
+       of</secondary></indexterm>
+       <listitem>
+         <para>Following the ISO-10646 standard,
+         <literal>maxBound :: Char</literal> in GHC is
+         <literal>0x10FFFF</literal>.</para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
        <term>Sized integral types</term>
        <indexterm><primary><literal>Int</literal></primary><secondary>size of</secondary>
        </indexterm>
@@ -264,28 +262,6 @@ main = print (array (1,1) [(1,2), (1,3)])</programlisting>
       </listitem>
 
       <listitem>
-       <para>Dangers with multiple <literal>Main</literal>
-       modules.</para>
-
-       <para>GHC does not insist that module <literal>Main</literal>
-       lives in a file called <filename>Main.hs</filename>.  This is
-       useful if you want multiple versions of
-       <literal>Main</literal>.  But there's a danger: when compiling
-       module <literal>Main</literal> (regardless of what file it
-       comes from), GHC looks for the interface
-       <filename>Main.hi</filename>; it uses this to get version
-       information from the last time it recompiled
-       <literal>Main</literal>.  The trouble is that this
-       <filename>Main.hi</filename> may not correspond to the source
-       file being compiled.</para>
-
-       <para>Solution: remove <filename>Main.hi</filename> first.  A
-       better solution would be for GHC to record the source-file
-       filename in the interface file, or even an MD5 checksum.
-       </para>
-      </listitem>
-    
-      <listitem>
        <para>GHC does not allow you to have a data type with a context 
           that mentions type variables that are not data type parameters.
          For example: