Thread overview
[Issue 14187] Wrong overload resolution when one of the parameters to a function is an interface
Mar 25, 2015
yebblies
Dec 17, 2022
Iain Buclaw
March 25, 2015
https://issues.dlang.org/show_bug.cgi?id=14187

yebblies <yebblies@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |yebblies@gmail.com

--- Comment #1 from yebblies <yebblies@gmail.com> ---
I'm not really sure if this is a bug, or just an unpleasant side effect of the way overloading is worked out.

IIRC the worst conversion out of all the args is taken as the match level for each function, and for both of those overloads the C -> I conversion is the worst, so they have the same match level and are ambiguous.  It might be possible to tweak the match levels to fix this, I don't know.

There are probably other similar cases with other conversions that have the same match level as C -> I.

--
December 17, 2022
https://issues.dlang.org/show_bug.cgi?id=14187

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P1                          |P3

--
December 13
https://issues.dlang.org/show_bug.cgi?id=14187

--- Comment #2 from dlangBugzillaToGithub <robert.schadek@posteo.de> ---
THIS ISSUE HAS BEEN MOVED TO GITHUB

https://github.com/dlang/dmd/issues/18947

DO NOT COMMENT HERE ANYMORE, NOBODY WILL SEE IT, THIS ISSUE HAS BEEN MOVED TO GITHUB

--