From 92f3d1ff1c365cd02a6c1338ff4bdad9a60ad9f0 Mon Sep 17 00:00:00 2001 From: Ted Kremenek Date: Fri, 22 May 2009 22:34:23 +0000 Subject: [PATCH] Fix PCH crash caused by new assertions in llvm::SmallVector. Use ProtoRefs.data() instead of &ProtoRefs[0] to access the raw buffer. llvm-svn: 72291 --- clang/lib/Frontend/PCHReaderDecl.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/clang/lib/Frontend/PCHReaderDecl.cpp b/clang/lib/Frontend/PCHReaderDecl.cpp index 64c8e6f7c6d1..53dd6df61bf2 100644 --- a/clang/lib/Frontend/PCHReaderDecl.cpp +++ b/clang/lib/Frontend/PCHReaderDecl.cpp @@ -268,7 +268,7 @@ void PCHDeclReader::VisitObjCCategoryDecl(ObjCCategoryDecl *CD) { ProtoRefs.reserve(NumProtoRefs); for (unsigned I = 0; I != NumProtoRefs; ++I) ProtoRefs.push_back(cast(Reader.GetDecl(Record[Idx++]))); - CD->setProtocolList(&ProtoRefs[0], NumProtoRefs, *Reader.getContext()); + CD->setProtocolList(ProtoRefs.data(), NumProtoRefs, *Reader.getContext()); CD->setNextClassCategory(cast_or_null(Reader.GetDecl(Record[Idx++]))); CD->setLocEnd(SourceLocation::getFromRawEncoding(Record[Idx++])); }