]> granicus.if.org Git - postgresql/commit
Document intentional violations of header inclusion policy.
authorTom Lane <tgl@sss.pgh.pa.us>
Wed, 8 Mar 2017 22:01:13 +0000 (17:01 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Wed, 8 Mar 2017 22:01:13 +0000 (17:01 -0500)
commitd6b059ec740a6affce9a069f1210d161068317e3
tree12b31459dcf728e09bcef55e1e7fac40f2d15fbd
parent2f899e7d37ece937740c99164dd846c4b6f884eb
Document intentional violations of header inclusion policy.

Although there are good reasons for our policy of including postgres.h
as the first #include in every .c file, never from .h files, there are
two places where it seems expedient to violate the policy because the
alternative is to modify externally-supplied .c files.  (In the case
of the regexp library, the idea that it's externally-supplied is kind
of at odds with reality, but I haven't entirely given up hope that it
will become a standalone project some day.)  Add some comments to make
it explicit that this is a policy violation and provide the reasoning.

In passing, move #include "miscadmin.h" out of regcomp.c and into
regcustom.h, which is where it should be if we're taking this reasoning
seriously at all.

Discussion: https://postgr.es/m/CAEepm=2zCoeq3QxVwhS5DFeUh=yU6z81pbWMgfOB8OzyiBwxzw@mail.gmail.com
Discussion: https://postgr.es/m/11634.1488932128@sss.pgh.pa.us
src/backend/regex/regcomp.c
src/include/regex/regcustom.h
src/include/snowball/header.h