|
@@ -2182,7 +2182,7 @@ public:
|
|
TUK_Friend // Friend declaration: 'friend struct foo;'
|
|
TUK_Friend // Friend declaration: 'friend struct foo;'
|
|
};
|
|
};
|
|
|
|
|
|
- Decl *ActOnTag(Scope *S, TypeSpecifierType TagSpec, TagUseKind TUK,
|
|
|
|
|
|
+ Decl *ActOnTag(Scope *S, unsigned TagSpec, TagUseKind TUK,
|
|
SourceLocation KWLoc, CXXScopeSpec &SS, IdentifierInfo *Name,
|
|
SourceLocation KWLoc, CXXScopeSpec &SS, IdentifierInfo *Name,
|
|
SourceLocation NameLoc, AttributeList *Attr,
|
|
SourceLocation NameLoc, AttributeList *Attr,
|
|
AccessSpecifier AS, SourceLocation ModulePrivateLoc,
|
|
AccessSpecifier AS, SourceLocation ModulePrivateLoc,
|
|
@@ -2193,14 +2193,14 @@ public:
|
|
SkipBodyInfo *SkipBody = nullptr);
|
|
SkipBodyInfo *SkipBody = nullptr);
|
|
|
|
|
|
Decl *ActOnTemplatedFriendTag(Scope *S, SourceLocation FriendLoc,
|
|
Decl *ActOnTemplatedFriendTag(Scope *S, SourceLocation FriendLoc,
|
|
- TypeSpecifierType TagSpec, SourceLocation TagLoc,
|
|
|
|
|
|
+ unsigned TagSpec, SourceLocation TagLoc,
|
|
CXXScopeSpec &SS,
|
|
CXXScopeSpec &SS,
|
|
IdentifierInfo *Name, SourceLocation NameLoc,
|
|
IdentifierInfo *Name, SourceLocation NameLoc,
|
|
AttributeList *Attr,
|
|
AttributeList *Attr,
|
|
MultiTemplateParamsArg TempParamLists);
|
|
MultiTemplateParamsArg TempParamLists);
|
|
|
|
|
|
TypeResult ActOnDependentTag(Scope *S,
|
|
TypeResult ActOnDependentTag(Scope *S,
|
|
- TypeSpecifierType TagSpec,
|
|
|
|
|
|
+ unsigned TagSpec,
|
|
TagUseKind TUK,
|
|
TagUseKind TUK,
|
|
const CXXScopeSpec &SS,
|
|
const CXXScopeSpec &SS,
|
|
IdentifierInfo *Name,
|
|
IdentifierInfo *Name,
|
|
@@ -6123,14 +6123,17 @@ public:
|
|
ArrayRef<TemplateParameterList *> ParamLists,
|
|
ArrayRef<TemplateParameterList *> ParamLists,
|
|
bool IsFriend, bool &IsMemberSpecialization, bool &Invalid);
|
|
bool IsFriend, bool &IsMemberSpecialization, bool &Invalid);
|
|
|
|
|
|
- DeclResult CheckClassTemplate(
|
|
|
|
- Scope *S, TypeSpecifierType TagSpec, TagUseKind TUK, SourceLocation KWLoc,
|
|
|
|
- CXXScopeSpec &SS, IdentifierInfo *Name, SourceLocation NameLoc,
|
|
|
|
- AttributeList *Attr, TemplateParameterList *TemplateParams,
|
|
|
|
- AccessSpecifier AS, SourceLocation ModulePrivateLoc,
|
|
|
|
- SourceLocation FriendLoc, unsigned NumOuterTemplateParamLists,
|
|
|
|
- TemplateParameterList **OuterTemplateParamLists,
|
|
|
|
- SkipBodyInfo *SkipBody = nullptr);
|
|
|
|
|
|
+ DeclResult CheckClassTemplate(Scope *S, unsigned TagSpec, TagUseKind TUK,
|
|
|
|
+ SourceLocation KWLoc, CXXScopeSpec &SS,
|
|
|
|
+ IdentifierInfo *Name, SourceLocation NameLoc,
|
|
|
|
+ AttributeList *Attr,
|
|
|
|
+ TemplateParameterList *TemplateParams,
|
|
|
|
+ AccessSpecifier AS,
|
|
|
|
+ SourceLocation ModulePrivateLoc,
|
|
|
|
+ SourceLocation FriendLoc,
|
|
|
|
+ unsigned NumOuterTemplateParamLists,
|
|
|
|
+ TemplateParameterList **OuterTemplateParamLists,
|
|
|
|
+ SkipBodyInfo *SkipBody = nullptr);
|
|
|
|
|
|
TemplateArgumentLoc getTrivialTemplateArgumentLoc(const TemplateArgument &Arg,
|
|
TemplateArgumentLoc getTrivialTemplateArgumentLoc(const TemplateArgument &Arg,
|
|
QualType NTTPType,
|
|
QualType NTTPType,
|
|
@@ -6201,7 +6204,7 @@ public:
|
|
TemplateTy &Template, bool AllowInjectedClassName = false);
|
|
TemplateTy &Template, bool AllowInjectedClassName = false);
|
|
|
|
|
|
DeclResult
|
|
DeclResult
|
|
- ActOnClassTemplateSpecialization(Scope *S, TypeSpecifierType TagSpec, TagUseKind TUK,
|
|
|
|
|
|
+ ActOnClassTemplateSpecialization(Scope *S, unsigned TagSpec, TagUseKind TUK,
|
|
SourceLocation KWLoc,
|
|
SourceLocation KWLoc,
|
|
SourceLocation ModulePrivateLoc,
|
|
SourceLocation ModulePrivateLoc,
|
|
TemplateIdAnnotation &TemplateId,
|
|
TemplateIdAnnotation &TemplateId,
|
|
@@ -6244,7 +6247,7 @@ public:
|
|
ActOnExplicitInstantiation(Scope *S,
|
|
ActOnExplicitInstantiation(Scope *S,
|
|
SourceLocation ExternLoc,
|
|
SourceLocation ExternLoc,
|
|
SourceLocation TemplateLoc,
|
|
SourceLocation TemplateLoc,
|
|
- TypeSpecifierType TagSpec,
|
|
|
|
|
|
+ unsigned TagSpec,
|
|
SourceLocation KWLoc,
|
|
SourceLocation KWLoc,
|
|
const CXXScopeSpec &SS,
|
|
const CXXScopeSpec &SS,
|
|
TemplateTy Template,
|
|
TemplateTy Template,
|
|
@@ -6258,7 +6261,7 @@ public:
|
|
ActOnExplicitInstantiation(Scope *S,
|
|
ActOnExplicitInstantiation(Scope *S,
|
|
SourceLocation ExternLoc,
|
|
SourceLocation ExternLoc,
|
|
SourceLocation TemplateLoc,
|
|
SourceLocation TemplateLoc,
|
|
- TypeSpecifierType TagSpec,
|
|
|
|
|
|
+ unsigned TagSpec,
|
|
SourceLocation KWLoc,
|
|
SourceLocation KWLoc,
|
|
CXXScopeSpec &SS,
|
|
CXXScopeSpec &SS,
|
|
IdentifierInfo *Name,
|
|
IdentifierInfo *Name,
|
|
@@ -10152,7 +10155,7 @@ public:
|
|
SourceLocation OpLoc, bool IsArrow,
|
|
SourceLocation OpLoc, bool IsArrow,
|
|
bool IsBaseExprStatement);
|
|
bool IsBaseExprStatement);
|
|
void CodeCompletePostfixExpression(Scope *S, ExprResult LHS);
|
|
void CodeCompletePostfixExpression(Scope *S, ExprResult LHS);
|
|
- void CodeCompleteTag(Scope *S, TypeSpecifierType TagSpec);
|
|
|
|
|
|
+ void CodeCompleteTag(Scope *S, unsigned TagSpec);
|
|
void CodeCompleteTypeQualifiers(DeclSpec &DS);
|
|
void CodeCompleteTypeQualifiers(DeclSpec &DS);
|
|
void CodeCompleteFunctionQualifiers(DeclSpec &DS, Declarator &D,
|
|
void CodeCompleteFunctionQualifiers(DeclSpec &DS, Declarator &D,
|
|
const VirtSpecifiers *VS = nullptr);
|
|
const VirtSpecifiers *VS = nullptr);
|