LL| |#![allow(unused_assignments, unused_variables, dead_code)] | |
LL| | | |
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 countdown = 0; | |
LL| 1| if is_true { | |
LL| 1| countdown = 10; | |
LL| 1| } | |
^0 | |
LL| | | |
LL| | mod in_mod { | |
LL| | const IN_MOD_CONST: u32 = 1000; | |
LL| | } | |
LL| | | |
LL| 3| fn in_func(a: u32) { | |
LL| 3| let b = 1; | |
LL| 3| let c = a + b; | |
LL| 3| println!("c = {}", c) | |
LL| 3| } | |
LL| | | |
LL| | struct InStruct { | |
LL| | in_struct_field: u32, | |
LL| | } | |
LL| | | |
LL| | const IN_CONST: u32 = 1234; | |
LL| | | |
LL| | trait InTrait { | |
LL| | fn trait_func(&mut self, incr: u32); | |
LL| | | |
LL| 1| fn default_trait_func(&mut self) { | |
LL| 1| in_func(IN_CONST); | |
LL| 1| self.trait_func(IN_CONST); | |
LL| 1| } | |
LL| | } | |
LL| | | |
LL| | impl InTrait for InStruct { | |
LL| 1| fn trait_func(&mut self, incr: u32) { | |
LL| 1| self.in_struct_field += incr; | |
LL| 1| in_func(self.in_struct_field); | |
LL| 1| } | |
LL| | } | |
LL| | | |
LL| | type InType = String; | |
LL| | | |
LL| 1| if is_true { | |
LL| 1| in_func(countdown); | |
LL| 1| } | |
^0 | |
LL| | | |
LL| 1| let mut val = InStruct { | |
LL| 1| in_struct_field: 101, // | |
LL| 1| }; | |
LL| 1| | |
LL| 1| val.default_trait_func(); | |
LL| 1|} | |