{-# LANGUAGE CPP #-} module Development.IDE.Compat ( getProcessID ) where #ifdef mingw32_HOST_OS import qualified System.Win32.Process as P (getCurrentProcessId) getProcessID :: IO Int getProcessID = fromIntegral <$> P.getCurrentProcessId #else import qualified System.Posix.Process as P (getProcessID) getProcessID :: IO Int getProcessID :: IO Int getProcessID = ProcessID -> Int forall a b. (Integral a, Num b) => a -> b fromIntegral (ProcessID -> Int) -> IO ProcessID -> IO Int forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b <$> IO ProcessID P.getProcessID #endif