From: Linus Torvalds Date: Mon, 24 Oct 2005 16:43:51 GMT Subject: Re: daemon.c broken on OpenBSD Message-ID: In-Reply-To: <86irvmzyq9.fsf@blue.stonehenge.com> On Mon, 24 Oct 2005, Randal L. Schwartz wrote: > > That probably won't work, because on OpenBSD, it's not a #define, but > rather a real function call. You can't just #undef that (unless my C > is even more rusty). Sure you can. The #undef won't necessarily _do_ anything, but it protects against systems where it is a #define. Then, the #define makes sure that if it's anything else, the #define will take precedence. So yes, it's ugly, but it definitely is safe in practice, as long as the local headers are included before the system ones. I think Junio's patch (that renames things) is possibly the "cleaner" alternative, but on the other hand there's a lot of advantages to just using the standard names. No chance of somebody using the wrong version by mistake. Linus