-- Stability : provisional
-- Portability : portable
--
--- $Id: Trace.hs,v 1.1 2001/06/28 14:15:02 simonmar Exp $
+-- $Id: Trace.hs,v 1.2 2002/04/24 16:01:51 simonmar Exp $
--
-- The trace function.
--
postTraceHook fd
return expr
-foreign import "PostTraceHook" postTraceHook :: Int -> IO ()
+foreign import ccall "PostTraceHook" postTraceHook :: Int -> IO ()
#endif
-- Stability : provisional
-- Portability : portable
--
--- $Id: CPUTime.hsc,v 1.6 2002/02/11 12:29:13 simonmar Exp $
+-- $Id: CPUTime.hsc,v 1.7 2002/04/24 16:03:39 simonmar Exp $
--
-- The standard CPUTime library.
--
* 1000000)
type CRUsage = ()
-foreign import unsafe getrusage :: CInt -> Ptr CRUsage -> IO CInt
+foreign import ccall unsafe getrusage :: CInt -> Ptr CRUsage -> IO CInt
#else
# if defined(HAVE_TIMES)
allocaBytes (#const sizeof(struct tms)) $ \ p_tms -> do
`div` fromIntegral clockTicks)
type CTms = ()
-foreign import unsafe times :: Ptr CTms -> IO CClock
+foreign import ccall unsafe times :: Ptr CTms -> IO CClock
# else
ioException (IOError Nothing UnsupportedOperation
"getCPUTime"
type FILETIME = ()
type HANDLE = ()
-- need proper Haskell names (initial lower-case character)
-foreign import "GetCurrentProcess" unsafe getCurrentProcess :: IO (Ptr HANDLE)
-foreign import "GetProcessTimes" unsafe getProcessTimes :: Ptr HANDLE -> Ptr FILETIME -> Ptr FILETIME -> Ptr FILETIME -> Ptr FILETIME -> IO CInt
+foreign import ccall unsafe "GetCurrentProcess" getCurrentProcess :: IO (Ptr HANDLE)
+foreign import ccall unsafe "GetProcessTimes" getProcessTimes :: Ptr HANDLE -> Ptr FILETIME -> Ptr FILETIME -> Ptr FILETIME -> Ptr FILETIME -> IO CInt
#endif /* not _WIN32 */
(#const CLK_TCK)
#else
unsafePerformIO (sysconf (#const _SC_CLK_TCK) >>= return . fromIntegral)
-foreign import unsafe sysconf :: CInt -> IO CLong
+foreign import ccall unsafe sysconf :: CInt -> IO CLong
#endif