[clang] [CIR] Add support for partial array cleanup with ILE (PR #198000)

Erich Keane via cfe-commits cfe-commits at lists.llvm.org
Sun May 17 17:12:25 PDT 2026


================
@@ -1035,7 +1031,11 @@ void CIRGenFunction::emitNewArrayInitializer(
   const Expr *init = e->getInitializer();
   Address endOfInit = Address::invalid();
   QualType::DestructionKind dtorKind = elementType.isDestructedType();
-  assert(!cir::MissingFeatures::cleanupDeactivationScope());
+  CleanupDeactivationScope deactivation(*this);
+
+  CharUnits elementSize = getContext().getTypeSizeInChars(elementType);
+  CharUnits elementAlign =
----------------
erichkeane wrote:

IS this going to be used anywhere else?  I see it is only currently referenced in the 1 place under the `dtorKind` test?  Should this just be calculated there, instead of always?

https://github.com/llvm/llvm-project/pull/198000


More information about the cfe-commits mailing list