aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--System/Posix/Directory.hsc3
-rw-r--r--System/Posix/Directory/ByteString.hsc3
-rw-r--r--cbits/HsUnix.c6
-rw-r--r--include/HsUnix.h3
4 files changed, 4 insertions, 11 deletions
diff --git a/System/Posix/Directory.hsc b/System/Posix/Directory.hsc
index 7518b4b..7a3d52a 100644
--- a/System/Posix/Directory.hsc
+++ b/System/Posix/Directory.hsc
@@ -1,3 +1,4 @@
+{-# LANGUAGE CApiFFI #-}
{-# LANGUAGE NondecreasingIndentation #-}
#ifdef __GLASGOW_HASKELL__
{-# LANGUAGE Trustworthy #-}
@@ -73,7 +74,7 @@ openDirStream name =
dirp <- throwErrnoPathIfNullRetry "openDirStream" name $ c_opendir s
return (DirStream dirp)
-foreign import ccall unsafe "__hsunix_opendir"
+foreign import capi unsafe "HsUnix.h opendir"
c_opendir :: CString -> IO (Ptr CDir)
-- | @readDirStream dp@ calls @readdir@ to obtain the
diff --git a/System/Posix/Directory/ByteString.hsc b/System/Posix/Directory/ByteString.hsc
index b1db079..b67ad46 100644
--- a/System/Posix/Directory/ByteString.hsc
+++ b/System/Posix/Directory/ByteString.hsc
@@ -1,3 +1,4 @@
+{-# LANGUAGE CApiFFI #-}
{-# LANGUAGE NondecreasingIndentation #-}
#ifdef __GLASGOW_HASKELL__
{-# LANGUAGE Trustworthy #-}
@@ -74,7 +75,7 @@ openDirStream name =
dirp <- throwErrnoPathIfNullRetry "openDirStream" name $ c_opendir s
return (DirStream dirp)
-foreign import ccall unsafe "__hsunix_opendir"
+foreign import capi unsafe "HsUnix.h opendir"
c_opendir :: CString -> IO (Ptr CDir)
-- | @readDirStream dp@ calls @readdir@ to obtain the
diff --git a/cbits/HsUnix.c b/cbits/HsUnix.c
index 13ca64b..039203e 100644
--- a/cbits/HsUnix.c
+++ b/cbits/HsUnix.c
@@ -76,12 +76,6 @@ int __hsunix_nanosleep(const struct timespec *rqtp, struct timespec *rmtp)
}
#endif
-// opendir is a macro on some platforms, so we need a wrapper:
-DIR *__hsunix_opendir(const char *filename)
-{
- return opendir(filename);
-}
-
// time is a macro on some platforms, so we need a wrapper:
time_t __hsunix_time(time_t *tloc)
{
diff --git a/include/HsUnix.h b/include/HsUnix.h
index cfdddb4..72613b6 100644
--- a/include/HsUnix.h
+++ b/include/HsUnix.h
@@ -143,9 +143,6 @@ int __hsunix_getpwuid_r(uid_t, struct passwd *, char *, size_t,
int __hsunix_nanosleep(const struct timespec *, struct timespec *);
#endif
-// opendir is a macro on some platforms, so we need a wrapper:
-DIR *__hsunix_opendir(const char *);
-
// time is a macro on some platforms, so we need a wrapper:
time_t __hsunix_time(time_t *);