================
@@ -4820,6 +4820,9 @@ bool 
CodeGenFunction::isUnderlyingBasePointerConstantNull(const Expr *E) {
   const Expr *UnderlyingBaseExpr = E->IgnoreParens();
   while (auto *BaseMemberExpr = dyn_cast<MemberExpr>(UnderlyingBaseExpr))
     UnderlyingBaseExpr = BaseMemberExpr->getBase()->IgnoreParens();
+  if (auto *Select = dyn_cast<ConditionalOperator>(UnderlyingBaseExpr))
----------------
efriedma-quic wrote:

Name seems okay to me.

To more narrowly catch the glibc pattern, we could check if the condition is a 
constant true/false, and only check that expression.  But I guess just checking 
both sides might be good enough.

https://github.com/llvm/llvm-project/pull/137851
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to