Subject: Re: [PATCH] run-command: fix an 'different modifiers' sparse warning

From: Ramsay Jones <[email-masked]>
Date: Thu, 25 Feb 2016 23:08:31 +0000

On 25/02/16 21:39, Jeff King wrote:
> On Thu, Feb 25, 2016 at 12:20:12PM -0800, Junio C Hamano wrote:
> 
>> Ramsay Jones <[email-masked]> writes:
>>
>>> Signed-off-by: Ramsay Jones <[email-masked]>
>>> ---
>>>
>>> Hi Jeff,
>>>
>>> If you need to re-roll your 'jk/epipe-in-async' branch, could you
>>> please squash this into the relevant patch. (ie. "write_or_die:
>>> handle EPIPE in async threads", 24-02-2016).
>>>
>>> Thanks!
>>
>> I actually was planning to merge this to 'next' today, so I'll
>> squash it in without waiting for a reroll.
> 
> I am OK with that. But I do find it interesting that we must mark
> NORETURN in both the declaration and the definition, but we don't for
> __attribute__((format)).
> 
>> By the way, doesn't it bother anybody to give two different types to
>> the same function depending on NO_PTHREAD?  It is not a new issue
>> added by this series, but async_exit() that claims to return int
>> does not (naturally) return anything, and sparse does not seem to
>> care (neither do we).
> 
> It would have bothered me if I had noticed. :)
> 
> It is simply a bug, and sparse (and the compiler) do not notice it
> because it only shows up if you compile with NO_PTHREADS=1. And I think
> it is added by this series:

Wow, I can't believe that I didn't notice this myself while editing
the file! :-D

ATB,
Ramsay Jones