================ @@ -1160,8 +1160,11 @@ class CFGBuilder { return {}; // Check that it is the same variable on both sides. - if (!Expr::isSameComparisonOperand(DeclExpr1, DeclExpr2)) - return {}; + if (!Expr::isSameComparisonOperand(DeclExpr1, DeclExpr2)) { + if (!Expr::isSameComparisonOperand(DeclExpr1->IgnoreParenImpCasts(), + DeclExpr2->IgnoreParenImpCasts())) + return {}; ---------------- AaronBallman wrote:
Thank you for the explanation, that was helpful! Perhaps dumb question: would it make more sense to have the cast checks in `isSameComparisonOperand()` single-step through the casts to find matching ones? Because it seems a bit odd that inserting a Noop cast in one node but not the other would mean they're automatically different comparison operands. https://github.com/llvm/llvm-project/pull/149972 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits