From: Pierre Poissinger Date: Tue, 31 Mar 2009 12:20:17 GMT Subject: Re: [PATCH] AIX 5.2 - bug with 1.6.2.1 Message-ID: <3930158b0903310520h1f421518ka67de5f7aad0690b@mail.gmail.com> In-Reply-To: <20090331103703.GA1589@coredump.intra.peff.net> On Tue, Mar 31, 2009 at 12:37 PM, Jeff King wrote: > [I'm cc'ing the git-list; please send bug reports there] [snip] >> breaks git on AIX 5.2 with gcc 2.9 :-( > > Wow, I didn't know people were still using the 2.9 branch of gcc. Yep, that or "C for AIX Compiler, Version 6" but this one is awol for git [Hey, it feels cutting edge - I use Emacs 19 and digital C daily on OpenVMS 7.1...] > Hmm. Can you confirm the status being passed back by run_command? >[snip] 0 - that's why I found out the funny enum stuff... > That seems very wrong. I wonder if it is a problem with the signedness > of enums in that version of gcc. Can you run the following program and > report on its output? Not only to you... just that's what I noticed... > -- >8 -- -FOO: -10000 0 <= -FOO: 1 -10000 <= -FOO: 1 This seems to be a "Old GCC'ism" - XLC (version 6...cannot even understand git code) does it right: -FOO: -10000 0 <= -FOO: 0 -10000 <= -FOO: 1 >  #define IS_RUN_COMMAND_ERR(x) ((-x) > ERR_RUN_COMMAND_FORK) oops... works for me with #define IS_RUN_COMMAND_ERR(x) (-(x) > ERR_RUN_COMMAND_FORK) > The other option is to rework run_command to just return positive values > (which should be fine as long as they remain out of the range of normal > exit codes). Change define good enough for me and my oldies... Regs, Pierre, -- >>> horsemen = ['war', 'pestilence', 'famine'] >>> horsemen.append('Powerbuilder')