From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id 1C8D5D806C6 for ; Sun, 20 Aug 2023 20:41:01 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=kKqTV/EWc1gyyP5QKGYa+E2lEiRjiDG1/CLy+WK3wkM=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20140610; t=1692564060; v=1; b=bKMz2bMszpBMrVfciuF3nMKZhtsU4M2OaQPskPZT/XLcN19bloPhifkcH/BVFh5LRP6z/Y13 8FIbRVu6duz/GQfrZRMlDrSw8pLBZmYiAcgIaB2jZNeCWD8b5ZbEr/YB78db9ig1kG5J9b+mc5A 6ch7uXDa5PexLA6eYCot5vhw= X-Received: by 127.0.0.2 with SMTP id I2sNYY7687511xBSqmZIb9vS; Sun, 20 Aug 2023 13:41:00 -0700 X-Received: from smtp26.services.sfr.fr (smtp26.services.sfr.fr [93.17.128.209]) by mx.groups.io with SMTP id smtpd.web11.26795.1692529646816608089 for ; Sun, 20 Aug 2023 04:07:28 -0700 X-mail-filterd: {"version":"1.7.1","queueID":"4RTCW04wKbz1LQKdc","contextId": "7dd1c7e8-a77d-4d88-8a84-9fc31f0cb278"} X-Received: from localhost.localdomain (179.211.201.77.rev.sfr.net [77.201.211.179]) by msfrf2631.sfr.fr (SMTP Server) with ESMTP id 4RTCW04wKbz1LQKdc; Sun, 20 Aug 2023 13:07:24 +0200 (CEST) X-mail-filterd: {"version":"1.7.1","queueID":"4RTCW03dybz1LQKcw","contextId": "f4629091-3bfd-4914-866d-7a136f96b1b5"} X-sfr-mailing: LEGIT X-sfr-spamrating: 40 X-sfr-spam: not-spam X-Received: from localhost.localdomain (179.211.201.77.rev.sfr.net [77.201.211.179]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: ehaouas@noos.fr) by msfrf2631.sfr.fr (SMTP Server) with ESMTPSA id 4RTCW03dybz1LQKcw; Sun, 20 Aug 2023 13:07:24 +0200 (CEST) From: Elyes Haouas To: devel@edk2.groups.io Cc: Elyes Haouas Subject: [edk2-devel] [PATCH] Use C99 flexible arrays Date: Sun, 20 Aug 2023 13:07:04 +0200 Message-Id: <20230820110704.18359-1-ehaouas@noos.fr> MIME-Version: 1.0 Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,ehaouas@noos.fr List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: dV2F0vQ1cktDyrRKDlwiBKUex7686176AA= Content-Transfer-Encoding: quoted-printable X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b=bKMz2bMs; spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io; dmarc=none Use C99 flexible arrays instead of older style of one-element or zero-length arrays. It allows the compiler to generate errors when the flexible array does not occur at the end in the structure. Signed-off-by: Elyes Haouas --- EmbeddedPkg/Include/fdt.h | 4 ++-- .../Library/FrameBufferBltLib/FrameBufferBltLib.c | 2 +- MdePkg/Include/IndustryStandard/IpmiNetFnApp.h | 8 ++++---- MdePkg/Include/IndustryStandard/IpmiNetFnChassis.h | 4 ++-- MdePkg/Include/IndustryStandard/IpmiNetFnStorage.h | 6 +++--- MdePkg/Include/IndustryStandard/IpmiNetFnTransport.h | 8 ++++---- MdePkg/Include/IndustryStandard/PldmSmbiosTransfer.h | 8 ++++---- MdePkg/Include/IndustryStandard/TcgStorageCore.h | 6 +++--- MdePkg/Include/Protocol/NetworkInterfaceIdentifier.h | 2 +- MdePkg/Include/Protocol/NvdimmLabel.h | 2 +- UefiPayloadPkg/Include/Coreboot.h | 10 +++++----- 11 files changed, 30 insertions(+), 30 deletions(-) diff --git a/EmbeddedPkg/Include/fdt.h b/EmbeddedPkg/Include/fdt.h index 120dbc8bc6..f64695da5c 100644 --- a/EmbeddedPkg/Include/fdt.h +++ b/EmbeddedPkg/Include/fdt.h @@ -81,14 +81,14 @@ struct fdt_reserve_entry { =0D struct fdt_node_header {=0D fdt32_t tag;=0D - char name[0];=0D + char name[];=0D };=0D =0D struct fdt_property {=0D fdt32_t tag;=0D fdt32_t len;=0D fdt32_t nameoff;=0D - char data[0];=0D + char data[];=0D };=0D =0D #endif /* !__ASSEMBLY */=0D diff --git a/MdeModulePkg/Library/FrameBufferBltLib/FrameBufferBltLib.c b/M= deModulePkg/Library/FrameBufferBltLib/FrameBufferBltLib.c index 432577bcfd..5fc5779e16 100644 --- a/MdeModulePkg/Library/FrameBufferBltLib/FrameBufferBltLib.c +++ b/MdeModulePkg/Library/FrameBufferBltLib/FrameBufferBltLib.c @@ -24,7 +24,7 @@ struct FRAME_BUFFER_CONFIGURE { EFI_PIXEL_BITMASK PixelMasks;=0D INT8 PixelShl[4]; // R-G-B-Rsvd=0D INT8 PixelShr[4]; // R-G-B-Rsvd=0D - UINT8 LineBuffer[0];=0D + UINT8 LineBuffer[];=0D };=0D =0D CONST EFI_PIXEL_BITMASK mRgbPixelMasks =3D {=0D diff --git a/MdePkg/Include/IndustryStandard/IpmiNetFnApp.h b/MdePkg/Includ= e/IndustryStandard/IpmiNetFnApp.h index b6bc91f46c..b5174a5042 100644 --- a/MdePkg/Include/IndustryStandard/IpmiNetFnApp.h +++ b/MdePkg/Include/IndustryStandard/IpmiNetFnApp.h @@ -433,7 +433,7 @@ typedef union { typedef struct {=0D UINT8 CompletionCode;=0D IPMI_GET_MESSAGE_CHANNEL_NUMBER ChannelNumber;=0D - UINT8 MessageData[0];=0D + UINT8 MessageData[];=0D } IPMI_GET_MESSAGE_RESPONSE;=0D =0D //=0D @@ -457,12 +457,12 @@ typedef union { typedef struct {=0D UINT8 CompletionCode;=0D IPMI_SEND_MESSAGE_CHANNEL_NUMBER ChannelNumber;=0D - UINT8 MessageData[0];=0D + UINT8 MessageData[];=0D } IPMI_SEND_MESSAGE_REQUEST;=0D =0D typedef struct {=0D UINT8 CompletionCode;=0D - UINT8 ResponseData[0];=0D + UINT8 ResponseData[];=0D } IPMI_SEND_MESSAGE_RESPONSE;=0D =0D //=0D @@ -906,7 +906,7 @@ typedef union { typedef struct {=0D IPMI_SET_USER_PASSWORD_USER_ID UserId;=0D IPMI_SET_USER_PASSWORD_OPERATION Operation;=0D - UINT8 PasswordData[0]; // 16 or 20 bytes, = depending on the 'PasswordSize' field=0D + UINT8 PasswordData[]; // 16 or 20 bytes, d= epending on the 'PasswordSize' field=0D } IPMI_SET_USER_PASSWORD_REQUEST;=0D =0D //=0D diff --git a/MdePkg/Include/IndustryStandard/IpmiNetFnChassis.h b/MdePkg/In= clude/IndustryStandard/IpmiNetFnChassis.h index e3b8a62105..44024da69c 100644 --- a/MdePkg/Include/IndustryStandard/IpmiNetFnChassis.h +++ b/MdePkg/Include/IndustryStandard/IpmiNetFnChassis.h @@ -183,7 +183,7 @@ typedef union { =0D typedef struct {=0D IPMI_SET_BOOT_OPTIONS_PARAMETER_VALID ParameterValid;=0D - UINT8 ParameterData[0];=0D + UINT8 ParameterData[];=0D } IPMI_SET_BOOT_OPTIONS_REQUEST;=0D =0D typedef struct {=0D @@ -415,7 +415,7 @@ typedef struct { UINT8 CompletionCode;=0D IPMI_GET_BOOT_OPTIONS_PARAMETER_VERSION ParameterVersion;=0D IPMI_GET_BOOT_OPTIONS_PARAMETER_VALID ParameterValid;=0D - UINT8 ParameterData[0];=0D + UINT8 ParameterData[];=0D } IPMI_GET_BOOT_OPTIONS_RESPONSE;=0D =0D //=0D diff --git a/MdePkg/Include/IndustryStandard/IpmiNetFnStorage.h b/MdePkg/In= clude/IndustryStandard/IpmiNetFnStorage.h index 553a69a472..755bcb67e5 100644 --- a/MdePkg/Include/IndustryStandard/IpmiNetFnStorage.h +++ b/MdePkg/Include/IndustryStandard/IpmiNetFnStorage.h @@ -76,7 +76,7 @@ typedef struct { typedef struct {=0D UINT8 CompletionCode;=0D UINT8 CountReturned;=0D - UINT8 Data[0];=0D + UINT8 Data[];=0D } IPMI_READ_FRU_DATA_RESPONSE;=0D =0D //=0D @@ -95,7 +95,7 @@ typedef struct { typedef struct {=0D UINT8 DeviceId;=0D UINT16 InventoryOffset;=0D - UINT8 Data[0];=0D + UINT8 Data[];=0D } IPMI_WRITE_FRU_DATA_REQUEST;=0D =0D typedef struct {=0D @@ -594,7 +594,7 @@ typedef struct { UINT16 RecordId;=0D UINT8 OffsetIntoRecord;=0D UINT8 InProgress;=0D - UINT8 RecordData[0];=0D + UINT8 RecordData[];=0D } IPMI_PARTIAL_ADD_SEL_ENTRY_REQUEST;=0D =0D typedef struct {=0D diff --git a/MdePkg/Include/IndustryStandard/IpmiNetFnTransport.h b/MdePkg/= Include/IndustryStandard/IpmiNetFnTransport.h index 2024c35f7f..273a162552 100644 --- a/MdePkg/Include/IndustryStandard/IpmiNetFnTransport.h +++ b/MdePkg/Include/IndustryStandard/IpmiNetFnTransport.h @@ -313,7 +313,7 @@ typedef union { typedef struct {=0D IPMI_SET_LAN_CONFIG_CHANNEL_NUM ChannelNumber;=0D UINT8 ParameterSelector;=0D - UINT8 ParameterData[0];=0D + UINT8 ParameterData[];=0D } IPMI_SET_LAN_CONFIGURATION_PARAMETERS_COMMAND_REQUEST;=0D =0D //=0D @@ -343,7 +343,7 @@ typedef struct { typedef struct {=0D UINT8 CompletionCode;=0D UINT8 ParameterRevision;=0D - UINT8 ParameterData[0];=0D + UINT8 ParameterData[];=0D } IPMI_GET_LAN_CONFIGURATION_PARAMETERS_RESPONSE;=0D =0D //=0D @@ -879,7 +879,7 @@ typedef union { typedef struct {=0D IPMI_SET_SOL_CONFIG_PARAM_CHANNEL_NUM ChannelNumber;=0D UINT8 ParameterSelector;=0D - UINT8 ParameterData[0];=0D + UINT8 ParameterData[];=0D } IPMI_SET_SOL_CONFIGURATION_PARAMETERS_REQUEST;=0D =0D //=0D @@ -909,7 +909,7 @@ typedef struct { typedef struct {=0D UINT8 CompletionCode;=0D UINT8 ParameterRevision;=0D - UINT8 ParameterData[0];=0D + UINT8 ParameterData[];=0D } IPMI_GET_SOL_CONFIGURATION_PARAMETERS_RESPONSE;=0D =0D #pragma pack()=0D diff --git a/MdePkg/Include/IndustryStandard/PldmSmbiosTransfer.h b/MdePkg/= Include/IndustryStandard/PldmSmbiosTransfer.h index 9b7a5e838e..3e72812ea7 100644 --- a/MdePkg/Include/IndustryStandard/PldmSmbiosTransfer.h +++ b/MdePkg/Include/IndustryStandard/PldmSmbiosTransfer.h @@ -92,7 +92,7 @@ typedef struct { typedef struct {=0D UINT32 NextDataTransferHandle;=0D UINT8 TransferFlag;=0D - UINT8 Table[0];=0D + UINT8 Table[];=0D } PLDM_GET_SMBIOS_STRUCTURE_TABLE_RESPONSE;=0D =0D typedef struct {=0D @@ -106,7 +106,7 @@ typedef struct { typedef struct {=0D UINT32 DataTransferHandle;=0D UINT8 TransferFlag;=0D - UINT8 Table[0];=0D + UINT8 Table[];=0D } PLDM_SET_SMBIOS_STRUCTURE_TABLE_REQUEST;=0D =0D typedef struct {=0D @@ -143,7 +143,7 @@ typedef struct { typedef struct {=0D UINT32 NextDataTransferHandle;=0D UINT8 TransferFlag;=0D - UINT8 Table[0];=0D + UINT8 Table[];=0D } PLDM_GET_SMBIOS_STRUCTURE_BY_TYPE_RESPONSE;=0D =0D typedef struct {=0D @@ -171,7 +171,7 @@ typedef struct { typedef struct {=0D UINT32 NextDataTransferHandle;=0D UINT8 TransferFlag;=0D - UINT8 Table[0];=0D + UINT8 Table[];=0D } PLDM_GET_SMBIOS_STRUCTURE_BY_HANDLE_RESPONSE;=0D =0D typedef struct {=0D diff --git a/MdePkg/Include/IndustryStandard/TcgStorageCore.h b/MdePkg/Incl= ude/IndustryStandard/TcgStorageCore.h index 1fae7b6e84..7502e3d46c 100644 --- a/MdePkg/Include/IndustryStandard/TcgStorageCore.h +++ b/MdePkg/Include/IndustryStandard/TcgStorageCore.h @@ -38,7 +38,7 @@ typedef struct { UINT32 OutstandingDataBE;=0D UINT32 MinTransferBE;=0D UINT32 LengthBE;=0D - UINT8 Payload[0];=0D + UINT8 Payload[];=0D } TCG_COM_PACKET;=0D =0D typedef struct {=0D @@ -49,7 +49,7 @@ typedef struct { UINT16 AckTypeBE;=0D UINT32 AcknowledgementBE;=0D UINT32 LengthBE;=0D - UINT8 Payload[0];=0D + UINT8 Payload[];=0D } TCG_PACKET;=0D =0D #define TCG_SUBPACKET_ALIGNMENT 4// 4-byte alignment per spec=0D @@ -58,7 +58,7 @@ typedef struct { UINT8 ReservedBE[6];=0D UINT16 KindBE;=0D UINT32 LengthBE;=0D - UINT8 Payload[0];=0D + UINT8 Payload[];=0D } TCG_SUB_PACKET;=0D =0D #define SUBPACKET_KIND_DATA 0x0000=0D diff --git a/MdePkg/Include/Protocol/NetworkInterfaceIdentifier.h b/MdePkg/= Include/Protocol/NetworkInterfaceIdentifier.h index 78acb4ddae..85d904ca9c 100644 --- a/MdePkg/Include/Protocol/NetworkInterfaceIdentifier.h +++ b/MdePkg/Include/Protocol/NetworkInterfaceIdentifier.h @@ -101,7 +101,7 @@ struct undiconfig_table { struct {=0D VOID *NII_InterfacePointer; ///< Pointer to the NII interf= ace structure.=0D VOID *DevicePathPointer; ///< Pointer to the device pat= h for this NIC.=0D - } NII_entry[1];=0D + } NII_entry[];=0D };=0D =0D extern EFI_GUID gEfiNetworkInterfaceIdentifierProtocolGuid;=0D diff --git a/MdePkg/Include/Protocol/NvdimmLabel.h b/MdePkg/Include/Protoco= l/NvdimmLabel.h index e46999a3ab..91a9b675f9 100644 --- a/MdePkg/Include/Protocol/NvdimmLabel.h +++ b/MdePkg/Include/Protocol/NvdimmLabel.h @@ -244,7 +244,7 @@ typedef struct { ///=0D /// Array size is 1 if EFI_NVDIMM_LABEL_FLAGS_LOCAL is set indicating a = Local Namespaces.=0D ///=0D - EFI_NVDIMM_LABEL_SET_COOKIE_MAP Mapping[0];=0D + EFI_NVDIMM_LABEL_SET_COOKIE_MAP Mapping[];=0D } EFI_NVDIMM_LABEL_SET_COOKIE_INFO;=0D =0D /**=0D diff --git a/UefiPayloadPkg/Include/Coreboot.h b/UefiPayloadPkg/Include/Cor= eboot.h index 2d454f7c89..a53ede390c 100644 --- a/UefiPayloadPkg/Include/Coreboot.h +++ b/UefiPayloadPkg/Include/Coreboot.h @@ -59,7 +59,7 @@ struct cbmem_root { UINT32 num_entries;=0D UINT32 locked;=0D UINT32 size;=0D - struct cbmem_entry entries[0];=0D + struct cbmem_entry entries[];=0D };=0D =0D struct imd_entry {=0D @@ -75,7 +75,7 @@ struct imd_root { UINT32 flags;=0D UINT32 entry_align;=0D UINT32 max_offset;=0D - struct imd_entry entries[0];=0D + struct imd_entry entries[];=0D };=0D =0D struct cbuint64 {=0D @@ -119,7 +119,7 @@ struct cb_memory_range { struct cb_memory {=0D UINT32 tag;=0D UINT32 size;=0D - struct cb_memory_range map[0];=0D + struct cb_memory_range map[];=0D };=0D =0D #define CB_TAG_MAINBOARD 0x0003=0D @@ -129,7 +129,7 @@ struct cb_mainboard { UINT32 size;=0D UINT8 vendor_idx;=0D UINT8 part_number_idx;=0D - UINT8 strings[0];=0D + UINT8 strings[];=0D };=0D =0D #define CB_TAG_VERSION 0x0004=0D @@ -146,7 +146,7 @@ struct cb_mainboard { struct cb_string {=0D UINT32 tag;=0D UINT32 size;=0D - UINT8 string[0];=0D + UINT8 string[];=0D };=0D =0D #define CB_TAG_SERIAL 0x000f=0D --=20 2.40.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#107898): https://edk2.groups.io/g/devel/message/107898 Mute This Topic: https://groups.io/mt/100861513/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=-