diff options
author | Stephen Kelly <steveire@gmail.com> | 2012-09-21 09:31:03 (GMT) |
---|---|---|
committer | Stephen Kelly <steveire@gmail.com> | 2012-09-21 09:33:46 (GMT) |
commit | f20af79956bff9ddd0bf428a2731b9c817de93a1 (patch) | |
tree | 265734f8e24e2d16c3d043b96ee18552d4573365 /Source/cmGeneratorExpressionParser.cxx | |
parent | fb578c8635b3c09f4a838c2ec9c671d9f1be34cd (diff) | |
download | CMake-f20af79956bff9ddd0bf428a2731b9c817de93a1.zip CMake-f20af79956bff9ddd0bf428a2731b9c817de93a1.tar.gz CMake-f20af79956bff9ddd0bf428a2731b9c817de93a1.tar.bz2 |
Handle colons as a special case in the generator expression parser.
Like the special case for commas, this ensures that the colon only has
special meaning as the delimiter between the identifier and the
parameters of a particular expression, but constructs such as
INCLUDE_DIRECTORIES "$<1:C:\foo>"
are legal.
Diffstat (limited to 'Source/cmGeneratorExpressionParser.cxx')
-rw-r--r-- | Source/cmGeneratorExpressionParser.cxx | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/Source/cmGeneratorExpressionParser.cxx b/Source/cmGeneratorExpressionParser.cxx index 2a5cc7a..d3c4aa3 100644 --- a/Source/cmGeneratorExpressionParser.cxx +++ b/Source/cmGeneratorExpressionParser.cxx @@ -127,6 +127,11 @@ void cmGeneratorExpressionParser::ParseGeneratorExpression( parameters.resize(parameters.size() + 1); ++this->it; } + if (this->it->TokenType == cmGeneratorExpressionToken::ColonSeparator) + { + extendText(*(parameters.end() - 1), this->it); + ++this->it; + } if (this->it == this->Tokens.end()) { break; |