18 #ifndef _XENOMAI_TRANK_TRANK_H
19 #define _XENOMAI_TRANK_TRANK_H
21 #ifdef __XENO_COMPAT__
23 void warning(
const char *fmt, ...);
25 #define trank_warning(__fmt, __args...) \
26 warning("%s: " __fmt, __func__, ##__args)
28 #define __CURRENT(call) __current_ ## call
30 #define COMPAT_DECL(T, P) __typeof__(T) P
31 #define CURRENT_DECL(T, P) __typeof__(T) __CURRENT(P)
35 #include <boilerplate/compiler.h>
37 #define __CURRENT(call) call
39 #define COMPAT_DECL(T, P)
40 #define CURRENT_DECL(T, P) __typeof__(T) P; \
41 __typeof__(T) __current_ ## P
43 #define CURRENT_IMPL(T, I, A) \
44 __typeof__(T) I A __attribute__((alias("__current_" __stringify(I)), weak)); \
45 __typeof__(T) __current_ ## I A