diff --git a/src/ripple/app/misc/FeeVoteImpl.cpp b/src/ripple/app/misc/FeeVoteImpl.cpp index 5eb6b537f34..570d16ba8da 100644 --- a/src/ripple/app/misc/FeeVoteImpl.cpp +++ b/src/ripple/app/misc/FeeVoteImpl.cpp @@ -277,37 +277,42 @@ FeeVoteImpl::doVoting( } // choose our positions - auto const [baseFee, baseFeeChanged] = baseFeeVote.getVotes(); - auto const [baseReserve, baseReserveChanged] = baseReserveVote.getVotes(); - auto const [incReserve, incReserveChanged] = incReserveVote.getVotes(); + // TODO: Use structured binding once LLVM issue + // https://github.com/llvm/llvm-project/issues/48582 + // is fixed. + auto const baseFee = baseFeeVote.getVotes(); + auto const baseReserve = baseReserveVote.getVotes(); + auto const incReserve = incReserveVote.getVotes(); auto const seq = lastClosedLedger->info().seq + 1; // add transactions to our position - if (baseFeeChanged || baseReserveChanged || incReserveChanged) + if (baseFee.second || baseReserve.second || incReserve.second) { - JLOG(journal_.warn()) << "We are voting for a fee change: " << baseFee - << "/" << baseReserve << "/" << incReserve; + JLOG(journal_.warn()) + << "We are voting for a fee change: " << baseFee.first << "/" + << baseReserve.first << "/" << incReserve.first; - STTx feeTx(ttFEE, [&](auto& obj) { + STTx feeTx(ttFEE, [=, &rules](auto& obj) { obj[sfAccount] = AccountID(); obj[sfLedgerSequence] = seq; if (rules.enabled(featureXRPFees)) { - obj[sfBaseFeeDrops] = baseFee; - obj[sfReserveBaseDrops] = baseReserve; - obj[sfReserveIncrementDrops] = incReserve; + obj[sfBaseFeeDrops] = baseFee.first; + obj[sfReserveBaseDrops] = baseReserve.first; + obj[sfReserveIncrementDrops] = incReserve.first; } else { // Without the featureXRPFees amendment, these fields are // required. obj[sfBaseFee] = - baseFee.dropsAs(baseFeeVote.current()); - obj[sfReserveBase] = baseReserve.dropsAs( + baseFee.first.dropsAs(baseFeeVote.current()); + obj[sfReserveBase] = baseReserve.first.dropsAs( baseReserveVote.current()); obj[sfReserveIncrement] = - incReserve.dropsAs(incReserveVote.current()); + incReserve.first.dropsAs( + incReserveVote.current()); obj[sfReferenceFeeUnits] = Config::FEE_UNITS_DEPRECATED; } });