for (unsigned I = 0; I != NumProtoRefs; ++I)
ProtoRefs.push_back(cast<ObjCProtocolDecl>(Reader.GetDecl(Record[Idx++])));
CD->setProtocolList(&ProtoRefs[0], NumProtoRefs, Reader.getContext());
- CD->setNextClassCategory(cast<ObjCCategoryDecl>(Reader.GetDecl(Record[Idx++])));
+ unsigned nextCat = Record[Idx++];
+ CD->setNextClassCategory(nextCat ?
+ cast<ObjCCategoryDecl>(Reader.GetDecl(nextCat)) : 0);
CD->setLocEnd(SourceLocation::getFromRawEncoding(Record[Idx++]));
}