Re: [PATCH] string-list.h: Add STRING_LIST_INIT macro and make use of it.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Alex Riesen <raa.lkml@xxxxxxxxx> writes:

>> But I wonder if this is worth it (not this "more complete", but your
>> patch). We convert 16 or so instances of initialization for "no strdup"
>> list, but there are about the same number of "strdup" instances still
>> spelled out:
>>
>>    $ git grep -e 'struct string_list [^ ]* = {.*'
>>    $ git grep -e 'struct string_list [^ ]* = {.*1'
>>
>> Wouldn't it be more sensible to use this instead?
>>
>>    #define STRING_LIST_INIT(pleasedup) { NULL, 0, 0, (pleasedup) }
>
> This begs for using strdup(string-to-dup) in the macro argument, which
> will not compile with ancient compilers which don't allow code in an
> initializer.

Err, one of us must be confused.

I was suggesting to rewrite things like these, found in builtin/remote.c
(add and rm):

	struct string_list track = { NULL, 0, 0, 0 };
	struct string_list branches = { NULL, 0, 0, 1 };

like so:

	#define STRING_LIST_INIT(pleasedup) { NULL, 0, 0, (pleasedup) }
	struct string_list track = STRING_LIST_INIT(0);
        struct string_list branches = STRING_LIST_INIT(1);

I don't see strdup in macro argument anywhere.

The original patch in this thread proposed to do this instead:

	#define STRING_LIST_INIT { NULL, 0, 0, 0 }
	struct string_list track = STRING_LIST_INIT;
        struct string_list branches = { NULL, 0, 0, 1 };

converting about half of initializers to the macro, and leaving the other
half spelled out.
--
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


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]