home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.ee.lbl.gov
/
2014.05.ftp.ee.lbl.gov.tar
/
ftp.ee.lbl.gov
/
ipsearch-1.0.tar.gz
/
ipsearch-1.0.tar
/
ipsearch-1.0
/
lbl
/
gnuc.h
Wrap
C/C++ Source or Header
|
2011-07-06
|
830b
|
52 lines
/* @(#) $Id: gnuc.h 4 2011-07-06 22:22:18Z leres $ (LBL) */
/* Define __P() macro, if necessary */
#ifndef __P
#if __STDC__
#define __P(protos) protos
#else
#define __P(protos) ()
#endif
#endif
/* inline foo */
#ifndef inline
#ifdef __GNUC__
#define inline __inline
#else
#define inline
#endif
#endif
/*
* Handle new and old "dead" routine prototypes
*
* For example:
*
* __dead void foo(void) __attribute__((noreturn));
*
*/
#ifdef __GNUC__
#ifndef __dead
#if __GNUC__ >= 4
#define __dead
#define noreturn __noreturn__
#else
#define __dead volatile
#define noreturn volatile
#endif
#endif
#if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5)
#ifndef __attribute__
#define __attribute__(args)
#endif
#endif
#else
#ifndef __dead
#define __dead
#endif
#ifndef __attribute__
#define __attribute__(args)
#endif
#endif