================ @@ -5834,9 +5852,12 @@ Sema::ConvertArgumentsForCall(CallExpr *Call, Expr *Fn, // C99 6.5.2.2p7 - the arguments are implicitly converted, as if by // assignment, to the types of the corresponding parameter, ... + + bool AddressOf = isParenthetizedAndQualifiedAddressOfExpr(Fn); bool HasExplicitObjectParameter = - FDecl && FDecl->hasCXXExplicitFunctionObjectParameter(); - unsigned ExplicitObjectParameterOffset = HasExplicitObjectParameter ? 1 : 0; + !AddressOf && FDecl && FDecl->hasCXXExplicitFunctionObjectParameter(); + unsigned ExplicitObjectParameterOffset = + HasExplicitObjectParameter && !AddressOf ? 1 : 0; ---------------- Sirraide wrote:
```suggestion unsigned ExplicitObjectParameterOffset = HasExplicitObjectParameter ? 1 : 0; ``` This change seems redundant because `HasExplicitObjectParameter` already implies `!AddressOf`, right? https://github.com/llvm/llvm-project/pull/93430 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits