Subject: Re: Doxygen generated documentation
To: None <tech-userlevel@netbsd.org>
From: Christos Zoulas <christos@tac.gw.com>
List: tech-userlevel
Date: 05/23/2005 18:10:24
In article <200505232018.QAA24684@Sparkle.Rodents.Montreal.QC.CA>,
der Mouse  <tech-userlevel@NetBSD.org> wrote:
>[moved to tech-userlevel because it doesn't really have anything to do
>with the kernel any longer]
>
>>> [...duplicate header inclusion...]
>
>> The problem with removing "duplicate" includes is that you make
>> include files not-self-sufficient.
>
>Yes, except that NetBSD does not consider that a problem.  (Some time
>ago I tried to offer fixes for such and was told that; more recently
>someone else reported similar experiences.)

There are instances where we are not allowed to make headers
idempotent (assert.h) and others where we cannot make headers self
sufficient because of namespace pollution issues. We strive to make
headers standards compliant, and that sometimes this gets in the
way of convenience. I have seen many examples where programs fail
to include required headers (such as <signal.h> when using signals),
just because it happens to work on operating systems that include
the kitchen-sink when you include a popular header (such as
<unistd.h>). This include-all approach actually hurts portability.

christos