diff options
Diffstat (limited to 'clang/lib/Serialization/ASTWriter.cpp')
-rw-r--r-- | clang/lib/Serialization/ASTWriter.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/clang/lib/Serialization/ASTWriter.cpp b/clang/lib/Serialization/ASTWriter.cpp index 67e03c23346..8c14b5f3951 100644 --- a/clang/lib/Serialization/ASTWriter.cpp +++ b/clang/lib/Serialization/ASTWriter.cpp @@ -3238,10 +3238,12 @@ void ASTWriter::WriteObjCCategories() { Categories.push_back(0); // Add the categories. - for (ObjCCategoryDecl *Cat = Class->getCategoryList(); - Cat; Cat = Cat->getNextClassCategory(), ++Size) { - assert(getDeclID(Cat) != 0 && "Bogus category"); - AddDeclRef(Cat, Categories); + for (ObjCInterfaceDecl::known_categories_iterator + Cat = Class->known_categories_begin(), + CatEnd = Class->known_categories_end(); + Cat != CatEnd; ++Cat, ++Size) { + assert(getDeclID(*Cat) != 0 && "Bogus category"); + AddDeclRef(*Cat, Categories); } // Update the size. |