This PR removes the C++20 requirement from CMakeLists.txt and places the check in the precompiled header instead. That made it possible to use -std::c++latest as the compiler. With MSVC, that's going to be C++23 which resulted in some errors that needed fixing. By always using the latest standard, we can avoid having compiler problems due to changing standards in the future.
Note that c++latest can not be used currently for compiling the wxWidgets library -- that will require fixes to wxWidgets itself.
This PR removes the C++20 requirement from CMakeLists.txt and places the check in the precompiled header instead. That made it possible to use -std::c++latest as the compiler. With MSVC, that's going to be C++23 which resulted in some errors that needed fixing. By always using the latest standard, we can avoid having compiler problems due to changing standards in the future.
Note that c++latest can not be used currently for compiling the wxWidgets library -- that will require fixes to wxWidgets itself.