diff --git a/text.cabal b/text.cabal
index f63436098e9c49079456a6070b618f9de232dac4..bcae03405fe414c1012f28b0ec45520ad9467d24 100644
--- a/text.cabal
+++ b/text.cabal
@@ -90,7 +90,9 @@ library
                  cbits/validate_utf8.cpp
     cxx-options: -std=c++17
     cpp-options: -DSIMDUTF
-    if os(darwin) || os(freebsd)
+    if impl(ghc >= 9.4)
+      build-depends: system-cxx-std-lib == 1.0
+    elif os(darwin) || os(freebsd)
       extra-libraries: c++
     elif os(openbsd)
       extra-libraries: c++ c++abi pthread