| March 10, 2009 9:00 PM PDT | |
Modify code to support the use of integer-constant-type suffixes on 64-bit Intel® architecture. If integer-constant-type suffixes are used in the code, you might need to modify the code for use on 64-bit Intel architecture, because the L or l suffix (meaning long) in Windows* 2000 (64-bit) is a 32-bit type. Windows 2000 (64-bit) uses the i64 suffix.
Add a centrally defined macro in the file. This change will make the code generic so that it can be compiled for use on both the UNIX/64* and the Windows 2000 (64-bit) operating systems.
The following code shows the relevant section of the file:
#ifdef _WIN64 |
The corresponding source code is as follows:
// from UNIX/64-cleaned code |
The Windows 2000 post-compile result is as follows:
const long ll= CONST3264(3015);
Related information about migrating other types of constants from 32-bit Intel architecture to 64-bit Intel architecture is covered in the following separate items:
- Ensure that the 64-Bit Compiler Can Find Type Mismatches
- Support Hex Constants on 64-Bit Intel Architecture
Preparing Code for the IA-64 Architecture (Code Clean)
For more complete information about compiler optimizations, see our Optimization Notice.

