alias restriction??!

Carl Sturtivant sturtivant at gmail.com
Mon Jul 20 17:24:56 UTC 2020


On Sunday, 19 July 2020 at 20:46:19 UTC, Steven Schveighoffer 
wrote:
> On 7/19/20 4:21 PM, Carl Sturtivant wrote:
>> 
>> Perhaps what's needed is something more that is less than 
>> allowing aliases for expressions in the wide sense you suggest 
>> here.
>
> I agree. Something not yet mentioned is that aliases provide 
> direct access to the symbols for the purposes of looking at 
> attributes -- something that a wrapper function doesn't provide.
>
> The question is: how do you restrict it to explicit data items 
> within a specific aggregate without parsing arbitrary 
> expressions?

Well perhaps you do parse a "constant-offset expression" i.e. 
syntactically dotted with constant indexes, like 
name1.name2[constant].name3 and then later there's a semantic 
check that the "constant-offset expression" involves no 
indirections when an offset into the top level object is 
computed. Then it's treated like any other attribute of a struct 
with a known offset.


More information about the Digitalmars-d-learn mailing list