On Windows CHECK_CXX_SOURCE_RUNS is calling check_source_runs

No it is not an API change. The original API of the commands from the various Check<Lang>SourceRuns modules should still be honoured. What seems to be the case here is you are trying to use an implementation detail of the new module introduced in CMake 3.19 and expect it to work with an older CMake version. You should also not be trying to hijack the check_source_runs() command by replacing it with your own.