Oracle® Solaris Studio 12.4: C ユーザーガイド

印刷ビューの終了

更新: 2014 年 12 月
 
 

6.11.2 分割コンパイル間の互換性

各コンパイルはおそらく別々のソースファイルを参照するため、分割コンパイル間の互換型に対して、ほとんどの規則は事実上次のように構造化されています。

  • 一致するスカラー (整数、浮動小数点、およびポインタ) 型は、同じソースファイル内にある場合のように、互換性を持たなければならない。

  • 一致する構造体、共用体、および enum のメンバー数は同じでなければならない。一致する各メンバーは (分割コンパイルという意味で) 互換型を持たなければならない (ビットフィールド幅も含む)。

  • 一致する構造体のメンバーの順番は、同じでなければならない。共用体と enum 型のメンバーの順番は問題にならない。

  • 一致する enum 型のメンバーの値は、同じでなければならない。

    さらに、構造体、共用体、および enum 型のメンバーの名前 (名前なしメンバーに名前がないということ) も一致しなければいけませんが、それぞれのタグは必ずしも一致する必要はありません。