git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 1/3] test-tool genzeros: initialize "zeros" to avoid SunCC warning

From
Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Date
Jan 13, 2022, 10:08 UTC
Message-ID
<220113.8635lsvsw6.gmgdl@evledraar.gmail.com>
In-Reply-To
<Yd8njHz2m099iDfL@nand.local>
On Wed, Jan 12 2022, Taylor Blau wrote:
Show 21 quoted lines
> On Wed, Jan 12, 2022 at 03:21:46PM +0100, Johannes Schindelin wrote:
>> > diff --git a/t/helper/test-genzeros.c b/t/helper/test-genzeros.c
>> > index 8ca988d6216..5dc89eda0cb 100644
>> > --- a/t/helper/test-genzeros.c
>> > +++ b/t/helper/test-genzeros.c
>> > @@ -3,8 +3,7 @@
>> >
>> >  int cmd__genzeros(int argc, const char **argv)
>> >  {
>> > -	/* static, so that it is NUL-initialized */
>> > -	static const char zeros[256 * 1024];
>> > +	const char zeros[256 * 1024] = { 0 };
>>
>> This diff does two things: add an initializer, and turn the variable into
>> a `static`. The former is the actual fix that is required. The latter is
>> not. During the -rc phase, we do not want to see any of the latter. It is
>> unnecessarily controversial and distracting, and can easily be postponed
>> until January 25th, 2022.
>
> This assumes that making the declaration non-static isn't necessary to
> fix the warning from SunCC.

Just adding "= { 0 }" and retaining the "static" would FWIW make SunCC happy here.

Show 9 quoted lines
> I would guess that in reality it probably isn't, so removing the static
> designation is a stray change, and this would have been easier to grok
> as simply:
>
>     -	static const char zeros[256 * 1024];
>     +	static const char zeros[256 * 1024] = { 0 };
>
> But to be honest I don't think it is _that_ big of a deal to make such a
> small change during this point of the development cycle.
We'd also need to change the comment, so:

- /* static, so that it is NUL-initialized */ - static const char zeros[256 * 1024]; + /* static, for no particular reason */ + static const char zeros[256 * 1024] = { 0 };

Which is why I stripped the "static" off it, it was only there as a shorthand for doing the initialization, so once we're doing it ourselves it makes no sense to retain it for this invoked-only-once test helper.

So I think this patch is good as-is. just adding the initializer would need even further explanation in the comment/commit message about the non-sensical end-state. I'm all for being careful in the rc period, but in this case I think we'd be overdoing it.

Previous: Taylor BlauNext: Johannes Schindelin
Message 6 of 32 in “Fix SunCC compiler complaints new in v2.35.0-rc0”
  1. 0/3 Fix SunCC compiler complaints new in v2.35.0-rc0Ævar Arnfjörð Bjarmason, Jan 11, 2022
  2. 1/3 test-tool genzeros: initialize "zeros" to avoid SunCC warningÆvar Arnfjörð Bjarmason, Jan 11, 2022
  3. Taylor BlauJan 11, 2022
  4. Johannes SchindelinJan 12, 2022
  5. Taylor BlauJan 12, 2022
  6. Ævar Arnfjörð BjarmasonJan 13, 2022
  7. Johannes SchindelinJan 13, 2022
  8. Junio C HamanoJan 13, 2022
  9. 3/3 reftable tests: avoid "int" overflow, use "uint64_t"Ævar Arnfjörð Bjarmason, Jan 11, 2022
  10. Taylor BlauJan 11, 2022
  11. Han-Wen NienhuysJan 11, 2022
  12. Taylor BlauJan 11, 2022
  13. Johannes SixtJan 11, 2022
  14. Taylor BlauJan 11, 2022
  15. Johannes SixtJan 11, 2022
  16. Taylor BlauJan 11, 2022
  17. Johannes SchindelinJan 12, 2022
  18. Junio C HamanoJan 12, 2022
  19. Taylor BlauJan 12, 2022
  20. Ævar Arnfjörð BjarmasonJan 13, 2022
  21. Junio C HamanoJan 13, 2022
  22. 2/3 reftable: remove unreachable "return" statementsÆvar Arnfjörð Bjarmason, Jan 11, 2022
  23. Taylor BlauJan 11, 2022
  24. Ævar Arnfjörð BjarmasonJan 12, 2022
  25. Taylor BlauJan 12, 2022
  26. Ævar Arnfjörð BjarmasonJan 13, 2022
  27. Johannes SchindelinJan 13, 2022
  28. Johannes SixtJan 13, 2022
  29. Junio C HamanoJan 13, 2022
  30. Han-Wen NienhuysJan 11, 2022
  31. René ScharfeJan 11, 2022
  32. Emily ShafferJan 12, 2022

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.