new DIP40: Template parameter deduction for constructors

Timon Gehr timon.gehr at gmx.ch
Tue May 14 02:30:01 PDT 2013


On 05/14/2013 10:04 AM, deadalnix wrote:
> On Tuesday, 14 May 2013 at 07:28:57 UTC, Timothee Cour wrote:
>>>
>>> I think that should be consistent with the deduction mechanism proposed
>>>> in the DIP: foo is struct not in scope until template foo(T) is
>>>> instantiated.
>>>>
>>>
>>
>>>  No it is not. The DIP states "find all constructors".
>>
>>
>> it said  'Find all matching class/struct types in scope', isn't that
>> enough
>> or am I missing something?
>>
>> To clarify, I've added 3 out of scope structs named A in the example
>> section to clarify that they won't be included in the overload set.
>> see the ones marked '//not in scope'
>
> I think the best here is to specify that the rule is the same than
> eponymous funtion and IFTY. Otherwise we'll have 2 different specs with
> small difference here and there. And that sucks.

There is no spec for the IFTI case. (i.e. what happens if the eponymous 
declaration inside the template is an overload set?)


More information about the Digitalmars-d mailing list