#7360·mumble

Fix "sfinae-incomplete" warnings with GCC 16

Author: davidebeatriciCreated Sep 17, 2026Updated Sep 17, 2026
Labelsbuild
cpp
In file included from /home/runner/work/mumble/mumble/build/src/murmur/mumble_server_object_lib_autogen/EWIEGA46WW/../../../../../src/murmur/DBWrapper.h:19,
                 from /home/runner/work/mumble/mumble/build/src/murmur/mumble_server_object_lib_autogen/EWIEGA46WW/../../../../../src/murmur/Meta.h:10,
                 from /home/runner/work/mumble/mumble/build/src/murmur/mumble_server_object_lib_autogen/EWIEGA46WW/moc_Meta.cpp:9,
                 from /home/runner/work/mumble/mumble/build/src/murmur/mumble_server_object_lib_autogen/mocs_compilation.cpp:7,
                 from /home/runner/work/mumble/mumble/build/src/murmur/CMakeFiles/mumble_server_object_lib.dir/Unity/unity_0_cxx.cxx:4:
/home/runner/work/mumble/mumble/src/User.h:18:7: error: defining ‘User’, which previously failed to be complete in a SFINAE context [-Werror=sfinae-incomplete=]
   18 | class User {
      |       ^~~~
In file included from /usr/include/x86_64-linux-gnu/qt6/QtCore/qobject.h:18,
                 from /usr/include/x86_64-linux-gnu/qt6/QtCore/QObject:1,
                 from /home/runner/work/mumble/mumble/build/src/murmur/mumble_server_object_lib_autogen/KXIUKS7IEJ/../../../../../3rdparty/qqbonjour/BonjourServiceRegister.h:35,
                 from /home/runner/work/mumble/mumble/build/src/murmur/mumble_server_object_lib_autogen/KXIUKS7IEJ/moc_BonjourServiceRegister.cpp:9,
                 from /home/runner/work/mumble/mumble/build/src/murmur/mumble_server_object_lib_autogen/mocs_compilation.cpp:2:
/usr/include/x86_64-linux-gnu/qt6/QtCore/qmetatype.h:882:64: note: here.  Use ‘-Wsfinae-incomplete=2for a diagnostic at that point
  882 |         static auto check(U *) -> std::integral_constant<bool, sizeof(U) != 0>;
      |                                                                ^~~~~~~~~
In file included from /home/runner/work/mumble/mumble/build/src/murmur/mumble_server_object_lib_autogen/EWIEGA46WW/moc_Server.cpp:9,
                 from /home/runner/work/mumble/mumble/build/src/murmur/mumble_server_object_lib_autogen/mocs_compilation.cpp:9:
/home/runner/work/mumble/mumble/build/src/murmur/mumble_server_object_lib_autogen/EWIEGA46WW/../../../../../src/murmur/Server.h:65:8: error: defining ‘TextMessage’, which previously failed to be complete in a SFINAE context [-Werror=sfinae-incomplete=]
   65 | struct TextMessage {
      |        ^~~~~~~~~~~
/usr/include/x86_64-linux-gnu/qt6/QtCore/qmetatype.h:882:64: note: here.  Use ‘-Wsfinae-incomplete=2for a diagnostic at that point
  882 |         static auto check(U *) -> std::integral_constant<bool, sizeof(U) != 0>;
      |                                                                ^~~~~~~~~
/home/runner/work/mumble/mumble/build/src/murmur/mumble_server_object_lib_autogen/EWIEGA46WW/../../../../../src/murmur/Server.h:98:7: error: defining ‘Server’, which previously failed to be complete in a SFINAE context [-Werror=sfinae-incomplete=]
   98 | class Server : public QThread {
      |       ^~~~~~
/usr/include/x86_64-linux-gnu/qt6/QtCore/qmetatype.h:882:64: note: here.  Use ‘-Wsfinae-incomplete=2for a diagnostic at that point
  882 |         static auto check(U *) -> std::integral_constant<bool, sizeof(U) != 0>;
      |                                                                ^~~~~~~~~
cc1plus: all warnings being treated as errors                                                ^~~~~~~~~