blob: a6fa615afab5da1c2fe92da5509e5bab6953829e [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/* Never include this file directly. Include <linux/compiler.h> instead. */
2
3/* These definitions are for GCC v3.x. */
4#include <linux/compiler-gcc.h>
5
6#if __GNUC_MINOR__ >= 1
7# define inline inline __attribute__((always_inline))
8# define __inline__ __inline__ __attribute__((always_inline))
9# define __inline __inline __attribute__((always_inline))
10#endif
11
12#if __GNUC_MINOR__ > 0
13# define __deprecated __attribute__((deprecated))
14#endif
15
16#if __GNUC_MINOR__ >= 3
17# define __attribute_used__ __attribute__((__used__))
18#else
19# define __attribute_used__ __attribute__((__unused__))
20#endif
21
22#define __attribute_pure__ __attribute__((pure))
23#define __attribute_const__ __attribute__((__const__))
24
25#if __GNUC_MINOR__ >= 1
26#define noinline __attribute__((noinline))
27#endif
28
29#if __GNUC_MINOR__ >= 4
30#define __must_check __attribute__((warn_unused_result))
31#endif
32