From: Sebastian Redl Date: Tue, 20 Jul 2010 22:55:31 +0000 (+0000) Subject: Apparently not every system thinks that references in pairs are as cool as I think. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=971dd4498f1118abd12e001add0df06e97669b61;p=clang Apparently not every system thinks that references in pairs are as cool as I think. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108959 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/clang/Frontend/PCHReader.h b/include/clang/Frontend/PCHReader.h index 4ef7bf19aa..f2ce6aec31 100644 --- a/include/clang/Frontend/PCHReader.h +++ b/include/clang/Frontend/PCHReader.h @@ -543,7 +543,7 @@ private: llvm::BitstreamCursor &SLocCursorForID(unsigned ID); bool ParseLanguageOptions(const llvm::SmallVectorImpl &Record); - typedef std::pair RecordLocation; + typedef std::pair RecordLocation; QualType ReadTypeRecord(unsigned Index); RecordLocation TypeCursorForIndex(unsigned Index); diff --git a/lib/Frontend/PCHReader.cpp b/lib/Frontend/PCHReader.cpp index 532ba444a2..008f58eaea 100644 --- a/lib/Frontend/PCHReader.cpp +++ b/lib/Frontend/PCHReader.cpp @@ -2160,7 +2160,7 @@ PCHReader::RecordLocation PCHReader::TypeCursorForIndex(unsigned Index) { Index -= F->LocalNumTypes; } assert(F && F->LocalNumTypes > Index && "Broken chain"); - return RecordLocation(F->DeclsCursor, F->TypeOffsets[Index]); + return RecordLocation(&F->DeclsCursor, F->TypeOffsets[Index]); } /// \brief Read and return the type with the given index.. @@ -2171,7 +2171,7 @@ PCHReader::RecordLocation PCHReader::TypeCursorForIndex(unsigned Index) { /// IDs. QualType PCHReader::ReadTypeRecord(unsigned Index) { RecordLocation Loc = TypeCursorForIndex(Index); - llvm::BitstreamCursor &DeclsCursor = Loc.first; + llvm::BitstreamCursor &DeclsCursor = *Loc.first; // Keep track of where we are in the stream, then jump back there // after reading this type. diff --git a/lib/Frontend/PCHReaderDecl.cpp b/lib/Frontend/PCHReaderDecl.cpp index a4c0d8df9a..8ea75b7270 100644 --- a/lib/Frontend/PCHReaderDecl.cpp +++ b/lib/Frontend/PCHReaderDecl.cpp @@ -1264,13 +1264,13 @@ PCHReader::RecordLocation PCHReader::DeclCursorForIndex(unsigned Index) { Index -= F->LocalNumDecls; } assert(F && F->LocalNumDecls > Index && "Broken chain"); - return RecordLocation(F->DeclsCursor, F->DeclOffsets[Index]); + return RecordLocation(&F->DeclsCursor, F->DeclOffsets[Index]); } /// \brief Read the declaration at the given offset from the PCH file. Decl *PCHReader::ReadDeclRecord(unsigned Index) { RecordLocation Loc = DeclCursorForIndex(Index); - llvm::BitstreamCursor &DeclsCursor = Loc.first; + llvm::BitstreamCursor &DeclsCursor = *Loc.first; // Keep track of where we are in the stream, then jump back there // after reading this declaration. SavedStreamPosition SavedPosition(DeclsCursor);