"Chad J" <chadj...@__spam.is.bad__gmail.com> wrote in message news:gut0f2$jc...@digitalmars.com...
Nevermind properties.  Any chance we can forbid the omittable
parentheses, at least in the lhs of an assignment expression?

In the more general case, any value type that gets modified but never
read or copied elsewhere is probably either dead code, a bug, or a
benchmark.  The latter is easy to fix by adding the necessary read/copy
(return the value, pass it to a global or function, etc).  It'd be great
if this kind of thing were a compile time error.

Code like this shouldn't compile:

struct S { int a = 0; }
S foo() { S s; return s; }

void main()
{
   foo.a++;
}

This is not because of the omittable parens. Even with added parens that code should not compile!

L.

Reply via email to