On Thu, Mar 28, 2013 at 06:20:29PM +0000, Ramsay Jones wrote: > Jeff King wrote: > > On Tue, Mar 26, 2013 at 07:09:44PM +0000, Ramsay Jones wrote: > > > >> Commit cbfd5e1c ("drop some obsolete "x = x" compiler warning hacks", > >> 21-03-2013) removed a gcc hack that suppressed an "might be used > >> uninitialized" warning issued by older versions of gcc. > >> > >> However, commit 3aa99df8 ('fast-import: clarify "inline" logic in > >> file_change_m', 21-03-2013) addresses an (almost) identical issue > >> (with very similar code), but includes additional code in it's > >> resolution. The solution used by this commit, unlike that used by > >> commit cbfd5e1c, also suppresses the -Wuninitialized warning on > >> older versions of gcc. > >> > >> In order to suppress the warning (against the 'oe' symbol) in the > >> note_change_n() function, we adopt the same solution used by commit > >> 3aa99df8. > > > > Yeah, they are essentially the same piece of code, so I don't mind this > > change. It is odd to me that gcc gets it right in one case but not the > > other, but I think we are deep into the vagaries of the compiler's code > > flow analysis here, and we cannot make too many assumptions. > > > > Were you actually triggering this warning, and if so, on what version of > > gcc? > > yes, with: > gcc v3.4.4 (cygwin) > gcc v4.1.2 (Linux) > msvc v15.00.30729.01 (VC/C++ 2008 express edition) > no, with: > gcc v4.4.0 (msysgit) > clang 3.2 (Linux) > tcc v0.9.26 (Linux) > [lcc can't compile git; I forget why exactly.] Thanks. I do not mind this fix, as it matches the similar code, and it is fairly straightforward. But I am also happy to let people running gcc v3.4.4 and other ancient compilers deal with not turning on -Werror. ;) -Peff -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html