Commit 22b0e07
CONTRACTS: bugfix: make ptr_pred_ctx_reset_call call reset instead of init function
Fixes a copy and paste bug that results in a soundness bug.
The method ptr_pred_ctx_reset_call generated a call to the INIT
function instead of the intended RESET function, which resulted
in separation checks for the __CPROVER_is fresh memory
predicate failing to work across function calls between requires
and ensures clauses.1 parent e01fcdb commit 22b0e07
File tree
3 files changed
+26
-1
lines changed- regression/contracts-dfcc/test_is_fresh_enforce_requires_fail_separation
- src/goto-instrument/contracts/dynamic-frames
3 files changed
+26
-1
lines changedLines changed: 14 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
Lines changed: 11 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
903 | 903 | | |
904 | 904 | | |
905 | 905 | | |
906 | | - | |
| 906 | + | |
907 | 907 | | |
908 | 908 | | |
909 | 909 | | |
| |||
0 commit comments