On Thu, 02 Feb 2012 00:38:26 -0500, Ali Çehreli <[email protected]> wrote:

On 02/01/2012 04:24 PM, Andrej Mitrovic wrote:
 > OT: Just saw fill() by accident and something caught my eye:
 >
 > char[100] a;
 > fill(a[], "bla");  // fail, ok
 >
 > int[100] a;
 > fill(a[], "bla");  // works
 >
 > It could be a constraint issue.

Although "bla" is an array of char, it is a range of dchar; and dchar automatically converts to int.

But this is the kind of unintuitive shit that treating char arrays not as arrays in *some* parts of D causes great confusion and silly limitations. The above should be the opposite, the first line should pass and the second should fail.


 > To bugzilla?

I don't think so, because it's just dchar to int conversion.

You are likely to get an "invalid" response due to the strict views of Andrei, but I think it's unacceptable behavior for fill to say it cannot fill a string with string data.

-Steve

Reply via email to