Skip to content

Conversation

@tautschnig
Copy link
Collaborator

@tautschnig tautschnig commented Jul 5, 2025

Introduces comparison operators for more concise code, and deprecates exprt::is_{true,false,zero,one} in favour of these.

Please review commit-by-commit.

  • 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.
  • n/a 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/a My commit message includes data points confirming performance improvements (if claimed).
  • My PR is restricted to a single feature or bugfix.
  • n/a White-space or formatting changes outside the feature-related changed lines are in commits of their own.

@codecov
Copy link

codecov bot commented Jul 5, 2025

Codecov Report

❌ Patch coverage is 80.33827% with 93 lines in your changes missing coverage. Please review.
✅ Project coverage is 80.47%. Comparing base (724f2f7) to head (b89c75d).
⚠️ Report is 9 commits behind head on develop.

Files with missing lines Patch % Lines
src/util/std_expr.cpp 77.01% 20 Missing ⚠️
src/goto-instrument/goto_program2code.cpp 71.42% 6 Missing ⚠️
src/analyses/custom_bitvector_analysis.cpp 0.00% 5 Missing ⚠️
src/analyses/invariant_set.cpp 0.00% 5 Missing ⚠️
src/util/expr.cpp 0.00% 4 Missing ⚠️
src/goto-checker/counterexample_beautification.cpp 0.00% 3 Missing ⚠️
src/goto-instrument/dot.cpp 0.00% 3 Missing ⚠️
src/util/interval.cpp 62.50% 3 Missing ⚠️
src/util/simplify_expr.cpp 84.21% 3 Missing ⚠️
src/util/simplify_expr_int.cpp 85.00% 3 Missing ⚠️
... and 27 more
Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #8675      +/-   ##
===========================================
- Coverage    80.48%   80.47%   -0.02%     
===========================================
  Files         1698     1698              
  Lines       208477   208496      +19     
  Branches        73       73              
===========================================
- Hits        167789   167781       -8     
- Misses       40688    40715      +27     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@tautschnig tautschnig force-pushed the operator-equals branch 3 times, most recently from 98ed937 to 1770dda Compare July 9, 2025 14:29
@tautschnig tautschnig marked this pull request as ready for review July 9, 2025 14:29
@tautschnig tautschnig changed the title Operator equals operator== for exprt and bool, int, nullptr_t Jul 9, 2025
Copy link
Collaborator

@feliperodri feliperodri left a comment

Choose a reason for hiding this comment

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

Changes in the contract module LGTM.

@kroening kroening assigned peterschrammel and unassigned kroening Aug 24, 2025
Introduces comparison operators for more concise code, and deprecates
`exprt::is_{true,false,zero,one}` in favour of these.
This provides access to methods that may eventually become private.
Replaces uses of `is_true` and `is_false`.
Avoids use the newly deprecated exprt method.
Avoids use the newly deprecated exprt method.
@tautschnig tautschnig merged commit 0047c36 into diffblue:develop Oct 20, 2025
38 of 41 checks passed
@tautschnig tautschnig deleted the operator-equals branch October 20, 2025 08:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants