summaryrefslogtreecommitdiffstats
path: root/src/test/codegen/enum-debug-niche-2.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/codegen/enum-debug-niche-2.rs')
-rw-r--r--src/test/codegen/enum-debug-niche-2.rs50
1 files changed, 0 insertions, 50 deletions
diff --git a/src/test/codegen/enum-debug-niche-2.rs b/src/test/codegen/enum-debug-niche-2.rs
deleted file mode 100644
index 9c72ad9d2..000000000
--- a/src/test/codegen/enum-debug-niche-2.rs
+++ /dev/null
@@ -1,50 +0,0 @@
-// This tests that optimized enum debug info accurately reflects the enum layout.
-// This is ignored for the fallback mode on MSVC due to problems with PDB.
-
-//
-// ignore-msvc
-
-// compile-flags: -g -C no-prepopulate-passes
-
-// CHECK: {{.*}}DICompositeType{{.*}}tag: DW_TAG_variant_part,{{.*}}size: 32,{{.*}}
-// CHECK: {{.*}}DIDerivedType{{.*}}tag: DW_TAG_member,{{.*}}name: "Placeholder",{{.*}}extraData: i64 4294967295{{[,)].*}}
-// CHECK: {{.*}}DIDerivedType{{.*}}tag: DW_TAG_member,{{.*}}name: "Error",{{.*}}extraData: i64 0{{[,)].*}}
-
-#![feature(never_type)]
-
-#[derive(Copy, Clone)]
-pub struct Entity {
- private: std::num::NonZeroU32,
-}
-
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct Declaration;
-
-impl TypeFamily for Declaration {
- type Base = Base;
- type Placeholder = !;
-
- fn intern_base_data(_: BaseKind<Self>) {}
-}
-
-#[derive(Copy, Clone)]
-pub struct Base;
-
-pub trait TypeFamily: Copy + 'static {
- type Base: Copy;
- type Placeholder: Copy;
-
- fn intern_base_data(_: BaseKind<Self>);
-}
-
-#[derive(Copy, Clone)]
-pub enum BaseKind<F: TypeFamily> {
- Named(Entity),
- Placeholder(F::Placeholder),
- Error,
-}
-
-pub fn main() {
- let x = BaseKind::Error::<Declaration>;
- let y = 7;
-}