================ @@ -2177,7 +2177,8 @@ struct CounterCoverageMappingBuilder } void VisitOpaqueValueExpr(const OpaqueValueExpr* OVE) { - Visit(OVE->getSourceExpr()); + if (const Expr *SE = OVE->getSourceExpr()) ---------------- efriedma-quic wrote:
The point of the "unique" flag is precisely to indicate whether a subexpression is naturally part of the tree at that point, or it's referring to an expression which should have been evaluated elsewhere. So not visiting a non-unique expression should be the right default. I didn't realize the existing AbstractConditionalOperator code already had a workaround for this... we should be able to adjust it to compensate. https://github.com/llvm/llvm-project/pull/85837 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits