On 8/8/2016 6:07 AM, Martin Storsjö wrote:
Q4: As of 3.8.0, clang (the only compiler I know that builds mingw-w64 for
ARM) doesn't support __declspec(selectany) or __attribute__((gcc_struct)) on
ARM.  Since (essentially) no one is using this yet, can we assume it will get
fixed before people will start using the library?  Or must we code around it?
Right now I'm doing a bit of both.
It's not about it being supported on ARM, but about clang not supporting
it at all, regardless of architecture.

I'd suggest doing

#if defined(__GNUC__) && !defined(__clang__)

I have made Martin's change (attached) as well as a couple others. Ok to push?

I still have some more fixes for ARM, but this patch is getting too big. This is a logical point to break. My commit text:

Clean up a variety of compile warnings:

clog10.c, clog10f.c, clog10l.c:
  - The prototypes for the functions created in these files are
    protected by #ifdef _GNU_SOURCE.  Since we should always build
    the .c file, we need to add the define so we can find the
    prototype.

gs_support.c:
  - The minor variation causes a 'redefines' error.
  - ARM does not use StackCookie.  I'd like to use the already-
    defined __UNUSED_PARAM from _mingw.h, but it uses an attribute,
    so I'd have to put it on the function declaration, and then I'd
    have to #ifdef it by platform.  Yuck.

gai_strerrorA.c:
  - wcstombs() is in stdlib.

abs64.c:
  - llabs() is in stdlib.h.

cephes_emath.h:
  - These minor variations cause 'redefines' errors.

e_pow.c:
  - Sign mismatch in comparison.

ftw.c:
  - Unused parameters.

tdelete.c:
  - Comparing NULL to function pointer generates warning.

_vscprintf_p.c, _vscwprintf_p.c, _vswprintf_p.c:
  - _vscprintf_p_l, _vscwprintf_p_l & _vswprintf_p_l prototypes are
    protected by #if.  Add the define so we can find them.

mingw_pformat.c:
  - ARM does not support __attribute__((gcc_struct))

mingw_vfscanf.c:
  - Fix incorrect indention.

stdio.h:
  - We are shadowing a number of functions provided by the compiler
   (snprintf, vsnprintf, etc).  Ignore warnings.

uchar.h:
  - __STDC_UTF_16__ & __STDC_UTF_32__ are defined by the gcc
    compiler.

dxgi.h:
  - Cheap way to avoid 'redefine' errors.

aviriff.h, basetyps.h, combaseapi.h, d2d1.h, gpedit.h:
  - Redefine errors.

mfapi.h:
  - Redefine errors.
  - FCC ('AI44') et al cause 'multichar' compiler warnings.  Ignore
    them.

mfidl.h:
  - Redefine errors.

mftransform.h:
  - EXTERN_C is either defined as 'extern' or 'extern "C"'. However,
    this isn't really an extern (implying that the actual definition
    is elsewhere), since the code also initializes the variable. And
    we don't need 'extern "C"' since this entire section is already
    wrapped with one. Using both 'extern' and initializing generates
    a warning.

ntdef.h:
  - Redefine errors.

ntsecapi.h:
  - These redefine values that are unconditionally defined earlier
    in the same file.

winnt.h:
  - Redefine errors.

dw
diff --git a/mingw-w64-crt/complex/clog10.c b/mingw-w64-crt/complex/clog10.c
index f8545cd..8553e00 100644
--- a/mingw-w64-crt/complex/clog10.c
+++ b/mingw-w64-crt/complex/clog10.c
@@ -44,5 +44,6 @@
 
 /* double version of the functions.  */
 #define  _NEW_COMPLEX_DOUBLE 1
+#define _GNU_SOURCE
 #include "complex_internal.h"
 #include "clog10.def.h"
diff --git a/mingw-w64-crt/complex/clog10f.c b/mingw-w64-crt/complex/clog10f.c
index 36ac497..8ce97d3 100644
--- a/mingw-w64-crt/complex/clog10f.c
+++ b/mingw-w64-crt/complex/clog10f.c
@@ -44,5 +44,6 @@
 
 /* Float version of the functions.  */
 #define  _NEW_COMPLEX_FLOAT 1
+#define _GNU_SOURCE
 #include "complex_internal.h"
 #include "clog10.def.h"
diff --git a/mingw-w64-crt/complex/clog10l.c b/mingw-w64-crt/complex/clog10l.c
index 8baa2aa..11d85c7 100644
--- a/mingw-w64-crt/complex/clog10l.c
+++ b/mingw-w64-crt/complex/clog10l.c
@@ -44,5 +44,6 @@
 
 /* long double version of the functions.  */
 #define  _NEW_COMPLEX_LDOUBLE 1
+#define _GNU_SOURCE
 #include "complex_internal.h"
 #include "clog10.def.h"
diff --git a/mingw-w64-crt/crt/gs_support.c b/mingw-w64-crt/crt/gs_support.c
index dbd95d5..c5c1773 100644
--- a/mingw-w64-crt/crt/gs_support.c
+++ b/mingw-w64-crt/crt/gs_support.c
@@ -26,7 +26,7 @@
 
 typedef LONG NTSTATUS; /* same as in ntdef.h / winternl.h */
 
