From 455775d9a3b9648312ab0864a25f160a9ac6d64c Mon Sep 17 00:00:00 2001 From: Christoph Hellwig Date: Thu, 10 Sep 2009 16:20:29 -0500 Subject: [PATCH] xfsprogs: fix up the noreturn annotations The usage function in mkfs needs a noreturn annotation too, otherwise gcc will complain, similarly the do_msg function in repair would need it if do_abort is set, but because conditional annotations aren't possible just clean this area up and inline the do_msg function into it's callers. Signed-off-by: Christoph Hellwig Reviewed-by: Eric Sandeen Signed-off-by: Alex Elder --- mkfs/xfs_mkfs.c | 3 ++- mkfs/xfs_mkfs.h | 1 - repair/xfs_repair.c | 26 ++++++++++---------------- 3 files changed, 12 insertions(+), 18 deletions(-) diff --git a/mkfs/xfs_mkfs.c b/mkfs/xfs_mkfs.c index ab8a7d9e7..53eccbd90 100644 --- a/mkfs/xfs_mkfs.c +++ b/mkfs/xfs_mkfs.c @@ -27,6 +27,7 @@ */ static void conflict(char opt, char *tab[], int oldidx, int newidx); static void illegal(char *value, char *opt); +static __attribute__((noreturn)) void usage (void); static __attribute__((noreturn)) void reqval(char opt, char *tab[], int idx); static void respec(char opt, char *tab[], int idx); static void unknown(char opt, char *s); @@ -2554,7 +2555,7 @@ cvtnum( return -1LL; } -void +static void __attribute__((noreturn)) usage( void ) { fprintf(stderr, _("Usage: %s\n\ diff --git a/mkfs/xfs_mkfs.h b/mkfs/xfs_mkfs.h index 296da9e9d..49401d61d 100644 --- a/mkfs/xfs_mkfs.h +++ b/mkfs/xfs_mkfs.h @@ -68,7 +68,6 @@ /* xfs_mkfs.c */ -extern void usage (void); extern int isdigits (char *str); extern long long cvtnum (unsigned int blocksize, unsigned int sectorsize, char *s); diff --git a/repair/xfs_repair.c b/repair/xfs_repair.c index 5dfc3c3e2..8bf20bbfd 100644 --- a/repair/xfs_repair.c +++ b/repair/xfs_repair.c @@ -339,18 +339,6 @@ process_args(int argc, char **argv) usage(); } -void -do_msg(int do_abort, char const *msg, va_list args) -{ - vfprintf(stderr, msg, args); - - if (do_abort) { - if (dumpcore) - abort(); - exit(1); - } -} - void __attribute__((noreturn)) do_error(char const *msg, ...) { @@ -359,7 +347,10 @@ do_error(char const *msg, ...) fprintf(stderr, _("\nfatal error -- ")); va_start(args, msg); - do_msg(1, msg, args); + vfprintf(stderr, msg, args); + if (dumpcore) + abort(); + exit(1); } /* @@ -372,7 +363,10 @@ do_abort(char const *msg, ...) va_list args; va_start(args, msg); - do_msg(1, msg, args); + vfprintf(stderr, msg, args); + if (dumpcore) + abort(); + exit(1); } void @@ -383,7 +377,7 @@ do_warn(char const *msg, ...) fs_is_dirty = 1; va_start(args, msg); - do_msg(0, msg, args); + vfprintf(stderr, msg, args); va_end(args); } @@ -395,7 +389,7 @@ do_log(char const *msg, ...) va_list args; va_start(args, msg); - do_msg(0, msg, args); + vfprintf(stderr, msg, args); va_end(args); } -- 2.47.2