From 1e79d05ac0257d4d66bf751013a0bb0c2964c069 Mon Sep 17 00:00:00 2001 From: Corey Farwell Date: Mon, 17 Aug 2015 09:36:03 -0400 Subject: [PATCH] Add regression tests for #23304 Closes #23304 --- src/test/run-pass/issue-23304-1.rs | 34 ++++++++++++++++++++++++++++++ src/test/run-pass/issue-23304-2.rs | 17 +++++++++++++++ 2 files changed, 51 insertions(+) create mode 100644 src/test/run-pass/issue-23304-1.rs create mode 100644 src/test/run-pass/issue-23304-2.rs diff --git a/src/test/run-pass/issue-23304-1.rs b/src/test/run-pass/issue-23304-1.rs new file mode 100644 index 0000000000000..ec6cf5a5628dc --- /dev/null +++ b/src/test/run-pass/issue-23304-1.rs @@ -0,0 +1,34 @@ +// Copyright 2015 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. + +#![allow(dead_code)] + +#[repr(u8)] +#[allow(dead_code)] +enum ValueType { + DOUBLE = 0x00, + INT32 = 0x01, +} + +#[repr(u32)] +enum ValueTag { + INT32 = 0x1FFF0u32 | (ValueType::INT32 as u32), + X, +} + +#[repr(u64)] +enum ValueShiftedTag { + INT32 = ValueTag::INT32 as u64, + X, +} + +fn main() { + println!("{}", ValueTag::INT32 as u32); +} diff --git a/src/test/run-pass/issue-23304-2.rs b/src/test/run-pass/issue-23304-2.rs new file mode 100644 index 0000000000000..79712f7c25e12 --- /dev/null +++ b/src/test/run-pass/issue-23304-2.rs @@ -0,0 +1,17 @@ +// Copyright 2015 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. + +#![allow(dead_code)] + +enum X { A = 0 as isize } + +enum Y { A = X::A as isize } + +fn main() { }