Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Couldn't match expected type sbv-8.8:Data.SBV.Core.Symbolic.VarContext' with actual type Maybe Quantifier' #879

Closed
yurivict opened this issue Sep 5, 2020 · 2 comments · Fixed by #885

Comments

@yurivict
Copy link

yurivict commented Sep 5, 2020

2.9.1 fails to build:

src/Cryptol/Eval/SBV.hs:71:52: error:
    * Couldn't match expected type `sbv-8.8:Data.SBV.Core.Symbolic.VarContext'
                  with actual type `Maybe Quantifier'
    * In the first argument of `svMkSymVar', namely `(Just ALL)'
      In the second argument of `(.)', namely
        `svMkSymVar (Just ALL) (KBounded False w) Nothing'
      In the second argument of `(>>=)', namely
        `liftIO . svMkSymVar (Just ALL) (KBounded False w) Nothing'
   |
71 | forallBV_ w = symbolicEnv >>= liftIO . svMkSymVar (Just ALL) (KBounded False w) Nothing
   |                                                    ^^^^^^^^

src/Cryptol/Eval/SBV.hs:74:52: error:
    * Couldn't match expected type `sbv-8.8:Data.SBV.Core.Symbolic.VarContext'
                  with actual type `Maybe Quantifier'
    * In the first argument of `svMkSymVar', namely `(Just EX)'
      In the second argument of `(.)', namely
        `svMkSymVar (Just EX) (KBounded False w) Nothing'
      In the second argument of `(>>=)', namely
        `liftIO . svMkSymVar (Just EX) (KBounded False w) Nothing'
   |
74 | existsBV_ w = symbolicEnv >>= liftIO . svMkSymVar (Just EX) (KBounded False w) Nothing
   |                                                    ^^^^^^^

src/Cryptol/Eval/SBV.hs:77:53: error:
    * Couldn't match expected type `sbv-8.8:Data.SBV.Core.Symbolic.VarContext'
                  with actual type `Maybe Quantifier'
    * In the first argument of `svMkSymVar', namely `(Just ALL)'
      In the second argument of `(.)', namely
        `svMkSymVar (Just ALL) KBool Nothing'
      In the second argument of `(>>=)', namely
        `liftIO . svMkSymVar (Just ALL) KBool Nothing'
   |
77 | forallSBool_ = symbolicEnv >>= liftIO . svMkSymVar (Just ALL) KBool Nothing
   |                                                     ^^^^^^^^

FreeBSD 12.1
ghc-8.10.2

@brianhuffman
Copy link
Contributor

I think our test builds are using sbv 8.7. Perhaps we need to set an appropriate upper bound for sbv?

@atomb
Copy link
Contributor

atomb commented Sep 8, 2020

Yeah, and in the meantime you can build with cabal v2-build --constraint="sbv==8.6" (or 8.7, though it has slightly pickier requirements about the version of CVC4, if you're using that) or by setting that constraint in a cabal.project.freeze file.

brianhuffman pushed a commit that referenced this issue Sep 10, 2020
In version 8.8 the type of `svMkSymVar` has changed, and so cryptol
cannot currently be compiled with sbv-8.8.

Fixes #879.
brianhuffman pushed a commit that referenced this issue Sep 11, 2020
In version 8.8 the type of `svMkSymVar` has changed, and so cryptol
cannot currently be compiled with sbv-8.8.

Fixes #879.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants