summaryrefslogtreecommitdiffstats
path: root/Help/policy/CMP0124.rst
diff options
context:
space:
mode:
Diffstat (limited to 'Help/policy/CMP0124.rst')
-rw-r--r--Help/policy/CMP0124.rst12
1 files changed, 5 insertions, 7 deletions
diff --git a/Help/policy/CMP0124.rst b/Help/policy/CMP0124.rst
index 88d03e3..3935166 100644
--- a/Help/policy/CMP0124.rst
+++ b/Help/policy/CMP0124.rst
@@ -3,14 +3,12 @@ CMP0124
.. versionadded:: 3.21
-The loop variables created by :command:`foreach` command have now their scope
-restricted to the loop scope.
+When this policy is set to ``NEW``, the scope of loop variables defined by the
+:command:`foreach` command is restricted to the loop only. They will be unset
+at the end of the loop.
-Starting with CMake 3.21, the :command:`foreach` command ensures that the loop
-variables have their scope restricted to the loop scope.
-
-The ``OLD`` behavior for this policy let the loop variables to exist, with an
-empty value, in the outer scope of loop scope.
+The ``OLD`` behavior for this policy still clears the loop variables at the end
+of the loop, but does not unset them. This leaves them as defined, but empty.
This policy was introduced in CMake version 3.21. Use the
:command:`cmake_policy` command to set it to ``OLD`` or ``NEW`` explicitly.