Если не используются специфичечкие борландовские библиотеки (тот же BGI) или ассемблерные вставки (которые чаще всего от компилятора к компилятору отличаются), то
останутся разве что разные #prgama, например, #pragma startup/#pragma exit - придётся вызовы всех startup-функции вручную собирать в начале main в порядке приоритетов и там же ставить вызовы atexit() на все exit-функции.
Но настолько "заборландяченные" исходники я редко видел.