where is defined __w64 ?

I am working with VS2010 on a Win7-64 Laptop to build a win32 app.
I have an issue in sourceannotations.h; the error says that a ; is missing. But in fact _WIN64 is not defined. It is defined from __w4. But I can't see where __w64 is defined.

AS someone an idea ?

TIA
jean
I bet __w64 is defined in <windows.h>
It does not need be defined. It should not be defined for a 32 bit application.

See here for how to compile a 64 bit version:

http://stackoverflow.com/questions/1865069/how-to-compile-a-64-bit-application-using-visual-c-2010-express

It is defined from __w4.
What does that mean?
> I can't see where __w64 is defined

__w64 is an obsolete (it is silently ignored by newer versions) microsoft specific keyword.

Any typedef that has __w64 on it must be 32 bits on x86 and 64 bits on x64.

To detect portability issues by using versions of the Visual C++ compiler earlier than Visual Studio 2010, the __w64 keyword should be specified on any typedefs that change size between 32 bit and 64 bit platforms. For any such type, __w64 must appear only on the 32-bit definition of the typedef.
https://msdn.microsoft.com/en-us/library/s04b5w00.aspx
Topic archived. No new replies allowed.