include files bug?

Andreas Hauser andy at
Tue Aug 16 14:13:24 PDT 2005

joerg wrote @ Tue, 16 Aug 2005 14:33:13 +0200:
> On Tue, Aug 16, 2005 at 07:46:56AM -0000, Andreas Hauser wrote:

> > That seems to break SUSv3:
> >   The following data types shall be defined through typedef:
> >   FILE
> >       A structure containing information about a file.
> FILE (!) is defined through typedef.

Yes, but it is typdef'ed to something incomplete.

Reading SUSv3 i would assume i was able to use sizeof(FILE).
It's not something for daily usage, but might be useful for
garbage collectors, or stuff that tries to keep memory below
a certain value. Might be necessary information for migrating
one process from one server to another.

Maybe if you point me to the discussion in the archives, i can
read up why this was necessary and what the pros and cons for
this solution are.

> > > The reason why I haven't fixed ruby is that I don't have any idea what
> > > they use it for.
> > 
> > I think, they just have generic ways to deal with objects and pointers.
> > The generic pointer structure contains a field for the size of the pointee.
> So it can be replaced by 0 then? I take it that they want to do boundary
> checks, so 0 would satisfy the "Don't mess with the implementation"
> requirement.

It's hardly correct.
I don't dare make assumptions about how those generic pointer structure
might be used, but 0 seems to be an especially bad value for it.


More information about the Bugs mailing list