[Bug c++/86521] [8 Regression] GCC 8 selects incorrect overload of ref-qualified conversion operator template

cvs-commit at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Wed Feb 26 05:38:00 GMT 2020


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86521

--- Comment #15 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-8 branch has been updated by Jason Merrill
<jason@gcc.gnu.org>:

https://gcc.gnu.org/g:f93784da474823ad563a9dfd6fd535a017b4bc9f

commit r8-10078-gf93784da474823ad563a9dfd6fd535a017b4bc9f
Author: Jason Merrill <jason@redhat.com>
Date:   Wed Feb 26 00:33:52 2020 -0500

    PR c++/86521 - wrong overload resolution with ref-qualifiers.

    Here we were wrongly treating binding a const lvalue ref to an xvalue as
    direct binding, which is wrong under [dcl.init.ref] and [over.match.ref].

    gcc/cp/ChangeLog
    2020-02-26  Jason Merrill  <jason@redhat.com>

        PR c++/86521 - wrong overload resolution with ref-qualifiers.
        * call.c (build_user_type_conversion_1): Don't use a conversion to a
        reference of the wrong rvalueness for direct binding.


More information about the Gcc-bugs mailing list