diff --git a/src/llvm b/src/llvm index ab85d02e84ede..d66318a4aae08 160000 --- a/src/llvm +++ b/src/llvm @@ -1 +1 @@ -Subproject commit ab85d02e84edeea59ac38505a62ec7d0536cc726 +Subproject commit d66318a4aae089bae5c3c38ee42daaa1bd8fadb7 diff --git a/src/rustllvm/llvm-auto-clean-trigger b/src/rustllvm/llvm-auto-clean-trigger index 348fb01b605ef..fd5c87db22cdb 100644 --- a/src/rustllvm/llvm-auto-clean-trigger +++ b/src/rustllvm/llvm-auto-clean-trigger @@ -1,4 +1,4 @@ # If this file is modified, then llvm will be forcibly cleaned and then rebuilt. # The actual contents of this file do not matter, but to trigger a change on the # build bots then the contents should be changed so git updates the mtime. -2014-07-20 +2014-07-21 diff --git a/src/test/run-pass/issue-15793.rs b/src/test/run-pass/issue-15793.rs new file mode 100644 index 0000000000000..a28cb87cfe245 --- /dev/null +++ b/src/test/run-pass/issue-15793.rs @@ -0,0 +1,34 @@ +// Copyright 2014 The Rust Project Developers. See the COPYRIGHT +// file at the top-level directory of this distribution and at +// http://rust-lang.org/COPYRIGHT. +// +// Licensed under the Apache License, Version 2.0 or the MIT license +// , at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + +enum NestedEnum { + First, + Second, + Third +} +enum Enum { + Variant1(bool), + Variant2(NestedEnum) +} + +#[inline(never)] +fn foo(x: Enum) -> int { + match x { + Variant1(true) => 1, + Variant1(false) => 2, + Variant2(Second) => 3, + Variant2(Third) => 4, + Variant2(First) => 5 + } +} + +fn main() { + assert_eq!(foo(Variant2(Third)), 4); +}