From e284969ae4f29436a6c10673299aae4caa2c578b Mon Sep 17 00:00:00 2001 From: Alex Kremer Date: Mon, 9 Mar 2026 18:36:56 +0000 Subject: [PATCH] chore: Enable clang-tidy `bugprone-pointer-arithmetic-on-polymorphic-object` check (#6469) --- .clang-tidy | 2 +- .../tx/transactors/bridge/XChainBridge.cpp | 16 ++++++++++++++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/.clang-tidy b/.clang-tidy index 42cad608c4..fb702375ea 100644 --- a/.clang-tidy +++ b/.clang-tidy @@ -31,6 +31,7 @@ Checks: "-*, bugprone-no-escape, bugprone-non-zero-enum-to-bool-conversion, bugprone-parent-virtual-call, + bugprone-pointer-arithmetic-on-polymorphic-object, bugprone-posix-return, bugprone-redundant-branch-condition, bugprone-return-const-ref-from-parameter, @@ -95,7 +96,6 @@ Checks: "-*, # bugprone-move-forwarding-reference, # bugprone-switch-missing-default-case, # bugprone-suspicious-stringview-data-usage, -# bugprone-pointer-arithmetic-on-polymorphic-object, # bugprone-optional-value-conversion, # bugprone-too-small-loop-variable, # bugprone-unused-return-value, diff --git a/src/libxrpl/tx/transactors/bridge/XChainBridge.cpp b/src/libxrpl/tx/transactors/bridge/XChainBridge.cpp index 9c18630b61..1454bb7c77 100644 --- a/src/libxrpl/tx/transactors/bridge/XChainBridge.cpp +++ b/src/libxrpl/tx/transactors/bridge/XChainBridge.cpp @@ -868,7 +868,13 @@ applyClaimAttestations( XChainClaimAttestations curAtts{sleClaimID->getFieldArray(sfXChainClaimAttestations)}; auto const newAttResult = onNewAttestations( - curAtts, view, &atts[0], &atts[0] + atts.size(), quorum, signersList, j); + curAtts, + view, + &atts[0], + &atts[0] + atts.size(), // NOLINT(bugprone-pointer-arithmetic-on-polymorphic-object) + quorum, + signersList, + j); // update the claim id sleClaimID->setFieldArray(sfXChainClaimAttestations, curAtts.toSTArray()); @@ -1026,7 +1032,13 @@ applyCreateAccountAttestations( }(); auto const newAttResult = onNewAttestations( - curAtts, view, &atts[0], &atts[0] + atts.size(), quorum, signersList, j); + curAtts, + view, + &atts[0], + &atts[0] + atts.size(), // NOLINT(bugprone-pointer-arithmetic-on-polymorphic-object) + quorum, + signersList, + j); if (!createCID) {