================ @@ -332,19 +380,44 @@ void UseEmplaceCheck::check(const MatchFinder::MatchResult &Result) { }(); assert(Call && "No call matched"); - assert((CtorCall || MakeCall) && "No push_back parameter matched"); + assert((CtorCall || MakeCall || AggInitCall) && + "No push_back parameter matched"); if (IgnoreImplicitConstructors && CtorCall && CtorCall->getNumArgs() >= 1 && CtorCall->getArg(0)->getSourceRange() == CtorCall->getSourceRange()) return; + if (IgnoreImplicitConstructors && AggInitCall && + AggInitCall->getNumInits() >= 1 && + AggInitCall->getInit(0)->getSourceRange() == + AggInitCall->getSourceRange()) + return; + + if (getLangOpts().LangStd >= LangStandard::lang_cxx20 && AggInitCall) { + for (const auto *Init : AggInitCall->inits()) { + if (const auto *InnermostInit = unwrapInnerExpression(Init)) { ---------------- RiverDave wrote:
Good catch, thx for the feedback, should be fixed now. https://github.com/llvm/llvm-project/pull/131969 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits