https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82891
--- Comment #7 from Jonathan Wakely <redi at gcc dot gnu.org> --- (In reply to Tony E Lewis from comment #6) > Do the changes arising from issue 3031 take retrospective effect on previous > standards? Yes. > If not, is there an issue with libc++ / libstdc++ not adhering to > those previous standards? No. We do not pedantically adhere to defective specifications. It was a defect in the old standards, it's been fixed by improving the spec. Implementing before+after for every standard defect in different dialects would be totally unmaintainable anyway. > Or is the point that, even if the change isn't > retrospective, the previous standards were "wrong" enough and/or the > violation is trivial enough that it isn't worth supporting the non-const > references when compiling under previous standards? That too.