D - "Incompatible types" for an array initialization expression: bug?
Walter,
Given:
import c.stdio;
int main(char[][] args)
{
// append null terminator
wchar[] text = "Test Text." ~ '\u0000';
return 0;
}
the compiler says:
bug3.d(5): incompatible types for (("Test Text.") ~ (cast(int)(0))):
'char[]' and 'int'
however:
import c.stdio;
int main(char[][] args)
{
wchar[] text = "Test Text.";
text ~= '\u0000';
return 0;
}
compiles without complaint.
Is this a bug?
Thanks -- Les Baker
Aug 15 2003
Yes, it's a bug. You can workaround by turning '\u0000' into "\u0000".
"Les Baker" <lesbaker innovaREMOVETHIS.net> wrote in message
news:bhk5ta$tm4$1 digitaldaemon.com...
Walter,
Given:
import c.stdio;
int main(char[][] args)
{
// append null terminator
wchar[] text = "Test Text." ~ '\u0000';
return 0;
}
the compiler says:
bug3.d(5): incompatible types for (("Test Text.") ~ (cast(int)(0))):
'char[]' and 'int'
however:
import c.stdio;
int main(char[][] args)
{
wchar[] text = "Test Text.";
text ~= '\u0000';
return 0;
}
compiles without complaint.
Is this a bug?
Thanks -- Les Baker
Aug 16 2003








"Walter" <walter digitalmars.com>