https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93059
Jonathan Wakely <redi at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |missed-optimization
Status|UNCONFIRMED |NEW
Last reconfirmed| |2020-02-26
Ever confirmed|0 |1
--- Comment #36 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Patches should be sent to the mailing list, and a copyright assignment (or
public domain disclaimer) would be needed for a patch of this size. Otherwise,
leave it to me to do once we start the GCC 11 dev phase.
Adding checks for types satisfying contiguous_iterator looks worthwhile, but
should be a separate patch.
I think the condition for using memmove should be something like:
__are_same<_ValueTypeI, _ValueTypeO>::__value
|| (__is_integer<_ValueTypeI>::__value
&& __is_integer<_ValueTypeo>::__value
&& sizeof(_ValueTypeI) == sizeof(_ValueTypeO))