On Mon, 4 Jul 2005, David Leimbach wrote:

> On 7/2/05, Charles Forsyth <[EMAIL PROTECTED]> wrote:
> > >>it cant be worked around without breaking the cross
> > >>platform features of their headers.
> > 
> > sounds brilliantly portable to me.
> > what do they do?  insert 0-length padding areas
> > to make these structures `portable'?
> > 
> > 
> Yeah, it's undefined what happens if a struct is empty in C99. Seems a
> really silly thing for someone to rely on.  What are they trying to
> accomplish?  The only thing I can think of is some kind of type safety
> based on a tag generated for a unique "struct".  They should probably
> make it wrap a void * or something.
> 


IIRC this is one of those deals where people do something liiek:

struct element {
        int x,y;
};

struct a {
        int numelements;
        struct elements blah[0];
};

is that it Tim? I might be wrong on this. 

It's not reliable in gcc, as we found out the hard way on the linuxbios 
project ...

ron

Reply via email to