-#define UNW_FLAG_NHANDLER 0x00
+#define UNW_FLAG_NHANDLER   0x0
 
 typedef union
 {
@@ -99,6 +99,7 @@ __security_init_cookie (void)
 
 __declspec(noreturn) void __cdecl __report_gsfailure (ULONG_PTR);
 
+#define UNUSED_PARAM(x) { x = x; }
 __declspec(noreturn) void __cdecl
 __report_gsfailure (ULONG_PTR StackCookie)
 {
@@ -139,6 +140,7 @@ __report_gsfailure (ULONG_PTR StackCookie)
   GS_ContextRecord.Ecx = StackCookie;
 #elif defined(__arm__) || defined(_ARM_)
   GS_ExceptionRecord.ExceptionAddress = (PVOID) GS_ContextRecord.Pc;
+  UNUSED_PARAM(StackCookie);
 #endif /* _WIN64 */
   GS_ExceptionRecord.ExceptionCode = STATUS_STACK_BUFFER_OVERRUN;
   GS_ExceptionRecord.ExceptionFlags = EXCEPTION_NONCONTINUABLE;
diff --git a/mingw-w64-crt/libsrc/ws2tcpip/gai_strerrorA.c 
b/mingw-w64-crt/libsrc/ws2tcpip/gai_strerrorA.c
index ebdc06a..9023f93 100644
--- a/mingw-w64-crt/libsrc/ws2tcpip/gai_strerrorA.c
+++ b/mingw-w64-crt/libsrc/ws2tcpip/gai_strerrorA.c
@@ -3,6 +3,7 @@
 #endif
 #undef  __CRT__NO_INLINE
 #define __CRT__NO_INLINE
+#include <stdlib.h>
 #include <winsock2.h>
 #include <ws2tcpip.h>
 
diff --git a/mingw-w64-crt/math/abs64.c b/mingw-w64-crt/math/abs64.c
index 693f909..3f2133a 100644
--- a/mingw-w64-crt/math/abs64.c
+++ b/mingw-w64-crt/math/abs64.c
@@ -1,4 +1,5 @@
 #include <intrin.h>
+#include <stdlib.h>
 
 __MINGW_EXTENSION __int64 __cdecl _abs64(__int64 x) {
     return llabs(x);
diff --git a/mingw-w64-crt/math/cephes_emath.h 
b/mingw-w64-crt/math/cephes_emath.h
index b92d710..58a8e13 100644
--- a/mingw-w64-crt/math/cephes_emath.h
+++ b/mingw-w64-crt/math/cephes_emath.h
@@ -190,7 +190,7 @@
 #define EXONE (0x3fff)
 
 
-#define  mtherr(x,y)
+#define mtherr(fname, code)
 
 
 extern long double strtold (const char * __restrict__ s, char ** __restrict__ 
se);
@@ -293,7 +293,7 @@ static __inline__ void __eshdn6(register short unsigned int 
*x);
  */
 #define XPD 0,
 /* #define XPD */
-#define NANS
+#define NANS 1
 
 /* NaN's require infinity support. */
 #ifdef NANS
diff --git a/mingw-w64-crt/math/softmath/e_pow.c 
b/mingw-w64-crt/math/softmath/e_pow.c
index 4e56eeb..da697db 100644
--- a/mingw-w64-crt/math/softmath/e_pow.c
+++ b/mingw-w64-crt/math/softmath/e_pow.c
@@ -45,7 +45,7 @@ double bsd__ieee754_pow(double x, double y)
             k = (iy>>20)-0x3ff;                /* exponent */
             if(k>20) {
                 j = ly>>(52-k);
-                if((j<<(52-k))==ly) yisint = 2-(j&1);
+                if((u_int32_t)(j<<(52-k))==ly) yisint = 2-(j&1);
             } else if(ly==0) {
                 j = iy>>(20-k);
                 if((j<<(20-k))==iy) yisint = 2-(j&1);
diff --git a/mingw-w64-crt/misc/ftw.c b/mingw-w64-crt/misc/ftw.c
index 3482924..74d05aa 100644
--- a/mingw-w64-crt/misc/ftw.c
+++ b/mingw-w64-crt/misc/ftw.c
@@ -281,7 +281,7 @@ do_entity (ctx_t *ctx, dir_data_t *dir, const char *name, 
size_t namlen)
 
 
 static int
-do_dir (ctx_t *ctx, struct stat *st, dir_data_t *old_dir)
+do_dir (ctx_t *ctx, struct stat *st, __UNUSED_PARAM(dir_data_t *old_dir))
 {
   dir_data_t dir;
   struct dirent *d;
@@ -375,7 +375,7 @@ free_objs (node_t *r)
 }
 
 static int
-do_it (const char *dir, int is_nftw, void *fcb, int descriptors, int flags)
+do_it (const char *dir, __UNUSED_PARAM(int is_nftw), void *fcb, int 
descriptors, int flags)
 {
   struct ctx_t ctx;
   struct stat st;
diff --git a/mingw-w64-crt/misc/tdelete.c b/mingw-w64-crt/misc/tdelete.c
index 47968a2..dc7a582 100644
--- a/mingw-w64-crt/misc/tdelete.c
+++ b/mingw-w64-crt/misc/tdelete.c
@@ -30,8 +30,19 @@ tdelete(const void *vkey,    /* key to be deleted */
        node_t *p, *q, *r;
        int  cmp;
 
+        /* ISO C++ forbids comparison between pointer of type 'void *' and
+           pointer-to-function. */
+#ifdef __GNUC__
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wnonnull-compare"
+#endif
+
        _DIAGASSERT(compar != NULL);
 
+#ifdef __GNUC__
+#pragma GCC diagnostic pop
+#endif
+
        if (rootp == NULL || (p = *rootp) == NULL)
                return NULL;
 
diff --git a/mingw-w64-crt/secapi/_vscprintf_p.c 
b/mingw-w64-crt/secapi/_vscprintf_p.c
index 42365b3..c007199 100644
--- a/mingw-w64-crt/secapi/_vscprintf_p.c
+++ b/mingw-w64-crt/secapi/_vscprintf_p.c
@@ -1,4 +1,9 @@
+/**
+ * This file is part of the mingw-w64 runtime package.
+ * No warranty is given; refer to the file DISCLAIMER within this package.
+ */
 #define _vscprintf_p SAVE__vscprintf_p
+#define MINGW_HAS_SECURE_API 1
 #include <stdio.h>
 #undef _vscprintf_p
 
diff --git a/mingw-w64-crt/secapi/_vscwprintf_p.c 
b/mingw-w64-crt/secapi/_vscwprintf_p.c
index 7baa5bd..aad5c8d 100644
--- a/mingw-w64-crt/secapi/_vscwprintf_p.c
+++ b/mingw-w64-crt/secapi/_vscwprintf_p.c
@@ -1,4 +1,9 @@
+/**
+ * This file is part of the mingw-w64 runtime package.
+ * No warranty is given; refer to the file DISCLAIMER within this package.
+ */
 #define _vscwprintf_p SAVE__vscwprintf_p
+#define MINGW_HAS_SECURE_API 1
 #include <stdio.h>
 #undef _vscwprintf_p
 
diff --git a/mingw-w64-crt/secapi/_vswprintf_p.c 
b/mingw-w64-crt/secapi/_vswprintf_p.c
index eb10c59..2bf582a 100644
--- a/mingw-w64-crt/secapi/_vswprintf_p.c
+++ b/mingw-w64-crt/secapi/_vswprintf_p.c
@@ -1,4 +1,9 @@
+/**
+ * This file is part of the mingw-w64 runtime package.
+ * No warranty is given; refer to the file DISCLAIMER within this package.
+ */
 #define _vswprintf_p SAVE__vswprintf_p
+#define MINGW_HAS_SECURE_API 1
 #include <stdio.h>
 #undef _vswprintf_p
 
diff --git a/mingw-w64-crt/stdio/mingw_pformat.c 
b/mingw-w64-crt/stdio/mingw_pformat.c
index d193519..c770101 100644
--- a/mingw-w64-crt/stdio/mingw_pformat.c
+++ b/mingw-w64-crt/stdio/mingw_pformat.c
@@ -77,13 +77,13 @@
 
 /* FIXME: The following belongs in values.h, but current MinGW
  * has nothing useful there!  OTOH, values.h is not a standard
- * header, and it's use may be considered obsolete; perhaps it
+ * header, and its use may be considered obsolete; perhaps it
  * is better to just keep these definitions here.
  */
 
 #include <pshpack1.h>
 /* workaround gcc bug */
-#ifdef __GNUC__
+#if defined(__GNUC__) && !defined(__clang__)
 #define ATTRIB_GCC_STRUCT __attribute__((gcc_struct))
 #else
 #define ATTRIB_GCC_STRUCT
diff --git a/mingw-w64-crt/stdio/mingw_vfscanf.c 
b/mingw-w64-crt/stdio/mingw_vfscanf.c
index 6828caa..4bd9e91 100644
--- a/mingw-w64-crt/stdio/mingw_vfscanf.c
+++ b/mingw-w64-crt/stdio/mingw_vfscanf.c
@@ -1043,7 +1043,7 @@ __mingw_sformat (_IFP *s, const char *format, va_list 
argp)
 
                  if (width > 0)
                    width = remain;
-                   --wbuf_cur_sz;
+                 --wbuf_cur_sz;
                }
              wbuf = resize_wbuf (wbuf_cur_sz, &wbuf_max_sz, wbuf);
              wbuf[wbuf_cur_sz++] = c;
diff --git a/mingw-w64-headers/crt/stdio.h b/mingw-w64-headers/crt/stdio.h
index 9f1cfff..c37ae15 100644
--- a/mingw-w64-headers/crt/stdio.h
+++ b/mingw-w64-headers/crt/stdio.h
@@ -256,6 +256,11 @@ int fscanf(FILE *__stream, const char *__format, ...)
 }
 
 #ifndef __NO_ISOCEXT  /* externs in libmingwex.a */
+#ifdef __GNUC__
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wshadow"
+#endif
+
 __mingw_ovr
 __attribute__((__format__ (gnu_scanf, 2, 0))) __MINGW_ATTRIB_NONNULL(2)
 int vsscanf (const char *__source, const char *__format, __builtin_va_list 
__local_argv)
@@ -276,6 +281,10 @@ int vfscanf (FILE *__stream,  const char *__format, 
__builtin_va_list __local_ar
 {
   return __mingw_vfscanf( __stream, __format, __local_argv );
 }
+
+#ifdef __GNUC__
+#pragma GCC diagnostic pop
+#endif
 #endif /* __NO_ISOCEXT */
 
 
@@ -399,6 +408,11 @@ int vsnprintf (char *__stream, size_t __n, const char 
*__format, __builtin_va_li
   int __cdecl asprintf(char ** __restrict__ ret,const char * __restrict__ 
format,...) __attribute__ ((format (__MINGW_PRINTF_FORMAT, 2, 3)));
 #endif /*_GNU_SOURCE*/
 #ifndef __NO_ISOCEXT  /* externs in libmingwex.a */
+#ifdef __GNUC__
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wshadow"
+#endif
+
   __attribute__((__format__ (ms_scanf, 1, 0))) __MINGW_ATTRIB_NONNULL(1)
   int __cdecl __ms_vscanf(const char * __restrict__ Format, va_list argp);
   __attribute__((__format__ (ms_scanf, 2, 0))) __MINGW_ATTRIB_NONNULL(2)
@@ -426,6 +440,10 @@ int vsnprintf (char *__stream, size_t __n, const char 
*__format, __builtin_va_li
     return __ms_vscanf (__format, __local_argv);
   }
 
+#ifdef __GNUC__
+#pragma GCC diagnostic pop
+#endif
+
 #endif /* __NO_ISOCEXT */
 #endif /* __USE_MINGW_ANSI_STDIO */
 
@@ -545,6 +563,12 @@ int vsnprintf (char *__stream, size_t __n, const char 
*__format, __builtin_va_li
 #if !defined (__USE_MINGW_ANSI_STDIO) || __USE_MINGW_ANSI_STDIO == 0
 /* this is here to deal with software defining
  * vsnprintf as _vsnprintf, eg. libxml2.  */
+
+#ifdef __GNUC__
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wshadow"
+#endif
+
 #pragma push_macro("snprintf")
 #pragma push_macro("vsnprintf")
 # undef snprintf
@@ -578,6 +602,9 @@ int snprintf (char * __restrict__ __stream, size_t __n, 
const char * __restrict_
 
 #pragma pop_macro ("vsnprintf")
 #pragma pop_macro ("snprintf")
+#ifdef __GNUC__
+#pragma GCC diagnostic pop
+#endif
 #endif
 
   _CRTIMP int __cdecl _vscprintf(const char * __restrict__ _Format,va_list 
_ArgList);
diff --git a/mingw-w64-headers/crt/uchar.h b/mingw-w64-headers/crt/uchar.h
index 72b377c..475ad87 100644
--- a/mingw-w64-headers/crt/uchar.h
+++ b/mingw-w64-headers/crt/uchar.h
@@ -35,8 +35,13 @@ typedef uint_least16_t char16_t;
 typedef uint_least32_t char32_t;
 #endif
 
+#ifndef __STDC_UTF_16__
 #define __STDC_UTF_16__ 1
+#endif
+
+#ifndef __STDC_UTF_32__
 #define __STDC_UTF_32__ 1
+#endif
 
 #ifdef __cplusplus
 extern "C" {
diff --git a/mingw-w64-headers/direct-x/include/dxgi.h 
b/mingw-w64-headers/direct-x/include/dxgi.h
index d116b89..d056fa3 100644
--- a/mingw-w64-headers/direct-x/include/dxgi.h
+++ b/mingw-w64-headers/direct-x/include/dxgi.h
@@ -108,6 +108,11 @@ extern "C" {
 #define DXGI_STATUS_MODE_CHANGED                    MAKE_DXGI_STATUS(7)
 #define DXGI_STATUS_MODE_CHANGE_IN_PROGRESS         MAKE_DXGI_STATUS(8)
 #define MAKE_DXGI_HRESULT(x)                        MAKE_HRESULT(1, _FACDXGI, 
x)
+
+/* These defines are (incorrectly) duplicated in winerror.h.  Avoid the
+   redefine error.  */
+#ifndef DXGI_ERROR_INVALID_CALL
+
 #define DXGI_ERROR_INVALID_CALL                     MAKE_DXGI_HRESULT(1)
 #define DXGI_ERROR_NOT_FOUND                        MAKE_DXGI_HRESULT(2)
 #define DXGI_ERROR_MORE_DATA                        MAKE_DXGI_HRESULT(3)
@@ -121,6 +126,9 @@ extern "C" {
 #define DXGI_ERROR_DRIVER_INTERNAL_ERROR            MAKE_DXGI_HRESULT(32)
 #define DXGI_ERROR_NONEXCLUSIVE                     MAKE_DXGI_HRESULT(33)
 #define DXGI_ERROR_NOT_CURRENTLY_AVAILABLE          MAKE_DXGI_HRESULT(34)
+
+#endif /* DXGI_ERROR_INVALID_CALL */
+
 #if 0
 typedef HANDLE HMONITOR;
 typedef struct _LUID {
diff --git a/mingw-w64-headers/include/aviriff.h 
b/mingw-w64-headers/include/aviriff.h
index 30e7de3..9f4e664 100755
--- a/mingw-w64-headers/include/aviriff.h
+++ b/mingw-w64-headers/include/aviriff.h
@@ -53,12 +53,12 @@ typedef struct _rifflist {
 #define streamtypeVIDEO FCC('vids')
 #endif
 
-#define AVIF_HASINDEX 0x10
-#define AVIF_MUSTUSEINDEX 0x20
-#define AVIF_ISINTERLEAVED 0x100
-#define AVIF_TRUSTCKTYPE 0x800
-#define AVIF_WASCAPTUREFILE 0x10000
-#define AVIF_COPYRIGHTED 0x20000
+#define AVIF_HASINDEX 0x00000010
+#define AVIF_MUSTUSEINDEX 0x00000020
+#define AVIF_ISINTERLEAVED 0x00000100
+#define AVIF_TRUSTCKTYPE 0x00000800
+#define AVIF_WASCAPTUREFILE 0x00010000
+#define AVIF_COPYRIGHTED 0x00020000
 
 #ifndef AVIIF_LIST
 #define AVIIF_LIST 0x1
@@ -67,8 +67,8 @@ typedef struct _rifflist {
 #define AVIIF_NO_TIME 0x100
 #define AVIIF_COMPRESSOR 0xfff0000
 
-#define AVISF_DISABLED 0x1
-#define AVISF_VIDEO_PALCHANGES 0x10000
+#define AVISF_DISABLED 0x00000001
+#define AVISF_VIDEO_PALCHANGES 0x00010000
 
 #define TIMECODE_RATE_30DROP 0
 
diff --git a/mingw-w64-headers/include/basetyps.h 
b/mingw-w64-headers/include/basetyps.h
index 7c36eca..dbfdcea 100644
--- a/mingw-w64-headers/include/basetyps.h
+++ b/mingw-w64-headers/include/basetyps.h
@@ -78,9 +78,9 @@
 #endif
 
 #define IFACEMETHOD(method) /*override*/ STDMETHOD (method)
-#define IFACEMETHOD_(type, method) /*override*/ STDMETHOD_ (type, method)
+#define IFACEMETHOD_(type, method) /*override*/ STDMETHOD_(type, method)
 #define IFACEMETHODV(method) /*override*/ STDMETHODV (method)
-#define IFACEMETHODV_(type, method) /*override*/ STDMETHODV_ (type, method)
+#define IFACEMETHODV_(type, method) /*override*/ STDMETHODV_(type, method)
 
 #include <guiddef.h>
 
diff --git a/mingw-w64-headers/include/combaseapi.h 
b/mingw-w64-headers/include/combaseapi.h
index 3536e25..ca6483f 100644
--- a/mingw-w64-headers/include/combaseapi.h
+++ b/mingw-w64-headers/include/combaseapi.h
@@ -63,7 +63,7 @@
 #define DECLARE_INTERFACE_IID_(iface, baseiface, iid) interface DECLSPEC_UUID 
(iid) DECLSPEC_NOVTABLE iface : public baseiface
 
 #define IFACEMETHOD(method) STDMETHOD (method)
-#define IFACEMETHOD_(type, method) STDMETHOD_(type, method)
+#define IFACEMETHOD_(type, method) /*override*/ STDMETHOD_(type, method)
 #define IFACEMETHODV(method) STDMETHODV (method)
 #define IFACEMETHODV_(type, method) STDMETHODV_(type, method)
 
@@ -92,9 +92,9 @@ extern "C++" {
 #define STDMETHODV_(type, method) type (STDMETHODVCALLTYPE *method)
 
 #define IFACEMETHOD(method) STDMETHOD (method)
-#define IFACEMETHOD_(type, method) STDMETHOD_ (type, method)
+#define IFACEMETHOD_(type, method) /*override*/ STDMETHOD_(type, method)
 #define IFACEMETHODV(method) STDMETHODV (method)
-#define IFACEMETHODV_(type, method) STDMETHODV_ (type, method)
+#define IFACEMETHODV_(type, method) /*override*/ STDMETHODV_(type, method)
 
 #ifndef BEGIN_INTERFACE
 #define BEGIN_INTERFACE
diff --git a/mingw-w64-headers/include/d2d1.h b/mingw-w64-headers/include/d2d1.h
index bc45785..69b44e9 100644
--- a/mingw-w64-headers/include/d2d1.h
+++ b/mingw-w64-headers/include/d2d1.h
@@ -51,6 +51,9 @@ typedef struct DWRITE_GLYPH_RUN DWRITE_GLYPH_RUN;
 /* enumerations */
 
 #ifndef __MINGW_HAS_DXSDK
+
+#ifndef DXGI_FORMAT_DEFINED
+
 typedef enum D3D10_FEATURE_LEVEL1 {
   D3D10_FEATURE_LEVEL_10_0   = 0xa000,
   D3D10_FEATURE_LEVEL_10_1   = 0xa100,
@@ -163,6 +166,8 @@ typedef enum DXGI_FORMAT {
   DXGI_FORMAT_FORCE_UINT                   = 0xffffffff
 } DXGI_FORMAT, *LPDXGI_FORMAT;
 
+#endif /* DXGI_FORMAT_DEFINED */
+
 #endif /*__MINGW_HAS_DXSDK*/
 
 #ifndef __IDWriteRenderingParams_FWD_DEFINED__
diff --git a/mingw-w64-headers/include/gpedit.h 
b/mingw-w64-headers/include/gpedit.h
index 6b980f4..c611395 100644
--- a/mingw-w64-headers/include/gpedit.h
+++ b/mingw-w64-headers/include/gpedit.h
@@ -11,7 +11,7 @@ 
DEFINE_GUID(NODEID_UserSWSettings,0x8fc0b73c,0xa0e1,0x11d1,0xa7,0xd3,0x0,0x0,0xf
 
DEFINE_GUID(IID_IGPEInformation,0x8fc0b735,0xa0e1,0x11d1,0xa7,0xd3,0x0,0x0,0xf8,0x75,0x71,0xe3);
 
DEFINE_GUID(CLSID_GroupPolicyObject,0xea502722,0xa23d,0x11d1,0xa7,0xd3,0x0,0x0,0xf8,0x75,0x71,0xe3);
 
DEFINE_GUID(IID_IGroupPolicyObject,0xea502723,0xa23d,0x11d1,0xa7,0xd3,0x0,0x0,0xf8,0x75,0x71,0xe3);
-#define REGISTRY_EXTENSION_GUID { 
0x35378EAC,0x683F,0x11D2,0xA8,0x9A,0x00,0xC0,0x4F,0xBB,0xCF,0xA2 }
+#define REGISTRY_EXTENSION_GUID { 0x35378eac, 0x683f, 0x11d2, 0xa8, 0x9a, 
0x00, 0xc0, 0x4f, 0xbb, 0xcf, 0xa2 }
 
DEFINE_GUID(CLSID_RSOPSnapIn,0x6dc3804b,0x7212,0x458d,0xad,0xb0,0x9a,0x07,0xe2,0xae,0x1f,0xa2);
 
DEFINE_GUID(NODEID_RSOPMachine,0xbd4c1a2e,0x0b7a,0x4a62,0xa6,0xb0,0xc0,0x57,0x75,0x39,0xc9,0x7e);
 
DEFINE_GUID(NODEID_RSOPMachineSWSettings,0x6a76273e,0xeb8e,0x45db,0x94,0xc5,0x25,0x66,0x3a,0x5f,0x2c,0x1a);
diff --git a/mingw-w64-headers/include/mfapi.h 
b/mingw-w64-headers/include/mfapi.h
index 41f7ffc..e5f8cab 100644
--- a/mingw-w64-headers/include/mfapi.h
+++ b/mingw-w64-headers/include/mfapi.h
@@ -160,16 +160,16 @@ extern "C" {
 #define MF_E_DXGI_NEW_VIDEO_DEVICE ((HRESULT)__MSABI_LONG(0x80041001))
 #define MF_E_DXGI_VIDEO_DEVICE_LOCKED ((HRESULT)__MSABI_LONG(0x80041002))
 
-#define MF_1_BYTE_ALIGNMENT 0x00000000
-#define MF_2_BYTE_ALIGNMENT 0x00000001
-#define MF_4_BYTE_ALIGNMENT 0x00000003
-#define MF_8_BYTE_ALIGNMENT 0x00000007
-#define MF_16_BYTE_ALIGNMENT 0x0000000f
-#define MF_32_BYTE_ALIGNMENT 0x0000001f
-#define MF_64_BYTE_ALIGNMENT 0x0000003f
-#define MF_128_BYTE_ALIGNMENT 0x0000007f
-#define MF_256_BYTE_ALIGNMENT 0x000000ff
-#define MF_512_BYTE_ALIGNMENT 0x000001ff
+#define MF_1_BYTE_ALIGNMENT     0x00000000
+#define MF_2_BYTE_ALIGNMENT     0x00000001
+#define MF_4_BYTE_ALIGNMENT     0x00000003
+#define MF_8_BYTE_ALIGNMENT     0x00000007
+#define MF_16_BYTE_ALIGNMENT    0x0000000f
+#define MF_32_BYTE_ALIGNMENT    0x0000001f
+#define MF_64_BYTE_ALIGNMENT    0x0000003f
+#define MF_128_BYTE_ALIGNMENT   0x0000007f
+#define MF_256_BYTE_ALIGNMENT   0x000000ff
+#define MF_512_BYTE_ALIGNMENT   0x000001ff
 
 #endif
 
@@ -329,6 +329,12 @@ extern "C" {
   DEFINE_MEDIATYPE_GUID (MFVideoFormat_RGB555, D3DFMT_X1R5G5B5);
   DEFINE_MEDIATYPE_GUID (MFVideoFormat_RGB565, D3DFMT_R5G6B5);
   DEFINE_MEDIATYPE_GUID (MFVideoFormat_RGB8, D3DFMT_P8);
+
+#ifdef __GNUC__
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wmultichar"
+#endif
+
   DEFINE_MEDIATYPE_GUID (MFVideoFormat_AI44, FCC ('AI44'));
   DEFINE_MEDIATYPE_GUID (MFVideoFormat_AYUV, FCC ('AYUV'));
   DEFINE_MEDIATYPE_GUID (MFVideoFormat_YUY2, FCC ('YUY2'));
@@ -384,6 +390,10 @@ extern "C" {
   DEFINE_MEDIATYPE_GUID (MFVideoFormat_H263, FCC ('H263'));
 #endif
 
+#ifdef __GNUC__
+#pragma GCC diagnostic push
+#endif
+
 #ifdef LOCAL_D3DFMT_DEFINES
 #undef D3DFMT_R8G8B8
 #undef D3DFMT_A8R8G8B8
diff --git a/mingw-w64-headers/include/mfidl.h 
b/mingw-w64-headers/include/mfidl.h
index 76e8ae3..1658e58 100644
--- a/mingw-w64-headers/include/mfidl.h
+++ b/mingw-w64-headers/include/mfidl.h
@@ -3399,12 +3399,12 @@ typedef struct _MFNetCredentialManagerGetParam {
 #define MF_2_BYTE_ALIGNMENT     0x00000001
 #define MF_4_BYTE_ALIGNMENT     0x00000003
 #define MF_8_BYTE_ALIGNMENT     0x00000007
-#define MF_16_BYTE_ALIGNMENT    0x0000000F
-#define MF_32_BYTE_ALIGNMENT    0x0000001F
-#define MF_64_BYTE_ALIGNMENT    0x0000003F
-#define MF_128_BYTE_ALIGNMENT   0x0000007F
-#define MF_256_BYTE_ALIGNMENT   0x000000FF
-#define MF_512_BYTE_ALIGNMENT   0x000001FF
+#define MF_16_BYTE_ALIGNMENT    0x0000000f
+#define MF_32_BYTE_ALIGNMENT    0x0000001f
+#define MF_64_BYTE_ALIGNMENT    0x0000003f
+#define MF_128_BYTE_ALIGNMENT   0x0000007f
+#define MF_256_BYTE_ALIGNMENT   0x000000ff
+#define MF_512_BYTE_ALIGNMENT   0x000001ff
 
 #define MEDIASINK_FIXED_STREAMS                 0x00000001
 #define MEDIASINK_CANNOT_MATCH_CLOCK            0x00000002
diff --git a/mingw-w64-headers/include/mftransform.h 
b/mingw-w64-headers/include/mftransform.h
index 1663d74..e42c3f4 100644
--- a/mingw-w64-headers/include/mftransform.h
+++ b/mingw-w64-headers/include/mftransform.h
@@ -701,30 +701,30 @@ void __RPC_STUB IMFTransform_ProcessMessage_Stub(
 
 #endif  /* __IMFTransform_INTERFACE_DEFINED__ */
 
-EXTERN_C const DECLSPEC_SELECTANY PROPERTYKEY MFPKEY_CLSID = 
{{0xc57a84c0,0x1a80,0x40a3,{0x97,0xb5,0x92,0x72,0xa4,0x3,0xc8,0xae}}, 0x01};
-EXTERN_C const DECLSPEC_SELECTANY PROPERTYKEY MFPKEY_CATEGORY = 
{{0xc57a84c0,0x1a80,0x40a3,{0x97,0xb5,0x92,0x72,0xa4,0x3,0xc8,0xae}}, 0x02 };
-EXTERN_C const DECLSPEC_SELECTANY PROPERTYKEY MFPKEY_EXATTRIBUTE_SUPPORTED = 
{{0x456fe843,0x3c87,0x40c0,{0x94,0x9d,0x14,0x9,0xc9,0x7d,0xab,0x2c}}, 0x01};
-EXTERN_C const DECLSPEC_SELECTANY PROPERTYKEY MFPKEY_MULTICHANNEL_CHANNEL_MASK 
 = {{0x58bdaf8c,0x3224,0x4692,{0x86,0xd0,0x44,0xd6,0x5c,0x5b,0xf8,0x2b}}, 0x01};
-EXTERN_C const DECLSPEC_SELECTANY GUID MF_SA_D3D_AWARE = 
{0xeaa35c29,0x775e,0x488e,{0x9b,0x61,0xb3,0x28,0x3e,0x49,0x58,0x3b}};
-EXTERN_C const DECLSPEC_SELECTANY GUID MF_SA_REQUIRED_SAMPLE_COUNT = 
{0x18802c61,0x324b,0x4952,{0xab,0xd0,0x17,0x6f,0xf5,0xc6,0x96,0xff}};
-EXTERN_C const DECLSPEC_SELECTANY GUID MF_TRANSFORM_ASYNC = 
{0xf81a699a,0x649a,0x497d,{0x8c,0x73,0x29,0xf8,0xfe,0xd6,0xad,0x7a}};
-EXTERN_C const DECLSPEC_SELECTANY GUID MF_TRANSFORM_ASYNC_UNLOCK = 
{0xe5666d6b,0x3422,0x4eb6,{0xa4,0x21,0xda,0x7d,0xb1,0xf8,0xe2,0x7}};
-EXTERN_C const DECLSPEC_SELECTANY GUID MF_TRANSFORM_FLAGS_Attribute = 
{0x9359bb7e,0x6275,0x46c4,{0xa0,0x25,0x1c,0x1,0xe4,0x5f,0x1a,0x86}};
-EXTERN_C const DECLSPEC_SELECTANY GUID MF_TRANSFORM_CATEGORY_Attribute = 
{0xceabba49,0x506d,0x4757,{0xa6,0xff,0x66,0xc1,0x84,0x98,0x7e,0x4e}};
-EXTERN_C const DECLSPEC_SELECTANY GUID MFT_TRANSFORM_CLSID_Attribute = 
{0x6821c42b,0x65a4,0x4e82,{0x99,0xbc,0x9a,0x88,0x20,0x5e,0xcd,0xc}};
-EXTERN_C const DECLSPEC_SELECTANY GUID MFT_INPUT_TYPES_Attributes = 
{0x4276c9b1,0x759d,0x4bf3, {0x9c,0xd0,0xd,0x72,0x3d,0x13,0x8f,0x96}};
-EXTERN_C const DECLSPEC_SELECTANY GUID MFT_OUTPUT_TYPES_Attributes = 
{0x8eae8cf3,0xa44f,0x4306,{0xba,0x5c,0xbf,0x5d,0xda,0x24,0x28,0x18}};
-EXTERN_C const DECLSPEC_SELECTANY GUID MFT_ENUM_HARDWARE_URL_Attribute = 
{0x2fb866ac,0xb078,0x4942,{0xab,0x6c,0x0,0x3d,0x5,0xcd,0xa6,0x74}};
-EXTERN_C const DECLSPEC_SELECTANY GUID MFT_FRIENDLY_NAME_Attribute = 
{0x314ffbae,0x5b41,0x4c95,{0x9c,0x19,0x4e,0x7d,0x58,0x6f,0xac,0xe3}};
-EXTERN_C const DECLSPEC_SELECTANY GUID MFT_CONNECTED_STREAM_ATTRIBUTE  = 
{0x71eeb820,0xa59f,0x4de2,{0xbc,0xec,0x38,0xdb,0x1d,0xd6,0x11,0xa4}};
-EXTERN_C const DECLSPEC_SELECTANY GUID MFT_CONNECTED_TO_HW_STREAM = 
{0x34e6e728,0x6d6,0x4491,{0xa5,0x53,0x47,0x95,0x65,0xd,0xb9,0x12}};
-EXTERN_C const DECLSPEC_SELECTANY GUID MFT_PREFERRED_OUTPUTTYPE_Attribute = 
{0x7e700499,0x396a,0x49ee,{0xb1,0xb4,0xf6,0x28,0x2,0x1e,0x8c,0x9d}};
-EXTERN_C const DECLSPEC_SELECTANY GUID MFT_PROCESS_LOCAL_Attribute = 
{0x543186e4,0x4649,0x4e65,{0xb5,0x88,0x4a,0xa3,0x52,0xaf,0xf3,0x79}};
-EXTERN_C const DECLSPEC_SELECTANY GUID MFT_PREFERRED_ENCODER_PROFILE = 
{0x53004909,0x1ef5,0x46d7,{0xa1,0x8e,0x5a,0x75,0xf8,0xb5,0x90,0x5f}};
-EXTERN_C const DECLSPEC_SELECTANY GUID MFT_HW_TIMESTAMP_WITH_QPC_Attribute = 
{0x8d030fb8,0xcc43,0x4258,{0xa2,0x2e,0x92,0x10,0xbe,0xf8,0x9b,0xe4}};
-EXTERN_C const DECLSPEC_SELECTANY GUID MFT_FIELDOFUSE_UNLOCK_Attribute = 
{0x8ec2e9fd,0x9148,0x410d,{0x83,0x1e,0x70,0x24,0x39,0x46,0x1a,0x8e}};
-EXTERN_C const DECLSPEC_SELECTANY GUID MFT_CODEC_MERIT_Attribute = 
{0x88a7cb15,0x7b07,0x4a34,{0x91,0x28,0xe6,0x4c,0x67,0x3,0xc4,0xd3}};
-EXTERN_C const DECLSPEC_SELECTANY GUID MFT_ENUM_TRANSCODE_ONLY_ATTRIBUTE = 
{0x111ea8cd,0xb62a,0x4bdb,{0x89,0xf6,0x67,0xff,0xcd,0xc2,0x45,0x8b}};
+const DECLSPEC_SELECTANY PROPERTYKEY MFPKEY_CLSID = 
{{0xc57a84c0,0x1a80,0x40a3,{0x97,0xb5,0x92,0x72,0xa4,0x3,0xc8,0xae}}, 0x01};
+const DECLSPEC_SELECTANY PROPERTYKEY MFPKEY_CATEGORY = 
{{0xc57a84c0,0x1a80,0x40a3,{0x97,0xb5,0x92,0x72,0xa4,0x3,0xc8,0xae}}, 0x02 };
+const DECLSPEC_SELECTANY PROPERTYKEY MFPKEY_EXATTRIBUTE_SUPPORTED = 
{{0x456fe843,0x3c87,0x40c0,{0x94,0x9d,0x14,0x9,0xc9,0x7d,0xab,0x2c}}, 0x01};
+const DECLSPEC_SELECTANY PROPERTYKEY MFPKEY_MULTICHANNEL_CHANNEL_MASK  = 
{{0x58bdaf8c,0x3224,0x4692,{0x86,0xd0,0x44,0xd6,0x5c,0x5b,0xf8,0x2b}}, 0x01};
+const DECLSPEC_SELECTANY GUID MF_SA_D3D_AWARE = 
{0xeaa35c29,0x775e,0x488e,{0x9b,0x61,0xb3,0x28,0x3e,0x49,0x58,0x3b}};
+const DECLSPEC_SELECTANY GUID MF_SA_REQUIRED_SAMPLE_COUNT = 
{0x18802c61,0x324b,0x4952,{0xab,0xd0,0x17,0x6f,0xf5,0xc6,0x96,0xff}};
+const DECLSPEC_SELECTANY GUID MF_TRANSFORM_ASYNC = 
{0xf81a699a,0x649a,0x497d,{0x8c,0x73,0x29,0xf8,0xfe,0xd6,0xad,0x7a}};
+const DECLSPEC_SELECTANY GUID MF_TRANSFORM_ASYNC_UNLOCK = 
{0xe5666d6b,0x3422,0x4eb6,{0xa4,0x21,0xda,0x7d,0xb1,0xf8,0xe2,0x7}};
+const DECLSPEC_SELECTANY GUID MF_TRANSFORM_FLAGS_Attribute = 
{0x9359bb7e,0x6275,0x46c4,{0xa0,0x25,0x1c,0x1,0xe4,0x5f,0x1a,0x86}};
+const DECLSPEC_SELECTANY GUID MF_TRANSFORM_CATEGORY_Attribute = 
{0xceabba49,0x506d,0x4757,{0xa6,0xff,0x66,0xc1,0x84,0x98,0x7e,0x4e}};
+const DECLSPEC_SELECTANY GUID MFT_TRANSFORM_CLSID_Attribute = 
{0x6821c42b,0x65a4,0x4e82,{0x99,0xbc,0x9a,0x88,0x20,0x5e,0xcd,0xc}};
+const DECLSPEC_SELECTANY GUID MFT_INPUT_TYPES_Attributes = 
{0x4276c9b1,0x759d,0x4bf3, {0x9c,0xd0,0xd,0x72,0x3d,0x13,0x8f,0x96}};
+const DECLSPEC_SELECTANY GUID MFT_OUTPUT_TYPES_Attributes = 
{0x8eae8cf3,0xa44f,0x4306,{0xba,0x5c,0xbf,0x5d,0xda,0x24,0x28,0x18}};
+const DECLSPEC_SELECTANY GUID MFT_ENUM_HARDWARE_URL_Attribute = 
{0x2fb866ac,0xb078,0x4942,{0xab,0x6c,0x0,0x3d,0x5,0xcd,0xa6,0x74}};
+const DECLSPEC_SELECTANY GUID MFT_FRIENDLY_NAME_Attribute = 
{0x314ffbae,0x5b41,0x4c95,{0x9c,0x19,0x4e,0x7d,0x58,0x6f,0xac,0xe3}};
+const DECLSPEC_SELECTANY GUID MFT_CONNECTED_STREAM_ATTRIBUTE  = 
{0x71eeb820,0xa59f,0x4de2,{0xbc,0xec,0x38,0xdb,0x1d,0xd6,0x11,0xa4}};
+const DECLSPEC_SELECTANY GUID MFT_CONNECTED_TO_HW_STREAM = 
{0x34e6e728,0x6d6,0x4491,{0xa5,0x53,0x47,0x95,0x65,0xd,0xb9,0x12}};
+const DECLSPEC_SELECTANY GUID MFT_PREFERRED_OUTPUTTYPE_Attribute = 
{0x7e700499,0x396a,0x49ee,{0xb1,0xb4,0xf6,0x28,0x2,0x1e,0x8c,0x9d}};
+const DECLSPEC_SELECTANY GUID MFT_PROCESS_LOCAL_Attribute = 
{0x543186e4,0x4649,0x4e65,{0xb5,0x88,0x4a,0xa3,0x52,0xaf,0xf3,0x79}};
+const DECLSPEC_SELECTANY GUID MFT_PREFERRED_ENCODER_PROFILE = 
{0x53004909,0x1ef5,0x46d7,{0xa1,0x8e,0x5a,0x75,0xf8,0xb5,0x90,0x5f}};
+const DECLSPEC_SELECTANY GUID MFT_HW_TIMESTAMP_WITH_QPC_Attribute = 
{0x8d030fb8,0xcc43,0x4258,{0xa2,0x2e,0x92,0x10,0xbe,0xf8,0x9b,0xe4}};
+const DECLSPEC_SELECTANY GUID MFT_FIELDOFUSE_UNLOCK_Attribute = 
{0x8ec2e9fd,0x9148,0x410d,{0x83,0x1e,0x70,0x24,0x39,0x46,0x1a,0x8e}};
+const DECLSPEC_SELECTANY GUID MFT_CODEC_MERIT_Attribute = 
{0x88a7cb15,0x7b07,0x4a34,{0x91,0x28,0xe6,0x4c,0x67,0x3,0xc4,0xd3}};
+const DECLSPEC_SELECTANY GUID MFT_ENUM_TRANSCODE_ONLY_ATTRIBUTE = 
{0x111ea8cd,0xb62a,0x4bdb,{0x89,0xf6,0x67,0xff,0xcd,0xc2,0x45,0x8b}};
 #if (WINVER >= 0x0601)
 HRESULT WINAPI MFCreateTransformActivate(IMFActivate **ppActivate);
 #endif /*(WINVER >= 0x0601)*/
diff --git a/mingw-w64-headers/include/ntdef.h 
b/mingw-w64-headers/include/ntdef.h
index 4be8c14..e3e29e7 100644
--- a/mingw-w64-headers/include/ntdef.h
+++ b/mingw-w64-headers/include/ntdef.h
@@ -694,14 +694,14 @@ typedef struct _GROUP_AFFINITY {
 #define MAXUCHAR  0xff
 #define MAXUSHORT 0xffff
 #define MAXULONG  0xffffffff
-#define MAXLONGLONG (0x7fffffffffffffffLL)
+#define MAXLONGLONG (0x7fffffffffffffffll)
 
 /* Multiplication and Shift Operations */
-#define Int32x32To64(a,b) ((LONGLONG)(a)*(LONGLONG)(b))
-#define UInt32x32To64(a,b) ((ULONGLONG)(a)*(ULONGLONG)(b))
-#define Int64ShllMod32(a,b) ((ULONGLONG)(a)<<(b))
-#define Int64ShraMod32(a,b) ((LONGLONG)(a)>>(b))
-#define Int64ShrlMod32(a,b) ((ULONGLONG)(a)>>(b))
+#define Int32x32To64(a, b) (((LONGLONG) ((LONG) (a))) * ((LONGLONG) ((LONG) 
(b))))
+#define UInt32x32To64(a, b) (((ULONGLONG) ((unsigned int) (a))) *((ULONGLONG) 
((unsigned int) (b))))
+#define Int64ShllMod32(a, b) (((ULONGLONG) (a)) << (b))
+#define Int64ShraMod32(a, b) (((LONGLONG) (a)) >> (b))
+#define Int64ShrlMod32(a, b) (((ULONGLONG) (a)) >> (b))
 
 /* C_ASSERT Definition */
 #define C_ASSERT(expr) extern char (*c_assert(void)) [(expr) ? 1 : -1]
diff --git a/mingw-w64-headers/include/ntsecapi.h 
b/mingw-w64-headers/include/ntsecapi.h
index 14c1581..d409c02 100644
--- a/mingw-w64-headers/include/ntsecapi.h
+++ b/mingw-w64-headers/include/ntsecapi.h
@@ -1328,10 +1328,6 @@ extern "C" {
 
 #if (_WIN32_WINNT >= 0x0600)
 
-#define POLICY_AUDIT_EVENT_UNCHANGED 0x00000000
-#define POLICY_AUDIT_EVENT_SUCCESS 0x00000001
-#define POLICY_AUDIT_EVENT_FAILURE 0x00000002
-#define POLICY_AUDIT_EVENT_NONE 0x00000004
 #define PER_USER_POLICY_UNCHANGED 0x00
 #define PER_USER_AUDIT_SUCCESS_INCLUDE 0x01
 #define PER_USER_AUDIT_SUCCESS_EXCLUDE 0x02
diff --git a/mingw-w64-headers/include/winnt.h 
b/mingw-w64-headers/include/winnt.h
index 84eb36a..a855801 100644
--- a/mingw-w64-headers/include/winnt.h
+++ b/mingw-w64-headers/include/winnt.h
@@ -1745,10 +1745,10 @@ extern "C" {
 
 #define OUT_OF_PROCESS_FUNCTION_TABLE_CALLBACK_EXPORT_NAME 
"OutOfProcessFunctionTableCallback"
 
-#define UNW_FLAG_NHANDLER   0x00
-#define UNW_FLAG_EHANDLER   0x01
-#define UNW_FLAG_UHANDLER   0x02
-#define UNW_FLAG_CHAININFO  0x04
+#define UNW_FLAG_NHANDLER   0x0
+#define UNW_FLAG_EHANDLER   0x1
+#define UNW_FLAG_UHANDLER   0x2
+#define UNW_FLAG_CHAININFO  0x4
 
 #endif /* end of _AMD64_ */
 
------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. http://sdm.link/zohodev2dev
_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to