@0,1,2,3⦊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 a, mut b, mut c) = (0, 0, 0);
    if is_true⦉@0,1,2,3 @4⦊{
        a = 1;
        b = 10;
        c = 100;
    }⦉@4@5⦊‸⦉@5
    let
        @10⦊somebool⦉@10
        =
            @6⦊a < b⦉@6
        ||
            @9⦊b < c⦉@9
    ;
    let
        @14⦊somebool⦉@14
        =
            @10⦊b < a⦉@10
        ||
            @13⦊b < c⦉@13
    ;
    let @18⦊somebool⦉@18 = @14⦊a < b⦉@14 && @17⦊b < c⦉@17;
    let @22⦊somebool⦉@22 = @18⦊b < a⦉@18 && @21⦊b < c⦉@21;
    if
        @22⦊!
        is_true⦉@22
    @23⦊{
        a = 2
        ;
    }⦉@23@24⦊‸⦉@24
    if
        @25⦊is_true⦉@25
    @26⦊{
        b = 30
        ;
    }⦉@26
    else
    @27⦊{
        c = 400
        ;
    }⦉@27
    if @28⦊!is_true⦉@28 @29⦊{
        a = 2;
    }⦉@29@30⦊‸⦉@30
    if @31⦊is_true⦉@31 @32⦊{
        b = 30;
    }⦉@32 else @33⦊{
        c = 400;
    }⦉@33
}@34⦊‸⦉@34