Bruce Momjian <pgman@candle.pha.pa.us> writes:
> wespvp@syntegra.com wrote:
> have you tried adding a volatile keyword to the
> int volatile errno1_set = 0;
> int volatile errno2_set = 0;
>
> I have applied the following patch to CVS head which does a getpid() in
> the loop, rather than nothing.
That does not cure the bug identified by wespvp. It may make it a
little less likely that the compiler will choose to optimize out the
loop test, but only adding "volatile" really fixes the problem in
a language-standard-compliant way.
regards, tom lane