[clang] [clang] Reject array comparisons in C++26 for unknown/dependent types in templates (PR #191101)
via cfe-commits
cfe-commits at lists.llvm.org
Mon Apr 13 22:01:48 PDT 2026
================
@@ -12488,8 +12488,7 @@ static void diagnoseTautologicalComparison(Sema &S, SourceLocation Loc,
QualType LHSType = LHS->getType();
QualType RHSType = RHS->getType();
if (LHSType->hasFloatingRepresentation() ||
- (LHSType->isBlockPointerType() && !BinaryOperator::isEqualityOp(Opc)) ||
- S.inTemplateInstantiation())
+ (LHSType->isBlockPointerType() && !BinaryOperator::isEqualityOp(Opc)))
----------------
PrabbyDD wrote:
I thought he meant for just `inTemplateInstantiation()` into `checkCompareOperands()`, did he mean the whole if statement? Could you elaborate why? I figured this just had to do with templates, but admittedly, I am not completely sure what `diagnoseTautologicalComparison` is doing.
https://github.com/llvm/llvm-project/pull/191101
More information about the cfe-commits
mailing list