__w64
(Microsoft Specific) Lets you mark variables, such that when you compile with /Wp64 the compiler will report any warnings that would be reported if you were compiling with a 64-bit compiler.
type __w64 identifier
The /Wp64 compiler option and __w64 keyword are deprecated and will be removed in a future version of the compiler. If you use the /Wp64 compiler option on the command line, the compiler issuesCommand-Line Warning D9035. Instead of using this option and keyword to detect 64-bit portability issues, use a Visual C++ compiler that targets a 64-bit platform. For more information, see 64-Bit Programming with Visual C++. |
Any typedef that has __w64 on it must be 32 bits on x86 and 64 bits on Itanium Processor Family (IPF).
The __w64 keyword should be specified on any typedefs that change size between 32 bit and 64 bit platforms. For any such type, __w64 should appear only on the 32-bit definition of the typedef.
The __w64 keyword is ignored if the compilation does not use /Wp64.
For more information about porting to 64-bit, see the following topics:
// __w64.cpp // compile with: /W3 /Wp64 typedef int Int_32; #ifdef _WIN64 typedef __int64 Int_Native; #else typedef int __w64 Int_Native; #endif int main() { Int_32 i0 = 5; Int_Native i1 = 10; i0 = i1; // C4244 64-bit int assigned to 32-bit int // char __w64 c; error, cannot use __w64 on char }