On Windows with targeting the MSVC ABI, Clang will define _MSC_VER,
and does not treat __attribute__ as a macro.
Clang's builtin headers (e.g. immintrin.h) use __attribute__ liberally,
and do not expect it to be ifdef-ed away.
Suggested from Nicholas Hutchinson by github issue.
Suppress "overriding WinCrypt defines" from openssl/x509.h by defining `NOCRYPT`.
Only this file does not check `__WINCRYPT_H__` macro like other headers, since
5d8a1cf715 (diff-74b6370bc092dd2988ab577b2eaa21dcR7)