Re: ereport bug

From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Dmitry Voronin <carriingfate92(at)yandex(dot)ru>
Cc: PostgreSQL mailing lists <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: ereport bug
Date: 2015-01-14 17:18:23
Message-ID: CA+TgmobBYmnSnNFBO-gvx2x325kkPH=E8V=isRjud4DcZ2qJMQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Mon, Jan 12, 2015 at 6:27 AM, Dmitry Voronin
<carriingfate92(at)yandex(dot)ru> wrote:
> I am attaching to this letter a test case that shows the behavior
> errcontext() macro and the way to fix it.

So the upshot of this is that given errfinish(A, B, C), where A, B,
and C are expressions, my gcc is choosing to evaluate C, then B, then
A, then the errfinish call itself. But whoever wrote the errcontext()
macro evidently thought, in this kind of situation, the compiler would
be certain to evaluate A, then B, then C, then errfinish. But it
doesn't.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

  • ereport bug at 2015-01-12 11:27:29 from Dmitry Voronin

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Robert Haas 2015-01-14 17:27:42 Re: s_lock.h default definitions are rather confused
Previous Message Robert Haas 2015-01-14 17:07:01 Re: Custom/Foreign-Join-APIs (Re: [v9.5] Custom Plan API)