This is an automated email from the git hooks/post-receive script. guillem pushed a commit to branch main in repository dpkg.
View the commit online: https://git.dpkg.org/cgit/dpkg/dpkg.git/commit/?id=11e34c9640dc1c3a906e2b98344b366c2eb3e6c0 commit 11e34c9640dc1c3a906e2b98344b366c2eb3e6c0 Author: Guillem Jover <[email protected]> AuthorDate: Fri Aug 2 00:23:39 2024 +0200 build: Warn on C++17, C++20, C++23 and C++26 extensions usage If we are using an older C++ standard, we should not be using extensions from later standard versions. Regardless of the default compiler standard version supported. --- m4/dpkg-compiler.m4 | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/m4/dpkg-compiler.m4 b/m4/dpkg-compiler.m4 index ca22d22e4..db9cd11fb 100644 --- a/m4/dpkg-compiler.m4 +++ b/m4/dpkg-compiler.m4 @@ -121,6 +121,18 @@ AC_DEFUN([DPKG_CHECK_COMPILER_WARNINGS], [ AS_IF([test "$dpkg_cxx_std_version" -le "_DPKG_CXX_CXX11_VERSION"], [ DPKG_CHECK_COMPILER_FLAG([-Wc++14-extensions]) ]) + AS_IF([test "$dpkg_cxx_std_version" -le "_DPKG_CXX_CXX14_VERSION"], [ + DPKG_CHECK_COMPILER_FLAG([-Wc++17-extensions]) + ]) + AS_IF([test "$dpkg_cxx_std_version" -le "_DPKG_CXX_CXX17_VERSION"], [ + DPKG_CHECK_COMPILER_FLAG([-Wc++20-extensions]) + ]) + AS_IF([test "$dpkg_cxx_std_version" -le "_DPKG_CXX_CXX20_VERSION"], [ + DPKG_CHECK_COMPILER_FLAG([-Wc++23-extensions]) + ]) + AS_IF([test "$dpkg_cxx_std_version" -le "_DPKG_CXX_CXX23_VERSION"], [ + DPKG_CHECK_COMPILER_FLAG([-Wc++26-extensions]) + ]) DPKG_CHECK_COMPILER_FLAG([-Wcast-qual]) DPKG_CHECK_COMPILER_FLAG([-Wold-style-cast]) AS_IF([test "$dpkg_cxx_std_version" -ge "_DPKG_CXX_CXX11_VERSION"], [ @@ -381,6 +393,18 @@ m4_define([_DPKG_CXX_CXX14_OPTS], [ -std=c++14 ]) +# _DPKG_CXX_CXX17_VERSION +# ----------------------- +m4_define([_DPKG_CXX_CXX17_VERSION], [201703]) + +# _DPKG_CXX_CXX20_VERSION +# ----------------------- +m4_define([_DPKG_CXX_CXX20_VERSION], [202002]) + +# _DPKG_CXX_CXX23_VERSION +# ----------------------- +m4_define([_DPKG_CXX_CXX23_VERSION], [202302]) + # _DPKG_CXX_STD_VERSION # --------------------- m4_define([_DPKG_CXX_STD_VERSION], [[ -- Dpkg.Org's dpkg

