CMP0110 — CMake 3.24.2 Documentation

# CMP0110

New in version 3.19.

`add_test()` supports arbitrary characters in test names.

`add_test()` can now (officially) create tests with whitespace and other special characters in its name. Before CMake version 3.19 that was not allowed, however, it was possible to work around this limitation by explicitly putting escaped quotes around the test's name in the `add_test` command.

Although never officially supported several projects in the wild found and implemented this workaround. However, the new change which officially allows the `add_test` command to support whitespace and other special characters in test names now breaks that workaround. In order for these projects to work smoothly with newer CMake versions, this policy was introduced.

The `OLD` behavior of this policy is to still prevent `add_test` from handling whitespace and special characters properly (if not using the mentioned workaround). The `NEW` behavior on the other hand allows names with whitespace and special characters for tests created by `add_test`.

This policy was introduced in CMake version 3.19. CMake version 3.24.2 warns when the policy is not set and uses `OLD` behavior. Use the `cmake_policy()` command to set it to `OLD` or `NEW` explicitly.