コンパイラーまたは -Dname オプションによって定義された ID 名 を未定義にする。
-Uname オプションは、#undef プリプロセッサー・ディレクティブと同等ではありません。このオプションでは、#define プリプロセッサー・ディレクティブによってソースで定義された名前を未定義にすることはできません。このオプションで未定義にできるのは、コンパイラーまたは -Dname オプションによって定義された名前のみです。
#undef プリプロセッサー・ディレクティブを使用して、ソース・プログラムにおいて ID 名を未定義にすることもできます。
-Uname オプションの優先順位は、 -Dname オプションよりも上です。
ご使用のオペレーティング・システムが名前 __unix を定義していますが、コンパイルによって定義されている名前にコード・セグメント条件を入力したくないとします。以下のように入力して、名前 __unix の定義が無効となるように myprogram.c をコンパイルします。
xlc myprogram.c -U__unix