C99 の _Pragma 処理命令

C90 では、マクロ拡張の結果として #pragma ディレクティブを生成することはできません。ただし、C99 の _Pragma 演算子を使用すると、プラグマディレクティブにプリプロセッサマクロを組み込むことができます。_Pragma は、--strict が指定されていない場合に C90 で許可されます。以下に例を示します。

# define RWDATA(X) PRAGMA(arm section rwdata=#X)
# define PRAGMA(X) _Pragma(#X)
RWDATA(foo)  // #pragma arm section rwdata="foo" と同じ
int y = 1;   // y はセクション "foo" に配置する

Show/hide関連項目

Copyright © 2010-2011 ARM. All rights reserved.ARM DUI 0472EJ
Non-ConfidentialID081711