martong added a comment.

Nice and precise work! And special thanks for the unit tests. I've found some 
minor nits.



================
Comment at: clang/include/clang/Analysis/MacroExpansionContext.h:77
+  /// \param MacroExpansionLoc Must be the expansion location of a macro.
+  /// \return The textual representation of the token sequence which were
+  ///         substituted in place of the macro.
----------------
?


================
Comment at: clang/include/clang/Analysis/MacroExpansionContext.h:79-80
+  ///         substituted in place of the macro.
+  ///         If no macro was expanded at that location, returns an empty
+  ///         string.
+  MacroExpansionText
----------------
I think we should have an Optional<String> as a return type, so we'd be able to 
detect if no macro expansion happened. (?)


================
Comment at: clang/include/clang/Analysis/MacroExpansionContext.h:81
+  ///         string.
+  MacroExpansionText
+  getExpandedMacroForLocation(SourceLocation MacroExpansionLoc) const;
----------------
Could this be `StringRef` also?


================
Comment at: clang/include/clang/Analysis/MacroExpansionContext.h:87-88
+  ///         the macro expansion chain from the given location.
+  ///         If no macro was expanded at that location, returns an empty
+  ///         string.
+  StringRef
----------------
We should be able to distinguish between no macro expansion (1) and expansion 
to an empty string (2). So, I think we should have an Optional<StringRef> as a 
return type.


================
Comment at: clang/lib/Analysis/MacroExpansionContext.cpp:39
+
+      SourceLocation ExpansionEnd = [Range, &SM = SM, &MacroName] {
+        // If the range is empty, use the length of the macro.
----------------
?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D93222

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

Reply via email to