diff --git a/Source/Core/DolphinQt/CMakeLists.txt b/Source/Core/DolphinQt/CMakeLists.txt index 13c9a3d79a..288e313e3f 100644 --- a/Source/Core/DolphinQt/CMakeLists.txt +++ b/Source/Core/DolphinQt/CMakeLists.txt @@ -350,10 +350,11 @@ if (WIN32) endif() if (MSVC) - # Disable some warnings - - # 5054: operator '+': deprecated between enumerations of different types (in Qt headers) - target_compile_options(dolphin-emu PRIVATE /wd5054) + # Don't propogate warnings in qt headers to Dolphin + target_compile_options(dolphin-emu PRIVATE /experimental:external) + target_compile_options(dolphin-emu PRIVATE /external:W0) + target_compile_options(dolphin-emu PRIVATE "/external:I${Qt5Gui_PRIVATE_INCLUDE_DIRS}") + target_compile_options(dolphin-emu PRIVATE "/external:I${Qt5Widgets_PRIVATE_INCLUDE_DIRS}") endif() if(WIN32) diff --git a/Source/Core/DolphinQt/QtUtils/FlowLayout.cpp b/Source/Core/DolphinQt/QtUtils/FlowLayout.cpp index e986f2f382..c1e4fefe11 100644 --- a/Source/Core/DolphinQt/QtUtils/FlowLayout.cpp +++ b/Source/Core/DolphinQt/QtUtils/FlowLayout.cpp @@ -66,8 +66,7 @@ FlowLayout::FlowLayout(int margin, int h_spacing, int v_spacing) FlowLayout::~FlowLayout() { - QLayoutItem* item; - while ((item = takeAt(0))) + while (QLayoutItem* item = takeAt(0)) delete item; } diff --git a/Source/VSProps/QtCompile.props b/Source/VSProps/QtCompile.props index 0ad24e61ad..60e4b32939 100644 --- a/Source/VSProps/QtCompile.props +++ b/Source/VSProps/QtCompile.props @@ -28,10 +28,11 @@ $(QtIncludeDir)QtWidgets;%(AdditionalIncludeDirectories) $(QtIncludeDir)QtANGLE;%(AdditionalIncludeDirectories) - %(AdditionalOptions) /wd4946 + %(AdditionalOptions) /experimental:external + %(AdditionalOptions) /external:W0 + %(AdditionalOptions) /external:I$(QtIncludeDir) $(QtLibDir);%(AdditionalLibraryDirectories)