From 7c39495c3a03c5b04b4ec7cc89d1f0224f9e7099 Mon Sep 17 00:00:00 2001 From: Sebastien Tardif Date: Tue, 23 Jun 2026 22:23:55 -0700 Subject: [PATCH] lint: treat CoroutineClosure pairs as non-structural in foreign_modules Match Closure/Coroutine/CoroutineWitness arms: async-closure types are not structurally comparable for improper_ctypes / foreign module checks. Signed-off-by: Sebastien Tardif --- compiler/rustc_lint/src/foreign_modules.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/compiler/rustc_lint/src/foreign_modules.rs b/compiler/rustc_lint/src/foreign_modules.rs index 53a84d1285298..7c9f77e0a7aaf 100644 --- a/compiler/rustc_lint/src/foreign_modules.rs +++ b/compiler/rustc_lint/src/foreign_modules.rs @@ -352,6 +352,7 @@ fn structurally_same_type_impl<'tcx>( (ty::Dynamic(..), ty::Dynamic(..)) | (ty::Error(..), ty::Error(..)) | (ty::Closure(..), ty::Closure(..)) + | (ty::CoroutineClosure(..), ty::CoroutineClosure(..)) | (ty::Coroutine(..), ty::Coroutine(..)) | (ty::CoroutineWitness(..), ty::CoroutineWitness(..)) | (