================
@@ -3028,6 +3043,19 @@ class CallExpr : public Expr {
 
   bool hasStoredFPFeatures() const { return CallExprBits.HasFPFeatures; }
 
+  bool usesMemberSyntax() const {
+    return CallExprBits.ExplicitObjectMemFunUsingMemberSyntax;
+  }
+  void setUsesMemberSyntax(bool V = true) {
+    CallExprBits.ExplicitObjectMemFunUsingMemberSyntax = V;
+    // Because the source location may be different for explicit
+    // member, we reset the cached values.
+    if (CallExprBits.HasTrailingSourceLoc) {
+      CallExprBits.HasTrailingSourceLoc = false;
+      updateTrailingSourceLoc();
----------------
erichkeane wrote:

Oh, hrmph... My mental benchmark is whether every callexpr gets its `BeginLoc` 
queried at least 1x.  My hope/intuition is that we wouldn't call it very often 
unless doing some sort of ast-dump/etc, but the benchmarks obviously show my 
intuition to be wrong.  So this NOT being a use-initiated cache is perhaps the 
right answer.  So, I think I'm talking myself out of this suggestion :)

https://github.com/llvm/llvm-project/pull/141058
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to