From: Junio C Hamano <gitster@pobox.com>
To: "Jan Stępień" <jstepien@users.sourceforge.net>
Cc: git@vger.kernel.org
Subject: Re: [PATCH] Remove redundant assignments
Date: Sun, 27 Nov 2011 00:26:45 -0800 [thread overview]
Message-ID: <7vfwhavum2.fsf@alter.siamese.dyndns.org> (raw)
In-Reply-To: <1322381142-20645-1-git-send-email-jstepien@users.sourceforge.net> ("Jan Stępień"'s message of "Sun, 27 Nov 2011 09:05:42 +0100")
Jan Stępień <jstepien@users.sourceforge.net> writes:
> There were two redundant variable assignments in transport.c and
> wt-status.c. Removing them hasn't introduced any compiler warnings or
> regressions.
It may not have added any warnings for _you_.
These "type a = a;" initializations (they are not even assignments and
would not result in any code in the output for sane compilers) are idioms
to squelch "unused" warnings from versions of compiler whose data flow
analysis is less than perfect by telling them that the author of the
section of the code knows what s/he is doing.
At least, that is why these pseudo initializations were added in these
codepaths. I personally feel that they should be made into useless but
real assignments (which may result in a useless assignment emited in the
resulting object code) rather than removing like your patch did which
unfortunately forces people with imperfect compilers to live with the
warnings, if one finds them ugly.
> Signed-off-by: Jan Stępień <jstepien@users.sourceforge.net>
> ---
> transport.c | 2 +-
> wt-status.c | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/transport.c b/transport.c
> index 51814b5..5143718 100644
> --- a/transport.c
> +++ b/transport.c
> @@ -105,7 +105,7 @@ static void insert_packed_refs(const char *packed_refs, struct ref **list)
> return;
>
> for (;;) {
> - int cmp = cmp, len;
> + int cmp, len;
>
> if (!fgets(buffer, sizeof(buffer), f)) {
> fclose(f);
> diff --git a/wt-status.c b/wt-status.c
> index 70fdb76..35f61f4 100644
> --- a/wt-status.c
> +++ b/wt-status.c
> @@ -229,7 +229,7 @@ static void wt_status_print_change_data(struct wt_status *s,
> {
> struct wt_status_change_data *d = it->util;
> const char *c = color(change_type, s);
> - int status = status;
> + int status;
> char *one_name;
> char *two_name;
> const char *one, *two;
prev parent reply other threads:[~2011-11-27 8:27 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-11-27 8:05 [PATCH] Remove redundant assignments Jan Stępień
2011-11-27 8:26 ` Junio C Hamano [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=7vfwhavum2.fsf@alter.siamese.dyndns.org \
--to=gitster@pobox.com \
--cc=git@vger.kernel.org \
--cc=jstepien@users.sourceforge.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox