Don't include utils/array.h from acl.h.
authorAndres Freund <andres@anarazel.de>
Fri, 16 Aug 2019 17:33:30 +0000 (10:33 -0700)
committerAndres Freund <andres@anarazel.de>
Fri, 16 Aug 2019 17:33:30 +0000 (10:33 -0700)
commit6a04d345fd8094058f08344af93022566222733a
treefabb1732489fba84b09da72a7330b403bb886141
parent0ae2dc4db2ae9940ab2bb1e4f4c0ff27f09f8aae
Don't include utils/array.h from acl.h.

For most uses of acl.h the details of how "Acl" internally looks like
are irrelevant. It might make sense to move a lot of the
implementation details into a separate header at a later point.

The main motivation of this change is to avoid including fmgr.h (via
array.h, which needs it for exposed structs) in a lot of files that
otherwise don't need it. A subsequent commit will remove the fmgr.h
include from a lot of files.

Directly include utils/array.h and utils/expandeddatum.h from the
files that need them, but previously included them indirectly, via
acl.h.

Author: Andres Freund
Discussion: http://postgr.es/m/20190803193733.g3l3x3o42uv4qj7l@alap3.anarazel.de
14 files changed:
contrib/pageinspect/hashfuncs.c
src/backend/executor/execExpr.c
src/backend/executor/execExprInterp.c
src/backend/executor/execTuples.c
src/backend/executor/nodeAgg.c
src/backend/executor/nodeWindowAgg.c
src/backend/partitioning/partprune.c
src/backend/statistics/extended_stats.c
src/backend/statistics/mcv.c
src/backend/utils/adt/acl.c
src/backend/utils/adt/tsvector_op.c
src/include/catalog/objectaddress.h
src/include/utils/acl.h
src/include/utils/array.h