diff options
Diffstat (limited to 'tests/ui/binding/match-join.rs')
-rw-r--r-- | tests/ui/binding/match-join.rs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/ui/binding/match-join.rs b/tests/ui/binding/match-join.rs new file mode 100644 index 000000000..60f2a4584 --- /dev/null +++ b/tests/ui/binding/match-join.rs @@ -0,0 +1,20 @@ +// 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)); } |