-
Notifications
You must be signed in to change notification settings - Fork 277
Replace Object.getClass preprocessing by a CProver.classIdentifier method #4513
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
Replace Object.getClass preprocessing by a CProver.classIdentifier method #4513
Conversation
There is a test for getClass in |
3ef4482
to
d4079e6
Compare
Test added |
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: d4079e6).
Build URL: https://travis-ci.com/diffblue/test-gen/builds/107932717
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.
Looks good!
java-models-library PR needs to be merged first, then the pointer updated, then this can go in. |
Update the models for a version of getClass which uses CProver.classIdentifier. This is necessary for getting rid of the preprocessing of getClass which is error-prone. diffblue/java-models-library#21
This simplifies the preprocessing and leave it to the model to handle the complexity, which is less error-prone (writing safe java program is easier than write c++ that generates safe goto-program).
This tests that the new builtin cprover function is working.
d4079e6
to
d841712
Compare
java-models-library update now pointing to master |
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: d841712).
Build URL: https://travis-ci.com/diffblue/test-gen/builds/107948360
This simplifies the preprocessing and leave it to the model to handle
the complexity, which is less error-prone.