xref: /Universal-ctags/main/gcc-attr.h (revision 2c2473a6bc96e36fc24c39cdccff42845a61f216)
164ae08e5SMasatake YAMATO /*
264ae08e5SMasatake YAMATO *   Copyright (c) 1998-2003, Darren Hiebert
364ae08e5SMasatake YAMATO *
464ae08e5SMasatake YAMATO *   This source code is released for free distribution under the terms of the
564ae08e5SMasatake YAMATO *   GNU General Public License version 2 or (at your option) any later version.
664ae08e5SMasatake YAMATO */
764ae08e5SMasatake YAMATO 
864ae08e5SMasatake YAMATO /* This is derived from general.h.
964ae08e5SMasatake YAMATO    Only readtags related source file should include this.
1064ae08e5SMasatake YAMATO    ctags related source file should include genera.h instead. */
1164ae08e5SMasatake YAMATO 
1264ae08e5SMasatake YAMATO #ifndef CTAGS_MAIN_GCC_ATTR_H
1364ae08e5SMasatake YAMATO #define CTAGS_MAIN_GCC_ATTR_H
1464ae08e5SMasatake YAMATO 
1564ae08e5SMasatake YAMATO /*  Prevent warnings about unused variables in GCC. */
1664ae08e5SMasatake YAMATO #if defined (__GNUC__) && !defined (__GNUG__)
178ccb7ee9SJiří Techet # define CTAGS_ATTR_UNUSED __attribute__((unused))
188ccb7ee9SJiří Techet # define CTAGS_ATTR_PRINTF(s,f)  __attribute__((format (printf, s, f)))
19*2c2473a6SMasatake YAMATO # define CTAGA_ATTR_ALIGNED(X) __attribute__((aligned(X)))
2064ae08e5SMasatake YAMATO # define attr__noreturn __attribute__((__noreturn__))
2164ae08e5SMasatake YAMATO #else
228ccb7ee9SJiří Techet # define CTAGS_ATTR_UNUSED
238ccb7ee9SJiří Techet # define CTAGS_ATTR_PRINTF(s,f)
24*2c2473a6SMasatake YAMATO # define CTAGA_ATTR_ALIGNED(X)
2564ae08e5SMasatake YAMATO # define attr__noreturn
2664ae08e5SMasatake YAMATO #endif
2764ae08e5SMasatake YAMATO 
2864ae08e5SMasatake YAMATO #endif	/* CTAGS_MAIN_GCC_ATTR_H */
29