For reference, according to the iwyu run by CI, as part of the tidy
task:
0[13:49:05.974] /ci_container_base/src/common/pcp.cpp should add these lines:
1[13:49:05.974] #include <algorithm> // for __equal_fn, equal
2[13:49:05.974] #include <compare> // for operator<, strong_ordering
3[13:49:05.974] #include <cstring> // for size_t, memcpy
4[13:49:05.974] #include <functional> // for function
5[13:49:05.974] #include <map> // for map, operator==, _Rb_tree_const_iterator
6[13:49:05.974] #include <memory> // for unique_ptr
7[13:49:05.974] #include <optional> // for optional, nullopt, nullopt_t
8[13:49:05.974] #include <span> // for span
9[13:49:05.974] #include <utility> // for pair
10[13:49:05.974] #include <vector> // for vector
11[13:49:05.974] #include "compat/compat.h" // for sockaddr_storage, WSAGetLastError, in_addr, socklen_t, in6_addr, sockaddr_in, AF_INET, IPPROTO_UDP, SOCK_DGRAM, MSG_D...
12[13:49:05.974] #include "tinyformat.h" // for format, strprintf
13[13:49:05.974] #include "util/string.h" // for string, basic_string, HasPrefix
14[13:49:05.974]
15[13:49:05.974] /ci_container_base/src/common/pcp.cpp should remove these lines:
16[13:49:05.974] - #include <common/netif.h> // lines 7-7
17[13:49:05.974] - #include <random.h> // lines 12-12
18[13:49:05.974] - #include <util/readwritefile.h> // lines 15-15
(Just sharing, no need to pick this up here. A future change that enforces iwyu on the codebase will fix it either way)