-
Notifications
You must be signed in to change notification settings - Fork 274
Fixes to pointer handling in goto_rw [depends-on: #2646] #748
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
Conversation
@lucasccordeiro This will affect the slicer - hopefully in a positive way. |
While the changes would seem to be the right thing to do(TM) they break 3 slicing tests. I will investigate. |
@tautschnig: Thanks for letting me know. If you have doubts about the slicing tests, I'll be happy to clarify. |
f533ab9
to
31eef04
Compare
31eef04
to
87d37d4
Compare
87d37d4
to
8d9a0f7
Compare
This reverts commit 55d1297. Pointers require dereferencing, and taking an address of an object does not induce any reads on the object.
Treating any such access as an access to the single, global memory object will enable sound overapproximation, and thus helps slicing soundness.
8d9a0f7
to
33c9f89
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm fine with this although I note that @lucasccordeiro (i|wa)s the keeper of the slicer.
While I'm of course very much convinced that my changes are the right-thing-to-do(TM), it would be great to have input from @smowton and @lucasccordeiro. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't really know enough about what is going on here to provide meaningful comment, though it is surprising to be reverting such an old commit. Unfortunately, the original PR did not include any tests so hard to know whether what this was originally trying to fix remains fixed...
I think the first time I committed this revert to some local branch was the day that I noticed its existence :-)
Would @AnnaTrost be available (I heard rumors this might be the case) and be able to contribute some tests? |
We may follow this up with upstreaming a patch from the security product, which identifies dynamic objects per allocation site (i.e. the same granularity as value_sett's dynamic_object* identifiers). However this is clearly a step in the right direction which we should take for now. One concern: does goto-rw have any concept of a strong write (for example, |
@tautschnig This PR seems to be in limbo, do you think you may update this and try to merge it, or should we close it due to age? |
Closing this PR due to age and lack of clear direction. Please reopen if you believe this closure is erroneous and this will be updated/fixed. |
__CPROVER_memory
this ought to be resolved (albeit in a very coarse manner).