Hi,I am not sure why the following code would throw a range violation whenever haystack does not contain needle.
int[] find(int[] haystack, int needle)
{
while (haystack && haystack[0] != needle)
haystack = haystack[1 .. $];
return haystack;
}
Testing for haystack.length > 0 instead of haystack will make the
code work.
Does it mean that the truth value of an empty slice depends on the underlying array, not on the number of elements the slice has, i.e. its length?
Thanks, Minh
