Page MenuHomePhabricator

Serialization improvements step 6 (all except wallet/gui)
ClosedPublic

Authored by Fabien on Thu, Feb 4, 15:40.

Details

Summary
The next step of changes from #10785.

This:

    Adds support for enum serialization to CustomUintFormatter, used in
CAddress for service flags.
    Merges BigEndian into CustomUintFormatter, used in CNetAddr for port
numbers.
    Converts everything (except wallet and gui) to use the new
serialization framework.

Backport of core PR18317.

The SER_READ and SER_WRITE macros are triggering -Wshadow warnings
all over the place with GCC. Unfortunately I found no solution to
prevent these warnings without a massive renaming of the serialization
functions parameters, making the code difficult to understand. As a
consequence I disabled the warning for GCC.

Test Plan
ninja all check-all

Diff Detail

Repository
rABC Bitcoin ABC
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

Fabien requested review of this revision.Thu, Feb 4, 15:40
majcosta requested changes to this revision.Thu, Feb 4, 22:15
majcosta added a subscriber: majcosta.
majcosta added inline comments.
src/index/blockfilterindex.cpp
87–90 ↗(On Diff #27551)

missed this one

This revision now requires changes to proceed.Thu, Feb 4, 22:15
This revision is now accepted and ready to land.Fri, Feb 5, 17:10