diff --git a/libraries/process b/libraries/process
index 8364eaa2c83f7918be41cf3bd520e4ede1b07c35..9c3bfc214c72bbd0c8a30a1c41465deed0feaf47 160000
--- a/libraries/process
+++ b/libraries/process
@@ -1 +1 @@
-Subproject commit 8364eaa2c83f7918be41cf3bd520e4ede1b07c35
+Subproject commit 9c3bfc214c72bbd0c8a30a1c41465deed0feaf47
diff --git a/testsuite/tests/process/process004.hs b/testsuite/tests/process/process004.hs
index d72dc6dbad24bda7a8caf7963812e671457f521a..c4fe993a188cba71fa82fb9b24c243d35a6c1863 100644
--- a/testsuite/tests/process/process004.hs
+++ b/testsuite/tests/process/process004.hs
@@ -4,8 +4,13 @@ import System.IO.Error
 import System.Process
 
 main :: IO ()
-main = do test1 `catchIOError` \e -> putStrLn ("Exc: " ++ show e)
-          test2 `catchIOError` \e -> putStrLn ("Exc: " ++ show e)
+main = do
+  -- N.B. Only show the error type since the exact error text
+  -- may depend upon precise system call which @process@ decided
+  -- to use.
+  let printError e = putStrLn ("Exc: " ++ show (ioeGetErrorType e))
+  test1 `catchIOError` printError
+  test2 `catchIOError` printError
 
 test1 :: IO ()
 test1 = do
diff --git a/testsuite/tests/process/process004.stdout b/testsuite/tests/process/process004.stdout
index e8220702ad50b218c45b28891b242524e5c17861..3e9675b80e7e8493f3b943a9c4997bdd33add59b 100644
--- a/testsuite/tests/process/process004.stdout
+++ b/testsuite/tests/process/process004.stdout
@@ -1,2 +1,2 @@
-Exc: true: runInteractiveProcess: chdir: invalid argument (Bad file descriptor)
-Exc: true: runProcess: chdir: does not exist (No such file or directory)
+Exc: does not exist
+Exc: does not exist
diff --git a/testsuite/tests/process/process004.stdout-javascript-unknown-ghcjs b/testsuite/tests/process/process004.stdout-javascript-unknown-ghcjs
index e90c998d8a4e1b94c7ffa7202a9dca754226c32e..3e9675b80e7e8493f3b943a9c4997bdd33add59b 100644
--- a/testsuite/tests/process/process004.stdout-javascript-unknown-ghcjs
+++ b/testsuite/tests/process/process004.stdout-javascript-unknown-ghcjs
@@ -1,2 +1,2 @@
-Exc: true: runInteractiveProcess: does not exist (No such file or directory)
-Exc: true: runProcess: does not exist (No such file or directory)
+Exc: does not exist
+Exc: does not exist
diff --git a/testsuite/tests/process/process004.stdout-mingw32 b/testsuite/tests/process/process004.stdout-mingw32
index e9e0e0cdf7f11c19db02275621a09864f1aba6f6..4bd227f7b68ec2653da3e955a2239cd06c66af7f 100644
--- a/testsuite/tests/process/process004.stdout-mingw32
+++ b/testsuite/tests/process/process004.stdout-mingw32
@@ -1,2 +1,2 @@
-Exc: true: runInteractiveProcess: invalid argument (Invalid argument)
-Exc: true: runProcess: invalid argument (Invalid argument)
+Exc: invalid argument
+Exc: invalid argument