On Thursday, 13 February 2014 at 16:52:58 UTC, bearophile wrote:
Andre:

could you have a look whether this is a bug with tupleof?
In case you have a const string with a default value,
the attribute is not in the tupleof list.

struct A {
        const string a = "abc";
        string d;
}

void main(){
        assert(A().tupleof.length == 2); // fails -> length = 1
}

Tupleeof is working correctly here. Currently const/immutable fields don't become struct instance fields. After a transition phase this will be changed, and in some months you will see two fields there. DMD 2.065 has a warning on this.

Bye,
bearophile

Don't you mean const/immutable fields with initialisers don't become instance fields? Or is this actually as strange as it sounds?

Reply via email to