28.4.1 コンパイル
-UniObjGenオプションおよび-UniEndianオプションを指定すると英数字定数,および日本語文字定数の文字コードをUnicodeに変換します。-UniObjGenオプションについては,「33.5.14 その他の設定」の「(16) -UniObjGenオプション」を参照してください。-UniEndianオプションについては,「33.5.14 その他の設定」の「(17) -UniEndianオプション」を参照してください。
- 〈この項の構成〉
(1) -UniObjGenオプションと-UniEndianオプションの関係
-UniObjGenオプションと-UniEndianオプションの関係を,次に示します。
-UniObjGenオプション指定 |
-UniEndianオプション指定 |
|||
---|---|---|---|---|
-UniEndian,Little |
-UniEndian,Big |
指定なし (デフォルト) |
||
指定あり |
日本語文字定数 |
UTF-16LEに変換 |
UTF-16BEに変換 |
UTF-16LEに変換 |
英数字定数 |
UTF-8に変換(-UniEndianオプションの影響はない) |
|||
指定なし |
無変換 |
(2) -UniObjGenオプション指定時の注意事項
-UniObjGenオプション指定時の注意事項を次に示します。
-
-UniObjGenオプション指定の有無が異なるCOBOLプログラムを混在して実行することはできません。混在して実行した場合,動作は保証しません。
-
前提条件を満たしていない環境で-UniObjGenオプションを指定してコンパイルした場合,コンパイルエラーとなります。前提条件を満たしていない環境を次に示します。
-
コード変換ライブラリがインストールされていない場合
-
使用するコード変換ライブラリが前提バージョンに満たない場合
-
-
NATIVE指定以外の符号系名を,実行用計算機段落のPROGRAM COLLATING SEQUENCE句,またはSORT,MERGE文のCOLLATING SEQUENCE句に指定した場合,コンパイルエラーとなります。
-
-Switch,EBCDIKオプションまたは-Switch,EBCDICオプションと-UniObjGenオプションを同時に指定した場合,コンパイルエラーとなります。
-
コンパイル中にコード変換に失敗した場合,コンパイルエラーとなります。
-
-JPNオプション,-CompatiV3オプション,-V3Recオプションは指定できません。ただし,コンパイラ環境変数CBLV3UNICODEにYESを指定すると,-UniObjGenオプションと-CompatiV3または-V3Recオプションを同時に指定できます。コンパイラ環境変数CBLV3UNICODEについては,「33.6.3 コンパイラ環境変数の詳細」の「(22) CBLV3UNICODE」を参照してください。