Hi Rebecca, GCC added -Wno-unused-but-set-variable back in 2016 for RELEASE builds to address this same issue https://github.com/tianocore/edk2/commit/20d00edf21d2f2144921622891d8b59a1553cd83 Then later added -Wno-unused-const-variable https://github.com/tianocore/edk2/commit/8b6366f8758426fd6710646574b9a7e583e0fe0d Mike From: Rebecca Cran Sent: Wednesday, February 2, 2022 12:52 PM To: Kinney, Michael D ; Gao, Liming ; Liu, Zhiguang ; devel@edk2.groups.io Subject: MdePkg fails to build in RELEASE mode with clang 13 (CLANG38 toolset) With the CLANG38 toolset (clang version 13.0.0) MdePkg fails to build in RELEASE mode because Status is only used by an assert. edk2/MdePkg/Library/UefiMemoryAllocationLib/MemoryAllocationLib.c:141:15: error: variable 'Status' set but not used [-Werror,-Wunused-but-set-variable] EFI_STATUS Status; ^ edk2/MdePkg/Library/UefiMemoryAllocationLib/MemoryAllocationLib.c:347:15: error: variable 'Status' set but not used [-Werror,-Wunused-but-set-variable] EFI_STATUS Status; ^ edk2/MdePkg/Library/UefiMemoryAllocationLib/MemoryAllocationLib.c:818:15: error: variable 'Status' set but not used [-Werror,-Wunused-but-set-variable] EFI_STATUS Status; -- Rebecca Cran