Gap analysis — c9 in decision #845
scry-mcdc · malloc.c:4897 · branch 5948
Status: GAP
What you need
To prove condition c9 independently affects the decision, you need a row where c9 = F and the outcome differs from row 2548 (where c9 = T).
Required condition vector:
c0 = T c1 = T c2 = * c3 = * c4 = * c5 = F c6 = T c7 = * c8 = T c9 = F c10 = * c11 = * c12 = F c13 = F c14 = T c15 = * c16 = * c17 = *
Conditions marked * were short-circuited in the baseline row; the new test must drive inputs so they get evaluated to either T or F.
Suggested test stub
#[test]
fn closes_gap_d845_c9() {
// Verdict: scry-mcdc
// Source: malloc.c:4897
// Branch: 5948
//
// TODO: drive the function so condition c9 evaluates to the
// value above and the resulting decision outcome differs from
// the existing pair row.
todo!("witness viz: gap drill-down for d#845/c9");
}
After adding the test, re-run: witness instrument && witness run --invoke run_row_NEW && witness report. The condition should flip from gap to proved.