diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,9 @@
 # shake-futhark
 
+## 0.2.0.2
+
+  * Compatibility with futhark >=0.22.2
+
 ## 0.2.0.1
 
   * Compatibility with futhark >=0.21.8
diff --git a/shake-futhark.cabal b/shake-futhark.cabal
--- a/shake-futhark.cabal
+++ b/shake-futhark.cabal
@@ -1,6 +1,6 @@
 cabal-version:   1.18
 name:            shake-futhark
-version:         0.2.0.1
+version:         0.2.0.2
 license:         BSD3
 license-file:    LICENSE
 copyright:       Copyright: (c) 2020, 2022 Vanessa McHale
@@ -27,7 +27,7 @@
     ghc-options:      -Wall
     build-depends:
         base >=4.3 && <5,
-        futhark >=0.21.8,
+        futhark >=0.22.2,
         shake,
         text,
         filepath,
diff --git a/src/Development/Shake/Futhark.hs b/src/Development/Shake/Futhark.hs
--- a/src/Development/Shake/Futhark.hs
+++ b/src/Development/Shake/Futhark.hs
@@ -6,6 +6,7 @@
 import           Control.Monad             ((<=<))
 import           Data.Containers.ListUtils (nubOrd)
 import           Data.Foldable             (traverse_)
+import qualified Data.Text                 as T
 import qualified Data.Text.IO              as TIO
 import           Development.Shake         (Action, need, traced)
 import           Language.Futhark.Parser   (SyntaxError (..), parseFuthark)
@@ -26,7 +27,7 @@
     let dirFile = takeDirectory fp
         parsed = either (error.showErr) id $ parseFuthark fp contents
     pure ((dirFile </>) . (<.> "fut") <$> extractFromProgBase parsed)
-    where showErr (SyntaxError l str) = locStr l ++ ": " ++ str
+    where showErr (SyntaxError l str) = locStr l ++ ": " ++ T.unpack str
 
 -- | Get all transitive dependencies
 getAllFutDeps :: FilePath -> IO [FilePath]
