Skip to content

Add symex-backtrace #3468

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

Merged
merged 1 commit into from
Nov 27, 2018

Conversation

smowton
Copy link
Contributor

@smowton smowton commented Nov 26, 2018

Here's a useful function, mainly for calling from the debugger or temporary debug prints, that gives a backtrace of symex's current callstack.

@smowton smowton force-pushed the smowton/feature/symex-backtrace branch from afec0df to d63e03b Compare November 26, 2018 16:20
@smowton smowton force-pushed the smowton/feature/symex-backtrace branch from d63e03b to 562dd88 Compare November 27, 2018 14:20
Copy link
Collaborator

@tautschnig tautschnig left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree that this could be useful, but it badly needs comments: neither the commit message nor the implementation provide any. As is, @romainbrenguier surely would remove it upon the next cleanup!

@smowton smowton force-pushed the smowton/feature/symex-backtrace branch from 562dd88 to 5244c74 Compare November 27, 2018 14:32
@smowton
Copy link
Contributor Author

smowton commented Nov 27, 2018

@tautschnig added

@smowton smowton assigned tautschnig and peterschrammel and unassigned smowton Nov 27, 2018
@smowton smowton force-pushed the smowton/feature/symex-backtrace branch from 5244c74 to ec32e36 Compare November 27, 2018 14:34
@smowton smowton force-pushed the smowton/feature/symex-backtrace branch from eea9959 to aa3cc82 Compare November 27, 2018 14:41
@smowton smowton force-pushed the smowton/feature/symex-backtrace branch from aa3cc82 to b34875a Compare November 27, 2018 15:08
Copy link
Contributor

@allredj allredj left a 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: b34875a).
Build URL: https://travis-ci.com/diffblue/test-gen/builds/92714166
Status will be re-evaluated on next push.
Please contact @peterschrammel, @thk123, or @allredj for support.

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 incompatibility may have been introduced by an earlier PR. In that case merging this
PR should be avoided unless it fixes the current incompatibility.

for(auto stackit = threads[source.thread_nr].call_stack.rbegin(),
stackend = threads[source.thread_nr].call_stack.rend();
stackit != stackend;
++stackit)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⛏️ I would suggest the slighly nicer:

for(const auto &frame : make_range(
    threads[source.thread_nr].call_stack.rbegin(),
    threads[source.thread_nr].call_stack.rend()))

@romainbrenguier
Copy link
Contributor

@tautschnig

I agree that this could be useful, but it badly needs comments: neither the commit message nor the implementation provide any. As is, @romainbrenguier surely would remove it upon the next cleanup!

👍

@smowton
Copy link
Contributor Author

smowton commented Nov 27, 2018

@romainbrenguier those comments have been added. Nice as ranges are, I think I'll restrict using them to when I want their mapping / filtering action, rather than just to permit c++11 syntax ;)

@smowton smowton merged commit 6d85303 into diffblue:develop Nov 27, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants