Lines Matching full:specifier
39 /// 'namespace' identifier = qualified-namespace-specifier ';'
42 /// 'using' typename[opt] '::'[opt] nested-name-specifier
47 /// 'using' 'namespace' '::'[opt] nested-name-specifier[opt]
76 /// decl-specifier-seq init-declarator-list[opt] ';'
81 /// attribute-specifier-seqopt type-specifier-seq declarator
100 // We don't have to parse all of the decl-specifier-seq part. There's only in isCXXSimpleDeclaration()
101 // an ambiguity if the first decl-specifier is in isCXXSimpleDeclaration()
102 // simple-type-specifier/typename-specifier followed by a '(', which may in isCXXSimpleDeclaration()
125 // Ok, we have a simple-type-specifier/typename-specifier followed by a '(', in isCXXSimpleDeclaration()
147 /// (potentially) starting a decl-specifier.
173 // elaborated-type-specifier: in TryConsumeDeclarationSpecifier()
174 // class-key attribute-specifier-seq[opt] in TryConsumeDeclarationSpecifier()
175 // nested-name-specifier[opt] identifier in TryConsumeDeclarationSpecifier()
176 // class-key nested-name-specifier[opt] template[opt] simple-template-id in TryConsumeDeclarationSpecifier()
177 // enum nested-name-specifier[opt] identifier in TryConsumeDeclarationSpecifier()
225 /// decl-specifier-seq init-declarator-list[opt] ';'
230 /// attribute-specifier-seqopt type-specifier-seq declarator
400 /// type-specifier-seq declarator '=' assignment-expression
401 /// [C++11] type-specifier-seq declarator '=' initializer-clause
402 /// [C++11] type-specifier-seq declarator braced-init-list
403 /// [GNU] type-specifier-seq declarator simple-asm-expr[opt] attributes[opt]
406 /// decl-specifier-seq init-declarator-list[opt] ';'
480 /// type-specifier-seq abstract-declarator[opt]
501 // Ok, we have a simple-type-specifier/typename-specifier followed by a '('. in isCXXTypeId()
506 // type-specifier-seq in isCXXTypeId()
541 /// \brief Returns true if this is a C++11 attribute-specifier. Per
547 /// an attribute-specifier, and return CAK_InvalidAttributeSpecifier if not.
555 /// attribute-specifier:
557 /// alignment-specifier
723 /// type-specifier-seq conversion-declarator[opt]
835 /// '::'[opt] nested-name-specifier '*' cv-qualifier-seq[opt]
857 /// '~' decltype-specifier [TODO]
1014 // Obviously starts a type-specifier-seq: in isExpressionOrTypeSpecifierSimple()
1100 /// specifier, TPResult::False if it is not, TPResult::Ambiguous if it could
1101 /// be either a decl-specifier or a function-style cast, and TPResult::Error
1104 /// If HasMissingTypename is provided, a name with a dependent scope specifier
1111 /// decl-specifier:
1112 /// storage-class-specifier
1113 /// type-specifier
1114 /// function-specifier
1120 /// storage-class-specifier:
1130 /// function-specifier:
1138 /// type-specifier:
1139 /// simple-type-specifier
1140 /// class-specifier
1141 /// enum-specifier
1142 /// elaborated-type-specifier
1143 /// typename-specifier
1146 /// simple-type-specifier:
1147 /// '::'[opt] nested-name-specifier[opt] type-name
1148 /// '::'[opt] nested-name-specifier 'template'
1161 /// [GNU] typeof-specifier
1173 /// elaborated-type-specifier:
1174 /// class-key '::'[opt] nested-name-specifier[opt] identifier
1175 /// class-key '::'[opt] nested-name-specifier[opt] 'template'[opt]
1177 /// 'enum' '::'[opt] nested-name-specifier[opt] identifier
1182 /// enum-specifier:
1186 /// class-specifier:
1191 /// class-key nested-name-specifier identifier base-clause[opt]
1192 /// class-key nested-name-specifier[opt] simple-template-id
1225 switch (TryAnnotateName(false /* no nested name specifier */, in isCXXDeclarationSpecifier()
1243 // This might possibly be a type with a dependent scope specifier and in isCXXDeclarationSpecifier()
1282 // decl-specifier: in isCXXDeclarationSpecifier()
1283 // storage-class-specifier in isCXXDeclarationSpecifier()
1284 // type-specifier in isCXXDeclarationSpecifier()
1285 // function-specifier in isCXXDeclarationSpecifier()
1294 // storage-class-specifier in isCXXDeclarationSpecifier()
1303 // function-specifier in isCXXDeclarationSpecifier()
1314 // type-specifier: in isCXXDeclarationSpecifier()
1315 // simple-type-specifier in isCXXDeclarationSpecifier()
1316 // class-specifier in isCXXDeclarationSpecifier()
1317 // enum-specifier in isCXXDeclarationSpecifier()
1318 // elaborated-type-specifier in isCXXDeclarationSpecifier()
1319 // typename-specifier in isCXXDeclarationSpecifier()
1322 // class-specifier in isCXXDeclarationSpecifier()
1323 // elaborated-type-specifier in isCXXDeclarationSpecifier()
1328 // enum-specifier in isCXXDeclarationSpecifier()
1441 // The ambiguity resides in a simple-type-specifier/typename-specifier in isCXXDeclarationSpecifier()
1454 // simple-type-specifier '(' expression-list[opt] ')' in isCXXDeclarationSpecifier()
1457 // simple-type-specifier: in isCXXDeclarationSpecifier()
1556 // typename-specifier in isCXXDeclarationSpecifierAType()
1564 // elaborated-type-specifier in isCXXDeclarationSpecifierAType()
1572 // simple-type-specifier in isCXXDeclarationSpecifierAType()
1606 /// [GNU] typeof-specifier:
1708 /// attribute-specifier-seq[opt] decl-specifier-seq declarator attributes[opt]
1709 /// attribute-specifier-seq[opt] decl-specifier-seq declarator attributes[opt]
1711 /// attribute-specifier-seq[opt] decl-specifier-seq abstract-declarator[opt]
1713 /// attribute-specifier-seq[opt] decl-specifier-seq abstract-declarator[opt]
1740 // An attribute-specifier-seq here is a sign of a function declarator. in TryParseParameterDeclarationClause()
1748 // decl-specifier-seq in TryParseParameterDeclarationClause()
1750 // decl-specifier-seq '{' is not a parameter in C++11. in TryParseParameterDeclarationClause()
1755 // Consume the decl-specifier-seq. We have to look past it, since a in TryParseParameterDeclarationClause()
1773 // Disambiguate what follows the decl-specifier. in TryParseParameterDeclarationClause()