Page MenuHomePhabricator

Serialization improvements step 6 (all except wallet/gui)

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


The next step of changes from #10785.


    Adds support for enum serialization to CustomUintFormatter, used in
CAddress for service flags.
    Merges BigEndian into CustomUintFormatter, used in CNetAddr for port
    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

rABC Bitcoin ABC
Lint Not Applicable
Tests Not Applicable

Event Timeline

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

missed this one

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