On Thu, 8 Aug 2019 at 12:18, Andres Freund <[email protected]> wrote:
> Hi,
>
> On 2019-08-08 11:36:44 +0800, Craig Ringer wrote:
> > > you can only put one <declaration> into the first element of a
> > > for (;;).
> > >
> >
> > Use an anonymous block outer scope? Or if not permitted even by C99
> (which
> > I think it is), a do {...} while (0); hack?
>
> You can't easily - the problem is that there's no real way to add the
> closing }, because that's after the macro.
Ah, right. Hence our
PG_TRY();
{
}
PG_CATCH();
{
}
PG_END_TRY();
construct in all its beauty.
I should've seen that.
--
Craig Ringer http://www.2ndQuadrant.com/
2ndQuadrant - PostgreSQL Solutions for the Enterprise