================ @@ -3187,9 +3215,48 @@ class CallExpr : public Expr { SourceLocation getRParenLoc() const { return RParenLoc; } void setRParenLoc(SourceLocation L) { RParenLoc = L; } - SourceLocation getBeginLoc() const LLVM_READONLY; - SourceLocation getEndLoc() const LLVM_READONLY; + SourceLocation getBeginLoc() const { + if (CallExprBits.HasTrailingSourceLoc) { + assert(CallExprBits.HasTrailingSourceLoc && "No trailing source loc"); + static_assert(sizeof(CallExpr) <= + offsetToTrailingObjects + sizeof(SourceLocation)); + return *reinterpret_cast<const SourceLocation *>( + reinterpret_cast<const char *>(this) + sizeof(CallExpr)); + } + + if (usesMemberSyntax()) { ---------------- erichkeane wrote:
no curleys on single liners? 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