Strange Compile Error when concatenating arrays
John Colvin
john.loughran.colvin at gmail.com
Wed Apr 9 12:59:07 PDT 2014
On Wednesday, 9 April 2014 at 19:39:13 UTC, Jeroen Bollen wrote:
> On Wednesday, 9 April 2014 at 19:35:49 UTC, Jeroen Bollen wrote:
>> When I concatenate arrays like this, I get a strange compile
>> error:
>>
>> Error: incompatible types for ((cast(int)a) ~ (cast(int)b)):
>> 'int' and 'int'
>>
>> Code:
>>
>> public ubyte[] toArray(ubyte a, ubyte b, ubyte c) {
>> return a ~ b ~ c;
>> }
>
> Oh derp I already figured it out. It still is a strange error
> message though.
Not really. It gives you the expression, tells you the types are
incompatible and tells you what those types were. The reason why
you get int is because operations on integral types are promoted
to int.
public ubyte[] toArray(ubyte a, ubyte b, ubyte c) { return [a, b,
c]; }
More information about the Digitalmars-d
mailing list