From: "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
To: phillip.wood@dunelm.org.uk
Cc: git@vger.kernel.org, "Junio C Hamano" <gitster@pobox.com>,
"Jeff King" <peff@peff.net>,
"Martin Ågren" <martin.agren@gmail.com>
Subject: Re: [PATCH 3/6] shortlog: use designated initializer for "struct shortlog"
Date: Mon, 27 Sep 2021 12:52:33 +0200 [thread overview]
Message-ID: <87lf3i1e7k.fsf@evledraar.gmail.com> (raw)
In-Reply-To: <94842a94-d168-2b61-4a44-0059ecbe1b36@gmail.com>
On Mon, Sep 27 2021, Phillip Wood wrote:
> Hi Ævar
>
> On 27/09/2021 01:53, Ævar Arnfjörð Bjarmason wrote:
>> Change code added in 64093fc06a (blame,shortlog: don't make local
>> option variables static, 2016-06-13) to use a designated initializer
>> via a typical *_INIT macro pattern.
>> Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
>> ---
>> builtin/shortlog.c | 2 +-
>> shortlog.h | 4 ++++
>> 2 files changed, 5 insertions(+), 1 deletion(-)
>> diff --git a/builtin/shortlog.c b/builtin/shortlog.c
>> index 3e7ab1ca821..fa1f76cc51e 100644
>> --- a/builtin/shortlog.c
>> +++ b/builtin/shortlog.c
>> @@ -342,7 +342,7 @@ void shortlog_init(struct shortlog *log)
>> int cmd_shortlog(int argc, const char **argv, const char
>> *prefix)
>> {
>> - struct shortlog log = { STRING_LIST_INIT_NODUP };
>> + struct shortlog log = SHORTLOG_INIT;
>> struct rev_info rev;
>> int nongit = !startup_info->have_repository;
>> diff --git a/shortlog.h b/shortlog.h
>> index 3f7e9aabcae..47892d6d604 100644
>> --- a/shortlog.h
>> +++ b/shortlog.h
>> @@ -28,6 +28,10 @@ struct shortlog {
>> FILE *file;
>> };
>> +#define SHORTLOG_INIT { \
>> + .list = STRING_LIST_INIT_NODUP, \
>> +}
>> +
>> void shortlog_init(struct shortlog *log);
>
> looking at this wouldn't it be better follow the pattern in the first
> patch in this series and replace shortlog_init() with a designated
> initializer?
I've ejected this patch from a WIP re-roll, I don't know what I was
thinking when I included it.
It's "correct", but one of those cases where we can't easily get rid of
the not-a-macro init() function, so having a *_INIT macro that doesn't
actually do the initialization for both users is just confusing.
Worse, that "nodup" is actually a like, the shortlog_init() function
sets it to "dup", that issue pre-dated by change here, but I shouldn't
have carried it forward.
Sorry!
next prev parent reply other threads:[~2021-09-27 10:54 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-27 0:53 [PATCH 0/6] Non-trivial designated initializer conversion Ævar Arnfjörð Bjarmason
2021-09-27 0:53 ` [PATCH 1/6] daemon.c: refactor hostinfo_init() to HOSTINFO_INIT macro Ævar Arnfjörð Bjarmason
2021-09-27 0:53 ` [PATCH 2/6] builtin/blame.c: refactor commit_info_init() to COMMIT_INFO_INIT macro Ævar Arnfjörð Bjarmason
2021-09-27 0:53 ` [PATCH 3/6] shortlog: use designated initializer for "struct shortlog" Ævar Arnfjörð Bjarmason
2021-09-27 9:06 ` Phillip Wood
2021-09-27 10:52 ` Ævar Arnfjörð Bjarmason [this message]
2021-09-27 0:53 ` [PATCH 4/6] urlmatch.[ch]: add and use URLMATCH_CONFIG_INIT Ævar Arnfjörð Bjarmason
2021-09-27 0:53 ` [PATCH 5/6] builtin/remote.c: add and use a REF_STATES_INIT Ævar Arnfjörð Bjarmason
2021-09-27 0:53 ` [PATCH 6/6] builtin/remote.c: add and use SHOW_INFO_INIT Ævar Arnfjörð Bjarmason
2021-09-27 12:58 ` [PATCH v2 0/5] Non-trivial designated initializer conversion Ævar Arnfjörð Bjarmason
2021-09-27 12:58 ` [PATCH v2 1/5] daemon.c: refactor hostinfo_init() to HOSTINFO_INIT macro Ævar Arnfjörð Bjarmason
2021-09-27 12:58 ` [PATCH v2 2/5] builtin/blame.c: refactor commit_info_init() to COMMIT_INFO_INIT macro Ævar Arnfjörð Bjarmason
2021-09-27 12:58 ` [PATCH v2 3/5] urlmatch.[ch]: add and use URLMATCH_CONFIG_INIT Ævar Arnfjörð Bjarmason
2021-09-27 22:12 ` Junio C Hamano
2021-09-27 12:58 ` [PATCH v2 4/5] builtin/remote.c: add and use a REF_STATES_INIT Ævar Arnfjörð Bjarmason
2021-09-27 23:04 ` Junio C Hamano
2021-09-27 23:38 ` Ævar Arnfjörð Bjarmason
2021-09-27 23:56 ` Junio C Hamano
2021-09-27 12:58 ` [PATCH v2 5/5] builtin/remote.c: add and use SHOW_INFO_INIT Ævar Arnfjörð Bjarmason
2021-10-01 10:27 ` [PATCH v3 0/6] Non-trivial designated initializer conversion Ævar Arnfjörð Bjarmason
2021-10-01 10:27 ` [PATCH v3 1/6] daemon.c: refactor hostinfo_init() to HOSTINFO_INIT macro Ævar Arnfjörð Bjarmason
2021-10-01 10:27 ` [PATCH v3 2/6] builtin/blame.c: refactor commit_info_init() to COMMIT_INFO_INIT macro Ævar Arnfjörð Bjarmason
2021-10-01 10:27 ` [PATCH v3 3/6] urlmatch.[ch]: add and use URLMATCH_CONFIG_INIT Ævar Arnfjörð Bjarmason
2021-10-01 10:27 ` [PATCH v3 4/6] builtin/remote.c: add and use a REF_STATES_INIT Ævar Arnfjörð Bjarmason
2021-10-01 10:27 ` [PATCH v3 5/6] builtin/remote.c: add and use SHOW_INFO_INIT Ævar Arnfjörð Bjarmason
2021-10-01 10:27 ` [PATCH v3 6/6] unpack-trees.[ch]: define and use a UNPACK_TREES_OPTIONS_INIT Ævar Arnfjörð Bjarmason
2021-10-01 21:39 ` Junio C Hamano
2021-10-02 20:16 ` [PATCH v4 0/5] Non-trivial designated initializer conversion Ævar Arnfjörð Bjarmason
2021-10-02 20:16 ` [PATCH v4 1/5] daemon.c: refactor hostinfo_init() to HOSTINFO_INIT macro Ævar Arnfjörð Bjarmason
2021-10-02 20:16 ` [PATCH v4 2/5] builtin/blame.c: refactor commit_info_init() to COMMIT_INFO_INIT macro Ævar Arnfjörð Bjarmason
2021-10-02 20:16 ` [PATCH v4 3/5] urlmatch.[ch]: add and use URLMATCH_CONFIG_INIT Ævar Arnfjörð Bjarmason
2021-10-02 20:16 ` [PATCH v4 4/5] builtin/remote.c: add and use a REF_STATES_INIT Ævar Arnfjörð Bjarmason
2021-10-02 20:16 ` [PATCH v4 5/5] builtin/remote.c: add and use SHOW_INFO_INIT Ævar Arnfjörð Bjarmason
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=87lf3i1e7k.fsf@evledraar.gmail.com \
--to=avarab@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=martin.agren@gmail.com \
--cc=peff@peff.net \
--cc=phillip.wood@dunelm.org.uk \
/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;
as well as URLs for NNTP newsgroup(s).