https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=5b972d5b297203a7717a4d8f2058867dfac3ab9e
commit 5b972d5b297203a7717a4d8f2058867dfac3ab9e Author: Corinna Vinschen <cori...@vinschen.de> Date: Fri Mar 11 22:50:24 2016 +0100 gmon.h: Fix type of gmonparam state member gmonparam::state is used in calls to Win32 Interlocked functions. Having this defined as int breaks the build on i686. Redefine as LONG (same size and correct type on all platforms) to make gcc happy. Signed-off-by: Corinna Vinschen <cori...@vinschen.de> Diff: --- winsup/cygwin/gmon.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/winsup/cygwin/gmon.h b/winsup/cygwin/gmon.h index b0fb479..fa648a2 100644 --- a/winsup/cygwin/gmon.h +++ b/winsup/cygwin/gmon.h @@ -65,6 +65,9 @@ extern void mcount(void); #ifdef __MINGW32__ #include <_bsd_types.h> #endif /* __MINGW32__*/ +#ifdef __CYGWIN__ +#include <winsup.h> +#endif /* * Structure prepended to gmon.out profiling data file. @@ -153,7 +156,7 @@ struct rawarc { * The profiling data structures are housed in this structure. */ struct gmonparam { - volatile int state; + volatile LONG state; u_short *kcount; size_t kcountsize; u_short *froms;