about summary refs log tree commit diff
path: root/library/std/src/sys/unix/stack_overflow.rs
diff options
context:
space:
mode:
authorGuillaume Gomez <guillaume1.gomez@gmail.com>2020-12-15 16:43:23 +0100
committerGitHub <noreply@github.com>2020-12-15 16:43:23 +0100
commit5de0c5f63f11e4ec283841fb98d24c00e3e02bd8 (patch)
tree6772adc1cc55027ea535f2e9e2d711d1fa655929 /library/std/src/sys/unix/stack_overflow.rs
parentbfe49a0aa3a6cbcdbf291313e1765f5c8408b6e8 (diff)
parent36c639a2ce2808c2c95cacf0856026235ad6350f (diff)
downloadrust-5de0c5f63f11e4ec283841fb98d24c00e3e02bd8.tar.gz
rust-5de0c5f63f11e4ec283841fb98d24c00e3e02bd8.zip
Rollup merge of #79958 - richkadel:llvm-coverage-counters-2.2.0, r=tmandry
Fixes reported bugs in Rust Coverage

Fixes: #79569

Fixes: #79566
Fixes: #79565

For the first issue (#79569), I got hit a `debug_assert!()` before
encountering the reported error message (because I have `debug = true`
enabled in my config.toml).

The assertion showed me that some `SwitchInt`s can have more than one
target pointing to the same `BasicBlock`.

I had thought that was invalid, but since it seems to be possible, I'm
allowing this now.

I added a new test for this.

----

In the last two cases above, both tests (intentionally) fail to compile,
but the `InstrumentCoverage` pass is invoked anyway.

The MIR starts with an `Unreachable` `BasicBlock`, which I hadn't
encountered before. (I had assumed the `InstrumentCoverage` pass
would only be invoked with MIRs from successful compilations.)

I don't have test infrastructure set up to test coverage on files that
fail to compile, so I didn't add a new test.

r? `@tmandry`
FYI: `@wesleywiser`
Diffstat (limited to 'library/std/src/sys/unix/stack_overflow.rs')
0 files changed, 0 insertions, 0 deletions