diff --git a/ChangeLog b/ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+v1.1.1.9:
+* Dependency update for base 4.15, QC 2.14
+* Fix 'return x y' being incorrectly written to 'y' (instead of 'x')
+
 v1.1.1.8:
 * Dependency update for GHC 8.10
 * Enable UnicodeSyntax
diff --git a/Plugin/Pl/Rules.hs b/Plugin/Pl/Rules.hs
--- a/Plugin/Pl/Rules.hs
+++ b/Plugin/Pl/Rules.hs
@@ -599,9 +599,9 @@
   -- (fmap f g x) --> f (g x)
   rr0 (\f g x -> fmapE `a` f `a` g `a` x)
       (\f g x -> f `a` (g `a` x)),
-  -- return x y --> y
+  -- return x y --> x
   rr  (\y x -> returnE `a` x `a` y)
-      (\y _ -> y),
+      (\_ x -> x),
   -- liftM2 f g h x --> g x `h` h x
   rr0 (\f g h x -> liftM2E `a` f `a` g `a` h `a` x)
       (\f g h x -> f `a` (g `a` x) `a` (h `a` x)),
diff --git a/pointfree.cabal b/pointfree.cabal
--- a/pointfree.cabal
+++ b/pointfree.cabal
@@ -1,7 +1,7 @@
 Cabal-Version: >= 1.10
 
 Name:     pointfree
-Version:  1.1.1.8
+Version:  1.1.1.9
 Category: Tool
 Synopsis: Tool for refactoring expressions into pointfree form
 
@@ -17,7 +17,7 @@
 Extra-source-files: ChangeLog README test/Test.hs
 
 Build-type:  Simple
-Tested-with: GHC == 8.8.4
+Tested-with: GHC == 9.0.2
 
 Source-repository head
   type:     git
@@ -27,7 +27,7 @@
   Exposed-modules: Pointfree
   Default-language: Haskell2010
 
-  Build-depends: base >= 4.5 && < 4.15,
+  Build-depends: base >= 4.5 && < 4.16,
                  array >= 0.3 && < 0.6,
                  containers >= 0.4 && < 0.7,
                  haskell-src-exts >= 1.20 && < 1.24,
@@ -44,7 +44,7 @@
   Main-is:       Main.hs
   Default-language: Haskell2010
   GHC-options:   -W
-  Build-depends: base >= 4.5 && < 4.15,
+  Build-depends: base >= 4.5 && < 4.16,
                  array >= 0.3 && < 0.6,
                  containers >= 0.4 && < 0.7,
                  haskell-src-exts >= 1.20 && < 1.24,
@@ -68,12 +68,12 @@
                  Plugin.Pl.Transform
 
   Build-depends:
-    base >= 4.5 && < 4.15,
+    base >= 4.5 && < 4.16,
     array >= 0.3 && < 0.6,
     containers >= 0.4 && < 0.7,
     haskell-src-exts >= 1.20 && < 1.24,
     HUnit >= 1.6 && < 1.7,
-    QuickCheck >= 2.11 && < 2.14,
+    QuickCheck >= 2.11 && < 2.15,
     transformers < 0.6
 
   Default-language: Haskell2010
diff --git a/test/Test.hs b/test/Test.hs
--- a/test/Test.hs
+++ b/test/Test.hs
@@ -117,12 +117,12 @@
   unitTest "\\a b -> a >>= \\x -> b >>= \\y -> return (x,y)" ["liftM2 (,)"],
   unitTest "\\b a -> a >>= \\x -> b >>= \\y -> return (x,y)" ["flip liftM2 (,)"],
   unitTest "curry snd" ["const id"],
-  unitTest "\\x -> return x y" ["const y"],
+  unitTest "\\x -> return x y" ["id"],
   unitTest "\\x -> f x x" ["join f"],
   unitTest "join (+) 1" ["2"],
   unitTest "fmap f g x" ["f (g x)"],
   unitTest "liftM2 (+) f g 0" ["f 0 + g 0", "g 0 + f 0"],
-  unitTest "return 1 x" ["x"],
+  unitTest "return 1 x" ["1"],
   unitTest "f =<< return x" ["f x"],
   unitTest "(=<<) id" ["join"],
   unitTest "zipWith (,)" ["zip"],
