Re: [PATCH/RFC] Fix some warnings (on cygwin) to allow -Werror
- From
Ramsay Jones <ramsay@ramsay1.demon.co.uk>
- Date
- Jul 5, 2008, 20:35 UTC
- Message-ID
- <486FDB2F.3050800@ramsay1.demon.co.uk>
- In-Reply-To
- <7vskuquisp.fsf@gitster.siamese.dyndns.org>
Junio C Hamano wrote:
Show 19 quoted lines
> Ramsay Jones <ramsay@ramsay1.demon.co.uk> writes: > >> Despite the subject line, this should be useful on any system for >> which uint32_t is defined to be unsigned long rather than >> unsigned int. (and where the return type of htonl() is similarly >> defined). > > Correct. Perhaps "Use %PRIu32 and such to print integers of fixed length"? > > The only worry I have with this patch is with systems with not-so-ANSI > headers; as you noticed, we already have: > > #ifndef PRIuMAX > #define PRIuMAX "llu" > #endif > > in git-compat-util.h, which does include <inttypes.h>, so PRIu32 and > friends could be problematic on these platforms. >
Yes, I had the same worry, since I did not know which system(s) required the above #ifdef and, perhaps more important, why. Having said that, I suspect (hope?) that the affected system(s) are somewhat rare. I guess it would not be long before someone complained otherwise...
[Note: I can't just blame the above #ifdef because I don't have a real git repo ;-) - it would simply blame me!]
Show 10 quoted lines
>> @@ -1718,7 +1720,8 @@ static int add_ref_tag(const char *path, const unsigned char *sha1, int flag, vo
>> static void prepare_pack(int window, int depth)
>> {
>> struct object_entry **delta_list;
>> - uint32_t i, n, nr_deltas;
>> + uint32_t i, nr_deltas;
>> + unsigned n;
>
> Hmm. Is this change necessary?
> Yes, otherwise:
builtin-pack-objects.c: In function `prepare_pack': builtin-pack-objects.c:1760: warning: passing arg 2 of `find_deltas' from incompatible pointer type make: *** [builtin-pack-objects.o] Error 1
Note that ll_find_deltas() is #defined to find_deltas() in the #else arm of #ifdef THREADED_DELTA_SEARCH, and find_deltas() takes an "unsigned *"
ATB,
Ramsay Jones