http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58403

--- Comment #8 from Paolo Carlini <paolo.carlini at oracle dot com> ---
Hi,

(In reply to Jonathan Wakely from comment #7)
> http://gcc.gnu.org/wiki/VerboseDiagnostics#missing_static_const_definition
> 
> You odr-use a static member variable, so it must have a definition.

I may be missing some C++11 specifics, but I understand the bug report this
way: since the implementors have the leeway of defining those operators as
taking the arguments by value or be const ref, and since we are essentially
talking about ptrdiff_ts, which don't really want by ref, why using by const
ref unnecessarily which introduces an odr-use? If you like not a proper bug,
but a QoI issue, a rather simple one. Taking also into account, as submitter
correctly noticed, that we have already be value for move_iterator and
reverse_iterator. Does this make sense?

Reply via email to