Derived Eq no longer shows uncovered
The Eq trait has a special hidden function. MIR `InstrumentCoverage` would add this function to the coverage map, but it is never called, so the `Eq` trait would always appear uncovered. Fixes: #83601 The fix required creating a new function attribute `no_coverage` to mark functions that should be ignored by `InstrumentCoverage` and the coverage `mapgen` (during codegen). While testing, I also noticed two other issues: * spanview debug file output ICEd on a function with no body. The workaround for this is included in this PR. * `assert_*!()` macro coverage can appear covered if followed by another `assert_*!()` macro. Normally they appear uncovered. I submitted a new Issue #84561, and added a coverage test to demonstrate this issue.
This commit is contained in:
parent
1919b3f227
commit
888d0b4c96
13 changed files with 119 additions and 2 deletions
|
@ -781,6 +781,7 @@ symbols! {
|
|||
no,
|
||||
no_builtins,
|
||||
no_core,
|
||||
no_coverage,
|
||||
no_crate_inject,
|
||||
no_debug,
|
||||
no_default_passes,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue