diff --git a/System/Posix/Temp.hsc b/System/Posix/Temp.hsc index bfbfee19d38608173e0465a3ffd33bc8585aa02e..9989ca07358e891ca241ac24c4d398df2ecb120e 100644 --- a/System/Posix/Temp.hsc +++ b/System/Posix/Temp.hsc @@ -25,7 +25,9 @@ module System.Posix.Temp ( import System.IO import System.Posix.IO import System.Posix.Types +#if !defined(__GLASGOW_HASKELL__) && !defined(__HUGS__) import System.Posix.Directory (createDirectory) +#endif import Foreign.C #if __GLASGOW_HASKELL__ > 700 @@ -78,7 +80,7 @@ mkdtemp template' = do let template = template' ++ "XXXXXX" #if defined(__GLASGOW_HASKELL__) || defined(__HUGS__) withFilePath template $ \ ptr -> do - throwErrnoIfNull "mkdtemp" (c_mkdtemp ptr) + _ <- throwErrnoIfNull "mkdtemp" (c_mkdtemp ptr) name <- peekFilePath ptr return name #else diff --git a/System/Posix/Temp/ByteString.hsc b/System/Posix/Temp/ByteString.hsc index 747961421607d349c02562ca5ebe08c83801dd96..a13e45a4e04d15bd006e9536cebb90c3d4e446f1 100644 --- a/System/Posix/Temp/ByteString.hsc +++ b/System/Posix/Temp/ByteString.hsc @@ -22,10 +22,12 @@ module System.Posix.Temp.ByteString ( #include "HsUnix.h" -import System.IO ( Handle, openFile, IOMode(..) ) +import System.IO import System.Posix.IO import System.Posix.Types +#if !defined(__GLASGOW_HASKELL__) && !defined(__HUGS__) import System.Posix.Directory (createDirectory) +#endif import Foreign.C @@ -69,7 +71,7 @@ mkdtemp template' = do let template = template' `B.append` (BC.pack "XXXXXX") #if defined(__GLASGOW_HASKELL__) || defined(__HUGS__) withFilePath template $ \ ptr -> do - throwErrnoIfNull "mkdtemp" (c_mkdtemp ptr) + _ <- throwErrnoIfNull "mkdtemp" (c_mkdtemp ptr) name <- peekFilePath ptr return name #else