diff --git a/CHANGES.markdown b/CHANGES.markdown
--- a/CHANGES.markdown
+++ b/CHANGES.markdown
@@ -1,3 +1,7 @@
+## Changes in 0.10.3 [2018.07.02]
+ - Backport the proper fixity for `($!)`, which was accidentally omitted in
+   `base-compat-0.10.2`.
+
 ## Changes in 0.10.2 [2018.07.02]
  - Sync with `base-4.12`/GHC 8.6
  - Backport `RuntimeRep`-polymorphic versions of `($!)` and `throw` to
diff --git a/base-compat.cabal b/base-compat.cabal
--- a/base-compat.cabal
+++ b/base-compat.cabal
@@ -1,5 +1,5 @@
 name:             base-compat
-version:          0.10.2
+version:          0.10.3
 license:          MIT
 license-file:     LICENSE
 copyright:        (c) 2012-2018 Simon Hengel,
diff --git a/src/Prelude/Compat.hs b/src/Prelude/Compat.hs
--- a/src/Prelude/Compat.hs
+++ b/src/Prelude/Compat.hs
@@ -335,7 +335,7 @@
 -- | Strict (call-by-value) application operator. It takes a function and an
 -- argument, evaluates the argument to weak head normal form (WHNF), then calls
 -- the function with that value.
-
+infixr 0 $!
 ($!) :: forall r a (b :: TYPE r). (a -> b) -> a -> b
 f $! x = let !vx = x in f vx  -- see #2273
 #endif
