CMakePresets.json: Properly report macro expansion errors
Make a distinction between strings which simply use the $vendor{<...>} macro, which is valid but makes it unusable by CMake, and strings which actually contain invalid macro expansions.
Fixes: #21308 (closed)
Backport: release