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

Nik_Vzdornov <vzdornovna88 at yandex dot ru> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |vzdornovna88 at yandex dot ru

--- Comment #2 from Nik_Vzdornov <vzdornovna88 at yandex dot ru> ---
why is this considered a bug? Can I consider this as
https://eel.is/c++draft/over.match.oper#11.sentence-1(CWG1687), which
introduced: "except that the second standard conversion sequence of a
user-defined conversion sequence (12.2.4.2.3 [over.ics.user]) is not applied".
We even have cppref : "If the overload resolution selects a built-in candidate,
the user-defined conversion sequence from an operand of class type is not
allowed to have a second standard conversion sequence: the user-defined
conversion function must give the expected operand type directly" and other
cases when X { int operator(); } x; in the context of the expression x + 1.0 we
consider https://eel.is/c++draft/over.built#10 firstly and then "Usual
arithmetic conversions" ยง7.4 [expr.arith.conv].

Reply via email to