ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
Oracle Solaris Studio 12.3: C ユーザーガイド Oracle Solaris Studio 12.3 Information Library (日本語) |
2.11.3 does_not_read_global_data
2.11.5 does_not_write_global_data
2.11.26 warn_missing_parameter_info
2.14.5 __FUNCTION__ と __PRETTY_FUNCTION__
2.16.1 -I- オプションによる検索アルゴリズムの変更
2.18 Intel MMX および拡張 x86 プラットフォーム組み込み関数のためのコンパイラサポート
次の書式で指定します。
#assert predicate (token-sequence)
token-sequence は、表明の名前空間 (マクロ定義用の空間から分離されている) にある述語と関連付けられます。述語は識別子トークンでなければいけません。
#assert predicate
これは述語が存在していることを表明しますが、それにトークン列を関連付けることはしません。
コンパイラは、次のような事前定義された述語をデフォルトとして提供しています (-Xc モードを除く)。
#assert system (unix) #assert machine (sparc) #assert machine (i386)(x86) #assert cpu (sparc) #assert cpu (i386)(x86)
lint は、次のような事前定義された述語をデフォルトとして提供しています (-Xc モードを除く)。
#assert lint (on)
表明は #unassert を使用して削除できます。この場合、assert と同じ構文が使用されます。引数なしで #unassert を使用すると述語に対するすべての表明が削除され、表明を指定すればその表明だけが削除されます。
表明は、次の構文を持つ #if 文でテストすることができます。
#if #predicate(non-empty token-list)
たとえば次の行を使って、事前定義された述語 system をテストできます。これは真と評価されます。
#if #system(unix)