we've recently moved to Intel 19 Update 3 MPI and noticed that the MPICH_VERSION macro in mpi.h is wrong/confusing on Windows and is also different than on Linux:
#define MPICH_VERSION "0.0"
#define MPICH_NUMVERSION 300
#define MPICH_VERSION "3.3b3"
#define MPICH_NUMVERSION 30300103
The latter case is much more reasonable and works fine, while the first case seems to be broken.
In the end, that 3 digit version number makes PETSc assume that it is using an old MPICH version and therefore compares "0.0" with MPI_Get_library_version(), which will eventually fail on Windows.
Can you please fix the version number of windows?
Thank you and kind regards,