diff --git a/containers/include/containers.h b/containers/include/containers.h
index cd201ca3c2e5420a4af716ff71147ad27163be45..fc2a0e8486568711eb48d45190bafb382a021bac 100644
--- a/containers/include/containers.h
+++ b/containers/include/containers.h
@@ -35,7 +35,13 @@
 
 #ifdef __GLASGOW_HASKELL__
 # define USE_ST_MONAD 1
+#ifndef WORDS_BIGENDIAN
+/*
+ * Unboxed arrays are broken on big-endian architectures.
+ * See https://gitlab.haskell.org/ghc/ghc/-/issues/16998
+ */
 # define USE_UNBOXED_ARRAYS 1
 #endif
+#endif
 
 #endif