https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111861
--- Comment #4 from 康桓瑋 <hewillk at gmail dot com> --- (In reply to Patrick Palka from comment #3) > (In reply to 康桓瑋 from comment #2) > > (In reply to Patrick Palka from comment #1) > > > Interesting, I guess 'auto x = *iter;' should never be done in generic > > > code > > > then? > > > > Yap, even 'range_value_t<R> x = *iter;'. > Ah right though in these cases the indirectly_copyable_storable requirements > allow for that. Nope. indirectly_copyable_storable allows 'range_value_t<R> x(*iter);' but not 'range_value_t<R> x = *iter;'