diff options
Diffstat (limited to 'src/test/ui/run-pass/structs-enums/enum-discrim-range-overflow.rs')
| -rw-r--r-- | src/test/ui/run-pass/structs-enums/enum-discrim-range-overflow.rs | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/test/ui/run-pass/structs-enums/enum-discrim-range-overflow.rs b/src/test/ui/run-pass/structs-enums/enum-discrim-range-overflow.rs new file mode 100644 index 00000000000..f1306b3f08c --- /dev/null +++ b/src/test/ui/run-pass/structs-enums/enum-discrim-range-overflow.rs @@ -0,0 +1,33 @@ +// Copyright 2013 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 <LICENSE-APACHE or +// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license +// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + +// pretty-expanded FIXME #23616 + +pub enum E64 { + H64 = 0x7FFF_FFFF_FFFF_FFFF, + L64 = 0x8000_0000_0000_0000 +} +pub enum E32 { + H32 = 0x7FFF_FFFF, + L32 = 0x8000_0000 +} + +pub fn f(e64: E64, e32: E32) -> (bool,bool) { + (match e64 { + E64::H64 => true, + E64::L64 => false + }, + match e32 { + E32::H32 => true, + E32::L32 => false + }) +} + +pub fn main() { } |
