postgresql/src
Tom Lane d6b059ec74 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
2017-03-08 17:01:13 -05:00
..
backend Document intentional violations of header inclusion policy. 2017-03-08 17:01:13 -05:00
bin pg_waldump: Remove extra newline in error message 2017-03-08 10:08:32 -05:00
common A collection of small fixes for the SCRAM patch. 2017-03-07 19:00:22 +02:00
fe_utils Remove useless duplicate inclusions of system header files. 2017-02-25 16:12:55 -05:00
include Document intentional violations of header inclusion policy. 2017-03-08 17:01:13 -05:00
interfaces A collection of small fixes for the SCRAM patch. 2017-03-07 19:00:22 +02:00
makefiles Try to fix non-MSVC Windows builds in the wake of logical replication. 2017-01-20 12:51:31 -05:00
pl Invent start_proc parameters for PL/Tcl. 2017-03-07 12:40:44 -05:00
port Put back #include <windows.h> in dirmod.c. 2017-02-25 18:34:09 -05:00
template Remove "sco" and "unixware" ports. 2016-10-11 11:26:04 -04:00
test Expose explain's SUMMARY option 2017-03-08 15:14:03 -05:00
timezone Remove useless duplicate inclusions of system header files. 2017-02-25 16:12:55 -05:00
tools Clean up test_ifaddrs a bit. 2017-03-07 12:06:07 -05:00
tutorial Update copyright via script for 2017 2017-01-03 13:48:53 -05:00
.gitignore
bcc32.mak
DEVELOPERS
Makefile Remove redundant coverage target 2017-02-17 08:56:57 -05:00
Makefile.global.in Dept of second thoughts: rename new perl script. 2017-02-19 16:41:51 -05:00
Makefile.shlib Fix typos in comments. 2017-02-06 11:33:58 +02:00
nls-global.mk nls-global.mk: search build dir for source files, too 2016-06-07 18:55:18 -04:00
win32.mak