Skip to content

Conversation

peterschrammel
Copy link
Member

@peterschrammel peterschrammel commented Dec 16, 2018

This is going to replace all_properties (can be instantiated with any incremental_goto_checkert: multi-path and single-path will come next).

Based on #3584, only review last 3 commits.

  • Each commit message has a non-empty body, explaining why the change was made.
  • Methods or procedures I have added are documented, following the guidelines provided in CODING_STANDARD.md.
  • The feature or user visible behaviour I have added or modified has been documented in the User Guide in doc/cprover-manual/
  • Regression or unit tests are included, or existing tests cover the modified code (in this case I have detailed which ones those are in the commit message).
  • [n/1] My commit message includes data points confirming performance improvements (if claimed).
  • My PR is restricted to a single feature or bugfix.
  • White-space or formatting changes outside the feature-related changed lines are in commits of their own.

@peterschrammel peterschrammel changed the title All-properties verifier [depends: 3585] All-properties verifier [depends: 3584] Dec 16, 2018
@peterschrammel peterschrammel force-pushed the all-properties-verifier branch from 2c3ed7f to 3d5e246 Compare December 17, 2018 10:40
// then overall it's still a PASS.
if(
result == property_resultt::NOT_REACHED ||
result == property_resultt::NOT_REACHABLE)
Copy link
Collaborator

Choose a reason for hiding this comment

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

Since we do distinguish NOT_REACHED from NOT_REACHABLE, shouldn't the former yield UNKNOWN?

const optionst &options,
ui_message_handlert &ui_message_handler,
abstract_goto_modelt &goto_model)
: goto_verifiert(options, ui_message_handler),
Copy link
Collaborator

Choose a reason for hiding this comment

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

Is this actually used in any way?

To count how many properties have a certain status.
This will be used in property reporting.
Plain text, XML and JSON output for property results.
Prints the property report in plain text, JSON or XML.
@peterschrammel peterschrammel force-pushed the all-properties-verifier branch 2 times, most recently from 615786a to 1f2b8c5 Compare January 13, 2019 17:11
@peterschrammel peterschrammel changed the title All-properties verifier [depends: 3584] All-properties verifier [depends: 3584, blocks: 3794] Jan 13, 2019
@peterschrammel peterschrammel force-pushed the all-properties-verifier branch from 1f2b8c5 to 407b527 Compare January 13, 2019 20:26
goto_model(goto_model),
incremental_goto_checker(options, ui_message_handler, goto_model)
{
properties = std::move(initialize_properties(goto_model));
Copy link
Collaborator

Choose a reason for hiding this comment

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

I think you don't need std::move with an unnamed temporary, but I could be wrong.

Copy link
Member Author

Choose a reason for hiding this comment

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

Yes, this should work without move; there is only a single allocation site in the callee.

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.

✔️
Passed Diffblue compatibility checks (cbmc commit: 407b527).
Build URL: https://travis-ci.com/diffblue/test-gen/builds/97175651

@peterschrammel peterschrammel force-pushed the all-properties-verifier branch from 407b527 to 7ea25b5 Compare January 13, 2019 22:35
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.

✔️
Passed Diffblue compatibility checks (cbmc commit: 7ea25b5).
Build URL: https://travis-ci.com/diffblue/test-gen/builds/97180336

Enable consistent result-dependent exit codes across all
driver programs.
Enable consistent overall status reporting
across all driver programs.
Used to update the properties map and
to compute the overall result.
This will replace bmc_all_propertiest.
@peterschrammel peterschrammel force-pushed the all-properties-verifier branch from 7ea25b5 to c61ca64 Compare January 14, 2019 00:44
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.

✔️
Passed Diffblue compatibility checks (cbmc commit: c61ca64).
Build URL: https://travis-ci.com/diffblue/test-gen/builds/97183649

@tautschnig tautschnig merged commit 73ebbb4 into diffblue:develop Jan 14, 2019
@peterschrammel peterschrammel deleted the all-properties-verifier branch January 14, 2019 09:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants