diff --git a/Array.hs b/Array.hs
index 86e879619bdc15c279a20f86a83e1a24474acef7..3bcc271ac01f3fd05ce8ff4a4131391c3f5f3f85 100644
--- a/Array.hs
+++ b/Array.hs
@@ -1,5 +1,7 @@
 {-# LANGUAGE CPP #-}
-#if __GLASGOW_HASKELL__ >= 701
+#if __GLASGOW_HASKELL__ >= 709
+{-# LANGUAGE Safe #-}
+#elif __GLASGOW_HASKELL__ >= 701
 {-# LANGUAGE Trustworthy #-}
 #endif
 
diff --git a/Directory.hs b/Directory.hs
index 68f67ba926e001546feedfabcacada4ec8ccbf1d..bfea5de2e1604d358fd72e3541faf977566796ce 100644
--- a/Directory.hs
+++ b/Directory.hs
@@ -1,5 +1,7 @@
 {-# LANGUAGE CPP #-}
-#if __GLASGOW_HASKELL__ >= 701
+#if __GLASGOW_HASKELL__ >= 709
+{-# LANGUAGE Safe #-}
+#elif __GLASGOW_HASKELL__ >= 701
 {-# LANGUAGE Trustworthy #-}
 #endif
 
diff --git a/Locale.hs b/Locale.hs
index ba231f619995693fd27bc3ec98ae215f211bcb56..65123da5f98e39ce68b2a2306c6d7c84c8b12a4d 100644
--- a/Locale.hs
+++ b/Locale.hs
@@ -1,5 +1,7 @@
 {-# LANGUAGE CPP #-}
-#if __GLASGOW_HASKELL__ >= 701
+#if __GLASGOW_HASKELL__ >= 709
+{-# LANGUAGE Safe #-}
+#elif __GLASGOW_HASKELL__ >= 701
 {-# LANGUAGE Trustworthy #-}
 #endif
 
diff --git a/System.hs b/System.hs
index ebc4ea75843519433db5b75c633fe0731ec83233..212af71d8b286532ea15337378392aea5d5485a8 100644
--- a/System.hs
+++ b/System.hs
@@ -1,5 +1,7 @@
 {-# LANGUAGE CPP #-}
-#if __GLASGOW_HASKELL__ >= 701
+#if __GLASGOW_HASKELL__ >= 709
+{-# LANGUAGE Safe #-}
+#elif __GLASGOW_HASKELL__ >= 701
 {-# LANGUAGE Trustworthy #-}
 #endif
 
diff --git a/Time.hs b/Time.hs
index 736256e422e752f8df9e46cec8ddd380ad362129..67f4c859856cbec56774ce27aca8a75ae22e1621 100644
--- a/Time.hs
+++ b/Time.hs
@@ -1,5 +1,7 @@
 {-# LANGUAGE CPP #-}
-#if __GLASGOW_HASKELL__ >= 701
+#if __GLASGOW_HASKELL__ >= 709
+{-# LANGUAGE Safe #-}
+#elif __GLASGOW_HASKELL__ >= 701
 {-# LANGUAGE Trustworthy #-}
 #endif