Browse Source

define_property(): Only test prefix if INITIALIZE_FROM_VARIABLE is given

Craig Scott 3 years ago
parent
commit
87c3b5e421
1 changed files with 13 additions and 13 deletions
  1. 13 13
      Source/cmDefinePropertyCommand.cxx

+ 13 - 13
Source/cmDefinePropertyCommand.cxx

@@ -97,20 +97,20 @@ bool cmDefinePropertyCommand(std::vector<std::string> const& args,
         PropertyName, "\""));
       return false;
     }
-  }
 
-  // Make sure the variable is not reserved.
-  static constexpr const char* reservedPrefixes[] = {
-    "CMAKE_",
-    "_CMAKE_",
-  };
-  if (std::any_of(std::begin(reservedPrefixes), std::end(reservedPrefixes),
-                  [&initializeFromVariable](const char* prefix) {
-                    return cmHasPrefix(initializeFromVariable, prefix);
-                  })) {
-    status.SetError(
-      cmStrCat("variable name \"", initializeFromVariable, "\" is reserved"));
-    return false;
+    // Make sure the variable is not reserved.
+    static constexpr const char* reservedPrefixes[] = {
+      "CMAKE_",
+      "_CMAKE_",
+    };
+    if (std::any_of(std::begin(reservedPrefixes), std::end(reservedPrefixes),
+                    [&initializeFromVariable](const char* prefix) {
+                      return cmHasPrefix(initializeFromVariable, prefix);
+                    })) {
+      status.SetError(cmStrCat("variable name \"", initializeFromVariable,
+                               "\" is reserved"));
+      return false;
+    }
   }
 
   // Actually define the property.