/[m4]/m4/m4/system.h
ViewVC logotype

Diff of /m4/m4/system.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.3 by akim, Tue Aug 7 10:41:11 2001 UTC revision 1.4 by gary, Thu Aug 16 22:21:30 2001 UTC
# Line 142  BEGIN_C_DECLS Line 142  BEGIN_C_DECLS
142  #  endif  #  endif
143  #endif  #endif
144    
145    
146    
147    /* Take advantage of GNU C compiler source level optimisation hints,
148       using portable macros.  */
149    #if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ > 4)
150    #  define M4_GNUC_ATTRIBUTE(args)       __attribute__(args)
151    #else
152    #  define M4_GNUC_ATTRIBUTE(args)
153    #endif  /* __GNUC__ */
154    
155    #define M4_GNUC_PRINTF(fmt, arg) M4_GNUC_ATTRIBUTE((format (printf, fmt, arg)))
156    #define M4_GNUC_SCANF(fmt, arg) M4_GNUC_ATTRIBUTE((format (scanf, fmt, arg)))
157    #define M4_GNUC_FORMAT(arg_idx) M4_GNUC_ATTRIBUTE((format_arg (arg_idx)))
158    #define M4_GNUC_NORETURN        M4_GNUC_ATTRIBUTE((noreturn))
159    #define M4_GNUC_CONST           M4_GNUC_ATTRIBUTE((const))
160    #define M4_GNUC_UNUSED          M4_GNUC_ATTRIBUTE((unused))
161    
162    
163    
164  #if !defined __PRETTY_FUNCTION__  #if !defined __PRETTY_FUNCTION__
165  #  define __PRETTY_FUNCTION__   "<unknown>"  #  define __PRETTY_FUNCTION__   "<unknown>"
# Line 163  BEGIN_C_DECLS Line 181  BEGIN_C_DECLS
181    
182  /* Preprocessor token manipulation.  */  /* Preprocessor token manipulation.  */
183    
184  /* The extra indirection to the _STR macro is required so that if the  /* The extra indirection to the _STR and _CONC macros is required so that
185     argument to STR() is a macro, it will be expanded before being quoted.   */     if the arguments to STR() (or CONC()) are themselves macros, they will
186       be expanded before being quoted.   */
187  #ifndef STR  #ifndef STR
188  #  if __STDC__  #  if __STDC__
189  #    define _STR(arg)   #arg  #    define _STR(arg)   #arg
# Line 176  BEGIN_C_DECLS Line 195  BEGIN_C_DECLS
195    
196  #ifndef CONC  #ifndef CONC
197  #  if __STDC__  #  if __STDC__
198  #    define CONC(a, b)  a##b  #    define _CONC(a, b) a##b
199  #  else  #  else
200  #    define CONC(a, b)  a/**/b  #    define _CONC(a, b) a/**/b
201  #  endif  #  endif
202    #  define CONC(a, b)    _CONC(a, b)
203  #endif  #endif
204    
205    

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.4

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26