diff options
author | Ian Lance Taylor <ian@zembu.com> | 1999-07-26 19:22:19 +0000 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1999-07-26 13:22:19 -0600 |
commit | e428b1a8c6479ad2e1187cb414d370662894f380 (patch) | |
tree | 66a25719ad167e28b73bf7fae9e3a48dbf9dc913 /include | |
parent | 4f8fb8c43e088eef54c74631ab38d8cf3ca6d588 (diff) | |
download | gcc-e428b1a8c6479ad2e1187cb414d370662894f380.zip gcc-e428b1a8c6479ad2e1187cb414d370662894f380.tar.gz gcc-e428b1a8c6479ad2e1187cb414d370662894f380.tar.bz2 |
* ansidecl.h: Copy attribute support macros from egcs.
From-SVN: r28274
Diffstat (limited to 'include')
-rw-r--r-- | include/ChangeLog | 4 | ||||
-rw-r--r-- | include/ansidecl.h | 35 |
2 files changed, 38 insertions, 1 deletions
diff --git a/include/ChangeLog b/include/ChangeLog index 120fb2a..6ec3b0b 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,7 @@ +1999-07-11 Ian Lance Taylor <ian@zembu.com> + + * ansidecl.h: Copy attribute support macros from egcs. + 1999-04-02 Mark Mitchell <mark@codesourcery.com> * splay-tree.h (splay_tree_compare_pointers): Declare. 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 */ |