[Issue 16572] can't take inout delegate

2016-10-08 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16572

--- Comment #8 from Jonathan M Davis  ---
(In reply to Manu from comment #7)
> I would have thought 'blocker' would be taken seriously, but okay ;)

Maybe. But I'm not sure that there's generally a push to fix blockers like
there is for regressions. Regressions definitely get searched for specifically
on a semi-regular basis, and I don't know if anyone specifically looks for
blockers. From what I've seen, regressions are usually take more seriously than
any other kind of bug except maybe an ICE.

So, while in theory, blocker should definitely mean something significant, I
don't know if it currently does in practice.

--


[Issue 16572] can't take inout delegate

2016-10-08 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16572

--- Comment #7 from Manu  ---
I would have thought 'blocker' would be taken seriously, but okay ;)

--


[Issue 16572] can't take inout delegate

2016-10-08 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16572

--- Comment #6 from Jonathan M Davis  ---
Maybe marking it as a regression (like it is) will get it more attention.

--


[Issue 16572] can't take inout delegate

2016-10-08 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16572

Jonathan M Davis  changed:

   What|Removed |Added

 CC||issues.dl...@jmdavisprog.co
   ||m
   Severity|blocker |regression

--


[Issue 16572] can't take inout delegate

2016-10-05 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16572

Adam D. Ruppe  changed:

   What|Removed |Added

 CC||destructiona...@gmail.com

--- Comment #5 from Adam D. Ruppe  ---
See my comment on Github regarding a hacky fix, with the commit that introduced
this bug and some logic behind my reasoning. I'm sure Walter (or someone who
knows dmd well) can get a non-hack fix easily:

https://github.com/dlang/dmd/commit/3c53a0fd9ed1b40f8dbeb75b4dfa11f6df5b3062#commitcomment-19312704

--


[Issue 16572] can't take inout delegate

2016-10-03 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16572

--- Comment #4 from anonymous4  ---
Oh, right, we have means to select an overload for delegate, we can reuse it
here too.

--


[Issue 16572] can't take inout delegate

2016-10-03 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16572

Steven Schveighoffer  changed:

   What|Removed |Added

 CC||schvei...@yahoo.com

--- Comment #3 from Steven Schveighoffer  ---
(In reply to anonymous4 from comment #2)
> A small interaction between contravariance and inout here:
> inout(A) f(inout B b) inout;
> If you resolve the type as A delegate(B) you can't pass const(B) as argument.

You wouldn't be able to take a valid delegate of this. Or at least an
operational one.

The delegate type would have to be something like:

inout(A) delegate(inout B) inout=const

We don't have a way to express this.

As it stands, I think the delegate to this would have to be:

const(A) delegate(const(B) b) const

--


[Issue 16572] can't take inout delegate

2016-10-03 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16572

--- Comment #2 from anonymous4  ---
A small interaction between contravariance and inout here:
inout(A) f(inout B b) inout;
If you resolve the type as A delegate(B) you can't pass const(B) as argument.

--


[Issue 16572] can't take inout delegate

2016-10-02 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16572

Manu  changed:

   What|Removed |Added

   Severity|enhancement |blocker

--- Comment #1 from Manu  ---
I have a project where I can't progress due to this issue :/

--