xref: /netbsd/usr.sbin/traceroute/gnuc.h (revision bf9ec67e)
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