CMP0121

在 3.21 版本加入.

list() 命令现在可以检测无效索引。

在 CMake 版本 3.21 之前, list() 命令的 GETINSERTSUBLISTREMOVE_AT 子命令没有检测到无效的索引参数。

此策略的“旧”行为是将无效索引视为字符串开头的整数值(如果有)。例如,2good4you 是一个 2not_an_integer 是一个 0NEW 行为用于无效索引触发错误。

此策略是在 CMake 版本 3.21 中引入的。 CMake 版本 |发布|当未设置策略并使用“旧”行为时发出警告。使用 cmake_policy() 命令将其显式设置为 OLDNEW

备注

策略的“旧”行为是 :manual:根据定义 <cmake-policies(7)> 已弃用,并且可能会在未来版本的 CMake 中删除。