summaryrefslogtreecommitdiff
path: root/tests/headers/core.h
diff options
context:
space:
mode:
authorKacper <kacper@mail.openlinux.dev>2025-12-15 14:42:29 +0100
committerKacper <kacper@mail.openlinux.dev>2025-12-15 14:42:29 +0100
commit7cd3b7caee10d62f7be674afb86a136bf30485d6 (patch)
tree121a8c79114174b765713387187d930b102f760f /tests/headers/core.h
parent3b3325f761b09ebbfef04c44eed546cc4fdeb329 (diff)
Add mqueue rt api, add header tests
Diffstat (limited to 'tests/headers/core.h')
-rw-r--r--tests/headers/core.h54
1 files changed, 54 insertions, 0 deletions
diff --git a/tests/headers/core.h b/tests/headers/core.h
new file mode 100644
index 00000000..01c6aa5e
--- /dev/null
+++ b/tests/headers/core.h
@@ -0,0 +1,54 @@
+#define FN(__r, ...) __r (*_)(__VA_ARGS__)
+
+#define FUNCTION(__f, __t) \
+ { \
+ __t = __f; \
+ }
+
+#define MACRO(__m) \
+ { \
+ typeof(__m) v = __m; \
+ }
+
+#define MACRO_VALUE(__m, __v) _Static_assert(__m == __v, #__m)
+
+#define MACRO_VALUE_STRING(__m, __v) \
+ do { \
+ (void)sizeof( \
+ char[(__builtin_strcmp(__m, __v) == 0) ? 1 : -1]); \
+ } while (0)
+
+#define MACRO_TYPE(__t, __m) \
+ { \
+ __t v = __m; \
+ }
+
+#define TYPE(__t) \
+ { \
+ __t v; \
+ }
+
+#define INCOMPLETE_TYPE(__t) \
+ { \
+ __t *v; \
+ }
+
+#define STRUCT_MEMBER(__s, __t, __n) \
+ { \
+ __s s; \
+ __t *_ = &(s.__n); \
+ }
+
+#define STRUCT_MEMBER_ARRAY(__s, __t, __n) \
+ { \
+ __s s; \
+ __t *p = &(s.__n[0]); \
+ }
+
+#define STRUCT_MEMBER_FUNCTION_POINTER(__s, __t, __n) \
+ { \
+ __s s; \
+ __t = (s.__n); \
+ }
+
+#define TEST(__name) static void __name(void)