> > Is there a particular problem here? > > Doesn't it defeat the notion that each header file is safe to > include twice via "#ifndef FOO/#define FOO/#endif" safeguard and > makes anybody who sees the recursive inclusion to think twice before > they can convince themselves that it is OK for this particular pair? In that case do you have any recommendations as to how I can make clear that this recursive inclusion isn't problematic or refactor away the recursive inclusion without having to change the header inclusions of every other Git file?