При компиляции для x64 разница между int и long находится где-то между 0 и 4 байтами, в зависимости от того, какой компилятор вы используете.
GCC использует модель LP64, что означает, что ints 32-битные но longs 64-бит в 64-битном режиме.
Например, MSVC использует модель LLP64, что означает, что и ints, и longs являются 32-битными даже в 64-битном режиме.