Tom Lane wrote:
> Alvaro Herrera <alvherre@2ndquadrant.com> writes:
> > The
> > approach in the second patch is to turn these into "extern const RmgrId"
> > instead, and use a second inclusion of rmgrlist.h in rmgr.c that assigns
> > them the values as consts.
>
> ... but I don't especially like that implementation, as it will result
> in nonzero code bloat and runtime cost due to replacing all those
> constants with global-variable references. Couldn't you instead set it
> up as an enum definition?
That seems to work. I would like to have some way of specifying that
the enum members should be of type RmgrId, but I don't think there's any
way to do that.
Patch attached.
--
Álvaro Herrera http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services