diff --git a/CHANGES.txt b/CHANGES.txt
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,5 +1,7 @@
 Changelog for Extra
 
+1.7.1, released 2020-03-10
+    Add NOINLINE to errorIO to work around a GHC 8.4 bug
 1.7, released 2020-03-05
 *   #40, delete deprecated function for
 *   zipFrom now truncates lists, rather than error, just like zip
diff --git a/extra.cabal b/extra.cabal
--- a/extra.cabal
+++ b/extra.cabal
@@ -1,7 +1,7 @@
 cabal-version:      >= 1.18
 build-type:         Simple
 name:               extra
-version:            1.7
+version:            1.7.1
 license:            BSD3
 license-file:       LICENSE
 category:           Development
diff --git a/src/Control/Exception/Extra.hs b/src/Control/Exception/Extra.hs
--- a/src/Control/Exception/Extra.hs
+++ b/src/Control/Exception/Extra.hs
@@ -76,6 +76,7 @@
 --
 -- > catch (errorIO "Hello") (\(ErrorCall x) -> pure x) == pure "Hello"
 -- > seq (errorIO "foo") (print 1) == print 1
+{-# NOINLINE errorIO #-} -- otherwise GHC 8.4.1 seems to get upset
 errorIO :: Partial => String -> IO a
 errorIO x = withFrozenCallStack $ evaluate $ error x
 
