****************************************************************** * YOUR C COMPILER IS FATALLY BROKEN!!!!!! * * * * The C language requires that in the condition * * (a) && (b) * * if the condition (a) is false, the condition (b) is NOT * * evaluated. Your compiler is evaluating (b) when (a) is false * * The test program is * * main() * * {exit(recur(0,1));} * * recur(a,b) * * int a,b; * * {int c=0; * * if ((b!=1)&&(c=1)) return c; return c; * * } * * * * Notes: The second test is an assignment (=) not an equality * * (==) test. This construction is used in MPICH's error testing * * code to simplify and standardize MPICHs own error testing. * * * * Please file a bug report with your vendor. You may use the * * program above (or this entire note) in your report. If you * * do not get satisfaction from your vendor, we suggest that you * * consider gcc. * * * * Because MPICH's internal error testing depends on this * * construction being handled correctly, it is not possible to * * complete the configuration of MPICH for this machine. * * * * If you are using IBM's xlc 01.03.00.00, you should update to * * at least 01.03.00.06, which is rumored to correct this problem.* * To determine your version, try the command * * lslpp -p 'xlccmp.*' * * (The exact format of this command depends on what version of * * AIX you are running; this worked for us. If this fails, try * * lslpp -p 'xlC*.*') * * * ******************************************************************