72b721f48e
When one of these tests fails, any compiler warnings will be printed to the console, which makes it harder to track down the actual reason for failure. (The outstanding warnings were found by temporarily adding `-Dwarnings` to the compiler arguments for `RunCoverage` in `src/tools/compiletest/src/runtest.rs`.)
32 lines
1.0 KiB
Plaintext
32 lines
1.0 KiB
Plaintext
LL| |#![allow(dead_code, unreachable_code)]
|
|
LL| |
|
|
LL| |// Regression test for #93054: Functions using uninhabited types often only have a single,
|
|
LL| |// unreachable basic block which doesn't get instrumented. This should not cause llvm-cov to fail.
|
|
LL| |// Since these kinds functions can't be invoked anyway, it's ok to not have coverage data for them.
|
|
LL| |
|
|
LL| |// compile-flags: --edition=2021
|
|
LL| |
|
|
LL| |enum Never { }
|
|
LL| |
|
|
LL| |impl Never {
|
|
LL| | fn foo(self) {
|
|
LL| | match self { }
|
|
LL| | make().map(|never| match never { });
|
|
LL| | }
|
|
LL| |
|
|
LL| | fn bar(&self) {
|
|
LL| | match *self { }
|
|
LL| | }
|
|
LL| |}
|
|
LL| |
|
|
LL| 0|async fn foo2(never: Never) {
|
|
LL| | match never { }
|
|
LL| |}
|
|
LL| |
|
|
LL| 0|fn make() -> Option<Never> {
|
|
LL| 0| None
|
|
LL| 0|}
|
|
LL| |
|
|
LL| 1|fn main() { }
|
|
|