Hide cleanupProcess for process-1.6.3.0 with comment
[lsp-test.git] / src / Language / Haskell / LSP / Test / Compat.hs
index ddf4a7893e9c4a635a007b91981e6077bfa6c86b..f48faa90cc7c40031779a9679b44ddcbf16e41b1 100644 (file)
@@ -9,9 +9,16 @@ import Data.Maybe
 import System.IO
 
 #if MIN_VERSION_process(1,6,3)
+-- We have to hide cleanupProcess for process-1.6.3.0
+-- cause it is in the public api for 1.6.3.0 versions
+-- shipped with ghc >= 8.6 and < 8.6.4
 import System.Process hiding (getPid, cleanupProcess)
+# if MIN_VERSION_process(1,6,4)
 import qualified System.Process (getPid, cleanupProcess)
 # else
+import qualified System.Process (getPid)
+# endif
+#else
 import System.Process
 import System.Process.Internals
 import Control.Concurrent.MVar
@@ -59,7 +66,7 @@ cleanupRunningProcess p@(_, _, _, ph) =
   getProcessExitCode ph >>= maybe (cleanupProcess p) (const $ return ())
 
 cleanupProcess :: (Maybe Handle, Maybe Handle, Maybe Handle, ProcessHandle) -> IO ()
-#if MIN_VERSION_process(1,6,3)
+#if MIN_VERSION_process(1,6,4)
 cleanupProcess = System.Process.cleanupProcess
 #else
 cleanupProcess (mb_stdin, mb_stdout, mb_stderr, ph) = do