================ @@ -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