[Issue 17080] Can assign member-function-ptr to free-function-ptr

via Digitalmars-d-bugs digitalmars-d-bugs at puremagic.com
Mon Jan 16 04:28:19 PST 2017


https://issues.dlang.org/show_bug.cgi?id=17080

--- Comment #9 from Dicebot <public at dicebot.lv> ---
(In reply to Sprink from comment #8)
> Why bother fixing this issue by just changing the type to a delegate? You
> are just making a temporary fix that has the potential to break code out
> there. Then you are just going to have to cause the same breakage when the
> actual underlying issue is fixed. This really shouldn't be half-assed.

Because I disagree with your proposed fix and overall judgement of the problem
but don't want to argue about it in context of this issue.

Finding a way to put a deprecation stage into this stage is something I keep
thinking about. 

> If you are going to do anything, make taking the address of a member
> function without an object an error. That way it'll cause the same breakage
> but then people won't continue to use it and won't cause a second breakage.

It is more intrusive change (will fail in more context) and I think that
getting address of a method as a delegate is perfectly legitimate code - it
would allow to set `dg.ptr` manually later to call it with arbitrary context.

--


More information about the Digitalmars-d-bugs mailing list