ELA bcc fixes
Merge topic 'dev/custom-parsers' into next

558ea4a4 ELA bcc fixes
ExpandListArguments: Optimize the parser

Optimize cmSystemTools::ExpandListArguments so as not to build a string
character-by-character. This avoids excess reallocations of the result
string.
cmCommandArgument*: Remove!

Gone! Today is a happy day :) .
cmGeneratorExpressionLexer: Use a switch statement to parse

Optimize cmGeneratorExpressionLexer::Tokenize to use a switch statement.
The many dereferences of the input pointer were expensive. Also remove
excess pointer arithmetic.
cmGeneratorExpression: Improve parsing in StripEmptyListElements

The char-by-char parsing causes lots of reallocations which shouldn't be
necessary. To improve this, fast-path strings without a semicolon,
reserve space in the result, and insert into the result in chunks.
relnotes: Add release notes for the branch
Merge topic 'dev/custom-parsers' into next

1e96627f relnotes: Add release notes for the branch
44ee5b56 cmGeneratorExpression: Improve parsing in StripEmptyListElements
09e2ac90 cmGeneratorExpressionLexer: Use a switch statement to parse
41497fa7 cmCommandArgument*: Remove!
8e1036e9 ExpandListArguments: Optimize the parser