================ @@ -1111,6 +1116,10 @@ void CXXRecordDecl::addedMember(Decl *D) { } else if (!T.isCXX98PODType(Context)) data().PlainOldData = false; + if (Field->hasAttr<ExplicitInitAttr>() && !Field->hasInClassInitializer()) { + setHasUninitializedExplicitInitFields(true); + } ---------------- higher-performance wrote:
Oh wow, done -- thanks for the catch, looks like this slipped through. I thought I had a test for this, but it seems like the test didn't catch it because there was _also_ an explicit field that _didn't_ have an in-class initializer, so the flag was set anyway. I modified another one of the tests to account for this too. https://github.com/llvm/llvm-project/pull/102040 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits