ポータブルコードが目的である場合、通常、コードをすべてのコンパイラによって実装される標準サブセットに制限しようとするため、特に利点はありません。最小公分母と言えますが、それはやや蔑称に見えるかもしれません。
あるコンパイラの別のコンパイラに対する利点は、一般に、コンパイラが提供する拡張機能、含まれるライブラリ、または生成されたコードのパフォーマンスのいずれかにあります。移植性が目的の場合は、どちらにも興味がないでしょう。この場合に関心があるのは、あるコンパイラの別のコンパイラに対する利点ではなく、ISO標準への準拠と準拠です。
初期の商用化では、Watcomは利用可能な最高の最適化コンパイラの1つとして有名でした。ただし、それ以降、プロセッサの開発に追いついているかどうかは疑問です(または、16ビットから32ビットx86への移行ですら!)。
場合によっては利点と見なされる可能性のあるその1つの機能は、DOS、OS / 2、およびWindowsをサポートすることですが、これはおそらく、レガシーシステムのメンテナンスが目的である場合にのみ利点になります。LinuxとBSD、およびx86以外のプロセッサに移植するための取り組みは存在しますが、完全ではありません。GCCはすでに存在し、何年も前から存在しています。
GCCとVC++をサポートできるのであれば、おそらく十分なコンパイラの独立性があることをお勧めします(ただし、(-Wall -Werror
GCCと\W4 \Wx
VC ++では)高い警告レベル設定でコンパイルすることをお勧めします)。コンパイラの移植性は、OSの移植性と比較して些細な問題だと思います。本当に考慮する必要があるのは、コンパイラに依存しないコードのサポートではなく、クロスプラットフォームのライブラリのサポートです。
ただし、コンパイラで遊ぶことが重要な場合は、 DigitalMarsコンパイラも検討してください。Watcomと同様に、これにも商用コンパイラの遺産があり、前世ではZortech / Symantec C /C++コンパイラでした。