Char representation

Stefan Koch via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Tue Nov 22 05:34:42 PST 2016


On Tuesday, 22 November 2016 at 13:29:47 UTC, RazvanN wrote:
> Given the following code:
>
>  char[5] a = ['a', 'b', 'c', 'd', 'e'];
>  alias Range = char[];
>  writeln(is(ElementType!Range == char));
>
> One would expect that the program will print true. In fact, it 
> prints false and I noticed that if Range is char[], wchar[], 
> dchar[], string, wstring, dstring
> Unqual!(ElementType!Range) is dchar. I find it odd that the 
> internal representation for char and string is dchar. Is this a 
> bug?

When seen as a range the element type of a char[] is indeed dchar.
This is autodecoding at work.


More information about the Digitalmars-d-learn mailing list