CMP0121

3.21 版本新增。

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

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

此策略的 OLD 行为是将无效索引视为字符串开头的整数值(如果存在)。例如,2good4you 被视为 2,而 not_an_integer 被视为 0NEW 行为是无效索引将触发错误。

此策略在 CMake 版本 3.21 中引入。它可以通过 cmake_policy()cmake_minimum_required() 命令设置。如果未设置,CMake 会发出警告并使用 OLD 行为。

注意

策略的 OLD 行为 根据定义已被弃用,并可能在未来的 CMake 版本中被移除。