]> git.lizzy.rs Git - rust.git/commit
report the total number of errors on compilation failure
authorAriel Ben-Yehuda <ariel.byd@gmail.com>
Sun, 2 Jul 2017 13:09:09 +0000 (16:09 +0300)
committerAriel Ben-Yehuda <ariel.byd@gmail.com>
Sun, 2 Jul 2017 13:16:44 +0000 (16:16 +0300)
commitfb7ab9e43da3727e1c58faf9451857968270dc77
tree43004d23a2422101e39889d65d0b9cb34d2a4a68
parent77f40223033bf0c744eb8b4edb07672c13a21557
report the total number of errors on compilation failure

Prior to this PR, when we aborted because a "critical pass" failed, we
displayed the number of errors from that critical pass. While that's the
number of errors that caused compilation to abort in *that place*,
that's not what people really want to know. Instead, always report the
total number of errors, and don't bother to track the number of errors
from the last pass that failed.

This changes the compiler driver API to handle errors more smoothly,
and therefore is a compiler-api-[breaking-change].

Fixes #42793.
61 files changed:
src/librustc/middle/resolve_lifetime.rs
src/librustc/session/mod.rs
src/librustc_driver/driver.rs
src/librustc_driver/lib.rs
src/librustc_passes/static_recursion.rs
src/librustc_typeck/check/mod.rs
src/librustc_typeck/lib.rs
src/librustdoc/test.rs
src/test/run-make/llvm-phase/test.rs
src/test/ui/block-result/block-must-not-have-result-do.stderr
src/test/ui/block-result/block-must-not-have-result-res.stderr
src/test/ui/block-result/block-must-not-have-result-while.stderr
src/test/ui/block-result/consider-removing-last-semi.stderr
src/test/ui/block-result/issue-11714.stderr
src/test/ui/block-result/issue-13428.stderr
src/test/ui/block-result/issue-13624.stderr
src/test/ui/block-result/issue-20862.stderr
src/test/ui/block-result/issue-22645.stderr
src/test/ui/block-result/issue-3563.stderr
src/test/ui/block-result/issue-5500.stderr
src/test/ui/block-result/unexpected-return-on-unit.stderr
src/test/ui/closure_context/issue-26046-fn-mut.stderr
src/test/ui/closure_context/issue-26046-fn-once.stderr
src/test/ui/coercion-missing-tail-expected-type.stderr
src/test/ui/did_you_mean/issue-40006.stderr
src/test/ui/did_you_mean/trait-object-reference-without-parens-suggestion.stderr
src/test/ui/impl-trait/issue-21659-show-relevant-trait-impls-3.stderr
src/test/ui/impl-trait/method-suggestion-no-duplication.stderr
src/test/ui/impl-trait/no-method-suggested-traits.stderr
src/test/ui/impl-trait/trait_type.stderr
src/test/ui/interior-mutability/interior-mutability.stderr
src/test/ui/issue-22644.stderr
src/test/ui/issue-26548.stderr
src/test/ui/issue-33525.rs [new file with mode: 0644]
src/test/ui/issue-33525.stderr [new file with mode: 0644]
src/test/ui/issue-38875/issue_38875.stderr
src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-2.stderr
src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-3.stderr
src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl-2.stderr
src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl-3.stderr
src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl.stderr
src/test/ui/lifetime-errors/ex1-return-one-existing-name-return-type-is-anon.stderr
src/test/ui/lifetime-errors/ex1-return-one-existing-name-self-is-anon.stderr
src/test/ui/lifetime-errors/ex2a-push-one-existing-name-2.stderr
src/test/ui/lint/outer-forbid.stderr
src/test/ui/mismatched_types/E0281.stderr
src/test/ui/mismatched_types/E0409.stderr
src/test/ui/mismatched_types/binops.stderr
src/test/ui/mismatched_types/closure-arg-count.stderr
src/test/ui/mismatched_types/for-loop-has-unit-body.stderr
src/test/ui/mismatched_types/issue-36053-2.stderr
src/test/ui/mismatched_types/unboxed-closures-vtable-mismatch.stderr
src/test/ui/missing-items/m2.stderr
src/test/ui/resolve/token-error-correct-3.stderr
src/test/ui/shadowed-type-parameter.stderr
src/test/ui/span/impl-wrong-item-for-trait.stderr
src/test/ui/span/issue-34264.stderr
src/test/ui/transmute/main.stderr
src/test/ui/transmute/transmute-from-fn-item-types-error.stderr
src/test/ui/transmute/transmute-type-parameters.stderr
src/test/ui/type-check/assignment-in-if.stderr