graesslin created this revision. Restricted Application added a project: KWin. Restricted Application added subscribers: KWin, kwin, plasma-devel.
REVISION SUMMARY KWin already used C++14 constructs in a conditional way. This doesn't make much sense today, it's better to just require C++14. For KWin only gcc and clang are currently compilers of relevance. Gcc supports C++14 since version 5 and defaults to C++14 since 6.1 [1]. Clang supports C++14 since version 3.4 [2]. An overview of compiler support in various distributions: - Debian stable (stretch): gcc 6.3, clang 3.8 - Debian oldstable (jessie): 4.9, clang 3.5 - Ubuntu 17.04: gcc 6.1, clang 3.8 - Ubuntu 16.04: gcc 5.3, clang 3.8 - openSUSE Tumbleweed: gcc 7.1, clang 4.0 - openSUSE Leap 42.3: gcc ?, clang ? [3] - FreeBSD: clang >= 34 in ports - Slackware 14.2: gcc 5.3 This overview shows that every distro out there has at least one supported compiler which can still compile KWin with this change. [1] https://gcc.gnu.org/projects/cxx-status.html#cxx14 [2] https://clang.llvm.org/cxx_status [3] Sorry I fail to understand openSUSE's package repository. It seems that there is gcc 7 available, but gcc package is 4.8 TEST PLAN Compiles on my neon system REPOSITORY R108 KWin BRANCH cxx-14 REVISION DETAIL https://phabricator.kde.org/D6634 AFFECTED FILES CMakeLists.txt plugins/platforms/x11/standalone/glxbackend.cpp To: graesslin, #plasma Cc: plasma-devel, kwin, #kwin, ZrenBot, progwolff, lesliezhai, ali-mohamed, hardening, jensreuterberg, abetts, sebas, apol, mart, lukas