Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir-def/src/expr_store/lower.rs')
-rw-r--r--crates/hir-def/src/expr_store/lower.rs10
1 files changed, 9 insertions, 1 deletions
diff --git a/crates/hir-def/src/expr_store/lower.rs b/crates/hir-def/src/expr_store/lower.rs
index 74006c6037..7fe91a3d02 100644
--- a/crates/hir-def/src/expr_store/lower.rs
+++ b/crates/hir-def/src/expr_store/lower.rs
@@ -1465,7 +1465,15 @@ impl<'db> ExprCollector<'db> {
match kind {
ArrayExprKind::ElementList(e) => {
- let elements = e.map(|expr| self.collect_expr(expr)).collect();
+ let elements = e
+ .filter_map(|expr| {
+ if self.check_cfg(&expr) {
+ Some(self.collect_expr(expr))
+ } else {
+ None
+ }
+ })
+ .collect();
self.alloc_expr(Expr::Array(Array::ElementList { elements }), syntax_ptr)
}
ArrayExprKind::Repeat { initializer, repeat } => {