Skip to content

Old Z3 is not supported (should enforce in CMake) #13121

Open
@axic

Description

@axic

I have z3 4.8.13 installed.

CMake properly warns (I think for the reason that different versions may produce different outputs for the tests):

  CMake Error at CMakeLists.txt:74 (message):
    SMTChecker tests require Z3 4.8.17 for all tests to pass.

    Build with -DSTRICT_Z3_VERSION=OFF if you want to use a different version.
    You can also use -DUSE_Z3=OFF to build without Z3.  In both cases use
    --no-smt when running tests.

However disabling it (using -DSTRICT_Z3_VERSION=OFF) shows that 4.8.13 is not a supported version anymore:

  /Projects/solidity/libsmtutil/Z3Interface.cpp:381:11: error: use of undeclared identifier 'Z3_OP_RECURSIVE'
                  kind == Z3_OP_RECURSIVE
                          ^

Should add another version check for "not older than".

Metadata

Metadata

Assignees

No one assigned

    Labels

    bug 🐛build system 🏗️easy difficultylow effortThere is not much implementation work to be done. The task is very easy or tiny.medium impactDefault level of impactshould haveWe like the idea but it’s not important enough to be a part of the roadmap.smt

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions