diff --git a/CMakeLists.txt b/CMakeLists.txt index b26fe066..849079fd 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -226,3 +226,34 @@ foreach (COMPILER_DEF IN LISTS ABADDON_COMPILER_DEFS) endforeach () set_property(TARGET abaddon PROPERTY INTERPROCEDURAL_OPTIMIZATION TRUE) + +# Workaround for https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108383 +if (WIN32) + set(BROKEN_DECLONE_LIST + "src/components/channellist/channellist.cpp" + "src/components/channellist/channellisttree.cpp" + "src/components/channellist/classic/guildlist.cpp" + "src/components/completer.cpp" + "src/components/friendslist.cpp" + "src/components/progressbar.cpp" + "src/components/voiceinfobox.cpp" + "src/components/volumemeter.cpp" + "src/dialogs/confirm.cpp" + "src/dialogs/friendpicker.cpp" + "src/dialogs/setstatus.cpp" + "src/dialogs/textinput.cpp" + "src/dialogs/token.cpp" + "src/dialogs/verificationgate.cpp" + "src/remoteauth/remoteauthdialog.cpp" + "src/startup.cpp" + "src/windows/guildsettings/memberspane.cpp" + "src/windows/guildsettings/rolespane.cpp" + "src/windows/guildsettingswindow.cpp" + "src/windows/mainwindow.cpp" + "src/windows/pinnedwindow.cpp" + "src/windows/profilewindow.cpp" + "src/windows/voicewindow.cpp" + ) + + set_property(SOURCE ${BROKEN_DECLONE_LIST} PROPERTY COMPILE_FLAGS "-fno-declone-ctor-dtor") +endif()