Home | History | Annotate | Download | only in Sema

Lines Matching defs:Specifier

633   // template has a constexpr specifier then all its declarations shall
634 // contain the constexpr specifier.
1346 /// \brief Check the validity of a C++ base class specifier.
1424 // The class-name in a base-specifier shall not be an incompletely
1453 // If a class is marked final and it appears as a base-type-specifier in
1467 // Create the base specifier.
1473 /// ActOnBaseSpecifier - Parsed a base specifier. A base specifier is
1474 /// one entry in the base class list of a class specifier, for
1589 // Delete the duplicate base class specifier; we're going to
1646 // Delete the base class specifier, since its data has been copied
1722 // FIXME: It would be better if CXXBasePath had the base specifier for
1857 /// ActOnAccessSpecifier - Parsed an access specifier followed by a colon.
1862 assert(Access != AS_none && "Invalid kind for syntactic access specifier!");
1929 // If a function is marked with the virt-specifier override and
1997 /// declarator is parsed. 'AS' is the access specifier, 'BW' specifies the
2067 // duration (auto, register) or with the extern storage-class-specifier.
2068 // C++ 7.1.1p8: The mutable specifier can be applied only to names of class
2166 // The user provided a superfluous scope specifier inside a class
2928 // When the scope specifier can refer to a member of an unknown
3943 // FIXME: Provide a fixit to remove the base specifier. This requires
3944 // tracking the location of the associated comma for a base specifier.
6302 bool operator()(const CXXBaseSpecifier *Specifier, CXXBasePath &Path) {
6304 Specifier->getType()->getAs<RecordType>()->getDecl();
7584 // The use of a nested name specifier may trigger deprecation warnings.
7937 /// Find the base specifier for a base class with the given type.
7986 NestedNameSpecifier *Specifier =
7990 if (!Specifier->getAsType() ||
7991 !Ctx.hasSameType(QualType(Specifier->getAsType(), 0), FoundType))
8409 // nested-name-specifier does not refer to a base class, which is
8418 // Ideally this would point at the last name in the specifier,
8433 // nested-name-specifier shall name a base class of the class
8712 // The use of a nested name specifier may trigger deprecation warnings.
9818 // Create the nested-name-specifier that will be used to qualify the
10179 // order of their declaration in the base-specifier-list, and then the
10599 // base-specifier-list, and then the immediate non-static data members of X
12189 // An elaborated-type-specifier shall be used in a friend declaration
12192 // * The class-key of the elaborated-type-specifier is required.
12235 // friend elaborated-type-specifier ;
12236 // friend simple-type-specifier ;
12237 // friend typename-specifier ;
12242 // If the type specifier in a friend declaration designates a (possibly
12250 /// Handle a friend tag declaration where the scope specifier was
12376 /// declaring a class. So, for example, the elaborated type specifier
12394 // Try to convert the decl specifier to a type. This works for
12518 // - There's no scope specifier and we're in a local class. Only look
12562 // - There's no scope specifier, in which case we just go to the
12569 // elaborated-type-specifier, the lookup to determine whether
12609 // - There's a non-dependent scope specifier, in which case we
12661 // - There's a scope specifier that does not match any template
12664 // - There's a scope specifier that does match some template
12723 // If we performed typo correction, we might have added a scope specifier
13106 // We will always have a nested name specifier here, but this declaration
13107 // might not be out of line if the specifier names the current namespace:
13140 // The type-specifier-seq shall not contain typedef and shall not declare a