================ @@ -465,7 +465,12 @@ class ResultObjectVisitor : public AnalysisASTVisitor<ResultObjectVisitor> { } if (auto *DIE = dyn_cast<CXXDefaultInitExpr>(E)) { - PropagateResultObject(DIE->getExpr(), Loc); + // If it has a rewritten init, we should propagate to that. If it doesn't, + // then the CXXDefaultInitExpr is the only initializer available during + // the analysis as the underlying Expr is only traversed as a child of the + // Decl being initialized, which is not usually in the CFG. + if (DIE->hasRewrittenInit()) ---------------- efriedma-quic wrote:
I don't understand how the rewriting is connected to propagation: I think you need to propagate whether or not the expression is rewritten? Or am I missing something about what this code is doing? https://github.com/llvm/llvm-project/pull/99236 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits