about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--include/assert.h4
-rw-r--r--include/stdalign.h5
-rw-r--r--include/stdnoreturn.h2
3 files changed, 11 insertions, 0 deletions
diff --git a/include/assert.h b/include/assert.h
index ab745db1..1ee02a4a 100644
--- a/include/assert.h
+++ b/include/assert.h
@@ -8,6 +8,10 @@
 #define assert(x) ((void)((x) || (__assert_fail(#x, __FILE__, __LINE__, __func__),0)))
 #endif
 
+#ifndef __cplusplus
+#define static_assert _Static_assert
+#endif
+
 #ifdef __cplusplus
 extern "C" {
 #endif
diff --git a/include/stdalign.h b/include/stdalign.h
index b6e50aeb..2cc94be3 100644
--- a/include/stdalign.h
+++ b/include/stdalign.h
@@ -1,6 +1,8 @@
 #ifndef _STDALIGN_H
 #define _STDALIGN_H
 
+#ifndef __cplusplus
+
 /* this whole header only works in C11 or with compiler extensions */
 #if __STDC_VERSION__ < 201112L && defined( __GNUC__)
 #define _Alignas(t) __attribute__((__aligned__(t)))
@@ -9,6 +11,9 @@
 
 #define alignas _Alignas
 #define alignof _Alignof
+
+#endif
+
 #define __alignas_is_defined 1
 #define __alignof_is_defined 1
 
diff --git a/include/stdnoreturn.h b/include/stdnoreturn.h
index 60d924a0..5c6aeeb0 100644
--- a/include/stdnoreturn.h
+++ b/include/stdnoreturn.h
@@ -1,5 +1,7 @@
 #ifndef _STDNORETURN_H
 #define _STDNORETURN_H
+#ifndef __cplusplus
 #include <features.h>
 #define noreturn _Noreturn
 #endif
+#endif