Index: clang/lib/Serialization/ASTReader.cpp =================================================================== --- clang/lib/Serialization/ASTReader.cpp +++ clang/lib/Serialization/ASTReader.cpp @@ -4863,10 +4863,11 @@ if (!NeedsImports) break; - unsigned Idx = 0, N = Record.size(); - while (Idx < N) { + // Kind, ImportLoc, Size, ModTime, Signature + unsigned chunkSize = 1+1+1+1+5; + unsigned N = Record.size(); + for (unsigned Idx = chunkSize; Idx < N; Idx += chunkSize) { // Read information about the AST file. - Idx += 1+1+1+1+5; // Kind, ImportLoc, Size, ModTime, Signature std::string ModuleName = ReadString(Record, Idx); std::string Filename = ReadString(Record, Idx); ResolveImportedPath(Filename, ModuleDir);