http://d.puremagic.com/issues/show_bug.cgi?id=8657
--- Comment #1 from Kenji Hara <k.hara...@gmail.com> 2012-09-16 04:47:16 PDT --- (In reply to comment #0) [snip] > It shows that the next and base properties of the TypeInfo generated for > const(int[2]) and immutable(int[2]) lose the qualifier. This does not happen > for "shared". I think this is expected behavior, because const(int[2]) is value type. TypeInfo_Const.next specifies the TypeInfo object of the type that removed head const qualifier from original type. And, Removing const from const(int[2]) is int[2], not const(int)[2]. It's just same as std.traits.Unqual. pragma(msg, Unqual!(const(int[2]))); // prints const(int)[] pragma(msg, Unqual!(const(int[2]))); // prints int[2] Additionally, const(int)[2] is same as const(int[2]). There is just a syntactically difference. alias const(int)[2] T1; alias const(int[2]) T2; static assert(is(T1 == T2)); // they are same pragma(msg, T1); // prints const(int[2]) pragma(msg, T2); // prints const(int[2]) -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------