diff --git a/ghc/lib/std/PrelConc.lhs b/ghc/lib/std/PrelConc.lhs index 06265f5ad33a877e1255c5ccd3bf3a8f47e9b8fd..56af3f4fa27c91baa9c52f364e9bde0fea89dfc3 100644 --- a/ghc/lib/std/PrelConc.lhs +++ b/ghc/lib/std/PrelConc.lhs @@ -194,19 +194,9 @@ specified file descriptor is available for reading (just like select). @threadWaitWrite@ is similar, but for writing on a file descriptor. \begin{code} -{- Not yet -- SDM threadDelay, threadWaitRead, threadWaitWrite :: Int -> IO () -threadDelay (I# x#) = IO $ \ s# -> - case delay# x# s# of - s2# -> (# s2#, () #) - -threadWaitRead (I# x#) = IO $ \ s# -> - case waitRead# x# s# of - s2# -> (# s2#, () #) - -threadWaitWrite (I# x#) = IO $ \ s# -> - case waitWrite# x# s# of - s2# -> (# s2#, () #) --} +threadDelay (I# ms) = IO $ \s -> case delay# ms s of s -> (# s, () #) +threadWaitRead (I# fd) = IO $ \s -> case waitRead# fd s of s -> (# s, () #) +threadWaitWrite (I# fd) = IO $ \s -> case waitWrite# fd s of s -> (# s, () #) \end{code} diff --git a/ghc/lib/std/PrelHandle.lhs b/ghc/lib/std/PrelHandle.lhs index 3893a6aed2062d0d98a78f16edbe21dc059d6a6a..5085b9c65a658539be008c3f0b753b593ce923e7 100644 --- a/ghc/lib/std/PrelHandle.lhs +++ b/ghc/lib/std/PrelHandle.lhs @@ -1180,17 +1180,6 @@ mayBlock fo act = do CCALL(setNonBlockingIOFlag__) fo -- reset file object. CCALL(setConnNonBlockingIOFlag__) fo -- reset (connected) file object. return rc - --- #ifdef __HUGS__ -threadDelay, threadWaitRead, threadWaitWrite :: Int -> IO () - --- Hugs does actually have the primops needed to implement these --- but the primops don't actually do anything... -threadDelay (I# ms) = IO $ \s -> case delay# ms s of s -> (# s, () #) -threadWaitRead (I# fd) = IO $ \s -> case waitRead# fd s of s -> (# s, () #) -threadWaitWrite (I# fd) = IO $ \s -> case waitWrite# fd s of s -> (# s, () #) --- #endif - \end{code}