зеркало из https://github.com/microsoft/clang-1.git
Don't add the injected class name to the redeclarations chain; the chain should contain actual redeclarations, not implicits.
As a bonus, now we don't deserialize it unless we need it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116504 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Родитель
b972858068
Коммит
3b8f610ac9
|
@ -6056,7 +6056,9 @@ void Sema::ActOnStartCXXMemberDeclarations(Scope *S, Decl *TagD,
|
||||||
CurContext, Record->getLocation(),
|
CurContext, Record->getLocation(),
|
||||||
Record->getIdentifier(),
|
Record->getIdentifier(),
|
||||||
Record->getTagKeywordLoc(),
|
Record->getTagKeywordLoc(),
|
||||||
Record);
|
/*PrevDecl=*/0,
|
||||||
|
/*DelayTypeCreation=*/true);
|
||||||
|
Context.getTypeDeclType(InjectedClassName, Record);
|
||||||
InjectedClassName->setImplicit();
|
InjectedClassName->setImplicit();
|
||||||
InjectedClassName->setAccess(AS_public);
|
InjectedClassName->setAccess(AS_public);
|
||||||
if (ClassTemplateDecl *Template = Record->getDescribedClassTemplate())
|
if (ClassTemplateDecl *Template = Record->getDescribedClassTemplate())
|
||||||
|
|
Загрузка…
Ссылка в новой задаче