about summary refs log tree commit diff
path: root/tests/codegen-llvm/debuginfo-cyclic-structure.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/codegen-llvm/debuginfo-cyclic-structure.rs')
-rw-r--r--tests/codegen-llvm/debuginfo-cyclic-structure.rs32
1 files changed, 0 insertions, 32 deletions
diff --git a/tests/codegen-llvm/debuginfo-cyclic-structure.rs b/tests/codegen-llvm/debuginfo-cyclic-structure.rs
deleted file mode 100644
index b8cc5447741..00000000000
--- a/tests/codegen-llvm/debuginfo-cyclic-structure.rs
+++ /dev/null
@@ -1,32 +0,0 @@
-//@ compile-flags:-g -Copt-level=0 -C panic=abort
-
-// Check that debug information exists for structures containing loops (cyclic references).
-// Previously it may incorrectly prune member information during recursive type inference check.
-
-// CHECK: !DICompositeType(tag: DW_TAG_structure_type, name: "Arc<debuginfo_cyclic_structure::Inner<alloc::sync::Arc<debuginfo_cyclic_structure::Handle{{.*}}elements: ![[FIELDS:[0-9]+]]
-// CHECK: ![[FIELDS]] = !{!{{.*}}}
-// CHECK-NOT: ![[FIELDS]] = !{}
-
-#![crate_type = "lib"]
-
-use std::mem::MaybeUninit;
-use std::sync::Arc;
-
-struct Inner<T> {
-    buffer: Box<MaybeUninit<T>>,
-}
-struct Shared {
-    shared: Arc<Inner<Arc<Handle>>>,
-}
-struct Handle {
-    shared: Shared,
-}
-struct Core {
-    inner: Arc<Inner<Arc<Handle>>>,
-}
-
-#[no_mangle]
-extern "C" fn test() {
-    let с = Core { inner: Arc::new(Inner { buffer: Box::new(MaybeUninit::uninit()) }) };
-    std::hint::black_box(с);
-}