https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108647
--- Comment #20 from Jakub Jelinek <jakub at gcc dot gnu.org> --- How could these changes result in ../harfbuzz-6.0.0/src/hb-map.hh:295:5: error: no match for ‘operator|’ (operand types are ‘hb_filter_iter_t<hb_array_t<hb_hashmap_t<unsigned int, unsigned int, true>::item_t>, bool (hb_hashmap_t<unsigned int, unsigned int, true>::item_t::*)() const, const<unnamed struct>&, 0>’ and ‘hb_reduce_t<hb_hashmap_t<unsigned int, unsigned int, true>::hash() const::<lambda(uint32_t, const hb_hashmap_t<unsigned int, unsigned int, true>::item_t&)>, unsigned int>’) errors? I can see that with a cross-compiler, so VRP miscompiling the C++ FE is not an option.