mirror of
				https://github.com/rust-lang/rust.git
				synced 2025-10-31 04:57:19 +00:00 
			
		
		
		
	 f1494425bb
			
		
	
	
		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.
		
			
				
	
	
		
			66 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
|    LL|       |#![allow(unused_assignments, unused_variables)]
 | |
|    LL|       |
 | |
|    LL|       |#[rustfmt::skip]
 | |
|    LL|      1|fn main() {
 | |
|    LL|      1|    // Initialize test constants in a way that cannot be determined at compile time, to ensure
 | |
|    LL|      1|    // rustc and LLVM cannot optimize out statements (or coverage counters) downstream from
 | |
|    LL|      1|    // dependent conditions.
 | |
|    LL|      1|    let is_true = std::env::args().len() == 1;
 | |
|    LL|      1|
 | |
|    LL|      1|    let (mut a, mut b, mut c) = (0, 0, 0);
 | |
|    LL|      1|    if is_true {
 | |
|    LL|      1|        a = 1;
 | |
|    LL|      1|        b = 10;
 | |
|    LL|      1|        c = 100;
 | |
|    LL|      1|    }
 | |
|                    ^0
 | |
|    LL|       |    let
 | |
|    LL|      1|        somebool
 | |
|    LL|       |        =
 | |
|    LL|      1|            a < b
 | |
|    LL|       |        ||
 | |
|    LL|      0|            b < c
 | |
|    LL|       |    ;
 | |
|    LL|       |    let
 | |
|    LL|      1|        somebool
 | |
|    LL|       |        =
 | |
|    LL|      1|            b < a
 | |
|    LL|       |        ||
 | |
|    LL|      1|            b < c
 | |
|    LL|       |    ;
 | |
|    LL|      1|    let somebool = a < b && b < c;
 | |
|    LL|      1|    let somebool = b < a && b < c;
 | |
|                                           ^0
 | |
|    LL|       |
 | |
|    LL|       |    if
 | |
|    LL|      1|        !
 | |
|    LL|      1|        is_true
 | |
|    LL|      0|    {
 | |
|    LL|      0|        a = 2
 | |
|    LL|      0|        ;
 | |
|    LL|      1|    }
 | |
|    LL|       |
 | |
|    LL|       |    if
 | |
|    LL|      1|        is_true
 | |
|    LL|      1|    {
 | |
|    LL|      1|        b = 30
 | |
|    LL|      1|        ;
 | |
|    LL|      1|    }
 | |
|    LL|       |    else
 | |
|    LL|      0|    {
 | |
|    LL|      0|        c = 400
 | |
|    LL|      0|        ;
 | |
|    LL|      0|    }
 | |
|    LL|       |
 | |
|    LL|      1|    if !is_true {
 | |
|    LL|      0|        a = 2;
 | |
|    LL|      1|    }
 | |
|    LL|       |
 | |
|    LL|      1|    if is_true {
 | |
|    LL|      1|        b = 30;
 | |
|    LL|      1|    } else {
 | |
|    LL|      0|        c = 400;
 | |
|    LL|      0|    }
 | |
|    LL|      1|}
 | |
| 
 |