-
Notifications
You must be signed in to change notification settings - Fork 274
Fix & enable irept pretty-printer #5031
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
Fix & enable irept pretty-printer #5031
Conversation
AFAICT this doesn't print the
? Will definitely give this a play though! |
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: 6e96ad5).
Build URL: https://travis-ci.com/diffblue/test-gen/builds/123400062
I'm going to make it so that it goes child: {id}, so:
Means we can drop the fake child element, condense the tree a little and also add the missing info back in. Will make things much clearer, even if we are abusing the heck out of the pretty-printer at this stage. |
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 but can we see the output in plain old GDB before approving?
# If we have no children it means we're actually a value node, so | ||
# return the value of the node and a throw-away second value. | ||
if sub_count == 0 and named_sub_count == 0: | ||
yield (self.to_string(), self.val) |
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.
Why not just not return any children?
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.
It needed this originally, doesn't anymore so has been removed.
6e96ad5
to
350ec40
Compare
Pushed a change that means we get a more succinct tree in CLion, like so: (Nodes with But as the pretty-printer is an array it makes the
I'll try the map quickly and see if that can work, but I really like the way it looks right now. |
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: 350ec40).
Build URL: https://travis-ci.com/diffblue/test-gen/builds/123501029
Codecov Report
@@ Coverage Diff @@
## develop #5031 +/- ##
========================================
Coverage 69.71% 69.71%
========================================
Files 1322 1322
Lines 109429 109429
========================================
Hits 76287 76287
Misses 33142 33142
Continue to review full report at Codecov.
|
I've added the option to switch between GDB/CLion pretty-printing mode as I didn't want to sacrifice either view. Example of the CLion mode is above, this is what GDB mode looks like:
|
350ec40
to
c749cd4
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.
✔️
Passed Diffblue compatibility checks (cbmc commit: c749cd4).
Build URL: https://travis-ci.com/diffblue/test-gen/builds/123508581
@@ -0,0 +1,3 @@ | |||
{ | |||
"clion_pretty_printers": true | |||
} |
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.
Missing newline 😄
c749cd4
to
08b703a
Compare
@thk123 Can I get an approval please, want to merge this soon. Owens been helping me test, and I've been able to use it personally for a few days and seems solid enough for general use. Three things that are still on the to-do at this point:
|
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.
08b703a
to
bfd2313
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.
✔️
Passed Diffblue compatibility checks (cbmc commit: bfd2313).
Build URL: https://travis-ci.com/diffblue/test-gen/builds/128316637
c6f2844
to
3a344a4
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: c6f2844).
Build URL: https://travis-ci.com/diffblue/test-gen/builds/128327640
Status will be re-evaluated on next push.
Common spurious failures include: 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); compatibility was already broken by an earlier merge.
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: 3a344a4).
Build URL: https://travis-ci.com/diffblue/test-gen/builds/128331097
Makes minor changes to the existing irept pretty-printer to make it work in CLion and then enable it. Marked as do-not-merge for now as I start using it locally to make sure there's no obvious problems.