summaryrefslogtreecommitdiffstats
path: root/src/test/ui/lint/clashing-extern-fn-recursion.rs
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:19:03 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:19:03 +0000
commit64d98f8ee037282c35007b64c2649055c56af1db (patch)
tree5492bcf97fce41ee1c0b1cc2add283f3e66cdab0 /src/test/ui/lint/clashing-extern-fn-recursion.rs
parentAdding debian version 1.67.1+dfsg1-1. (diff)
downloadrustc-64d98f8ee037282c35007b64c2649055c56af1db.tar.xz
rustc-64d98f8ee037282c35007b64c2649055c56af1db.zip
Merging upstream version 1.68.2+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/test/ui/lint/clashing-extern-fn-recursion.rs')
-rw-r--r--src/test/ui/lint/clashing-extern-fn-recursion.rs119
1 files changed, 0 insertions, 119 deletions
diff --git a/src/test/ui/lint/clashing-extern-fn-recursion.rs b/src/test/ui/lint/clashing-extern-fn-recursion.rs
deleted file mode 100644
index ab0fd0a2e..000000000
--- a/src/test/ui/lint/clashing-extern-fn-recursion.rs
+++ /dev/null
@@ -1,119 +0,0 @@
-// check-pass
-//
-// This tests checks that clashing_extern_declarations handles types that are recursive through a
-// pointer or ref argument. See #75512.
-
-#![crate_type = "lib"]
-
-mod raw_ptr_recursion {
- mod a {
- #[repr(C)]
- struct Pointy {
- pointy: *const Pointy,
- }
-
- extern "C" {
- fn run_pointy(pointy: Pointy);
- }
- }
- mod b {
- #[repr(C)]
- struct Pointy {
- pointy: *const Pointy,
- }
-
- extern "C" {
- fn run_pointy(pointy: Pointy);
- }
- }
-}
-
-mod raw_ptr_recursion_once_removed {
- mod a {
- #[repr(C)]
- struct Pointy1 {
- pointy_two: *const Pointy2,
- }
-
- #[repr(C)]
- struct Pointy2 {
- pointy_one: *const Pointy1,
- }
-
- extern "C" {
- fn run_pointy2(pointy: Pointy2);
- }
- }
-
- mod b {
- #[repr(C)]
- struct Pointy1 {
- pointy_two: *const Pointy2,
- }
-
- #[repr(C)]
- struct Pointy2 {
- pointy_one: *const Pointy1,
- }
-
- extern "C" {
- fn run_pointy2(pointy: Pointy2);
- }
- }
-}
-
-mod ref_recursion {
- mod a {
- #[repr(C)]
- struct Reffy<'a> {
- reffy: &'a Reffy<'a>,
- }
-
- extern "C" {
- fn reffy_recursion(reffy: Reffy);
- }
- }
- mod b {
- #[repr(C)]
- struct Reffy<'a> {
- reffy: &'a Reffy<'a>,
- }
-
- extern "C" {
- fn reffy_recursion(reffy: Reffy);
- }
- }
-}
-
-mod ref_recursion_once_removed {
- mod a {
- #[repr(C)]
- struct Reffy1<'a> {
- reffy: &'a Reffy2<'a>,
- }
-
- struct Reffy2<'a> {
- reffy: &'a Reffy1<'a>,
- }
-
- extern "C" {
- #[allow(improper_ctypes)]
- fn reffy_once_removed(reffy: Reffy1);
- }
- }
- mod b {
- #[repr(C)]
- struct Reffy1<'a> {
- reffy: &'a Reffy2<'a>,
- }
-
- struct Reffy2<'a> {
- reffy: &'a Reffy1<'a>,
- }
-
- extern "C" {
- #[allow(improper_ctypes)]
- fn reffy_once_removed(reffy: Reffy1);
- }
- }
-}