-
Notifications
You must be signed in to change notification settings - Fork 273
Restore member-of-union expressions in trace output #5633
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
Codecov ReportBase: 77.89% // Head: 77.89% // Increases project coverage by
Additional details and impacted files@@ Coverage Diff @@
## develop #5633 +/- ##
========================================
Coverage 77.89% 77.89%
========================================
Files 1616 1616
Lines 186791 186834 +43
========================================
+ Hits 145498 145538 +40
- Misses 41293 41296 +3
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report at Codecov. |
It seems a bit odd to do the 'restoring' in the output of a trace; wouldn't it be better to do that when that is built? |
8ae1794
to
fe906d1
Compare
Indeed! I have reworked this, the patch is much smaller now. |
bdd16b3
to
c04f183
Compare
@@ -117,6 +117,7 @@ class goto_trace_stept | |||
// for assume, assert, goto | |||
bool cond_value; | |||
exprt cond_expr; | |||
exprt original_condition; | |||
|
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.
The difference between original_condition
and cond_expr
is non-obvious, and does deserve a comment.
Do we really need both?
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.
I was tempted to just re-purpose cond_expr
, but it turns out it is actually used by goto-checker/bmc_util.cpp
(I believe that is the only use). cond_expr
is the SSA-renamed expression, while we'd want to provide an expression that is meaningful to the user. So maybe adding a comment is the right approach?
c04f183
to
5a0fccb
Compare
3aa8906
to
c3ebf1e
Compare
aa78d33
to
753d424
Compare
byte_extract operations precisely capture the semantics, but aren't meaningful to users.
753d424
to
fafe838
Compare
byte_extract operations precisely capture the semantics, but aren't
meaningful to users.