================ @@ -64,38 +64,53 @@ static bool hasOptionalClassName(const CXXRecordDecl &RD) { return false; } +static const CXXRecordDecl *getOptionalBaseClass(const CXXRecordDecl *RD) { + if (RD == nullptr) + return nullptr; + if (hasOptionalClassName(*RD)) + return RD; + + if (!RD->hasDefinition()) + return nullptr; + + for (const CXXBaseSpecifier &Base : RD->bases()) + if (Base.getAccessSpecifier() == AS_public) ---------------- martinboehme wrote:
Great point! I've removed the `AS_public` check (and added a test for exactly this scenario, which fails with this check present). https://github.com/llvm/llvm-project/pull/84138 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits