diff options
| author | Douglas Gregor <dgregor@apple.com> | 2009-04-23 02:42:49 +0000 |
|---|---|---|
| committer | Douglas Gregor <dgregor@apple.com> | 2009-04-23 02:42:49 +0000 |
| commit | 9a13efd5b2b7af82c27d63bc171819460689b451 (patch) | |
| tree | 85e03daa564f907b1ed1514dfd444644d12bed40 /clang/lib/Frontend | |
| parent | 0781ce7cce39214b3d860934be70ea1619dedcc1 (diff) | |
| download | bcm5719-llvm-9a13efd5b2b7af82c27d63bc171819460689b451.tar.gz bcm5719-llvm-9a13efd5b2b7af82c27d63bc171819460689b451.zip | |
PCH (de-)serialization for ObjCImplDecl. This can't be tested yet.
llvm-svn: 69855
Diffstat (limited to 'clang/lib/Frontend')
| -rw-r--r-- | clang/lib/Frontend/PCHReader.cpp | 4 | ||||
| -rw-r--r-- | clang/lib/Frontend/PCHWriter.cpp | 3 |
2 files changed, 5 insertions, 2 deletions
diff --git a/clang/lib/Frontend/PCHReader.cpp b/clang/lib/Frontend/PCHReader.cpp index e2cffb54543..c3d4bcfa529 100644 --- a/clang/lib/Frontend/PCHReader.cpp +++ b/clang/lib/Frontend/PCHReader.cpp @@ -322,7 +322,9 @@ void PCHDeclReader::VisitObjCPropertyDecl(ObjCPropertyDecl *D) { void PCHDeclReader::VisitObjCImplDecl(ObjCImplDecl *D) { VisitDecl(D); - // FIXME: Implement. + D->setClassInterface( + cast_or_null<ObjCInterfaceDecl>(Reader.GetDecl(Record[Idx++]))); + D->setLocEnd(SourceLocation::getFromRawEncoding(Record[Idx++])); } void PCHDeclReader::VisitObjCCategoryImplDecl(ObjCCategoryImplDecl *D) { diff --git a/clang/lib/Frontend/PCHWriter.cpp b/clang/lib/Frontend/PCHWriter.cpp index a3b1253a665..36d9170f38a 100644 --- a/clang/lib/Frontend/PCHWriter.cpp +++ b/clang/lib/Frontend/PCHWriter.cpp @@ -493,7 +493,8 @@ void PCHDeclWriter::VisitObjCPropertyDecl(ObjCPropertyDecl *D) { void PCHDeclWriter::VisitObjCImplDecl(ObjCImplDecl *D) { VisitDecl(D); - // FIXME: Implement. + Writer.AddDeclRef(D->getClassInterface(), Record); + Writer.AddSourceLocation(D->getLocEnd(), Record); // Abstract class (no need to define a stable pch::DECL code). } |

