https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78231
--- Comment #2 from Alfredo <correaa at llnl dot gov> --- @Jonathan, Can you link to the part of the line in the standard? I found that standard to be very vague, for example in defining ValueSwappable. Is ValueSwappable something that can be called with `std::iter_swap`, or just `iter_swap` or is only defined through `(std::)swap`? (plus the semantics). Also, When you said "customization point" I searched for it, and I found this http://ericniebler.com/2014/10/21/customization-point-design-in-c11-and-beyond/ It seems that I am not the first to point this out, and also seems that Eric has the same opinion "... iter_swap may also be a customization point. (I think it is, or that it should be.) ..."