diff options
author | Douglas Gregor <dgregor@apple.com> | 2009-05-22 22:45:36 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2009-05-22 22:45:36 +0000 |
commit | 75fdb2377604e53678102076991bea345ace4692 (patch) | |
tree | e6bfa678e090d50a153be63036ed779b9dc516a6 /lib/Frontend/PCHReader.cpp | |
parent | 66ef111b167833c197cded0a1befab4a483d7d6d (diff) |
Fix lots of PCH crashes caused by the new assertions in
llvm::SmallVector, using data() instead of &[0]. The PCH testsuite now
runs cleanly (again).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72292 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Frontend/PCHReader.cpp')
-rw-r--r-- | lib/Frontend/PCHReader.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/Frontend/PCHReader.cpp b/lib/Frontend/PCHReader.cpp index 4da4538f3e..46f4fb7254 100644 --- a/lib/Frontend/PCHReader.cpp +++ b/lib/Frontend/PCHReader.cpp @@ -117,7 +117,7 @@ public: for (unsigned I = 1; I != N; ++I) Args.push_back(Reader.DecodeIdentifierInfo(ReadUnalignedLE32(d))); - return SelTable.getSelector(N, &Args[0]); + return SelTable.getSelector(N, Args.data()); } data_type ReadData(Selector, const unsigned char* d, unsigned DataLen) { @@ -946,7 +946,7 @@ void PCHReader::ReadMacroRecord(uint64_t Offset) { MI->setIsFunctionLike(); if (isC99VarArgs) MI->setIsC99Varargs(); if (isGNUVarArgs) MI->setIsGNUVarargs(); - MI->setArgumentList(&MacroArgs[0], MacroArgs.size(), + MI->setArgumentList(MacroArgs.data(), MacroArgs.size(), PP.getPreprocessorAllocator()); } @@ -1710,7 +1710,7 @@ QualType PCHReader::ReadTypeRecord(uint64_t Offset) { llvm::SmallVector<ObjCProtocolDecl*, 4> Protos; for (unsigned I = 0; I != NumProtos; ++I) Protos.push_back(cast<ObjCProtocolDecl>(GetDecl(Record[Idx++]))); - return Context->getObjCQualifiedInterfaceType(ItfD, &Protos[0], NumProtos); + return Context->getObjCQualifiedInterfaceType(ItfD, Protos.data(), NumProtos); } case pch::TYPE_OBJC_QUALIFIED_ID: { @@ -1719,7 +1719,7 @@ QualType PCHReader::ReadTypeRecord(uint64_t Offset) { llvm::SmallVector<ObjCProtocolDecl*, 4> Protos; for (unsigned I = 0; I != NumProtos; ++I) Protos.push_back(cast<ObjCProtocolDecl>(GetDecl(Record[Idx++]))); - return Context->getObjCQualifiedIdType(&Protos[0], NumProtos); + return Context->getObjCQualifiedIdType(Protos.data(), NumProtos); } } // Suppress a GCC warning |