Go to the documentation of this file. 14 #ifndef PHOTON_ATTRIBUTES_H 15 #define PHOTON_ATTRIBUTES_H 21 #define PHOTON_ALIGNED(N) __attribute__((aligned(N))) 22 #define PHOTON_INTERNAL __attribute__((visibility("internal"))) 23 #define PHOTON_RETURNS_TWICE __attribute__((returns_twice)) 24 #define PHOTON_NORETURN __attribute__((noreturn)) 25 #define PHOTON_NOINLINE __attribute__((noinline)) 26 #define PHOTON_AWAYS_INLINE __attribute__((always_inline)) 27 #define PHOTON_OPTIMIZE(S) __attribute__((optimize(S))) 28 #define PHOTON_MALLOC __attribute__((malloc)) 29 #define PHOTON_USED __attribute__((used)) 30 #define PHOTON_UNUSED __attribute__((unused)) 31 #define PHOTON_ASM(S) __asm__(#S) 32 #define PHOTON_PACKED __attribute__((packed)) 33 #define PHOTON_NON_NULL(...) __attribute__((nonnull(__VA_ARGS__))) 34 #define PHOTON_WEAK __attribute__((weak)) 35 #define PHOTON_CONSTRUCTOR __attribute__((constructor)) 36 #define PHOTON_DESTRUCTOR __attribute__((destructor)) 39 #define PHOTON_NO_OPTIMIZE __attribute__((optnone)) 41 #define PHOTON_NO_OPTIMIZE PHOTON_OPTIMIZE("O0")