#define _WIN32_IE 0x0800 // MinGW at it again. FIXME: verify if still needed.
#define WIN32_LEAN_AND_MEAN
#define NOGDI
+#ifndef NOMINMAX
#define NOMINMAX
+#endif
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringExtras.h"
#include <string>
#include <vector>
-#ifndef __CYGWIN__
+#if !defined(__CYGWIN__) && \
+ !(defined(__MINGW32__) && !defined(__MINGW64_VERSION_MAJOR))
#include <VersionHelpers.h>
#else
// Cygwin does not have the IsWindows8OrGreater() API.
+// Mingw32 does not have the API either (but mingw-w64 does).
inline bool IsWindows8OrGreater() {
OSVERSIONINFO osvi = {};
osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);