Fix int <= bool comparison warning on MSVC
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Fri, 30 Sep 2016 14:18:06 +0000 (14:18 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Fri, 30 Sep 2016 14:18:06 +0000 (14:18 +0000)
llvm-svn: 282857

clang/lib/Sema/SemaExprCXX.cpp

index 237bdbf89cf1a13c5acc362acbf015976be06739..1e116e35227a00633f494e3473fb9d25f0c99cf2 100644 (file)
@@ -2366,11 +2366,14 @@ void Sema::DeclareGlobalNewDelete() {
     bool HasSizedVariant = getLangOpts().SizedDeallocation &&
                            (Kind == OO_Delete || Kind == OO_Array_Delete);
     bool HasAlignedVariant = getLangOpts().CPlusPlus1z;
-    for (int Sized = 0; Sized <= HasSizedVariant; ++Sized) {
+
+    int NumSizeVariants = (HasSizedVariant ? 2 : 1);
+    int NumAlignVariants = (HasAlignedVariant ? 2 : 1);
+    for (int Sized = 0; Sized < NumSizeVariants; ++Sized) {
       if (Sized)
         Params.push_back(SizeT);
 
-      for (int Aligned = 0; Aligned <= HasAlignedVariant; ++Aligned) {
+      for (int Aligned = 0; Aligned < NumAlignVariants; ++Aligned) {
         if (Aligned)
           Params.push_back(Context.getTypeDeclType(getStdAlignValT()));