Re: [PATCH/RFC 0/3] compiling git with gcc -O3 -Wuninitialized

2012-12-15 Thread Jeff King
On Sat, Dec 15, 2012 at 11:49:25AM +0100, Johannes Sixt wrote: > Am 14.12.2012 23:09, schrieb Jeff King: > > Can anybody think of a clever way to expose the constant return value of > > error() to the compiler? We could do it with a macro, but that is also > > out for error(), as we do not assume

Re: [PATCH/RFC 0/3] compiling git with gcc -O3 -Wuninitialized

2012-12-15 Thread Johannes Sixt
Am 14.12.2012 23:09, schrieb Jeff King: > Can anybody think of a clever way to expose the constant return value of > error() to the compiler? We could do it with a macro, but that is also > out for error(), as we do not assume the compiler has variadic macros. I > guess we could hide it behind "#if

Re: [PATCH/RFC 0/3] compiling git with gcc -O3 -Wuninitialized

2012-12-15 Thread Jeff King
On Sat, Dec 15, 2012 at 10:07:54AM +0700, Nguyen Thai Ngoc Duy wrote: > > If get_foo() is not inlined, then when compiling some_fun, gcc sees only > > that a pointer to the local variable is passed, and must assume that it > > is an out parameter that is initialized after get_foo returns. > > > >

Re: [PATCH/RFC 0/3] compiling git with gcc -O3 -Wuninitialized

2012-12-14 Thread Nguyen Thai Ngoc Duy
On Sat, Dec 15, 2012 at 5:09 AM, Jeff King wrote: > I always compile git with "gcc -Wall -Werror", because it catches a lot > of dubious constructs, and we usually keep the code warning-free. > However, I also typically compile with "-O0" because I end up debugging > a fair bit. > > Sometimes, tho

[PATCH/RFC 0/3] compiling git with gcc -O3 -Wuninitialized

2012-12-14 Thread Jeff King
I always compile git with "gcc -Wall -Werror", because it catches a lot of dubious constructs, and we usually keep the code warning-free. However, I also typically compile with "-O0" because I end up debugging a fair bit. Sometimes, though, I compile with -O3, which yields a bunch of new "variable