On 03/03/2012 04:36 AM, Jacob Carlborg wrote:
On 2012-03-03 03:30, Piotr Szturmaj wrote:
Hello,

For this code:

auto c = "test"c;
auto w = "test"w;
auto d = "test"d;
pragma(msg, typeof(c.front));
pragma(msg, typeof(w.front));
pragma(msg, typeof(d.front));

compiler prints:

dchar
dchar
immutable(dchar)

I thought all these would be either "dchar" or "immutable(dchar)". Why
are they of different types?

In the case of char and wchar slices, the "elements" are decoded as the iteration happens. In other words, the returned values are not actual elements of the ranges.


IMO it should print this:

immutable(char)
immutable(wchar)
immutable(dchar)

Is it a bug?



Ali

Reply via email to