Subject: Re: [PATCH] fast-import: Remove redundant assignment of 'oe' to itself.

From: Stefan Beller <[email-masked]>
Date: Sun, 26 May 2013 22:14:05 +0200

It's not done very often.
For example at the very same place of the patch there is
const char *p; not assigned.

Well you could argue, that it can be detected by gcc as that variable p
is assigned next line.
So another counterexample, having the same pattern would be
fast-import.c line 2992 in parse_treeish_dataref(const char **p)
there we have a pointer to a struct, which is only assigned inside
the following if/else branches.
Then that place would need to be fixed up to
struct object_entry *e = e;

Regards,
Stefan

On 05/26/2013 10:08 PM, Stefano Lattarini wrote:
> On 05/26/2013 10:05 PM, Stefan Beller wrote:
>> Reported by cppcheck.
>>
>> Signed-off-by: Stefan Beller <[email-masked]>
>> ---
>>  fast-import.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/fast-import.c b/fast-import.c
>> index 5f539d7..0142e3a 100644
>> --- a/fast-import.c
>> +++ b/fast-import.c
>> @@ -2914,7 +2914,7 @@ static void cat_blob(struct object_entry *oe, unsigned char sha1[20])
>>  static void parse_cat_blob(void)
>>  {
>>  	const char *p;
>> -	struct object_entry *oe = oe;
>>
> This was done on purpose, to avoid spurious warnings with (at least)
> some versions of GCC.
> 
>> +	struct object_entry *oe;
>>  	unsigned char sha1[20];
>>  
>>  	/* cat-blob SP <object> LF */
> 
> Regards,
>   Stefano
>