diff --git a/crucible-llvm-syntax/src/Lang/Crucible/LLVM/Syntax.hs b/crucible-llvm-syntax/src/Lang/Crucible/LLVM/Syntax.hs index 1d9d7fc47..71bce2c27 100644 --- a/crucible-llvm-syntax/src/Lang/Crucible/LLVM/Syntax.hs +++ b/crucible-llvm-syntax/src/Lang/Crucible/LLVM/Syntax.hs @@ -69,7 +69,9 @@ llvmTypeParser = Parse.describe "LLVM type" $ Parse.call ptrType let ptrName = do s <- Parse.atomName unless (s == Atom.AtomName "Ptr") Parse.cut - let ptrWidth = do + let -- This type signature is needed for GHC 8.10 + ptrWidth :: MonadSyntax Atomic m => m (Some TypeRepr) + ptrWidth = do Parse.BoundedNat n <- Parse.posNat pure (Some (LLVMPointerRepr n)) unary ptrName ptrWidth