From f7cae4ffb52aa2238ebe90b418069bdb36749e9d Mon Sep 17 00:00:00 2001 From: Micha Reiser Date: Fri, 2 May 2025 22:19:03 +0200 Subject: [PATCH] [red-knot] Don't panic when `primary-span` is missing while panicking (#17799) --- crates/red_knot_python_semantic/src/types/context.rs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/crates/red_knot_python_semantic/src/types/context.rs b/crates/red_knot_python_semantic/src/types/context.rs index 36e1e919f5..37d16c9f22 100644 --- a/crates/red_knot_python_semantic/src/types/context.rs +++ b/crates/red_knot_python_semantic/src/types/context.rs @@ -468,6 +468,11 @@ impl Drop for DiagnosticGuard<'_, '_> { // once. let diag = self.diag.take().unwrap(); + if std::thread::panicking() { + // Don't submit diagnostics when panicking because they might be incomplete. + return; + } + let Some(ann) = diag.primary_annotation() else { panic!( "All diagnostics reported by `InferContext` must have a \