diff options
Diffstat (limited to 'docs/users_guide/exts/ffi.rst')
-rw-r--r-- | docs/users_guide/exts/ffi.rst | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/docs/users_guide/exts/ffi.rst b/docs/users_guide/exts/ffi.rst index b490ac662d..f23c223279 100644 --- a/docs/users_guide/exts/ffi.rst +++ b/docs/users_guide/exts/ffi.rst @@ -437,6 +437,18 @@ specified. The syntax looks like: :: data {-# CTYPE "unistd.h" "useconds_t" #-} T = ... newtype {-# CTYPE "useconds_t" #-} T = ... +In case foreign declarations contain ``const``-qualified pointer return +type, `ConstPtr` from :base-ref:`Foreign.C.Types` may be used to +encode this, e.g. :: + + foreign import capi "header.h f" f :: CInt -> ConstPtr CInt + +which corresponds to + +.. code-block:: c + + const *int f(int); + ``hs_thread_done()`` ~~~~~~~~~~~~~~~~~~~~ |