1 ビットのみを占める符号付きビットフィールドを検索する

// BitFieldDeclarator [ Bits::LiteralExpr.getIntValue() = 1 ] [ isSigned() ]

1   struct MT {
2       int ii: 1;
3       signed int si: 1;
4   };

符号の保存には 1 ビットが必要なため、値自体のために残っているビットはありません。パターンはメンバー宣言を探します。C および C++ での統一性のため、構造体フィールドおよび和集合フィールドはメンバーと呼ばれます (C++ では、構造体および和集合は特殊タイプのクラスであることがその理由です)。ビット数は、メンバー宣言子に付属しています。数値属性が 1 と等しいかを調べ、組み込み型の述語 'isSignedInt()' を宣言子に適用して、宣言されたメンバーが符号付き整数かどうかを確認します。

ここでも、シーケンス内の構造体メンバーまたは和集合メンバーを一致させるために '[*]' 修飾子が使用されます。