1 /* $NetBSD: gnuc.h,v 1.1.1.1 1997/10/03 22:25:19 christos Exp $ */ 2 3 /* @(#) Header: gnuc.h,v 1.3 95/10/09 02:47:01 leres Exp (LBL) */ 4 5 /* Define __P() macro, if necessary */ 6 #ifndef __P 7 #if __STDC__ 8 #define __P(protos) protos 9 #else 10 #define __P(protos) () 11 #endif 12 #endif 13 14 /* inline foo */ 15 #ifdef __GNUC__ 16 #define inline __inline 17 #else 18 #define inline 19 #endif 20 21 /* 22 * Handle new and old "dead" routine prototypes 23 * 24 * For example: 25 * 26 * __dead void foo(void) __attribute__((volatile)); 27 * 28 */ 29 #ifdef __GNUC__ 30 #ifndef __dead 31 #define __dead volatile 32 #endif 33 #if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) 34 #ifndef __attribute__ 35 #define __attribute__(args) 36 #endif 37 #endif 38 #else 39 #ifndef __dead 40 #define __dead 41 #endif 42 #ifndef __attribute__ 43 #define __attribute__(args) 44 #endif 45 #endif 46