--- libxml2-2.9.5/xmlmemory.c.orig 2017-09-25 22:45:17.523292500 -0400 +++ libxml2-2.9.5/xmlmemory.c 2017-09-25 22:57:31.306998000 -0400 @@ -43,6 +43,10 @@ #endif #endif +#ifdef __MINGW32__ +#include /* might be a good idea for other platforms */ +#endif + #include /* must come before xmlmemory.h */ #include #include --- libxml2-2.9.5/timsort.h.orig 2017-09-26 00:19:41.192760300 -0400 +++ libxml2-2.9.5/timsort.h 2017-09-26 00:26:28.440138000 -0400 @@ -402,7 +402,7 @@ static int TIM_SORT_COLLAPSE(SORT_TYPE * } /* if this is the last merge, just do it */ - if ((stack_curr == 2) && (stack[0].length + stack[1].length == size)) { + if ((stack_curr == 2) && ((size_t)(stack[0].length + stack[1].length) == size)) { TIM_SORT_MERGE(dst, stack, stack_curr, store); stack[0].length += stack[1].length; stack_curr--;