refactor: Use reference for chain_start in HeadersSyncState

chain_start can never be null, so it's better to pass it as a reference
rather than a raw pointer

Also slightly reformat HeaderSyncState constructor to make clang-format
happy

Lastly, remove `const` from `chain_start` declaration in
headers_sync_chainwork_tests, to work aroud a false-positive
dangling-reference warning in gcc 13.0

Co-Authored-By: maflcko <6399679+maflcko@users.noreply.github.com>
This commit is contained in:
Daniela Brozzoni
2025-06-11 18:33:30 +02:00
parent e37555e540
commit de4242f474
5 changed files with 34 additions and 31 deletions

View File

@@ -44,7 +44,7 @@ class FuzzedHeadersSyncState : public HeadersSyncState
{
public:
FuzzedHeadersSyncState(const HeadersSyncParams& sync_params, const size_t commit_offset,
const CBlockIndex* chain_start, const arith_uint256& minimum_required_work)
const CBlockIndex& chain_start, const arith_uint256& minimum_required_work)
: HeadersSyncState(/*id=*/0, Params().GetConsensus(), sync_params, chain_start, minimum_required_work)
{
const_cast<size_t&>(m_commit_offset) = commit_offset;
@@ -74,7 +74,7 @@ FUZZ_TARGET(headers_sync_state, .init = initialize_headers_sync_state_fuzz)
FuzzedHeadersSyncState headers_sync(
params,
/*commit_offset=*/fuzzed_data_provider.ConsumeIntegralInRange<size_t>(0, params.commitment_period - 1),
/*chain_start=*/&start_index,
/*chain_start=*/start_index,
/*minimum_required_work=*/min_work);
// Store headers for potential redownload phase.