]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
Fix 24172: __STDC_VERSION__ may be defined in C++
authorLoïc Collignon <ctxnop@gmail.com>
Wed, 3 Aug 2022 09:42:28 +0000 (11:42 +0200)
committerLennart Poettering <lennart@poettering.net>
Wed, 3 Aug 2022 13:41:07 +0000 (15:41 +0200)
According to the C++ ISO standard, a conformant compiler is allowed to
define this macro to any value for any reason as it is implementation
defined: https://timsong-cpp.github.io/cppwp/cpp.predefined#2.3

This mean that it cannot be assumed that it is not defined in a C++.
Change the condition to reflect that.

src/systemd/_sd-common.h

index 38449463e24a909a98933ed5bdd15e860474ca04..6f657c225438a32cfb913427e68b4edb0df99eea 100644 (file)
@@ -85,7 +85,7 @@ typedef void (*_sd_destroy_t)(void *userdata);
 #endif
 
 #ifndef _SD_ARRAY_STATIC
-#  if __STDC_VERSION__ >= 199901L
+#  if __STDC_VERSION__ >= 199901L && !defined(__cplusplus)
 #    define _SD_ARRAY_STATIC static
 #  else
 #    define _SD_ARRAY_STATIC