Update Tpm12.h and Tpm20.h and not use c++ reserved keywords operator and xor in C structures to support use of these include files when building with a C++ compiler.
This patch removes the temporary use of anonymous unions and warning 4201 disable for VS20xx tool chains to complete the following field name changes: * operator -> Operator * xor -> Xor NOTE: This is a non-backwards compatible change to Tpm12.h and Tmp20.h. And consumers of these include files that access the "operator" or "xor" fields must be updated. Cc: Liming Gao <gaolim...@byosoft.com.cn> Cc: Zhiguang Liu <zhiguang....@intel.com> Cc: Oliver Smith-Denny <o...@linux.microsoft.com> Cc: Pedro Falcato <pedro.falc...@gmail.com> Cc: Aaron Pop <aaron...@microsoft.com> Signed-off-by: Michael D Kinney <michael.d.kin...@intel.com> --- MdePkg/Include/IndustryStandard/Tpm12.h | 20 +------------------- MdePkg/Include/IndustryStandard/Tpm20.h | 25 ++----------------------- 2 files changed, 3 insertions(+), 42 deletions(-) diff --git a/MdePkg/Include/IndustryStandard/Tpm12.h b/MdePkg/Include/IndustryStandard/Tpm12.h index 56e89d9d0835..147c0863fffd 100644 --- a/MdePkg/Include/IndustryStandard/Tpm12.h +++ b/MdePkg/Include/IndustryStandard/Tpm12.h @@ -9,14 +9,6 @@ #ifndef _TPM12_H_ #define _TPM12_H_ -/// -/// Temporary disable 4201 to support anonymous unions -/// -#if defined (_MSC_EXTENSIONS) -#pragma warning( push ) -#pragma warning ( disable : 4201 ) -#endif - /// /// The start of TPM return codes /// @@ -752,10 +744,7 @@ typedef struct tdTPM_PERMANENT_FLAGS { BOOLEAN TPMpost; BOOLEAN TPMpostLock; BOOLEAN FIPS; - union { - BOOLEAN operator; - BOOLEAN Operator; - }; + BOOLEAN Operator; BOOLEAN enableRevokeEK; BOOLEAN nvLocked; BOOLEAN readSRKPub; @@ -2173,11 +2162,4 @@ typedef struct tdTPM_RSP_COMMAND_HDR { #pragma pack () -/// -/// Temporary disable 4201 to support anonymous unions -/// -#if defined (_MSC_EXTENSIONS) -#pragma warning( pop ) -#endif - #endif diff --git a/MdePkg/Include/IndustryStandard/Tpm20.h b/MdePkg/Include/IndustryStandard/Tpm20.h index a602c0d9c289..c827af13efd0 100644 --- a/MdePkg/Include/IndustryStandard/Tpm20.h +++ b/MdePkg/Include/IndustryStandard/Tpm20.h @@ -15,14 +15,6 @@ SPDX-License-Identifier: BSD-2-Clause-Patent #include <IndustryStandard/Tpm12.h> -/// -/// Temporary disable 4201 to support anonymous unions -/// -#if defined (_MSC_EXTENSIONS) -#pragma warning( push ) -#pragma warning ( disable : 4201 ) -#endif - #pragma pack (1) // Annex A Algorithm Constants @@ -1255,10 +1247,7 @@ typedef union { TPMI_AES_KEY_BITS aes; TPMI_SM4_KEY_BITS SM4; TPM_KEY_BITS sym; - union { - TPMI_ALG_HASH xor; - TPMI_ALG_HASH Xor; - }; + TPMI_ALG_HASH Xor; } TPMU_SYM_KEY_BITS; // Table 123 - TPMU_SYM_MODE Union @@ -1331,10 +1320,7 @@ typedef struct { // Table 136 - TPMU_SCHEME_KEYEDHASH Union typedef union { TPMS_SCHEME_HMAC hmac; - union { - TPMS_SCHEME_XOR xor; - TPMS_SCHEME_XOR Xor; - }; + TPMS_SCHEME_XOR Xor; } TPMU_SCHEME_KEYEDHASH; // Table 137 - TPMT_KEYEDHASH_SCHEME Structure @@ -1823,11 +1809,4 @@ typedef struct { #define HASH_ALG_SHA512 0x00000008 #define HASH_ALG_SM3_256 0x00000010 -/// -/// Temporary disable 4201 to support anonymous unions -/// -#if defined (_MSC_EXTENSIONS) -#pragma warning( pop ) -#endif - #endif -- 2.40.1.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#105468): https://edk2.groups.io/g/devel/message/105468 Mute This Topic: https://groups.io/mt/99226545/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/leave/9847357/21656/1706620634/xyzzy [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-