From de6826beff7cbfc52be0f1efecea6449e2df295d Mon Sep 17 00:00:00 2001 From: Lukas Wirth Date: Sun, 29 Mar 2026 11:12:27 +0200 Subject: [PATCH] fix: Fix block lowering in ast id map --- src/tools/rust-analyzer/crates/span/src/ast_id.rs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/tools/rust-analyzer/crates/span/src/ast_id.rs b/src/tools/rust-analyzer/crates/span/src/ast_id.rs index bae461e5a8de..f6500a9b4dbe 100644 --- a/src/tools/rust-analyzer/crates/span/src/ast_id.rs +++ b/src/tools/rust-analyzer/crates/span/src/ast_id.rs @@ -678,9 +678,10 @@ pub fn from_source(node: &SyntaxNode) -> AstIdMap { } } syntax::WalkEvent::Leave(node) => { - if cfg!(debug_assertions) && ast::BlockExpr::can_cast(node.kind()) { - assert_eq!( - blocks.pop().map(|it| it.0), + if ast::BlockExpr::can_cast(node.kind()) { + let block = blocks.pop(); + debug_assert_eq!( + block.map(|it| it.0), Some(node), "left a BlockExpr we never entered" );