Subject: bug#6555: stat enhancement

From: A Burgie <[email-masked]>
Date: Mon, 5 Jul 2010 09:53:49 -0600

Nevermind.... I understand your reasoning now to allow the failure to
propagate out.

On Mon, Jul 5, 2010 at 09:52, A Burgie <[email-masked]> wrote:
> On Mon, Jul 5, 2010 at 09:41, Jim Meyering <[email-masked]> wrote:
>> Jim Meyering wrote:
>>> I'll push these two change-sets shortly.
>>>
>>> Subject: [PATCH 1/2] system.h: define ATTRIBUTE_WARN_UNUSED_RESULT
>> ...
>>> +/* The warn_unused_result attribute appeared first in gcc-3.4.0 */
>>> +#undef ATTRIBUTE_WARN_UNUSED_RESULT
>>> +#if __GNUC__ < 3 || (__GNUC__ == 3 && __GNUC_MINOR__ < 4)
>>> +# define ATTRIBUTE_WARN_UNUSED_RESULT __attribute__ ((__warn_unused_result__))
>>> +#else
>>> +# define ATTRIBUTE_WARN_UNUSED_RESULT /* empty */
>>> +#endif
>>
>> Just noticed I reversed the if/else branches above.
>> This works a lot better:
>>
>> commit 61aae73f5427c987b20604fbec5772e02edc0f74
>> Author: Jim Meyering <[email-masked]>
>> Date:   Mon Jul 5 17:16:23 2010 +0200
>>
>>    system.h: define ATTRIBUTE_WARN_UNUSED_RESULT
>>
>>    * src/system.h (ATTRIBUTE_WARN_UNUSED_RESULT): Define.
>>
>> diff --git a/src/system.h b/src/system.h
>> index 859b663..9e14681 100644
>> --- a/src/system.h
>> +++ b/src/system.h
>> @@ -483,6 +483,14 @@ enum
>>  # define ATTRIBUTE_UNUSED __attribute__ ((__unused__))
>>  #endif
>>
>> +/* The warn_unused_result attribute appeared first in gcc-3.4.0 */
>> +#undef ATTRIBUTE_WARN_UNUSED_RESULT
>> +#if __GNUC__ < 3 || (__GNUC__ == 3 && __GNUC_MINOR__ < 4)
>> +# define ATTRIBUTE_WARN_UNUSED_RESULT /* empty */
>> +#else
>> +# define ATTRIBUTE_WARN_UNUSED_RESULT __attribute__ ((__warn_unused_result__))
>> +#endif
>> +
>>  #if defined strdupa
>>  # define ASSIGN_STRDUPA(DEST, S)               \
>>   do { DEST = strdupa (S); } while (0)
>>
>
> Just to make sure I understand why something else was invalid, I
> wrapped the print statement with an if that basically had the same
> logic as df.c (mp=find_mount_point....; if(mp){print....})
>
> That, to me, seemed valid, though it would not print anything at all
> if find_mount_point returned a null.  I suppose it would be preferred
> for the question-mark result which is perhaps what your version is
> doing.  Anyway, just thought I'd throw that out there.
>
> Sent in the e-mail for the legal side of things; waiting to hear back from them.
>