Negative coverage: borrow_check_expr / multiplication / premise borrow_check_expr(env, assumptions, state, expr, places_live_on_exit) => (ty, state)
Premise at line 390. Observed failure causes: failed_judgment.
multiplication| Line | Coverage | Source |
|---|---|---|
| 389 | N/A | (let expr = Expr::BinOp { lhs: lhs.clone(), op: BinOpKind::Mul, rhs: rhs.clone() }) |
| 390 | 2 | (borrow_check_expr(env, assumptions, state, expr, places_live_on_exit) => (ty, state)) |
| ──────── ("multiplication") | ||
| 392 | 7 | (borrow_check_expr(env, assumptions, state, Expr::Mul { lhs, rhs }, places_live_on_exit) => (ty, state)) |
2 tests failed proving this premise:
Source location: tests/mir_typeck.rs:1323 (all coverage from this test)
fn foo() -> () {
let x: i32 = 3_i32 * 4_u32;
}
Failed proof tree
check_all_crates failedmod.rs:42args
rule "check all prefixes"mod.rs:54check_crate failedmod.rs:61args
rule "check crate"mod.rs:74check_crate_item failedmod.rs:179rule "free fn"mod.rs:207check_free_fn failedfns.rs:14args
rule "check free fn"fns.rs:24check_fn failedfns.rs:31args
rule "check fn"fns.rs:54check_fn_body failedfns.rs:61args
rule "expr fn body"fns.rs:89borrow_check failednll.rs:124args
rule "borrow_check"nll.rs:135borrow_check_block failednll.rs:142rule "basic block"nll.rs:157borrow_check_statement failednll.rs:174args
rule "let"nll.rs:189borrow_check_expr_has_ty failednll.rs:350args
rule "block"nll.rs:363borrow_check_expr failednll.rs:371args
rule "multiplication"nll.rs:390borrow_check_expr failednll.rs:371rule "binop"nll.rs:488borrow_check_expr_has_ty failednll.rs:350args
rule "block"nll.rs:364prove_assignable failednll.rs:1132args
rule "subtype"nll.rs:1150prove failedfunction.rs:250args
rulefunction.rs:250prove_predicate_list failedprove_predicate_list.rs:8args
rule "some"prove_predicate_list.rs:26prove_predicate failedprove_predicate.rs:22args
rule "subtype"prove_predicate.rs:121prove_sub failedprove_sub.rs:12args
rule "normalize-l"prove_sub.rs:27prove_normalize failedprove_normalize.rs:22args
rule "normalize-r"prove_sub.rs:34prove_normalize failedprove_normalize.rs:22args
Source location: tests/mir_typeck.rs:1349 (all coverage from this test)
fn foo() -> () {
let x: bool = true * false;
}
Failed proof tree
check_all_crates failedmod.rs:42args
rule "check all prefixes"mod.rs:54check_crate failedmod.rs:61args
rule "check crate"mod.rs:74check_crate_item failedmod.rs:179rule "free fn"mod.rs:207check_free_fn failedfns.rs:14args
rule "check free fn"fns.rs:24check_fn failedfns.rs:31args
rule "check fn"fns.rs:54check_fn_body failedfns.rs:61args
rule "expr fn body"fns.rs:89borrow_check failednll.rs:124args
rule "borrow_check"nll.rs:135borrow_check_block failednll.rs:142rule "basic block"nll.rs:157borrow_check_statement failednll.rs:174args
rule "let"nll.rs:189borrow_check_expr_has_ty failednll.rs:350args
rule "block"nll.rs:363borrow_check_expr failednll.rs:371args
rule "multiplication"nll.rs:390borrow_check_expr failednll.rs:371rule "binop"nll.rs:487 (failed: if_false)