# CMP0031

Warning

The `OLD` behavior of this policy was removed in CMake version 4.0. This policy must be set to `NEW` by a call to `cmake_minimum_required()` or `cmake_policy()`.

The `load_command()` command should not be called.

This command was added in August 2002 to allow projects to add arbitrary commands implemented in C or C++. However, it does not work when the toolchain in use does not match the ABI of the CMake process. It has been mostly superseded by the `macro()` and `function()` commands.

CMake >= 3.0 prefer that this command never be called. The `OLD` behavior for this policy is to allow the command to be called. The `NEW` behavior for this policy is to issue a `FATAL_ERROR` when the command is called.

This policy was introduced in CMake version 3.0. Prior to removal in CMake version 4.0, it could be set by `cmake_policy()` or `cmake_minimum_required()`. If it was not set, CMake warned, and used `OLD` behavior.