[clang] Add Clang attribute to ensure that fields are initialized explicitly (PR #102040)

via cfe-commits cfe-commits at lists.llvm.org
Fri Sep 27 12:28:30 PDT 2024


================
@@ -4561,6 +4569,13 @@ static void TryConstructorInitialization(Sema &S,
 
   CXXConstructorDecl *CtorDecl = cast<CXXConstructorDecl>(Best->Function);
   if (Result != OR_Deleted) {
+    if (!IsListInit && Kind.getKind() == InitializationKind::IK_Default &&
----------------
higher-performance wrote:

> Right, but that is a property of the declaration 'elsewhere', not the initialization of the type here.

It's default-initialization of a type that has mandatory fields -- that means at least one initializer is missing, right? Or perhaps I'm not understanding what you mean.

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


More information about the cfe-commits mailing list