From c532a576708254e725bf87e3b4f74d29749e709a Mon Sep 17 00:00:00 2001 From: Yuhang Zhao <2546789017@qq.com> Date: Fri, 21 Jan 2022 15:25:46 +0800 Subject: [PATCH] Fix build with clang-cl 1. Clang-CL can't recognize "/d2FH4" and it's causing lots of warnings when compiling. So don't apply it when building with clang-cl. 2. The definition of "FS_INFORMATION_CLASS" need to be visible to clang as well. Don't know why it was excluded originally. Pick-to: 6.3 Change-Id: I7b6e14999eea0ba1f0d73962ff03a35548f88a5a Reviewed-by: Thiago Macieira --- cmake/QtFlagHandlingHelpers.cmake | 2 +- src/corelib/io/qntdll_p.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/cmake/QtFlagHandlingHelpers.cmake b/cmake/QtFlagHandlingHelpers.cmake index b36f6cff0c2..a4a989ee60c 100644 --- a/cmake/QtFlagHandlingHelpers.cmake +++ b/cmake/QtFlagHandlingHelpers.cmake @@ -148,7 +148,7 @@ function(qt_internal_set_exceptions_flags target exceptions_on) if(exceptions_on) if(MSVC) set(_flag "/EHsc") - if(MSVC_VERSION GREATER_EQUAL 1929) + if((MSVC_VERSION GREATER_EQUAL 1929) AND NOT CLANG) set(_flag ${_flag} "/d2FH4") endif() endif() diff --git a/src/corelib/io/qntdll_p.h b/src/corelib/io/qntdll_p.h index caf34ddb5f2..893bf40d23d 100644 --- a/src/corelib/io/qntdll_p.h +++ b/src/corelib/io/qntdll_p.h @@ -68,7 +68,7 @@ typedef struct _FILE_FS_SECTOR_SIZE_INFORMATION { ULONG ByteOffsetForPartitionAlignment; } FILE_FS_SECTOR_SIZE_INFORMATION, *PFILE_FS_SECTOR_SIZE_INFORMATION; -#if !defined(Q_CC_CLANG) && !defined(Q_CC_MINGW) +#if !defined(Q_CC_MINGW) // keep the following enumeration as is, taken from // https://docs.microsoft.com/en-us/windows-hardware/drivers/ddi/wdm/ne-wdm-_fsinfoclass // Unfortunately we can't include the wdm.h header, so we duplicate the code here.