-
Notifications
You must be signed in to change notification settings - Fork 273
Use model for String.hashCode #4546
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
Use model for String.hashCode #4546
Conversation
3778cee
to
56e097e
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.
This PR failed Diffblue compatibility checks (cbmc commit: 56e097e).
Build URL: https://travis-ci.com/diffblue/test-gen/builds/108816446
Status will be re-evaluated on next push.
Common spurious failures include: the cbmc commit has disappeared in the mean time (e.g. in a force-push); the author is not in the list of contributors (e.g. first-time contributors); compatibility was already broken by an earlier merge.
56e097e
to
b6c30ba
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.
This PR failed Diffblue compatibility checks (cbmc commit: b6c30ba).
Build URL: https://travis-ci.com/diffblue/test-gen/builds/108857635
Status will be re-evaluated on next push.
Common spurious failures include: the cbmc commit has disappeared in the mean time (e.g. in a force-push); the author is not in the list of contributors (e.g. first-time contributors); compatibility was already broken by an earlier merge.
b6c30ba
to
84eb53d
Compare
84eb53d
to
2143136
Compare
@romainbrenguier What's the state of this? |
I'm waiting on a test-gen pull request to confirm this is safe to merge, but it doesn't compile with the current version of cbmc at the moment. |
2143136
to
7353640
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.
✔️
Passed Diffblue compatibility checks (cbmc commit: 7353640).
Build URL: https://travis-ci.com/diffblue/test-gen/builds/111548598
The model will become necessary as we remove the preprocessing for hashCode and replace it with a model.
The internal version is only an over approximation of the behaviour. It's better to use the version from the models.
This can no longer be produced by the preprocessing, so it is not needed in the constraint generation.
7353640
to
18d1a00
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.
This PR failed Diffblue compatibility checks (cbmc commit: 18d1a00).
Build URL: https://travis-ci.com/diffblue/test-gen/builds/111562482
Status will be re-evaluated on next push.
Common spurious failures include: the cbmc commit has disappeared in the mean time (e.g. in a force-push); the author is not in the list of contributors (e.g. first-time contributors); compatibility was already broken by an earlier merge.
The version in the solver is incomplete (under-constrained) and it is not possible to have a complete version which would be really language independent, so it is better to implement these in models, like we do in diffblue/java-models-library#10 for Java