_Alignas 指定子
_Alignof 演算子
_Atomic 修飾子
_Atomic 型指定子
_Noreturn
_Static_assert
_Thread_local 記憶指定子
typedef 再定義の許可
無名構造体/共用体
総称選択
Unicode 文字および文字列
UCN 文字セットの更新の許可
__STDC_ANALYZABLE__ マクロ
__STDC_NO_THREADS__ マクロ
_Alignas ( type-name ) _Alignas ( constant-expression )
_Alignas 指定子は、typedef の宣言、ビットフィールド、関数、パラメータ、または register 記憶クラス指定子で宣言されたオブジェクトでは使用できません。
定数式は整数定数式に評価されます。定数式は、1 から 128 までの間の 2 のべき乗である整数定数式に評価される必要があります。有効な値は、0、1、2、4、8、16、32、64、および 128 です。この値は、宣言対象のオブジェクトまたはメンバーの型に必要なアライメントと同等かそれ以上に厳密なアライメントに評価される必要があります。
_Alignas ( type-name) は _Alignas (_Alignof (type-name)) と同義です。
アライメント指定子 0 には効果がありません。
有効なアライメントは、もっとも厳密なアライメント指定子のアライメントです。
アライメント指定子で宣言されたオブジェクトを指定するときには、そのオブジェクトのその他のすべての宣言で、同じアライメント指定子を使用するか、またはアライメント指定子を使用しないでおく必要があります。オブジェクトのアライメントは、同じオブジェクトを宣言するすべてのソースファイルで同一の方法で指定する必要があり、このように指定しないと動作が未定義になります。
_Alignof ( type-name )
_Alignof 演算子は、そのオペランドの型のアライメント要件を示す整数定数に評価されます。オペランドは評価されません。_Alignof 演算子を関数または不完全な型で使用することはできません。
機能: 6.7.2.4 不可分型指定子
機能: 6.7.3 _Atomic 修飾子
機能: 6.5.2.4 不可分演算子
機能: 6.5.3.1 不可分演算子
機能: 6.5.16.2 不可分演算子
機能: 7.17 不可分
不可分機能では、不可分実行時サポートライブラリとのリンクが必要になることがあります。-xatomic=aを参照してください。
_Noreturn 指定子は、戻らない関数の宣言に次のように配置します。
_Noreturn void leave () { abort(); }
_Static_assert ( constant-expression , string-literal ) ;
ISO/IEC 9899:2011 の Annex D に従って、UCN で許可されている文字セットを更新します。許可されているすべての文字の一覧については、ISO/IEC 9899:2011 Annex D を参照してください。