mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-24 07:44:10 +00:00
f1494425bb
These tests deliberately use non-standard formatting, so that the line execution counts reported by `llvm-cov` reveal additional information about where code regions begin and end.
42 lines
741 B
Rust
42 lines
741 B
Rust
#![allow(unused_assignments, unused_variables)]
|
|
|
|
#[rustfmt::skip]
|
|
fn main() {
|
|
// Initialize test constants in a way that cannot be determined at compile time, to ensure
|
|
// rustc and LLVM cannot optimize out statements (or coverage counters) downstream from
|
|
// dependent conditions.
|
|
let is_true = std::env::args().len() == 1;
|
|
|
|
let mut countdown = 0;
|
|
if
|
|
is_true
|
|
{
|
|
countdown
|
|
=
|
|
10
|
|
;
|
|
}
|
|
else // Note coverage region difference without semicolon
|
|
{
|
|
countdown
|
|
=
|
|
100
|
|
}
|
|
|
|
if
|
|
is_true
|
|
{
|
|
countdown
|
|
=
|
|
10
|
|
;
|
|
}
|
|
else
|
|
{
|
|
countdown
|
|
=
|
|
100
|
|
;
|
|
}
|
|
}
|