+Sun May 19 02:31:11 CDT 2002 Adam Heath <doogie@debian.org>
+
+ * optlib/error.h, optlib/getopt.c, utils/start-stop-daemon.c: Use
+ the configure detected gcc __attribute__ macros, instead of
+ hard-coding them.
+
Thu May 16 19:09:48 CEST 2002 Wichert Akkerman <wichert@deephackmode.org>
* po/da.po: New version from Claus Hindsgaul <claus_h@image.dk>
#ifndef _ERROR_H
#define _ERROR_H 1
-#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
-
#ifdef __cplusplus
extern "C" {
#endif
If STATUS is nonzero, terminate the program with `exit (STATUS)'. */
extern void error (int status, int errnum, const char *format, ...)
- __attribute__ ((__format__ (__printf__, 3, 4)));
+ PRINTFFORMAT(3, 4);
extern void error_at_line (int status, int errnum, const char *fname,
unsigned int lineno, const char *format, ...)
- __attribute__ ((__format__ (__printf__, 5, 6)));
+ PRINTFFORMAT(5, 6);
/* If NULL, error will flush stdout, then print on stderr the program
name, a colon and a space. Otherwise, error will call this
is valid for the getopt call we must make sure that the ARGV passed
to getopt is that one passed to the process. */
static void
-__attribute__ ((unused))
+FUNCATTR(unused)
store_args_and_env (int argc, char *const *argv)
{
/* XXX This is no good solution. We should rather copy the args so
#ifdef __GNUC__
static void fatal(const char *format, ...)
- __attribute__((noreturn, format(printf, 1, 2)));
+ NONRETURNPRINTFFORMAT(1, 2);
static void badusage(const char *msg)
- __attribute__((noreturn));
+ NONRETURNING;
#else
static void fatal(const char *format, ...);
static void badusage(const char *msg);