Skip to content
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

options for warnings/post-processing #88

Closed
4 tasks done
vogler opened this issue Jul 23, 2020 · 1 comment · Fixed by #219
Closed
4 tasks done

options for warnings/post-processing #88

vogler opened this issue Jul 23, 2020 · 1 comment · Fixed by #219
Labels
cleanup Refactoring, clean-up usability

Comments

@vogler
Copy link
Collaborator

vogler commented Jul 23, 2020

There's some weirdness with the options and code for warnings:

  • Goblintutil.may_narrow is only used to decide whether warnings/post-processing should be done and misused for it in the case of dbg.earlywarn (solver runs with may_narrow = false).
    (** Tells the spec that result may still get smaller (on narrowing).
    If this is false we can output messages and collect accesses. *)
    let may_narrow = ref true

    let do_analyze_using_solver () =
    if get_bool "dbg.earlywarn" then Goblintutil.may_narrow := false;
    let lh, gh = Stats.time "solving" (Slvr.solve entrystates []) startvars' in
  • Warnings/post-processing are done during the verification phase. With --enable noverify there are no warnings. This should be decoupled.
  • --enable noverify is weird (we have some no-... options for contexts, but those are actively changing something instead of not doing something).
  • The code in messages.ml could use some cleanup/comments.
@vogler vogler added cleanup Refactoring, clean-up usability labels Jul 23, 2020
vogler added a commit that referenced this issue Jul 23, 2020
@michael-schwarz
Copy link
Member

The refactoring of messages.ml is part of #201

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cleanup Refactoring, clean-up usability
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants