Thread overview
[Issue 15764] Name lookup within (eponymous?) template doesn't check outside the template
Mar 05, 2016
Shriramana Sharma
Dec 17, 2022
Iain Buclaw
Feb 13, 2023
RazvanN
March 05, 2016
https://issues.dlang.org/show_bug.cgi?id=15764

Shriramana Sharma <samjnaa@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|Name of template cannot     |Name lookup within
                   |                            |(eponymous?) template
                   |                            |doesn't check outside the
                   |                            |template

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

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P1                          |P4

--
February 13, 2023
https://issues.dlang.org/show_bug.cgi?id=15764

RazvanN <razvan.nitu1305@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |razvan.nitu1305@gmail.com
         Resolution|---                         |WONTFIX

--- Comment #1 from RazvanN <razvan.nitu1305@gmail.com> ---
The problem here is that when `ta(s)` is resolved, the first scope that is searched for `ta` is the current scope and the `ta` symbol is already defined as an enum. This sort of situation is precisely why the dot operator was added. The alternative would be to special case the implementation for such situations.

As a conclusion, this is a WONTFIX. The compilers does the correct thing.

--