-
Notifications
You must be signed in to change notification settings - Fork 97
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
Unexpected failure when modifies
attribute points to a ZST
#3181
Comments
Assuming 1), this should be translated to |
In Rust, a 0 sized access is valid for any pointer, and the address of a ZST variable can be anything. #3134 changed Kani to implement that. I believe CBMC still expects the pointer to point to a valid allocation, which is likely the reason why this is failing. If that's the case, we need to omit the assigns clause. |
@celinval For this line: |
I think those were old names |
This PR filters out ZST pointee types when generating CMBC assigns clauses for contracts. This prevents CMBC from complaining that the pointer doesn't point to a valid allocation. Resolves #3181 By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 and MIT licenses.
I tried this code:
using the following command line invocation:
with Kani version: 0.51.0-dev (#3107)
I expected to see this happen: verification succeeds
Instead, this happened: Verification failed with the following failure:
The text was updated successfully, but these errors were encountered: