libnet: gnuc.h Source File

Main Page | Data Structures | File List | Data Fields | Globals

# gnuc.h

    00001 /* @(#) $Header: /usr/local/CVS/libnet/include/gnuc.h,v 1.1.1.1 2003/06/26 21:55:10 route Exp $ (LBL) */
    00002
    00003 /* Define __P() macro, if necessary */
    00004 #ifndef __P
    00005 #if __STDC__
    00006 #define __P(protos) protos
    00007 #else
    00008 #define __P(protos) ()
    00009 #endif
    00010 #endif
    00011
    00012 /* inline foo */
    00013 #ifdef __GNUC__
    00014 #define inline __inline
    00015 #else
    00016 #define inline
    00017 #endif
    00018
    00019 /*
    00020  * Handle new and old "dead" routine prototypes
    00021  *
    00022  * For example:
    00023  *
    00024  *  __dead void foo(void) __attribute__((volatile));
    00025  *
    00026  */
    00027 #ifdef __GNUC__
    00028 #ifndef __dead
    00029 #define __dead volatile
    00030 #endif
    00031 #if __GNUC__ < 2  || (__GNUC__ == 2 && __GNUC_MINOR__ < 5)
    00032 #ifndef __attribute__
    00033 #define __attribute__(args)
    00034 #endif
    00035 #endif
    00036 #else
    00037 #ifndef __dead
    00038 #define __dead
    00039 #endif
    00040 #ifndef __attribute__
    00041 #define __attribute__(args)
    00042 #endif
    00043 #endif