diff options
author | Brad King <brad.king@kitware.com> | 2019-02-13 13:37:38 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2019-02-13 13:37:38 (GMT) |
commit | 1c4570e22eb7fcf312426e4e1fb0db0c2a3d5d33 (patch) | |
tree | 21ef74d14f3f4b746a22a0119ec172d3378d4f9f /Source | |
parent | a251b61181252eb380d24778cdd8224ea7198eef (diff) | |
parent | e429e9af4259f924f4f8329f9f994e2f6a6e824a (diff) | |
download | CMake-1c4570e22eb7fcf312426e4e1fb0db0c2a3d5d33.zip CMake-1c4570e22eb7fcf312426e4e1fb0db0c2a3d5d33.tar.gz CMake-1c4570e22eb7fcf312426e4e1fb0db0c2a3d5d33.tar.bz2 |
Merge branch 'genex-GENEX_EVAL-fix-recursion' into release-3.14
Merge-request: !2954
Diffstat (limited to 'Source')
-rw-r--r-- | Source/cmGeneratorExpressionDAGChecker.cxx | 10 | ||||
-rw-r--r-- | Source/cmGeneratorExpressionNode.cxx | 4 |
2 files changed, 4 insertions, 10 deletions
diff --git a/Source/cmGeneratorExpressionDAGChecker.cxx b/Source/cmGeneratorExpressionDAGChecker.cxx index 0f26e70..728f2a4 100644 --- a/Source/cmGeneratorExpressionDAGChecker.cxx +++ b/Source/cmGeneratorExpressionDAGChecker.cxx @@ -157,14 +157,8 @@ bool cmGeneratorExpressionDAGChecker::GetTransitivePropertiesOnly() bool cmGeneratorExpressionDAGChecker::EvaluatingGenexExpression() { - const cmGeneratorExpressionDAGChecker* top = this; - const cmGeneratorExpressionDAGChecker* parent = this->Parent; - while (parent) { - top = parent; - parent = parent->Parent; - } - - return top->Property == "TARGET_GENEX_EVAL" || top->Property == "GENEX_EVAL"; + return this->Property.find("TARGET_GENEX_EVAL:") == 0 || + this->Property.find("GENEX_EVAL:", 0) == 0; } bool cmGeneratorExpressionDAGChecker::EvaluatingPICExpression() diff --git a/Source/cmGeneratorExpressionNode.cxx b/Source/cmGeneratorExpressionNode.cxx index aac188e..70c80c9 100644 --- a/Source/cmGeneratorExpressionNode.cxx +++ b/Source/cmGeneratorExpressionNode.cxx @@ -404,8 +404,8 @@ protected: { if (context->HeadTarget) { cmGeneratorExpressionDAGChecker dagChecker( - context->Backtrace, context->HeadTarget, genexOperator, content, - dagCheckerParent); + context->Backtrace, context->HeadTarget, + genexOperator + ":" + expression, content, dagCheckerParent); switch (dagChecker.Check()) { case cmGeneratorExpressionDAGChecker::SELF_REFERENCE: case cmGeneratorExpressionDAGChecker::CYCLIC_REFERENCE: { |