tests/compiler --both-settings and the clippy 1.99.1 cold build. Of the turns, about 8 went to reading the checker to find the existing got_past_a_jump set, its readers, and the place lent_lets is cleared. Smaller losses:
catch e { .. } is wrong syntax; the caught value is the implicit error.load(input; limits: ..) failed with no default. “Defaults written out” turned out to mean putting the default into the signature as a literal.owned(a: A) row that failed for an unrelated reason.got_past_a_jump and check_core_stmt_got, so lent_list_reads / lent_lets would have been ruled out from the start. The suspected spot (check_core_flow_through_a_view) was correct.MatchPattern / Expr::Match shapes in ast.nika.catch block binds the implicit error.load from a scratch main.lower-std / build / lower-std cycle, with no fixpoint rebuild needed;it view tests, fmt, clippy 1.97, pre-push-check.sh, clippy 1.99.1, and tests/compiler.None was really wasted. The clippy 1.99.1 run was the weakest: the only Rust that changed was lowered code, whose lints are already allowed, and it cost a 650 MB cold build. One more slip: a grep of the newest run cache showed a stale entry and told me nothing.
builder-facts.md, add a line: “a change that touches only tools/*.nika and lowered/*.rs skips the newer-clippy run (lowered lints are allowed)”. After that comes a short Nikaia syntax crib in the facts: catch { error }, binding patterns are MatchPattern::Path([x]), and an option after ; needs a default literal in a scratch run.