X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Ferror.h;h=55d862adb0d39bdd85ebd6d15caf4a200694815b;hb=4efe3fa3d302034d08bda66694ed1b4f9bc88285;hp=4f2852383758e946027566df3ad0ac9e57e5bba7;hpb=2917e4a652abe739fc4541cdb25a9b744abeb3ae;p=gnulib.git diff --git a/lib/error.h b/lib/error.h index 4f2852383..55d862adb 100644 --- a/lib/error.h +++ b/lib/error.h @@ -18,15 +18,22 @@ #ifndef _error_h_ #define _error_h_ -#if __GNUC__ >= 2 && defined (__GNUC_MINOR__) \ - && __GNUC_MINOR__ >= 5 && !defined (__STRICT_ANSI__) -#define PRINTF_ATTRIBUTE __attribute__ ((format (printf, 3, 4))) -#else -#define PRINTF_ATTRIBUTE /* empty */ +#ifndef __attribute__ +/* This feature is available in gcc versions 2.5 and later. */ +# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) || __STRICT_ANSI__ +# define __attribute__(Spec) /* empty */ +# endif +/* The __-protected variants of `format' and `printf' attributes + are accepted by gcc versions 2.6.4 (effectively 2.7) and later. */ +# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7) +# define __format__ format +# define __printf__ printf +# endif #endif -#if __GNUC__ -void error (int, int, const char *, ...) PRINTF_ATTRIBUTE ; +#if __STDC__ +void error (int, int, const char *, ...) \ + __attribute__ ((__format__ (__printf__, 3, 4))); #else void error (); #endif