about summary refs log tree commit diff
path: root/src/test/run-pass
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2019-06-25 15:12:11 +0000
committerbors <bors@rust-lang.org>2019-06-25 15:12:11 +0000
commit303f77ee1d60e1b351ff6478143dd866403c27f5 (patch)
tree349f1f0c4084a7097d55dac1840a42d3ecad6349 /src/test/run-pass
parent40ab9d2bd57a2203131abd723f7120e960299fae (diff)
parentac98342e846e79985f0c4969a2d546dee24a70d1 (diff)
Auto merge of #60732 - jswrenn:arbitrary_enum_discriminant, r=pnkfelix
Implement arbitrary_enum_discriminant

Implements RFC rust-lang/rfcs#2363 (tracking issue #60553).
Diffstat (limited to 'src/test/run-pass')
-rw-r--r--src/test/run-pass/discriminant_value-wrapper.rs15
-rw-r--r--src/test/run-pass/discriminant_value.rs68
2 files changed, 0 insertions, 83 deletions
diff --git a/src/test/run-pass/discriminant_value-wrapper.rs b/src/test/run-pass/discriminant_value-wrapper.rs
deleted file mode 100644
index 1fb0d1edddf..00000000000
--- a/src/test/run-pass/discriminant_value-wrapper.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-use std::mem;
-
-enum ADT {
-    First(u32, u32),
-    Second(u64)
-}
-
-pub fn main() {
-    assert!(mem::discriminant(&ADT::First(0,0)) == mem::discriminant(&ADT::First(1,1)));
-    assert!(mem::discriminant(&ADT::Second(5))  == mem::discriminant(&ADT::Second(6)));
-    assert!(mem::discriminant(&ADT::First(2,2)) != mem::discriminant(&ADT::Second(2)));
-
-    let _ = mem::discriminant(&10);
-    let _ = mem::discriminant(&"test");
-}
diff --git a/src/test/run-pass/discriminant_value.rs b/src/test/run-pass/discriminant_value.rs
deleted file mode 100644
index 162ab27cdff..00000000000
--- a/src/test/run-pass/discriminant_value.rs
+++ /dev/null
@@ -1,68 +0,0 @@
-#![allow(stable_features)]
-#![feature(core, core_intrinsics)]
-
-extern crate core;
-use core::intrinsics::discriminant_value;
-
-enum CLike1 {
-    A,
-    B,
-    C,
-    D
-}
-
-enum CLike2 {
-    A = 5,
-    B = 2,
-    C = 19,
-    D
-}
-
-#[repr(i8)]
-enum CLike3 {
-    A = 5,
-    B,
-    C = -1,
-    D
-}
-
-enum ADT {
-    First(u32, u32),
-    Second(u64)
-}
-
-enum NullablePointer {
-    Something(&'static u32),
-    Nothing
-}
-
-static CONST : u32 = 0xBEEF;
-
-pub fn main() {
-    unsafe {
-
-        assert_eq!(discriminant_value(&CLike1::A), 0);
-        assert_eq!(discriminant_value(&CLike1::B), 1);
-        assert_eq!(discriminant_value(&CLike1::C), 2);
-        assert_eq!(discriminant_value(&CLike1::D), 3);
-
-        assert_eq!(discriminant_value(&CLike2::A), 5);
-        assert_eq!(discriminant_value(&CLike2::B), 2);
-        assert_eq!(discriminant_value(&CLike2::C), 19);
-        assert_eq!(discriminant_value(&CLike2::D), 20);
-
-        assert_eq!(discriminant_value(&CLike3::A), 5);
-        assert_eq!(discriminant_value(&CLike3::B), 6);
-        assert_eq!(discriminant_value(&CLike3::C), -1_i8 as u64);
-        assert_eq!(discriminant_value(&CLike3::D), 0);
-
-        assert_eq!(discriminant_value(&ADT::First(0,0)), 0);
-        assert_eq!(discriminant_value(&ADT::Second(5)), 1);
-
-        assert_eq!(discriminant_value(&NullablePointer::Nothing), 1);
-        assert_eq!(discriminant_value(&NullablePointer::Something(&CONST)), 0);
-
-        assert_eq!(discriminant_value(&10), 0);
-        assert_eq!(discriminant_value(&"test"), 0);
-    }
-}