diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx index ad4ae0c48..f84095c02 100644 --- a/Source/cmTarget.cxx +++ b/Source/cmTarget.cxx @@ -4472,6 +4472,19 @@ bool consistentProperty(const char *lhs, const char *rhs) return strcmp(lhs, rhs) == 0; } +template +PropertyType impliedValue(PropertyType); +template<> +bool impliedValue(bool) +{ + return false; +} +template<> +const char* impliedValue(const char*) +{ + return ""; +} + //---------------------------------------------------------------------------- template PropertyType checkInterfacePropertyCompatibility(cmTarget *tgt, @@ -4547,6 +4560,7 @@ PropertyType checkInterfacePropertyCompatibility(cmTarget *tgt, } else if (impliedByUse) { + propContent = impliedValue(propContent); if (ifaceIsSet) { if (!consistentProperty(propContent, ifacePropContent))