diff --git a/CHANGELOG.markdown b/CHANGELOG.markdown
--- a/CHANGELOG.markdown
+++ b/CHANGELOG.markdown
@@ -1,3 +1,7 @@
+0.13.2 [2021.11.10]
+-------------------
+* Allow building on GHC HEAD.
+
 0.13.1 [2021.10.31]
 -------------------
 * Allow building with GHC 9.2.
diff --git a/constraints.cabal b/constraints.cabal
--- a/constraints.cabal
+++ b/constraints.cabal
@@ -1,6 +1,6 @@
 name:          constraints
 category:      Constraints
-version:       0.13.1
+version:       0.13.2
 license:       BSD2
 cabal-version: >= 1.10
 license-file:  LICENSE
@@ -55,7 +55,7 @@
     binary >= 0.7.1 && < 0.9,
     deepseq >= 1.3 && < 1.5,
     ghc-prim,
-    hashable >= 1.2 && < 1.4,
+    hashable >= 1.2 && < 1.5,
     mtl >= 2.1.2 && < 2.3,
     transformers >= 0.3.0.0 && < 0.6,
     transformers-compat >= 0.5 && < 1,
diff --git a/src/Data/Constraint/Nat.hs b/src/Data/Constraint/Nat.hs
--- a/src/Data/Constraint/Nat.hs
+++ b/src/Data/Constraint/Nat.hs
@@ -74,8 +74,8 @@
 magic :: forall n m o. (Integer -> Integer -> Integer) -> (KnownNat n, KnownNat m) :- KnownNat o
 magic f = Sub $ unsafeCoerce (Magic Dict) (natVal (Proxy :: Proxy n) `f` natVal (Proxy :: Proxy m))
 
-axiom :: forall a b. Dict (a ~ b)
-axiom = unsafeCoerce (Dict :: Dict (a ~ a))
+axiom :: Dict c
+axiom = unsafeCoerce (Dict :: Dict ())
 
 axiomLe :: forall (a :: Nat) (b :: Nat). Dict (a <= b)
 axiomLe = axiom
diff --git a/src/Data/Constraint/Symbol.hs b/src/Data/Constraint/Symbol.hs
--- a/src/Data/Constraint/Symbol.hs
+++ b/src/Data/Constraint/Symbol.hs
@@ -68,8 +68,8 @@
 magicSN :: forall a n. (String -> Int) -> KnownSymbol a :- KnownNat n
 magicSN f = Sub $ unsafeCoerce (Magic Dict) (toInteger (f (symbolVal (Proxy :: Proxy a))))
 
-axiom :: forall a b. Dict (a ~ b)
-axiom = unsafeCoerce (Dict :: Dict (a ~ a))
+axiom :: Dict c
+axiom = unsafeCoerce (Dict :: Dict ())
 
 -- axioms and operations
 
