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

Reply via email to