diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,10 @@
 # Revision history for brick-list-search
 
+## 0.1.1.1 -- 2023-04-13
+
+* Lower version bound for base to make this library compile with GHC-8.10.7.
+* Used eta expansion to make this library compile with GHC-9.0.2.
+
 ## 0.1.1.0 -- 2023-04-12
 
 * Added `listShow`.
diff --git a/brick-list-skip.cabal b/brick-list-skip.cabal
--- a/brick-list-skip.cabal
+++ b/brick-list-skip.cabal
@@ -1,6 +1,6 @@
 cabal-version: 3.0
 name: brick-list-skip
-version: 0.1.1.0
+version: 0.1.1.1
 
 synopsis: Skip a certain kind of items when moving in brick list
 
@@ -40,7 +40,7 @@
 
 common all
     build-depends:
-        base >=4.15.1.0 && <5
+        base >=4.14 && <5
       , brick >=1.5 && <1.7
       , microlens >=0.4.13 && <0.5
       , vector >=0.12.3 && <0.13
diff --git a/src/Brick/Widgets/List/Skip.hs b/src/Brick/Widgets/List/Skip.hs
--- a/src/Brick/Widgets/List/Skip.hs
+++ b/src/Brick/Widgets/List/Skip.hs
@@ -107,8 +107,13 @@
 listShow t d = do
   l <- get
   let (skipList, vScroll) = case d of
-        Bwd -> (skipListBackward, vScrollToBeginning)
-        Fwd -> (skipListForward, vScrollToEnd)
+        -- `\s -> vScrollToXXX s` is eta expansion.
+        -- eta expansion is required for GHC 9.0.2 because of simplified subsumption developed by Simon Peyton Jones.
+        -- https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0287-simplify-subsumption.rst
+        -- simplified subsumption is disabled by default in later GHC versions.
+        -- Simon Petyon Jones hasn't found a way to avoid deep subsumption and eta expansion.
+        Bwd -> (skipListBackward, \s -> vScrollToBeginning s)
+        Fwd -> (skipListForward, \s -> vScrollToEnd s)
   case skipList ExcludeCurrent t l of
     Nothing -> vScroll $ viewportScroll $ l ^. L.listNameL
     Just _ -> return ()
