| //@ run-pass | |
| #![allow(unused_mut)] | |
| fn foo<T>(y: Option<T>) { | |
| let mut x: isize; | |
| let mut rs: Vec<isize> = Vec::new(); | |
| /* tests that x doesn't get put in the precondition for the | |
| entire if expression */ | |
| if true { | |
| } else { | |
| match y { | |
| None::<T> => x = 17, | |
| _ => x = 42 | |
| } | |
| rs.push(x); | |
| } | |
| return; | |
| } | |
| pub fn main() { println!("hello"); foo::<isize>(Some::<isize>(5)); } |