Most of the GUC variables that have been converted to enums have an
extra_desc string that lists the valid values --- in HEAD, try
SELECT name,extra_desc,enumvals from pg_settings where vartype = 'enum';
ISTM this is just about 100% redundant with the enumvals column and
should be removed to reduce translation and maintenance effort.
Any objections?
One point of interest is that for client_min_messages and
log_min_messages, the ordering of the values has significance, and it's
different for the two cases. The enum patch has lost that info by
trying to use the same auxiliary list for both variables. But having
two lists doesn't seem like an excessive amount of overhead.
regards, tom lane