On Sun, Feb 01, 2015 at 03:46:15PM +0000, ketmar via Digitalmars-d wrote: > On Sun, 01 Feb 2015 15:34:39 +0000, Iain Buclaw via Digitalmars-d wrote: > > > Regardless of size, a static array should always have an address on > > the stack. Of course, dereferencing said address is undefined. > > > > You can also consider it a require that although a zero-length > > static array may have an address, it doesn't take up any space > > either. > > > > Consider: > > > > int[0] data0; > > int[1] data1; > > > > > > Here, you could expect both data0 and data1 to have the same .ptr > > address, but data0.ptr == data1.ptr should not succeed either. > > actually, `data0.ptr` can point anywhere (except 0 as null ;-), 'cause > it's so small that it takes no room at all, so it doesn't matter where > it will be placed. ;-)
Actually, it *can* be null too, since it doesn't actually take up any space, so it would fit perfectly fine in nullspace (non-existent space) as well. :-P T -- IBM = I'll Buy Microsoft!