Thread overview
[Issue 11662] Template constraint evaluation should not look eponymous template function parameters if it's unnecessary
Mar 02, 2019
Basile-z
Mar 21, 2020
Basile-z
Mar 31, 2023
Nick Treleaven
Oct 16, 2023
Basile-z
Oct 16, 2023
Basile-z
Oct 17, 2023
Basile-z
May 01
Chloé
March 02, 2019
https://issues.dlang.org/show_bug.cgi?id=11662

Basile-z <b2.temp@gmx.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|ice, pull                   |
                 CC|                            |b2.temp@gmx.com

--
March 21, 2020
https://issues.dlang.org/show_bug.cgi?id=11662

Basile-z <b2.temp@gmx.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|b2.temp@gmx.com             |

--
March 31, 2023
https://issues.dlang.org/show_bug.cgi?id=11662

Nick Treleaven <nick@geany.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |nick@geany.org

--- Comment #2 from Nick Treleaven <nick@geany.org> ---
Still doesn't work:

temcons.d(17): Error: template instance `temcons.gc_free2!int` does not match
template declaration `gc_free2(T)(Type data)`

And you can't even alias the template instance:

alias a = gc_free2!int; // same error

--
October 16, 2023
https://issues.dlang.org/show_bug.cgi?id=11662

Basile-z <b2.temp@gmx.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |b2.temp@gmx.com

--- Comment #3 from Basile-z <b2.temp@gmx.com> ---
More precisely the problem is here [1].

DMD tries to define the type of the eponymous member (the `onemember` symbol)
but
using an inadequate scope since it does not allow to resolve `Type`, as you can
see when the gagging "sandwich" code is deactivated... Problem is that the
right scope simply does not exist yet.


[1]: https://github.com/dlang/dmd/blob/daf1a31c5f97df3d3082dd5a332422ba5c3ae20b/compiler/src/dmd/dtemplate.d#L1190

--
October 16, 2023
https://issues.dlang.org/show_bug.cgi?id=11662

Basile-z <b2.temp@gmx.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |code@dawg.eu

--- Comment #4 from Basile-z <b2.temp@gmx.com> ---
*** Issue 13580 has been marked as a duplicate of this issue. ***

--
October 17, 2023
https://issues.dlang.org/show_bug.cgi?id=11662

Basile-z <b2.temp@gmx.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Severity|major                       |critical

--
May 01
https://issues.dlang.org/show_bug.cgi?id=11662

Chloé <chloekek@use.startmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |chloekek@use.startmail.com

--