... BTW, a bit of grepping shows that there are still significant violations of this policy with respect to header-driven inclusion of postgres_fe.h and c.h. Also, plpgsql is doing it in the unapproved fashion. Cleaning these up will take a bit more work, since we'll have to actually add #includes to some .c files that are currently relying on those headers to get the core header. However, if I believe my own argument, then that's a good thing and we'd better go do it.
Also, ecpglib.h seems like a complete mess: it's relying on symbols like ENABLE_NLS but there's no certainty as to whether pg_config.h has been included first. It won't have been in the case where this header is read from an ecpg-generated .c file. So this header will in fact be interpreted differently in ecpg-generated programs than in ecpglib and ecpg itself. Maybe this is okay but it sure smells like trouble waiting to happen. I have no desire to try to fix it myself though. regards, tom lane -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers