2011/12/4 Tom Lane <tgl@sss.pgh.pa.us>:
> Pavel Stehule <pavel.stehule@gmail.com> writes:
>> 2011/12/4 Tom Lane <tgl@sss.pgh.pa.us>:
>>> [ scratches head ... ] Given that it got past the previous assertions,
>>> surely that ought to be impossible. Could we see the values of
>>> cost_mergejoin's local variables, please?
>
>> It is strange
>
>> when I put a fprintf(stderr, "const literal") to exactly before or
>> somewhere after assertion, then assertion is ok. Without fprintf
>> assertion fails again
>
>> it looks like gcc bug - gcc 4.5.1 20100924 (Red Hat 4.5.1) It was
>> configured just with --enable-debug and --enable-cassert
>
> Hmm. I'm betting that gcc has flushed one value to memory but the other
> one is still in a register that's wider than memory, creating a roundoff
> hazard. Can you look at the generated assembly code?
I can, but tomorrow evening,
I'll send a code
Regards
Pavel
>
> regards, tom lane