[clang] [analyzer] Support determining origins in a conditional operator in WebKit checkers. (PR #91143)
Artem Dergachev via cfe-commits
cfe-commits at lists.llvm.org
Mon May 6 15:52:06 PDT 2024
================
@@ -27,12 +28,18 @@ tryToFindPtrOrigin(const Expr *E, bool StopAtFirstRefCountedObj) {
E = tempExpr->getSubExpr();
continue;
}
+ if (auto *Expr = dyn_cast<ConditionalOperator>(E)) {
+ return tryToFindPtrOrigin(Expr->getTrueExpr(), StopAtFirstRefCountedObj,
+ callback) &&
+ tryToFindPtrOrigin(Expr->getFalseExpr(), StopAtFirstRefCountedObj,
----------------
haoNoQ wrote:
Hmm does this code play well with `StopAtFirstRefCountedObj`? Am I reading this right that both branches need to originate from a smart pointer, so we should never really stop in the middle between the branches?
https://github.com/llvm/llvm-project/pull/91143
More information about the cfe-commits
mailing list