1 /* 2 * Copyright (c) 2020 Raspberry Pi (Trading) Ltd. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 #ifndef __PICO_LLVM_LIBC_SYS_CDEFS_H 8 #define __PICO_LLVM_LIBC_SYS_CDEFS_H 9 10 #if defined(__STDC__) || defined(__cplusplus) 11 12 #define __CONCAT1(x,y) x ## y 13 #define __CONCAT(x,y) __CONCAT1(x,y) 14 #define __STRING(x) #x 15 #define __XSTRING(x) __STRING(x) 16 17 #endif 18 19 #define __unused __attribute__((__unused__)) 20 #define __used __attribute__((__used__)) 21 #define __packed __attribute__((__packed__)) 22 #define __aligned(x) __attribute__((__aligned__(x))) 23 24 #define __always_inline __inline__ __attribute__((__always_inline__)) 25 #define __noinline __attribute__((__noinline__)) 26 27 #define __printflike(fmtarg, firstvararg) \ 28 __attribute__((__format__ (__printf__, fmtarg, firstvararg))) 29 30 #endif 31