From: Andreas Ericsson Date: Tue, 26 Apr 2011 13:45:17 GMT Subject: Re: [PATCH] run-command.c: Fix unused variables warning with gcc 4.6 Message-ID: <4DB6CC6D.1030105@op5.se> In-Reply-To: <4DB6C83A.4040900@elegosoft.com> On 04/26/2011 03:27 PM, Michael Schubert wrote: > On 04/26/2011 03:13 PM, Michael J Gruber wrote: >> Michael Schubert venit, vidit, dixit 26.04.2011 14:28: >>> As of gcc 4.6 -Wall includes -Wunused-but-set-variable. Remove all >>> unused variables to prevent those warnings. >>> >>> Signed-off-by: Michael Schubert >>> --- >>> run-command.c | 10 ++++------ >>> 1 files changed, 4 insertions(+), 6 deletions(-) >>> >>> diff --git a/run-command.c b/run-command.c >>> index f91e446..6e0be54 100644 >>> --- a/run-command.c >>> +++ b/run-command.c >>> @@ -67,21 +67,19 @@ static int child_notifier = -1; >>> >>> static void notify_parent(void) >>> { >>> - ssize_t unused; >>> - unused = write(child_notifier, "", 1); >>> + write(child_notifier, "", 1); >>> } >>> >>> static NORETURN void die_child(const char *err, va_list params) >>> { >>> char msg[4096]; >>> - ssize_t unused; >>> int len = vsnprintf(msg, sizeof(msg), err, params); >>> if (len> sizeof(msg)) >>> len = sizeof(msg); >>> >>> - unused = write(child_err, "fatal: ", 7); >>> - unused = write(child_err, msg, len); >>> - unused = write(child_err, "\n", 1); >>> + write(child_err, "fatal: ", 7); >>> + write(child_err, msg, len); >>> + write(child_err, "\n", 1); >>> exit(128); >>> } >>> #endif >> >> git log -S"unused" origin/master run-command.c >> >> shows that these dummies were introduced for a reason. How do you >> invalidate that? > > Sorry, just missed that. > A better solution than reverting the prettifying commit ebec842773932e6f853acac70c80f84209b5f83e would be to rework it to use logical AND instead of logical OR, as the AND-chain won't short-circuit the statement chain early and prevent output from being printed when write() returns non-zero. When it *does* return zero, it's likely due to problems on the receiving ends, making further writing totally pointless anyway. -- Andreas Ericsson andreas.ericsson@op5.se OP5 AB www.op5.se Tel: +46 8-230225 Fax: +46 8-230231 Considering the successes of the wars on alcohol, poverty, drugs and terror, I think we should give some serious thought to declaring war on peace.