bnbarham added inline comments.

================
Comment at: clang/include/clang/Basic/SourceManager.h:147-163
   /// Indicates whether the buffer itself was provided to override
   /// the actual file contents.
   ///
   /// When true, the original entry may be a virtual file that does not
   /// exist.
   unsigned BufferOverridden : 1;
 
----------------
benlangmuir wrote:
> dexonsmith wrote:
> > Have you thought about whether it makes sense for these fields to be shared 
> > for all `FileEntryRef`s to the same `FileEntry`?  (Maybe it does! just 
> > checking)
> Yes, I think this split actually makes the behaviour clearer. The remaining 
> fields are related to the contents, while the extracted fields are for the 
> name.  You only need one SourceLineCache, etc. for one set of file contents.
Makes sense to me. Might be worth adding a comment for that when you're done + 
fixing up the comment on `ContentsEntry` since it still references `Entry` 
(which I assume is what `OrigEntry` used to be called?).


================
Comment at: clang/include/clang/Basic/SourceManager.h:314
   /// Return a FileInfo object.
-  static FileInfo get(SourceLocation IL, ContentCache &Con,
-                      CharacteristicKind FileCharacter, StringRef Filename) {
+  static FileInfo get(SourceLocation IL, NamedContentCache &Con,
+                      CharacteristicKind FileCharacter) {
----------------
I believe `NamedContentCache` can be `const` here now that we're not setting 
its filename.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D137304/new/

https://reviews.llvm.org/D137304

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to