diff options
author | Ian Lance Taylor <ian@airs.com> | 1999-07-11 19:15:01 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 1999-07-11 19:15:01 +0000 |
commit | 893e959397e8811195489b574f57fa21ab2f4c5e (patch) | |
tree | b27dff9064cac3c42f87bf5a3302a3f55f66a964 /include/ansidecl.h | |
parent | af32ff6969e70038c3f22645b7774106d8d350d1 (diff) | |
download | gdb-893e959397e8811195489b574f57fa21ab2f4c5e.zip gdb-893e959397e8811195489b574f57fa21ab2f4c5e.tar.gz gdb-893e959397e8811195489b574f57fa21ab2f4c5e.tar.bz2 |
* ansidecl.h: Copy attribute support macros from egcs.
Diffstat (limited to 'include/ansidecl.h')
-rw-r--r-- | include/ansidecl.h | 35 |
1 files changed, 34 insertions, 1 deletions
diff --git a/include/ansidecl.h b/include/ansidecl.h index cdb9fb7..989dd67 100644 --- a/include/ansidecl.h +++ b/include/ansidecl.h @@ -1,5 +1,5 @@ /* ANSI and traditional C compatability macros - Copyright 1991, 1992, 1996 Free Software Foundation, Inc. + Copyright 1991, 1992, 1996, 1999 Free Software Foundation, Inc. This file is part of the GNU C Library. This program is free software; you can redistribute it and/or modify @@ -160,4 +160,37 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #endif /* ANSI C. */ +/* Define macros for some gcc attributes. This permits us to use the + macros freely, and know that they will come into play for the + version of gcc in which they are supported. */ + +#if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7) +# define __attribute__(x) +#endif + +#ifndef ATTRIBUTE_UNUSED_LABEL +# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 93) +# define ATTRIBUTE_UNUSED_LABEL +# else +# define ATTRIBUTE_UNUSED_LABEL ATTRIBUTE_UNUSED +# endif /* GNUC < 2.93 */ +#endif /* ATTRIBUTE_UNUSED_LABEL */ + +#ifndef ATTRIBUTE_UNUSED +#define ATTRIBUTE_UNUSED __attribute__ ((__unused__)) +#endif /* ATTRIBUTE_UNUSED */ + +#ifndef ATTRIBUTE_NORETURN +#define ATTRIBUTE_NORETURN __attribute__ ((__noreturn__)) +#endif /* ATTRIBUTE_NORETURN */ + +#ifndef ATTRIBUTE_PRINTF +#define ATTRIBUTE_PRINTF(m, n) __attribute__ ((format (__printf__, m, n))) +#define ATTRIBUTE_PRINTF_1 ATTRIBUTE_PRINTF(1, 2) +#define ATTRIBUTE_PRINTF_2 ATTRIBUTE_PRINTF(2, 3) +#define ATTRIBUTE_PRINTF_3 ATTRIBUTE_PRINTF(3, 4) +#define ATTRIBUTE_PRINTF_4 ATTRIBUTE_PRINTF(4, 5) +#define ATTRIBUTE_PRINTF_5 ATTRIBUTE_PRINTF(5, 6) +#endif /* ATTRIBUTE_PRINTF */ + #endif /* ansidecl.h */ |