On Wed, Mar 23, 2011 at 9:40 PM, Monty Taylor <[email protected]> wrote:
> At first I was pretty lukewarm to this, mainly due to worry about a
> global header that had to be included before other headers and the
> nonsense that took us forever to unwind from my_global.h from mysql.

This should never be the case. It should still be possible to include
every single header file by itself, although I'm quite sure that's
currently not possible.
With common_fwd, adding the include to a header that needs it is much
easier then adding the missing declarations.

> The more I thought about it and the more I talked with Olaf though, I am
> now in favor of the idea... especially since I think it's a great step
> one in getting us further along towards untangled headers. Consider this
> process:

It indeed is.

> Make a common_fwd.h header which literally has forward decls for everything
> Make a branch which removes ALL includes from ALL files and replaces
> them with common_fwd.h... then, as obviously nothing will compile at
> that point, anything that's undefined at that point would be something
> that actually needed a header.

Branches that don't compile for a long time should be avoided.
IMO it's much easier. There's already a common_fwd that includes a lot
in my branch. Merge it into trunk.
Then I can replace forward declarations with the common_fwd include
one file at a time.

> I will say though that if common_fwd isn't a first step towards a
> cleanup of our interwoven headers, then it's not useful. But if it is a
> first bit of a process, I'm all for it.

It definately is.

-- 
Olaf

_______________________________________________
Mailing list: https://launchpad.net/~drizzle-discuss
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~drizzle-discuss
More help   : https://help.launchpad.net/ListHelp

Reply via email to