Add information about allowed foreign prim args, see #10460.
authorEdward Z. Yang <ezyang@cs.stanford.edu>
Mon, 1 Jun 2015 16:46:20 +0000 (09:46 -0700)
committerEdward Z. Yang <ezyang@cs.stanford.edu>
Mon, 1 Jun 2015 16:46:20 +0000 (09:46 -0700)
Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
docs/users_guide/ffi-chap.xml

index acd6f72..0f9cfba 100644 (file)
@@ -73,7 +73,13 @@ OK:
    foreign import prim "foo" foo :: ByteArray# -> (# Int#, Int# #)
 </programlisting>
          This is used to import functions written in Cmm code that follow an
-         internal GHC calling convention. This feature is not intended for
+         internal GHC calling convention.  The arguments and results must
+         be unboxed types, except that an argument may be of type
+         <literal>Any</literal> (by way of <literal>unsafeCoerce#</literal>)
+         and the result type is allowed to be an unboxed tuple
+       </para>
+       <para>
+         This feature is not intended for
          use outside of the core libraries that come with GHC. For more
          details see the <ulink linkend="http://ghc.haskell.org/trac/ghc/wiki/Commentary/PrimOps">
           GHC developer wiki</ulink>.