Mike Ralphson wrote: > 2008/5/7 Brandon Casey <casey@xxxxxxxxxxxxxxx>: >> Johannes Sixt wrote: >> > The #define fopen in git-compat-util.h essentially defeats the effect of >> > _LARGE_FILES as far as fopen() calls are concerned: If >> > FREAD_READS_DIRECTORIES is not defined, fopen() would be redirected to >> > fopen64(), but when it is defined, it is redirected to git_fopen(), which >> > in turn uses fopen() instead of fopen64() (due to the #undef in >> > compat/fopen.c). >> > >> >> How about something like this? >> >> diff --git a/compat/fopen.c b/compat/fopen.c >> index ccb9e89..70b0d4d 100644 >> --- a/compat/fopen.c >> +++ b/compat/fopen.c >> @@ -1,5 +1,5 @@ >> +#undef FREAD_READS_DIRECTORIES >> #include "../git-compat-util.h" >> -#undef fopen >> FILE *git_fopen(const char *path, const char *mode) >> { >> FILE *fp; >> >> >> -brandon >> > > Ta. I still get all the warnings with that, was that what you were > trying to solve? The 64 bit specific tests in t5302 do still pass. Ah, yes. You would still get the warnings for every other file that includes git-compat-util.h, except compat/fopen.c. I didn't think about all of those. :) In this case those are indeed harmless. And now the git provided git_fopen() will use the compiler selected fopen() which should avoid any of the gotchas that Hannes brought up. -brandon -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html