https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106803
--- Comment #1 from 康桓瑋 <hewillk at gmail dot com> --- Another issue is that views::zip_transform returns views::empty<decay_t<invoke_result_t<_Fp>>> when N == 0, which is not strictly true, the standard requires that the return is the result of the *lvalue* F being invoked, that is, views::empty<decay_t<invoke_result_t<decay_t<_Fp>&>>>.