@property ref T front(T)(T[] a)
if (!isNarrowString!(T[]) && !is(T[] == void[]))
{
assert(a.length, "Attempting to fetch the front of an empty
array of " ~
typeof(a[0]).stringof);
return a[0];
}
Why is front returned by ref even when it is not possible to do
so?