Closed salvadorer closed 1 week ago
That's indeed true, see #5866: we might revisit this at some point, but until then please redefine the assert
macro like this:
#undef assert
#define assert(C) __CPROVER_assert((C), "assertion"); __CPROVER_assume(C)
@salvadorer Just for interest, this is why they don't alter the path condition:
https://github.com/diffblue/cbmc/pull/2031 https://github.com/diffblue/cbmc/commit/92b92d6032d4f0492603d2f85db5b52d6798b04c
I'm still reasonably convinced this is the correct design decision.
Closing as this is documented behaviour.
Hey, I'm working with CBMC 5.95.1 and I noticed that CBMC does not add asserted conditions to the path conditions. For e.g.:
CBMC would report a warning about both assertions but there's actually no value for x that can trigger the second assertion.