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

Re: [PATCH 0/4] drop some "int x = x" hacks to silence gcc warnings

From
Jeff King <peff@peff.net>
Date
Mar 21, 2013, 15:44 UTC
Message-ID
<20130321154402.GA25907@sigill.intra.peff.net>
In-Reply-To
<7vhak4bx0w.fsf@alter.siamese.dyndns.org>
On Thu, Mar 21, 2013 at 08:19:43AM -0700, Junio C Hamano wrote:
Show 18 quoted lines
> >     $ git grep '#define uninitialized_var' include/
> >     include/linux/compiler-gcc.h:#define uninitialized_var(x) x = x
> >     include/linux/compiler-intel.h:#define uninitialized_var(x) x
> >
> > but they recently had a discussion, e.g.
> >
> >     http://thread.gmane.org/gmane.linux.kernel.openipmi/1998/focus=1383705
> >
> > so...
> 
> While flipping the paragraphs around before sending the message out
> I managed to lose the important one.  Here is roughly what I wrote:
> 
>     I am for dropping "= x" and leaving it uninitialized at the
>     declaration site, or explicitly initializing it to some
>     reasonable starting value (e.g. NULL if it is a pointer) and
>     adding a comment to say that the initialization is to squelch
>     compiler warnings.

I'd be in favor of that, too. In many cases, I think the fact that gcc cannot trace the control flow is a good indication that it is hard for a human to trace it, too. And in those cases we would be better off restructuring the code slightly to make it more obvious to both types of readers.

Two patches to follow.
  [5/4]: fast-import: clarify "inline" logic in file_change_m
  [6/4]: run-command: always set failed_errno in start_command
-Peff
Previous: Junio C HamanoNext: Jeff King
Message 25 of 42 in “drop some "int x = x" hacks to silence gcc warnings”
  1. 0/4 drop some "int x = x" hacks to silence gcc warningsJeff King, Mar 21, 2013
  2. 1/4 wt-status: fix possible use of uninitialized variableJeff King, Mar 21, 2013
  3. Jonathan NiederMar 21, 2013
  4. Junio C HamanoMar 21, 2013
  5. Jonathan NiederMar 21, 2013
  6. Jeff KingMar 22, 2013
  7. 2/4 fast-import: use pointer-to-pointer to keep list tailJeff King, Mar 21, 2013
  8. Jonathan NiederMar 21, 2013
  9. 3/4 drop some obsolete "x = x" compiler warning hacksJeff King, Mar 21, 2013
  10. Erik Faye-LundMar 21, 2013
  11. Jonathan NiederMar 21, 2013
  12. Torsten BögershausenMar 24, 2013
  13. 4/4 transport: drop "int cmp = cmp" hackJeff King, Mar 21, 2013
  14. Jonathan NiederMar 21, 2013
  15. Junio C HamanoMar 24, 2013
  16. Jeff KingMar 24, 2013
  17. Torsten BögershausenMar 24, 2013
  18. Junio C HamanoMar 25, 2013
  19. Jeff KingMar 25, 2013
  20. Junio C HamanoMar 25, 2013
  21. Johannes SixtMar 21, 2013
  22. Jeff KingMar 21, 2013
  23. Junio C HamanoMar 21, 2013
  24. Junio C HamanoMar 21, 2013
  25. Jeff KingMar 21, 2013
  26. 5/4 fast-import: clarify "inline" logic in file_change_mJeff King, Mar 21, 2013
  27. 6/4 run-command: always set failed_errno in start_commandJeff King, Mar 21, 2013
  28. Jonathan NiederMar 21, 2013
  29. Jeff KingMar 22, 2013
  30. 7/4 submodule: clarify logic in show_submodule_summaryJeff King, Mar 22, 2013
  31. Junio C HamanoMar 22, 2013
  32. 8/4 match-trees: drop "x = x" initializationsJeff King, Mar 22, 2013
  33. Junio C HamanoMar 22, 2013
  34. Junio C HamanoMar 22, 2013
  35. Jeff KingMar 22, 2013
  36. René ScharfeMar 23, 2013
  37. Junio C HamanoMar 24, 2013
  38. Jeff KingMar 24, 2013
  39. René ScharfeMar 24, 2013
  40. Junio C HamanoMar 25, 2013
  41. Joachim SchmitzMar 21, 2013
  42. Joachim SchmitzMar 21, 2013

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.