qemu-e2k/include/hw
Philippe Mathieu-Daudé 880a7817c1 misc: Replace zero-length arrays with flexible array member (manual)
Description copied from Linux kernel commit from Gustavo A. R. Silva
(see [3]):

--v-- description start --v--

  The current codebase makes use of the zero-length array language
  extension to the C90 standard, but the preferred mechanism to
  declare variable-length types such as these ones is a flexible
  array member [1], introduced in C99:

  struct foo {
      int stuff;
      struct boo array[];
  };

  By making use of the mechanism above, we will get a compiler
  warning in case the flexible array does not occur last in the
  structure, which will help us prevent some kind of undefined
  behavior bugs from being unadvertenly introduced [2] to the
  Linux codebase from now on.

--^-- description end --^--

Do the similar housekeeping in the QEMU codebase (which uses
C99 since commit 7be41675f7).

All these instances of code were found with the help of the
following command (then manual analysis, without modifying
structures only having a single flexible array member, such
QEDTable in block/qed.h):

  git grep -F '[0];'

[1] https://gcc.gnu.org/onlinedocs/gcc/Zero-Length.html
[2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=76497732932f
[3] https://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux.git/commit/?id=17642a2fbd2c1

Inspired-by: Gustavo A. R. Silva <gustavo@embeddedor.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-03-16 22:07:42 +01:00
..
acpi misc: Replace zero-length arrays with flexible array member (manual) 2020-03-16 22:07:42 +01:00
adc
arm misc: Replace zero-length arrays with flexible array member (automatic) 2020-03-16 22:07:42 +01:00
audio
block
char mips: inline serial_init() 2020-01-07 17:24:29 +04:00
core cpu: Introduce cpu_class_set_parent_reset() 2020-01-24 20:59:06 +01:00
cpu
cris etraxfs: remove PROP_PTR usage 2020-01-07 17:24:29 +04:00
display
dma
firmware
gpio
hyperv
i2c aspeed/i2c: Add support for DMA transfers 2019-12-16 10:46:34 +00:00
i386 misc: Replace zero-length arrays with flexible array member (automatic) 2020-03-16 22:07:42 +01:00
ide hw/ide: Let the DMAIntFunc prototype use a boolean 'is_write' argument 2020-02-20 14:47:08 +01:00
input hppa: add emulation of LASI PS2 controllers 2020-01-27 10:49:51 -08:00
intc arm_gic: Mask the un-supported priority bits 2020-02-28 16:14:57 +00:00
ipack
ipmi ipmi: Add support to customize OEM functions 2019-12-17 10:39:47 +11:00
isa hw/isa/isa-bus: cleanup irq functions 2019-12-17 19:33:51 +01:00
kvm
lm32
m68k
mem nvdimm: add uuid property to nvdimm 2020-02-21 09:15:04 +11:00
mips
misc hw/arm/allwinner-h3: add SDRAM controller device 2020-03-12 16:27:33 +00:00
net hw/arm/allwinner-h3: add EMAC ethernet device 2020-03-12 16:27:33 +00:00
nubus
nvram
pci pcie_root_port: Add hotplug disabling option 2020-03-08 09:18:29 -04:00
pci-bridge
pci-host hw/pci-host/q35: Remove unused includes 2020-03-09 15:59:31 +01:00
ppc Merge tag 'patchew/20200219160953.13771-1-imammedo@redhat.com' of https://github.com/patchew-project/qemu into HEAD 2020-02-25 09:19:00 +01:00
rdma
riscv hw/riscv: Provide rdtime callback for TCG in CLINT emulation 2020-02-27 13:46:37 -08:00
rtc hw/arm/allwinner: add RTC device support 2020-03-12 16:27:33 +00:00
s390x misc: Replace zero-length arrays with flexible array member (manual) 2020-03-16 22:07:42 +01:00
scsi
sd hw/arm/allwinner: add SD/MMC host controller 2020-03-12 16:27:33 +00:00
semihosting semihosting: add qemu_semihosting_console_inc for SYS_READC 2020-01-09 11:41:29 +00:00
sh4
southbridge
sparc
ssi aspeed/smc: Add AST2600 timings registers 2019-12-16 10:46:34 +00:00
timer
tricore
unicore32
usb
vfio
virtio misc: Replace zero-length arrays with flexible array member (automatic) 2020-03-16 22:07:42 +01:00
watchdog watchdog/aspeed: Fix AST2600 frequency behaviour 2019-12-16 10:46:34 +00:00
xen xen-bus/block: explicitly assign event channels to an AioContext 2020-02-27 11:50:30 +00:00
xtensa
boards.h misc: Replace zero-length arrays with flexible array member (manual) 2020-03-16 22:07:42 +01:00
elf_ops.h hw/core/loader: Let load_elf() populate a field with CPU-specific flags 2020-01-29 19:28:52 +01:00
empty_slot.h
fw-path-provider.h
hotplug.h
hw.h
ide.h
irq.h
loader-fit.h
loader.h hw/core/loader: Let load_elf() populate a field with CPU-specific flags 2020-01-29 19:28:52 +01:00
nmi.h hw/nmi: Fix the NMI() macro, based on INTERFACE_CHECK() 2020-02-28 14:57:19 -05:00
or-irq.h hw/core/or-irq: Increase limit of or-lines to 48 2020-01-23 16:34:15 +00:00
pcmcia.h
platform-bus.h
ptimer.h
qdev-core.h hw/core: deprecate old reset functions and introduce new ones 2020-01-30 16:02:04 +00:00
qdev-dma.h
qdev-properties.h multifd: Add multifd-compression parameter 2020-02-28 09:24:43 +01:00
register.h
registerfields.h
resettable.h hw/core: deprecate old reset functions and introduce new ones 2020-01-30 16:02:04 +00:00
stream.h
sysbus.h sysbus: remove outdated comment 2020-01-07 16:06:59 +04:00
usb.h
vmstate-if.h vmstate: add qom interface to get id 2020-01-06 18:41:32 +04:00