Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The Z3 version check checks for an exact (string) match between the version number passed to
--z3version X
and the output ofz3 --version
(ignoring theZ3 version
prefix and- 64 bit
suffix ). This exact matching is too strict and incorrectly rejects some versions/builds of Z3 because they output additional information after the version number.For example, the Z3 binary included by the Everest script outputs the following:
However, the current Z3 binary on the Arch repositories outputs the following:
The appended build hash code causes the version check in F* to fail. Changing the check from an exact match to a
FStar.Compiler.Utils.starts_with
check fixes this issue (perhaps acontains
check would be better in case Z3 ever outputs anything before the version number, but I didn't think that was necessary).