c:\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/4.7.1/../../../../x86_64-w64-mingw32/include/intrin.h:235:5: error: declaration of C function 'long int _InterlockedDecrement(volatile long int*)' conflicts with4. winnt.h includes intrin.h where all the Interlocked<something> funcs are declared 6. in winbase.h around line 805 the Interlocked<something> funcs are declared again
The error message doesn't seem to be complaining because they are declared "again." Having 2 prototypes for the same function is not necessarily a problem. As long as they are the same. This message seems to be saying that the definitions are different.
Since you say the definitions are in intrin and winbase (instead of intrin-impl.h), you are not using a real recent build of mingw-w64. Can you post the two conflicting lines? Perhaps I'll be able to offer a clue.
At a guess, there's some type of issue with long vs long32. Is sizeof(long) 32 or 64?
It might also be worth looking at the -E output. Perhaps you are grabbing intrin.h and winbase.h from different mingw-w64 builds?
dw
------------------------------------------------------------------------------ LIMITED TIME SALE - Full Year of Microsoft Training For Just $49.99! 1,500+ hours of tutorials including VisualStudio 2012, Windows 8, SharePoint 2013, SQL 2012, MVC 4, more. BEST VALUE: New Multi-Library Power Pack includes Mobile, Cloud, Java, and UX Design. Lowest price ever! Ends 9/20/13. http://pubads.g.doubleclick.net/gampad/clk?id=58041151&iu=/4140/ostg.clktrk
_______________________________________________ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public