言語拡張機能

コンパイラがサポートする言語拡張機能は以下のように分類できます。

C99 の機能

コンパイラは C99 の言語機能の一部を使用できるようにします。

  • 厳密な C90 の拡張の例としては、// 形式のコメントがあります。

  • 標準 C++ および厳密な C90 両方の拡張の例としては、restrict ポインタがあります。

詳細については、以下のサブセクションを参照して下さい。

標準 C の拡張

コンパイラは厳密な C99 の拡張をサポートします。例えば、旧式の非プロトタイプ定義を無効にする関数プロトタイプです。詳細については、標準の C 言語の拡張機能を参照して下さい。

標準 C のこれらの拡張は C90 でも使用できます。.

標準 C++ の拡張

コンパイラは、クラスメンバの宣言で使用する修飾名のような、厳密な C++ の拡張を数多くサポートしています。詳細については、標準の C++ 言語の拡張機能を参照して下さい。

これらの拡張は標準 C と C90 では使用できません。

標準 C と標準 C++ の拡張

コンパイラは、匿名のクラス、構造体、および共用体のような、厳密な C++ および厳密な C90 に特有な拡張機能の一部をサポートしています。詳細については、標準 C および標準 C++ 言語の拡張機能を参照して下さい。

GNU 拡張機能

GNU コンパイラのいくつかの拡張機能がサポートされています。詳細については、以下を参照して下さい。

ARM 特有の機能拡張

コンパイラは、命令の組み込み関数やその他の組み込み関数のような、ARM コンパイラ特有の拡張機能を数多くサポートしています。詳細については、コンパイラ固有の機能を参照して下さい。

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