[FFmpeg-devel] [PATCH] checkasm: Silence warnings about unused return value from read()
Martin Storsjö
martin at martin.st
Mon Aug 8 23:39:57 EEST 2022
On Fri, 5 Aug 2022, Martin Storsjö wrote:
> On Wed, 27 Jul 2022, Andreas Rheinhardt wrote:
>
>> Swinney, Jonathan:
>>> This patch looks good to me. I would appreciate its merging.
>>>
>
>> } while (0)
>> #define PERF_STOP(t) do { \
>> + int ret; \
>> ioctl(sysfd, PERF_EVENT_IOC_DISABLE, 0); \
>> - read(sysfd, &t, sizeof(t)); \
>> + ret = read(sysfd, &t, sizeof(t)); \
>> + (void)ret; \
>> } while (0)
>
>> Why do you use this extra variable instead of just casting the return
>> value of read to void?
>
> Because if I just cast the return value of read to void, it still warns about
> it being unused, at least with GCC 9. I believe the rules for "used vs
> unused" for variables (where you can cast it to void to mark it as used) and
> "must not ignore return value" (-Wunused-result) differ. Apparently, in order
> to appease the compiler for a return value to not be ignored, it either has
> to be stored or compared.
Pushed this now.
// Martin
More information about the ffmpeg-devel
mailing list