alias and UFCS

ixid via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Tue Jan 24 08:41:12 PST 2017


On Tuesday, 24 January 2017 at 16:27:50 UTC, ixid wrote:
> On Tuesday, 24 January 2017 at 15:57:48 UTC, Las wrote:
>> On Tuesday, 24 January 2017 at 13:11:41 UTC, ixid wrote:
>>> This code:
>>>
>>> T tFunc(alias F, T)(T n) {
>>> 	n.F;
>>> 	return n;
>>> }
>>>
>>> Produces this error:
>>>
>>> Error: no property 'F' for type 'int[]' (or whatever type I 
>>> use).
>>>
>>> The alias rules for functions seem to be incompatible with 
>>> UFCS, F(n) works fine. What are the rewrite steps here? Is 
>>> this necessary or an oversight? Not very uniform function 
>>> call syntax.
>>
>> Submit a bug report then.
>
> I will if it turns out the behaviour is wrong, that's what I'm 
> checking at this stage. =)

Apologies for the extra post - does the alias function count as 
declared in the same scope as the content of the function? That 
would be plausible as UFCS refuses to work on functions declared 
in the same scope. Is this something that could be changed?


More information about the Digitalmars-d-learn mailing list