Создание «длинных» 4 байтов в gcc на 64-битной машине Linux
Я работаю над переносом приложения на 64-битную версию на платформе Linux. В настоящее время приложение поддерживается в Linux, Windows, Mac 32-битной и Windows 64-битной. Одной из проблем, с которой мы часто сталкиваемся, является использование long для int и наоборот. До сих пор это не было проблемой, поскольку long и int взаимозаменяемы (оба по 4 байта) на платформах, на которых в настоящее время поддерживается приложение. Огромная кодовая база с большим количеством унаследованного кода с #defines для многих типов данных делает трудным поиск во всех случаях использования long и замену соответствующим образом на int.
As a short term solution, is there a way to make GCC use 4 bytes instead of 8 for 'long'? If it has, what are issues that we might face? If not, is there an easier way to fix the long and int problem?