[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PULL 00/11] Ide patches
From: |
Peter Maydell |
Subject: |
Re: [Qemu-devel] [PULL 00/11] Ide patches |
Date: |
Mon, 18 Sep 2017 19:00:07 +0100 |
On 18 September 2017 at 18:55, John Snow <address@hidden> wrote:
> On 09/16/2017 10:34 AM, Peter Maydell wrote:
>> Hi; I'm afraid this doesn't build with clang:
>>
>> /home/petmay01/linaro/qemu-for-merges/hw/ide/core.c:70:15: error:
>> comparison of unsigned enum expression >= 0 is always true
>> [-Werror,-Wtautological-compare]
>> if (enval >= 0 && enval < IDE_DMA__COUNT) {
>> ~~~~~ ^ ~
>> 1 error generated.
>>
>> (It's impdef whether an enum with all positive values is
>> a signed type or unsigned type, so just deleting the
>> comparison against 0 would also be wrong...)
> Huh, impdef in the general case, but is it undefined for gnu99? I'm
> wondering why Clang can be so certain about this comparison being
> useless. Is this a Clang "bug"?
My guess is that clang as an implementation picks unsigned
in this case, that it then effectively lowers all the enums
to just being integer arithmetic, and then the warning pass
coming along later doesn't know that the unsigned thing it's
comparing is an enum.
I think you could argue that it would at least be helpful
if clang didn't warn about comparisons that only happen
to be useless for this particular platform/impdef choice
but are useful for the same code compiled with a different
compiler.
thanks
-- PMM
- [Qemu-devel] [PULL 05/11] IDE: add tracing for data ports, (continued)
- [Qemu-devel] [PULL 05/11] IDE: add tracing for data ports, John Snow, 2017/09/15
- [Qemu-devel] [PULL 01/11] ide: ahci: unparent children buses before freeing their memory, John Snow, 2017/09/15
- [Qemu-devel] [PULL 06/11] ATAPI: Replace DEBUG_IDE_ATAPI with tracing events, John Snow, 2017/09/15
- [Qemu-devel] [PULL 07/11] IDE: replace DEBUG_AIO with trace events, John Snow, 2017/09/15
- [Qemu-devel] [PULL 11/11] AHCI: remove DPRINTF macro, John Snow, 2017/09/15
- [Qemu-devel] [PULL 08/11] AHCI: Replace DPRINTF with trace-events, John Snow, 2017/09/15
- Re: [Qemu-devel] [PULL 00/11] Ide patches, no-reply, 2017/09/15
- Re: [Qemu-devel] [PULL 00/11] Ide patches, Peter Maydell, 2017/09/16