summaryrefslogtreecommitdiffstats
path: root/clang/lib/Serialization
diff options
context:
space:
mode:
authorArgyrios Kyrtzidis <akyrtzi@gmail.com>2011-11-23 21:11:23 +0000
committerArgyrios Kyrtzidis <akyrtzi@gmail.com>2011-11-23 21:11:23 +0000
commita72450057b032bc2f21f311d5edfa6200513cf59 (patch)
treee1bd41887f44aaad9761bb1fb91fee6b3b3dda72 /clang/lib/Serialization
parent8ad3bab5057fedbe4cec33e27684d28b22fc97e2 (diff)
downloadbcm5719-llvm-a72450057b032bc2f21f311d5edfa6200513cf59.tar.gz
bcm5719-llvm-a72450057b032bc2f21f311d5edfa6200513cf59.zip
[PCH] Check for isTopLevelDeclInObjCContainer when picking abbreviations.
llvm-svn: 145110
Diffstat (limited to 'clang/lib/Serialization')
-rw-r--r--clang/lib/Serialization/ASTWriterDecl.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/clang/lib/Serialization/ASTWriterDecl.cpp b/clang/lib/Serialization/ASTWriterDecl.cpp
index 22b3acabd4e..ac1f89936d0 100644
--- a/clang/lib/Serialization/ASTWriterDecl.cpp
+++ b/clang/lib/Serialization/ASTWriterDecl.cpp
@@ -184,6 +184,7 @@ void ASTDeclWriter::VisitTypedefDecl(TypedefDecl *D) {
D->RedeclLink.getNext() == D &&
!D->isInvalidDecl() &&
!D->isReferenced() &&
+ !D->isTopLevelDeclInObjCContainer() &&
D->getAccess() == AS_none &&
!D->isModulePrivate() &&
D->getDeclName().getNameKind() == DeclarationName::Identifier)
@@ -234,6 +235,7 @@ void ASTDeclWriter::VisitEnumDecl(EnumDecl *D) {
D->RedeclLink.getNext() == D &&
!D->isInvalidDecl() &&
!D->isReferenced() &&
+ !D->isTopLevelDeclInObjCContainer() &&
D->getAccess() == AS_none &&
!D->isModulePrivate() &&
!CXXRecordDecl::classofKind(D->getKind()) &&
@@ -257,6 +259,7 @@ void ASTDeclWriter::VisitRecordDecl(RecordDecl *D) {
D->RedeclLink.getNext() == D &&
!D->isInvalidDecl() &&
!D->isReferenced() &&
+ !D->isTopLevelDeclInObjCContainer() &&
D->getAccess() == AS_none &&
!D->isModulePrivate() &&
!CXXRecordDecl::classofKind(D->getKind()) &&
@@ -627,6 +630,7 @@ void ASTDeclWriter::VisitFieldDecl(FieldDecl *D) {
!D->isUsed(false) &&
!D->isInvalidDecl() &&
!D->isReferenced() &&
+ !D->isTopLevelDeclInObjCContainer() &&
!D->isModulePrivate() &&
!D->getBitWidth() &&
!D->hasInClassInitializer() &&
@@ -679,6 +683,7 @@ void ASTDeclWriter::VisitVarDecl(VarDecl *D) {
!D->isUsed(false) &&
!D->isInvalidDecl() &&
!D->isReferenced() &&
+ !D->isTopLevelDeclInObjCContainer() &&
D->getAccess() == AS_none &&
!D->isModulePrivate() &&
D->getDeclName().getNameKind() == DeclarationName::Identifier &&
OpenPOWER on IntegriCloud