Extend the table of special cases from commit 58a50a3a0a (VS: Fix '-T
version=14.28' under VS 16.9, 2021-03-11, v3.19.7~1^2~1) and updated by
commit a60141feaa (VS: Add special case for '-T version=14.29.16.10'
under VS 16.10, 2021-05-27, v3.20.4~11^2). Add a special case for the
name VS 17 will use for VS 16.11's default toolset, so that it can be
used with VS 16.11 too.
Issue: #21922
Revert commit e5ec0e52f4 (AUTOUIC: Fix generating of dependency rules
for UI header files, 2021-07-22, v3.21.1~8^2) because it caused
regressions. For example, changing one C++ source can now cause many
others to rebuild. Revert the change pending further investigation.
Fixes: #22531
Issue: #16776
eae125ace5 Refactor: Get rid of `isTrue` variable in the `while` block execution
4c1cdfd8f0 Refactor: Keep `cmWhileFunctionBlocker` members private
d22f68d019 Refactor: Transform `while` loop into `for`
e97e714f0d Fix: `while()` reports an error the same way as `if()`
880ca66b51 Fix: `while()` can silently ignore incorrect condition
61b33c3f4e Fix: Regression in the `cmConditionEvaluator::HandleLevel0`
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6442
As reported in the BUG #22524, mismatched parenthesis reported differently
for `while()` and `if()`.
The problem was in the double loop (over "handlers" and the arguments),
where the outer loop didn't check the result of the running handler.
To handle safely the values used by CMake variables and properties,
introduce the class cmProp as a replacement from the simple pointer
to std::string instance.
54a70b3988 Refactor: Move version compare op table out of the function
f37d6a3170 Refactor: Remove redundant checks for `0` and `1` literals
00961a4782 Refactor: Copy exactly required count of args and avoid `pop_back()`
2a72cad9be Style: Better names of local vars for `IN_LIST` handler
0dd7795706 Refactor: Extract the logic of testing for special variable to func
866b0595f6 Refactor: Introduce `cmArgumentList` container class
51d9194a96 Refactor: Reduce one more condition checking on handling math compare
46810235e3 Refactor: Avoid `if` → `else if` → … for compare operators
...
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6392
In commit d7159f9591, (Ninja: Fix LINK_WHAT_YOU_USE link flag placement,
2021-06-24), we fixed usage of -Wl,--no-as-needed to override
-Wl,--as-needed from LDFLAGS. However, that change also passes
-Wl,--no-as-needed to `ar`, which is incorrect flag for `ar`.
Let's check the target type before passing down the flags.
Fixes: #22487