-
Notifications
You must be signed in to change notification settings - Fork 273
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
Removed the dynamic_object_exprt's instance() #716
Removed the dynamic_object_exprt's instance() #716
Conversation
1ffc42b
to
8eadf47
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.
Looks right to me.
This improves type safety and prepares the way for being able to access the location number as a location number (rather than an opaque string) without having to check the types whenever it is accessed. |
I'm all in for the encapsulation part of this patch, but how is the renaming |
All previous usage of this field for stuffing any other information in has been removed and replaced with better typed storage. It now exclusively holds the location number of the malloc that creates this DO. A more descriptive name is hence justified. |
8eadf47
to
2a5e6c6
Compare
Unless I'm misreading the code: pointer-analysis/value_set_fi*.cpp seem to be encoding a different bit of information via bit manipulation? |
Worth checking with Daniel, but I don't see why the |
(the |
@smowton Note that these analyses are context-sensitive (as opposed to the plain |
Removed the dynamic_object_exprt's instance() methods and replaced its usages with set_instance() and get_instance(). Added the dynamic_object_id_sett data structure into the value_sett class. It is used as expr_sett but only for dynamic-objects.
f158253
to
66481ab
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.
Changes look fine to me.
@kroening, that looks ready to go. |
Removed the
dynamic_object_exprt
'sinstance()
methods andreplaced the usages using
set_location_number()
.Added the
dynamic_object_id_sett
data structure into thevalue_sett
class. It is used asexpr_sett
but only fordynamic-objects.