libnet  latest
A Portable Framework for Low-Level Network Packet Construction
gnuc.h
1 /* @(#) $Header: /usr/local/CVS/libnet/include/gnuc.h,v 1.1.1.1 2003/06/26 21:55:10 route Exp $ (LBL) */
2 
3 /* Define __P() macro, if necessary */
4 #ifndef __P
5 #if __STDC__
6 #define __P(protos) protos
7 #else
8 #define __P(protos) ()
9 #endif
10 #endif
11 
12 /* inline foo */
13 #ifdef __GNUC__
14 #define inline __inline
15 #else
16 #define inline
17 #endif
18 
19 /*
20  * Handle new and old "dead" routine prototypes
21  *
22  * For example:
23  *
24  * __dead void foo(void) __attribute__((volatile));
25  *
26  */
27 #ifdef __GNUC__
28 #ifndef __dead
29 #define __dead volatile
30 #endif
31 #if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5)
32 #ifndef __attribute__
33 #define __attribute__(args)
34 #endif
35 #endif
36 #else
37 #ifndef __dead
38 #define __dead
39 #endif
40 #ifndef __attribute__
41 #define __attribute__(args)
42 #endif
43 #endif