diff options
Diffstat (limited to 'results/classifier/accel-gemma3:12b/kvm/1651167')
| -rw-r--r-- | results/classifier/accel-gemma3:12b/kvm/1651167 | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/results/classifier/accel-gemma3:12b/kvm/1651167 b/results/classifier/accel-gemma3:12b/kvm/1651167 new file mode 100644 index 000000000..0a5fed210 --- /dev/null +++ b/results/classifier/accel-gemma3:12b/kvm/1651167 @@ -0,0 +1,27 @@ + +hw/ipmi/isa_ipmi_bt.c:283: suspect use of macro ? + +I just had a go at compiling qemu trunk with +llvm trunk. It said: + +hw/ipmi/isa_ipmi_bt.c:283:31: warning: logical not is only applied to the left hand side of this bitwise operator [-Wlogical-not-parentheses] + +Source code is + + IPMI_BT_SET_HBUSY(ib->control_reg, + !IPMI_BT_GET_HBUSY(ib->control_reg)); + +That use of ! causes trouble. The SET and GET +macros are defined as: + +#define IPMI_BT_GET_HBUSY(d) (((d) >> IPMI_BT_HBUSY_BIT) & 0x1) +#define IPMI_BT_SET_HBUSY(d, v) (d) = (((d) & ~IPMI_BT_HBUSY_MASK) | \ + (((v & 1) << IPMI_BT_HBUSY_BIT))) + +I can make the compiler shut up by adding extra () in the last +use of v in the SET macro, like this: + +#define IPMI_BT_SET_HBUSY(d, v) (d) = (((d) & ~IPMI_BT_HBUSY_MASK) | \ + ((((v) & 1) << IPMI_BT_HBUSY_BIT))) + +I think this is standard good practice when using macro parameters anyway. \ No newline at end of file |