Skip to content

contrib: protobuf: Apply a patch to avoid relying on transitive includes

Martin Storsjö requested to merge mstorsjo/vlc:patch-protobuf into master

This fixes build breakage with latest nightly libc++. Since https://github.com/llvm/llvm-project/commit/2e2f3158c604adb8401a2a44a03f58d4b6f1c7f9, fewer libc++ headers transitively include <algorithm>.

This protobuf header uses std::fill unconditionally, which is a function provided by <algorithm>. (The surrounding code comment was wrong/outdated - <algorithm> was needed on all platforms.)

The same seems to have been fixed in upstream protobuf as part of a larger code sync: https://github.com/protocolbuffers/protobuf/commit/ab4585a6956675ce14a1cba5d321fde980bbf12b#diff-5cc9e8e347380b7bbc8fac8c06dc98100f3b5c076fcffa177e8ce11e753d4f7c

Merge request reports

Loading