The file was imported from PostgreSQL and Pgpool-II specific node type
were added right after T_Invalid = 0, then nodetags.h is
included. Since nodetags.h explicitly assign values to each enum
starting from 1, and this created duplicated enums.
T_List = 1,
T_Alias = 2,
T_RangeVar = 3,
T_PgpoolVariableSetStmt, (1)
T_PgpoolVariableShowStmt, (2)
T_PgpoolQueryCacheStmt, (3)
Although fortunately this seems does not create any trouble except the
duplicated enums, this should be fixed: moving the inclusion of
nodetags.h right after "T_invalid = 0".
Reported-by: liujinyang-highgo
Diagnosed-by: liujinyang-highgo
Discussion: https://github.com/pgpool/pgpool2/issues/138
Backpatch-through: v4.5
typedef enum NodeTag
{
T_Invalid = 0,
typedef enum NodeTag
{
T_Invalid = 0,
/* pgpool Extension */
T_PgpoolVariableSetStmt,
T_PgpoolVariableShowStmt,
T_PgpoolQueryCacheStmt,
/* pgpool Extension */
T_PgpoolVariableSetStmt,
T_PgpoolVariableShowStmt,
T_PgpoolQueryCacheStmt,