I was using OpenCV and after I installed Microsoft Platform SDK to work with OpenGL these errors are showing up when trying to compile my opencv project.
1>d:\program files\microsoft platform sdk for windows server 2003 r2\include\winnt.h(2645) : error C2733: second C linkage of overloaded function '_interlockedbittestandset' not allowed
1> d:\program files\microsoft platform sdk for windows server 2003 r2\include\winnt.h(2642) : see declaration of '_interlockedbittestandset'
1>d:\program files\microsoft platform sdk for windows server 2003 r2\include\winnt.h(2651) : error C2733: second C linkage of overloaded function '_interlockedbittestandreset' not allowed
1> d:\program files\microsoft platform sdk for windows server 2003 r2\include\winnt.h(2648) : see declaration of '_interlockedbittestandreset'
This solution solved my issue.
Take note that you must ensure that
intrin.h
does not get accidentally included (e.g. by some other header file you use) before this fix below.Resolution: http://stefanobolli.blogspot.com/2010/10/compiler-error-c2733-second-c-linkage.html