qemu/hw/acpi
Philippe Mathieu-Daudé f7795e4096 misc: Replace zero-length arrays with flexible array member (automatic)
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 Coccinelle script:

  @@
  identifier s, m, a;
  type t, T;
  @@
   struct s {
      ...
      t m;
  -   T a[0];
  +   T a[];
  };
  @@
  identifier s, m, a;
  type t, T;
  @@
   struct s {
      ...
      t m;
  -   T a[0];
  +   T a[];
   } QEMU_PACKED;

[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_interface.c acpi: extend ACPI interface to provide send_event hook 2016-06-07 15:36:54 +03:00
acpi-stub.c Include qmp-commands.h exactly where needed 2018-02-09 13:52:10 +01:00
acpi-x86-stub.c acpi: move PC stubs out of stubs/ 2019-12-17 19:33:50 +01:00
aml-build.c acpi: Add i2c serial bus CRS handling 2019-09-20 14:08:10 -05:00
bios-linker-loader.c Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
core.c sysemu: Split sysemu/runstate.h off sysemu/sysemu.h 2019-08-16 13:37:36 +02:00
cpu_hotplug.c hw/acpi/cpu_hotplug: Include "hw/pci/pci.h" 2020-03-09 15:59:31 +01:00
cpu.c acpi: cpuhp: add CPHP_GET_CPU_ID_CMD command 2020-01-22 00:23:07 -05:00
generic_event_device.c * Register qdev properties as class properties (Marc-André) 2020-01-27 09:44:04 +00:00
hmat.c hmat acpi: Build Memory Side Cache Information Structure(s) 2020-01-05 07:03:03 -05:00
hmat.h hmat acpi: Build Memory Proximity Domain Attributes Structure(s) 2020-01-05 07:03:03 -05:00
ich9.c hw/acpi: Include "hw/mem/nvdimm.h" 2020-03-09 15:59:31 +01:00
ipmi-stub.c ipmi: Fix SSIF ACPI handling to use the right CRS 2019-09-20 14:08:10 -05:00
ipmi.c ipmi: Fix SSIF ACPI handling to use the right CRS 2019-09-20 14:08:10 -05:00
Kconfig hmat acpi: Build Memory Proximity Domain Attributes Structure(s) 2020-01-05 07:03:03 -05:00
Makefile.objs hmat acpi: Build Memory Proximity Domain Attributes Structure(s) 2020-01-05 07:03:03 -05:00
memory_hotplug.c hw/acpi: Do not create memory hotplug method when handler is not defined 2019-10-05 17:12:08 -04:00
nvdimm.c misc: Replace zero-length arrays with flexible array member (automatic) 2020-03-16 22:07:42 +01:00
pci.c acpi: pci: use build_append_foo() API to construct MCFG 2019-05-29 18:00:57 -04:00
pcihp.c hw/pci-host/piix: Move i440FX declarations to hw/pci-host/i440fx.h 2019-11-05 23:33:12 +01:00
piix4.c hw/acpi: Include "hw/mem/nvdimm.h" 2020-03-09 15:59:31 +01:00
tco.c Include migration/vmstate.h less 2019-08-16 13:31:52 +02:00
tpm.c acpi: add ACPI memory clear interface 2019-01-17 21:10:57 -05:00
trace-events acpi: cpuhp: introduce 'Command data 2' field 2020-01-22 00:23:07 -05:00
utils.c hw/acpi: extract acpi_add_rom_blob() 2019-06-16 16:16:52 -04:00
vmgenid.c qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00