From: Mike Ralphson Date: Thu, 08 May 2008 07:59:15 GMT Subject: Re: [PATCH] compat/fopen.c: avoid clobbering the system defined fopen macro Message-ID: In-Reply-To: <4822AD19.6000609@viscovery.net> 2008/5/8 Johannes Sixt : > Mike Ralphson schrieb: >> I guess there may still be a case for not defining _LARGE_FILES by >> default on AIX as all the warnings may be off-putting or mask other >> issues. Maybe instead having a comment for those who need large >> pack-file support? Will submit amended Makefile patch if there's >> interest. > > Since with this patch we are treating fopen specially anyway, we could go > one step further and do this, too: > --- > diff --git a/git-compat-util.h b/git-compat-util.h > index b2708f3..dad4d48 100644 > --- a/git-compat-util.h > +++ b/git-compat-util.h > @@ -230,6 +230,9 @@ void *gitmemmem(const void *haystack, > #endif > > #ifdef FREAD_READS_DIRECTORIES > +#ifdef fopen > +#undef fopen > +#endif > #define fopen(a,b) git_fopen(a,b) > extern FILE *git_fopen(const char*, const char*); > #endif > Loving your work! Squashes all the related warnings, re-tested etc. Technically, is the #ifdef / #endif actually required? Or is #undef'ing an undefined macro not portable? I agree it aids clarity for no cost. Mike