Fix building and running checkasm with MSVC and clang-cl
The first three commits are straightforward. The last one is a bit curious though, as it is about the use of the __STDC__ define in one platform header.
In itself it shouldn't matter very much, but the fact that MSVC and Clang-cl chose the fallback form without _Generic caused one selftest to fail, due to not detecting missing emms.