diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,5 +1,10 @@
 # ChangeLog
 
+## 0.5.1.2
+
+* Fixes compilation with GHC < 8.0.  See
+  [#142](https://github.com/fpco/store/issues/142).
+
 ## 0.5.1.1
 
 * Update to the instances for generics, to improve error messages for
diff --git a/src/Data/Store/Impl.hs b/src/Data/Store/Impl.hs
--- a/src/Data/Store/Impl.hs
+++ b/src/Data/Store/Impl.hs
@@ -287,13 +287,16 @@
 type FitsInByte n = FitsInByteResult (n <=? 255)
 
 type family FitsInByteResult (b :: Bool) :: Constraint where
-    FitsInByteResult True = ()
-    FitsInByteResult False = TypeErrorMessage
+    FitsInByteResult 'True = ()
+    FitsInByteResult 'False = TypeErrorMessage
         "Generic deriving of Store instances can only be used on datatypes with fewer than 256 constructors."
 
 type family TypeErrorMessage (a :: Symbol) :: Constraint where
 #if MIN_VERSION_base(4,9,0)
     TypeErrorMessage a = TypeError (Text a)
+-- GHC < 8.0 does not support empty closed type families
+#elif __GLASGOW_HASKELL__ < 800
+    TypeErrorMessage a = a ~ ""
 #endif
 
 -- Similarly to splitting up the generic class into multiple classes, we
diff --git a/store.cabal b/store.cabal
--- a/store.cabal
+++ b/store.cabal
@@ -4,10 +4,10 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: a18e85521a544ee521dc7788e9b2194c7c3ec0efbeb6092e401782d962ea22d3
+-- hash: 432401eddc329fdeadc94cd6a50d7641756074a9537ef2306c874619e22c33af
 
 name:           store
-version:        0.5.1.1
+version:        0.5.1.2
 synopsis:       Fast binary serialization
 category:       Serialization, Data
 homepage:       https://github.com/fpco/store#readme
