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