Subject: Re: [PATCH] proc_fs.h redux

From: Bernhard Walle <[email-masked]>
Date: Sun, 28 Oct 2007 14:25:08 +0100

* Russell King <[email-masked]> [2007-10-28 14:04]:
> On Sun, Oct 28, 2007 at 12:59:52PM +0100, Bernhard Walle wrote:
> > * Russell King <[email-masked]> [2007-10-28 11:34]:
> > > 
> > > If you go down that route, you end up with _lots_ of circular
> > > dependencies - header file X needs Y needs Z which needs X.  We've
> > > been there, several times.  It very quickly becomes quite
> > > unmaintainable - you end up with hard to predict behaviour from
> > > include files.
> > > 
> > > The only realistic solution is to use forward declarations.
> > 
> > In header files, yes. But that's not true for implementation files.
> 
> I don't think that needs saying - it's quite obvious.  You can't
> access the contents of structures without their definitions being
> available.

Of course. But there might be the case where an implementation file
doesn't access the structure itself but just passes the pointer to
some other function (which is implemented in another file). In that
case, you also have the choice between forward declaration and
including the header file in the implementation file.

Thanks,
   Bernhard