diff options
| author | Zalathar <Zalathar@users.noreply.github.com> | 2023-06-12 18:07:04 +1000 |
|---|---|---|
| committer | Zalathar <Zalathar@users.noreply.github.com> | 2023-06-28 11:09:19 +1000 |
| commit | e0625b4586c5a0f855a1157b09ae384f5de0ecf7 (patch) | |
| tree | d6f6d80e1d6b9aaec8b6340986a3e22475775651 /tests/run-coverage/issue-93054.rs | |
| parent | 22e119bbacd3aa11db04d84947b4fb2c5ccb0435 (diff) | |
| download | rust-e0625b4586c5a0f855a1157b09ae384f5de0ecf7.tar.gz rust-e0625b4586c5a0f855a1157b09ae384f5de0ecf7.zip | |
Migrate most of the existing coverage tests over to `run-coverage`
Diffstat (limited to 'tests/run-coverage/issue-93054.rs')
| -rw-r--r-- | tests/run-coverage/issue-93054.rs | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/run-coverage/issue-93054.rs b/tests/run-coverage/issue-93054.rs new file mode 100644 index 00000000000..c160b3db03f --- /dev/null +++ b/tests/run-coverage/issue-93054.rs @@ -0,0 +1,28 @@ +// Regression test for #93054: Functions using uninhabited types often only have a single, +// unreachable basic block which doesn't get instrumented. This should not cause llvm-cov to fail. +// Since these kinds functions can't be invoked anyway, it's ok to not have coverage data for them. + +// compile-flags: --edition=2021 + +enum Never { } + +impl Never { + fn foo(self) { + match self { } + make().map(|never| match never { }); + } + + fn bar(&self) { + match *self { } + } +} + +async fn foo2(never: Never) { + match never { } +} + +fn make() -> Option<Never> { + None +} + +fn main() { } |
