On 11/14/2011 10:20 AM, so wrote:
On Mon, 14 Nov 2011 10:27:21 +0200, Timon Gehr <timon.g...@gmx.ch> wrote:

It is the right design. Why should enum imply const or immutable? (or
inout, for that matter). They are completely orthogonal.

enum Enum{
opt1,
opt2,
}

void main(){
auto moo = Enum.opt1;
moo = Enum.opt2; // who would seriously want an error here???
}

You are missing the point, nobody asked that.

I think you are missing the point. What else are you asking for?

You are assigning it to
auto, a runtime variable.
Which was asked was about modifying a constant, sort(a) means sort a
in-place. So you cant do:

immutable a;
sort(a);

But with current design you can do:

enum a;
sort(a);

Which is to me, quite wrong.

It is just as right or wrong as doing

enum a;
sort([1,2,3]);

The design of enums is probably even irrelevant for this discussion.









Reply via email to