]> granicus.if.org Git - clang/commitdiff
The signed/unsigned checker should not warn for value-dependent expressions, and...
authorSebastian Redl <sebastian.redl@getdesigned.at>
Thu, 5 Nov 2009 21:09:23 +0000 (21:09 +0000)
committerSebastian Redl <sebastian.redl@getdesigned.at>
Thu, 5 Nov 2009 21:09:23 +0000 (21:09 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86173 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Sema/SemaExpr.cpp

index f94017129b026041e0011742e7215cdedabd7f2d..f5bae072ef0ed2b435cd0565a96cab44ef9802ff 100644 (file)
@@ -4434,6 +4434,11 @@ void Sema::CheckSignCompare(Expr *lex, Expr *rex, SourceLocation OpLoc,
   if (!lt->isIntegerType() || !rt->isIntegerType())
     return;
 
+  // If either expression is value-dependent, don't warn. We'll get another
+  // chance at instantiation time.
+  if (lex->isValueDependent() || rex->isValueDependent())
+    return;
+
   // The rule is that the signed operand becomes unsigned, so isolate the
   // signed operand.
   Expr *signedOperand;