We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
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
Faced with an expression like ((struct X)some_struct_y).a, value-set's make_member function will reduce that unsoundly to some_struct_y.a, here: https://github.com/diffblue/cbmc/blob/develop/src/pointer-analysis/value_set.cpp#L1654
((struct X)some_struct_y).a
make_member
some_struct_y.a
Clearly that only works when the two structs happen to have the same layout and names.
Expressions like that are hard to get from C, but value_set_dereferencet will produce them when it different struct types are aliased.
value_set_dereferencet
#3562 may offer a solution, by soundly simplifying member-of-cast-of-struct-typed-expression when possible.
The text was updated successfully, but these errors were encountered:
No branches or pull requests
Faced with an expression like
((struct X)some_struct_y).a
, value-set'smake_member
function will reduce that unsoundly tosome_struct_y.a
, here: https://github.com/diffblue/cbmc/blob/develop/src/pointer-analysis/value_set.cpp#L1654Clearly that only works when the two structs happen to have the same layout and names.
Expressions like that are hard to get from C, but
value_set_dereferencet
will produce them when it different struct types are aliased.#3562 may offer a solution, by soundly simplifying member-of-cast-of-struct-typed-expression when possible.
The text was updated successfully, but these errors were encountered: