chore: update KPN — diagnostics.hpp includes the <vector> it uses
af9da7d on top of 5375ab4, and the reason it exists is this repository. kpn/diagnostics.hpp declares NetworkSnapshot with two std::vector members and has never included <vector>. It compiled everywhere we build because something earlier in each translation unit dragged the definition in first. src/benchmark.hpp includes <kpn/diagnostics.hpp> before its own <vector>, and under Debian 12 / GCC 12 -- the CI image, and nothing we develop on -- nothing supplies it, so the two members fail to declare and every later use of .nodes or .channels fails after them. The errors all name benchmark.hpp, so it reads as our bug until you look at the first line of compiler output rather than the last. This bump also crosses the four perf/phase0-harness commits between 5375ab4 and the pin, which is a larger move than a header fix and worth being explicit about. Checked rather than assumed: the two tests failing in CI fail identically with the pin at 771b9f8 plus the include fix alone, so they are not this bump's doing. The perf work changes the scheduler and pool; the failures are tracker extinction-window logic and are reachable with no pool at all. Also found while checking KPN's public headers standalone under GCC 12, and NOT fixed there: network.hpp names IChannelProbe (channel.hpp:557) without including channel.hpp -- the same latent bug, waiting for the same kind of consumer. web_debug.hpp needs httplib.h, which is an optional external dependency and not a defect.
This commit is contained in:
Vendored
+1
-1
Submodule external/KPN updated: 771b9f8593...af9da7db81
Reference in New Issue
Block a user