[clang] [clang][modules] Remove preloaded SLocEntries from PCM files (PR #66962)

Ben Langmuir via cfe-commits cfe-commits at lists.llvm.org
Tue Oct 3 13:53:01 PDT 2023


================
@@ -458,11 +458,14 @@ SourceManager::AllocateLoadedSLocEntries(unsigned NumSLocEntries,
       CurrentLoadedOffset - TotalSize < NextLocalOffset) {
     return std::make_pair(0, 0);
   }
-  LoadedSLocEntryTable.resize(LoadedSLocEntryTable.size() + NumSLocEntries);
-  SLocEntryLoaded.resize(LoadedSLocEntryTable.size());
+
+  unsigned NewTableSize = LoadedSLocEntryTable.size() + NumSLocEntries;
+  LoadedSLocEntryTableSegments.push_back(NewTableSize);
+  LoadedSLocEntryTable.resize(NewTableSize);
+  SLocEntryLoaded.resize(NewTableSize);
+
   CurrentLoadedOffset -= TotalSize;
-  int ID = LoadedSLocEntryTable.size();
----------------
benlangmuir wrote:

Nit: I find it clearer if we keep the `ID` variable just to clarify the role here since you then return a non-trivial expression using the value.

https://github.com/llvm/llvm-project/pull/66962


More information about the cfe-commits mailing list