-
Notifications
You must be signed in to change notification settings - Fork 273
Fix bounds checking for structs with flexible array members #4324
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
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: 24b6676).
Build URL: https://travis-ci.com/diffblue/test-gen/builds/103095037
Status will be re-evaluated on next push.
Common spurious failures:
-
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).
-
the compatibility was already broken by an earlier merge.
type_matches_size = | ||
equal_exprt(size, typecast_exprt(type_size_opt.value(), size.type())); | ||
{ | ||
type_matches_size = if_exprt{ |
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 definitely warrants an explanatory comment
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.
Will add one as soon as #4325 is in.
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.
Done.
The constraints did not make sure that the dynamic size (__CPROVER_malloc_size) actually referred to the object we are looking at (__CPROVER_malloc_object).
24b6676
to
ae0a1f3
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: ae0a1f3).
Build URL: https://travis-ci.com/diffblue/test-gen/builds/103124110
Status will be re-evaluated on next push.
Common spurious failures:
-
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).
-
the compatibility was already broken by an earlier merge.
The constraints did not make sure that the dynamic size (__CPROVER_malloc_size)
actually referred to the object we are looking at (__CPROVER_malloc_object).