diff options
Diffstat (limited to 'Source/cmGeneratorExpressionEvaluator.cxx')
-rw-r--r-- | Source/cmGeneratorExpressionEvaluator.cxx | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/Source/cmGeneratorExpressionEvaluator.cxx b/Source/cmGeneratorExpressionEvaluator.cxx index b239408..50334ef 100644 --- a/Source/cmGeneratorExpressionEvaluator.cxx +++ b/Source/cmGeneratorExpressionEvaluator.cxx @@ -153,10 +153,12 @@ std::string GeneratorExpressionContent::EvaluateParameters( return std::string(); } std::string parameter; - for (const auto& pExprEval : *pit) { - parameter += pExprEval->Evaluate(context, dagChecker); - if (context->HadError) { - return std::string(); + if (node->ShouldEvaluateNextParameter(parameters, parameter)) { + for (const auto& pExprEval : *pit) { + parameter += pExprEval->Evaluate(context, dagChecker); + if (context->HadError) { + return std::string(); + } } } parameters.push_back(std::move(parameter)); |