Property rewriting; I feel it's important. Is there still time?
Steven Schveighoffer
schveiguy at yahoo.com
Wed Mar 10 13:14:21 PST 2010
On Tue, 09 Mar 2010 22:48:08 -0500, Chad J
<chadjoan at __spam.is.bad__gmail.com> wrote:
> I speak of the property rewriting where an expression like
>
> foo.prop++;
>
> is rewritten as
>
> auto t = foo.prop();
> t++;
> foo.prop(t);
>
>
I think this is fine as long as we don't take it to the extreme. That is,
I don't want to see this happening:
foo.prop1.prop2++;
is rewritten to
auto p1 = foo.prop1;
auto p2 = p1.prop2;
p2++;
p1.prop2 = p2;
foo.prop1 = p1;
I think one level of lowering is enough to handle the most common cases.
Of course, if a property returns an lvalue, then it should just work.
-Steve
More information about the Digitalmars-d
mailing list